Использование необъявленного идентификатора 'float32x2_t' (после перезапуска XCode)

хотя я новичок в разработке iOS, у меня есть некоторый опыт работы с C. И почему-то я получаю странную ошибку в своем коде после запуска XCode сегодня. Вчера код работал нормально, и я правильно сохранил проект.

В коде просто берутся 2 точки и с ними формируется вектор. Затем он вычисляет ортогональный вектор и его длину с помощью быстрой обратной функции sqrt. Я взял его отсюда (Самый быстрый обратный квадратный корень на iPhone), и здесь используется тип данных float32x2t.

Но теперь я получаю это сообщение об ошибке:

Использование необъявленного идентификатора 'float32x2_t'

Код:

CGPoint startPoint = [self transformPoint:[[copy objectAtIndex:i] CGPointValue]];
CGPoint endPoint = [self transformPoint:[[copy objectAtIndex:i+1] CGPointValue]];

GLKVector2 line = GLKVector2Make((endPoint.x - startPoint.x), (endPoint.y - startPoint.y));
GLKVector2 lineOrthogonal = GLKVector2Make(line.y, -line.x);

float32x2_t floatVector = {powf(lineOrthogonal.x, 2.0) + powf(lineOrthogonal.y, 2.0), 1.0f};
float32x2_t invsqrt = vrsqrte_f32(floatVector);

Итак, как появляется это сообщение об ошибке и как его исправить?


person copydigital    schedule 16.09.2014    source источник


Ответы (1)


Хорошо, я нашел ответ сам. Похоже, обновление чего-то в Xcode или плохое соединение с фактическим тестовым устройством на USB-контроллере переключило работающее устройство обратно на встроенные симуляторы. И они не понимают тип данных float32x2_t, но реальное устройство понимает.

Но почему это так?

person copydigital    schedule 16.09.2014