Ich bin ein Anfänger in der statischen Analyse von Ziel-c durch Clang jetzt. Ich habe ein Problem, dass, wenn ich die ReturnStmt durch RecursiveASTVisitor finde, Clang manchmal die ReturnStmt nicht finden kann. Der RecursiveASTVisitor Code wie folgt:Wie bekomme ich die Return Stmt von Ziel-c durch clang-3.9?
class MyASTVisitor : public RecursiveASTVisitor<MyASTVisitor> {
public:
MyASTVisitor(Rewriter &R) : TheRewriter(R) {}
.........
else if(isa<ReturnStmt>(s)){
//The Return Stmt find block
ReturnStmt *returnStat = cast<ReturnStmt>(s);
TheRewriter.InsertText(returnStat->getLocStart(),"//the return stmt\n",true,true);
}
return true;
}}
Und das ist das Ergebnis Das erste Ergebnis die Rückkehr Anw
int main (int argc, const char* argv[]) {
@autoreleasepool {
//the func--->NSLog() begin called!
NSLog (@"Programming is fun!");
}
//the return stmt
return 0; }
Aber die zweite es mich finden kann nicht finden,
int main(int argc, char * argv[]) {
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}}
@Nishant Sharma – CurryChen
Nun, ich habe Ihr Tag nicht bekommen: [Wie zu erwähnen, jeden Benutzer in einem Beitrag Tag] (http://meta.stackexchange.com/questions/97471/how-to-mention-tag- Jeder-Benutzer-in-einem-Post). Ich möchte Sie jemanden markieren. Was die Frage betrifft, kann ich sehen, warum das passieren würde, ich werde in Kürze eine Antwort zusammenstellen. –