1

私はXcodeで解析の問題を扱っています。これは、警告ではなく、失敗した問題をトリガーするものであり、これに関する情報はほとんどまたはまったくありません。LLVMに関連付けられているように見えますが、私はコンパイラーの担当者ではないため、技術文書がほとんどないことは私には何の意味もありません。技術以外の回答が存在することは、これを回避するのに役立ちません。

Organizerにアクセスして、このプロジェクトの派生データを削除しました。ターゲットアプリケーションに設定できるすべてのファイルが設定されていることを確認し、プロジェクトをクリーンアップし、「type-name」を(無駄に)検索しました。それでも、このエラーはプロジェクトを開くとすぐに表示されます。これは、今日プロジェクトを新しいマシンにチェックアウトしたときに始まったようですが、テストビルドに行くまで気づきませんでした。何か案は?

私は自分の日に答えを探すだけでなく、将来それを避けるためにエラーの説明も探しています。「重複した」質問がありますが、それに対する有用な答えはなく、実際に何が起こっているのかを説明するものは何もありません。

問題コードは以下のとおりです。エラーは行にフラグが付けられています@interface OCSystemReportParser ()

これが問題のヘッダーです...

#import <Foundation/Foundation.h>

@interface OCSystemReportParser : NSObject

- (void) parseSystemReports:(NSArray *)systemReports;

@end

...そして問題の実装...

#import "OCSystemReportParser.h"

/*
 System Report Keys
 */
NSString* const OCKeyApplications = @"Applications";
NSString* const OCKeyHardware = @"Hardware";
NSString* const OCKeyMemory = @"Memory";
NSString* const OCKeySoftware = @"Software";


/*
 Parsed Data Keys
 */

const NSString 

@interface OCSystemReportParser () // ERROR IS FLAGGED HERE

// keywords whose data we need
@property (strong, readwrite, nonatomic) NSArray *actionableKeywords;
// lines for the current report
@property (strong, readwrite, nonatomic) NSArray *reportSource;
// key-value pairs for the information in the system report
@property (strong, readwrite, nonatomic) NSMutableDictionary *parsedData;
// completed dictionaries of parsed reports
@property (strong, readwrite, nonatomic) NSMutableArray *completedReports;

@end

@implementation OCSystemReportParser

@synthesize actionableKeywords = _actionableKeywords;
@synthesize reportSource = _reportSource;
@synthesize parsedData = _parsedData;
@synthesize completedReports = _completedReports;

#pragma mark -
#pragma mark Object Lifecycle Stack
#pragma mark -

#pragma mark -
#pragma mark File Input Stack
#pragma mark -

/*
 Kicks off the process of data collection. This is the only public method.
 */
- (void) parseSystemReports:(NSArray *)systemReports {
    //NSLog(@"OCSystemReportParser:parseSystemReports:%@", systemReports);

    for ( NSString *path in systemReports ) {

        // reset the dictionary
        self.parsedData = [NSMutableDictionary dictionary];

        // generate and parse the source data
        self.reportSource = [self createArrayWithReport:[self readReport:path]];
        //[self parseReport];

        // save the results
        [self.completedReports addObject:self.parsedData];
    }

    [self outputCompletedReports];

}

/* 
 returns a string of the content of the report file
 */
- (NSString *) readReport:(NSString *)path {
    //NSLog(@"OCSystemReportParser:readReport:%@", path);
    return nil;
}

/*
 returns an array containing the report data clean of empty lines and whitespace
 */
- (NSArray *) createArrayWithReport:(NSString *)reportData {
    //NSLog(@"OCSystemReportParser:createArrayWithReport:");
    return nil;
}

#pragma mark -
#pragma mark Housekeeping Stack
#pragma mark -

/*
 Handles the initialization and population of helper data
 */

- (void) initializeKeyValues {
    //NSLog(@"OCSystemReportParser:initializeKeyValues:");
    self.actionableKeywords = [NSArray arrayWithObjects:OCKeyApplications, OCKeyHardware, OCKeyMemory, OCKeySoftware, nil];
}

#pragma mark -
#pragma mark Data Parsing Stack
#pragma mark -

/*
 Kicks off the parsing of the strings in the report array
 */
- (void) parseReport {
    //NSLog(@"OCSystemReportParser:parseReport:");

}

/*
 Gets the computer type and user name from the header of the report
 */
- (void) parseUserInformation {
    //NSLog(@"OCSystemReportParser:parseUserInformation:");
    // information is in line 1
    // ComputerModel Firstname Lastname
}

#pragma mark -
#pragma mark File Output Stack
#pragma mark -

/*
 Kicks off the output process starting with the completed reports
 */
- (void) outputCompletedReports {
    //NSLog(@"OCSystemReportParser:outputCompletedReports:");

}
4

1 に答える 1

3
const NSString 

@interface OCSystemReportParser () // ERROR IS FLAGGED HERE

問題はそのconst NSString声明です。無効であるか、セミコロンで終了しているため、コンパイラは、意味のあるものに組み合わせることができないと言ってい@interfaceますconst NSString

于 2012-07-13T15:16:19.870 に答える