Простая ошибка вылетает зависание Xcode - PullRequest
5 голосов
/ 08 сентября 2010

Я собрал простейшую из возможных программ для iPhone - оконную программу.Я только изменил файл testappdelegate.h следующим образом:

#import <UIKit/UIKit.h>

@interface TestAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
    int pos[10]10]; //note the error here.
}

@property (nonatomic, retain) IBOutlet UIWindow *window;

@end

Обратите внимание на ошибку в строке 'int pos ...'.

Когда я пытаюсь скомпилировать эту программу XCodeзависает (показывая миллионы ошибок).Я не спрашиваю, как исправить линию, это очевидно.

Проблема в том, что перегружает XCode, и я хочу знать, почему?

Обновление: отправлено сообщение об ошибке ID ошибки # 8406197

Обновление 2: 24 сентября. Я получил ответ от Apple, предоставив следующую информацию:

Мы не планируем исправлять это в llvm-gcc или gcc, и это уже исправлено в clang.Xcode, не волнующийся, отслеживается в клоне этой ошибки.

Мы сейчас закрываем эту ошибку, так как наши инженеры знают об этой проблеме и продолжат отслеживать ее в автономном режиме.

Ответы [ 2 ]

8 голосов
/ 08 сентября 2010

Проблема заключается в том, что Xcode вынужден принимать эти миллионы ошибок, чтобы попытаться выяснить, есть ли строка кода, требующая аннотации.

Пожалуйста, отправьте сообщение об ошибке через http://bugreport.apple.com/.

То, что вы создали такой простой тестовый пример, поможет инженерной группе убедиться, что любые исправления, которые они могут выполнить, решают проблему в достаточной степени. Здесь потенциально могут быть две ошибки; первый для XCode, чтобы обработать такой объем ошибок изящно, и второй для компилятора, чтобы не извергать так много перед лицом такой очевидной ошибки.

Вполне вероятно, что ваши ошибки будут возвращены как известные дубликаты. Это происходит, однако, только после того, как команда инженеров зафиксировала любую уникальную информацию из вашей ошибки. То есть, обманщики часто очень полезны.

Когда вы регистрируете ошибку, добавьте ошибку # к своему такому вопросу. Многие инженеры Apple совершают круизы по SO и просматривают внутри.

1 голос
/ 08 сентября 2010

Некоторые ошибки, компилятор не знает, что делать дальше.

Тот факт, что синтаксическая ошибка кажется вам локальной, одной локальной, не обязательно означает, что существует простое правило, которое было очевидно для автора компилятора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...