Я передаю строку Swift моему методу фреймворка Objective-C, который принимает строку NSString. Однако иногда (не всегда, в зависимости от значения) он не преобразуется в строку NSString.
Насколько я понимаю, это произойдет.
Если я явно приведу строку Swift к строке NSString, метод фреймворка вызовет ошибку.
-(id)setField: (NSString*)nme
recordTypeName: (NSString*)recordTypeName
parentName: (NSString*)parent
parentEnumVal: (NSInteger)parentEnumVal
dataType: (eFieldDataType)dataType
dbType: (eFieldType)dbType
enumVal: (NSInteger)enumVal;
Иногда отладчик показывает NSTaggedPointerString с правильно показанной строкой.
Также снова NSCFString с правильной строкой.
Затем _TtCs19_NSContiguousString снова со значением, но впоследствии оно теряется при последующем чтении, показывая совершенно другой класс.
Я бы попробовал более новую версию XCode, но я использую последнюю. Я думаю, что это должно быть ошибка XCode.
EDIT:
Ошибка возникает при последующем чтении поля