- Nov 30, 2007
-
-
Steve Naroff authored
Yesterday, I simplified how we stream top-level decls. After a discussion with Ted, we both came to the conclusion that adding a "HandleTopLevelDeclaration" hook to ASConsumer is far more elegant. The default implementation of HandleTopLevelDeclaration will be responsible for iterating over the ScopedDecl (which has a chain of the decls:-). TODO: Once Ted adds HandleTopLevelDeclaration, make sure TagDecls are chainged appropriately... llvm-svn: 44445
-
- Nov 29, 2007
-
-
Christopher Lamb authored
Update the initializer's type, in addition to the decl, if we've changed the type of the decl based on it. llvm-svn: 44440
-
Ted Kremenek authored
floating-point literals that are represented exactly by the APFloat in FloatingLiteral. For such literals, we do not emit a warning since such checks are often performed in real code to see if a variable has changed from its original value. This heuristic clearly can lead to false negatives, but the hope is it will significantly reduce false positives to help make the compiler flag more useful. llvm-svn: 44424
-
Ted Kremenek authored
the APFloat representing the parsed literal can represent the literal value exactly. This is useful when performing various semantic checks on the code, and issuing appropriate warnings to users. llvm-svn: 44423
-
- Nov 28, 2007
-
-
Steve Naroff authored
Several fixes/simplifications surrounding how we stream top-level decl AST's. The following code... typedef struct cssm_data {} CSSM_DATA, *CSSM_DATA_PTR; struct Y { int A; }; struct X { int A; } D; struct X E, F; ...now produces the following output... > ../../Debug/bin/clang xx.c -ast-print Read top-level tag decl: 'cssm_data' typedef struct cssm_data CSSM_DATA; typedef struct cssm_data *CSSM_DATA_PTR; Read top-level tag decl: 'Y' Read top-level tag decl: 'X' Read top-level variable decl: 'D' Read top-level variable decl: 'E' Read top-level variable decl: 'F' ...which is much more accurate than the previous -ast-print output... typedef struct cssm_data CSSM_DATA; typedef struct cssm_data CSSM_DATA; Read top-level variable decl: 'D' Read top-level variable decl: 'E' Read top-level variable decl: 'E' llvm-svn: 44421
-
Chris Lattner authored
Bug pointed out by Michael Zolda, thanks! llvm-svn: 44408
-
- Nov 27, 2007
-
-
Chris Lattner authored
diagnostic without a location. This produces: simpleTest.c:2:18: error: initializer element is not constant int *myPointer = &(myArray[2]); ^~~~~~~~~~~~~ instead of: error: initializer element is not constant llvm-svn: 44375
-
Steve Naroff authored
Move the null pointer constant check from Sema::CheckSingleInitializer/ActOnCallExpr/CheckMessageArgumentTypes/ActOnReturnStmt to Sema::CheckSingleAssignmentConstraints. This makes sure all null pointer assignments are considered compatible. Thanks to Seo Sanghyeon for the bug, follow-through, and patch! llvm-svn: 44366
-
Chris Lattner authored
llvm-svn: 44358
-
Anders Carlsson authored
llvm-svn: 44356
-
Anders Carlsson authored
llvm-svn: 44350
-
Anders Carlsson authored
llvm-svn: 44349
-
- Nov 26, 2007
-
-
Chris Lattner authored
missing middle expression, and fix a codegen bug where we didn't correctly promote the condition to the right result type. This fixes PR1824. llvm-svn: 44322
-
- Nov 25, 2007
-
-
Ted Kremenek authored
Moved utility functions IgnoreParen and friends to be static inline functions defined in SemaUtil.h. Added SemaUtil.h to Xcode project. llvm-svn: 44312
-
Anders Carlsson authored
llvm-svn: 44311
-
- Nov 24, 2007
-
-
Anders Carlsson authored
llvm-svn: 44297
-
- Nov 23, 2007
-
-
Anders Carlsson authored
llvm-svn: 44289
-
- Nov 22, 2007
-
-
Anders Carlsson authored
Store output and input operands as well as clobber information in the AsmStmt. Ted, could you please review the serialization/deserialization code? llvm-svn: 44266
-
- Nov 20, 2007
-
-
Anders Carlsson authored
llvm-svn: 44255
-
Chris Lattner authored
llvm-svn: 44253
-
- Nov 17, 2007
-
-
Steve Naroff authored
Now that we are passing back "free standing decls", make sure -ast-dump works like -ast-print. Also added a cast to be safe... llvm-svn: 44209
-
Steve Naroff authored
Make sure Sema::ParsedFreeStandingDeclSpec() returns a decl representing the type. Adding basic printing to StmtPrinter::PrintRawDecl(). llvm-svn: 44208
-
- Nov 16, 2007
-
-
Chris Lattner authored
This fixes a bug reported by Seo Sanghyeon. This was meant to be committed yesterday, but the commit failed. doh. llvm-svn: 44190
-
- Nov 15, 2007
-
-
Steve Naroff authored
Finish up variadic methods/messages. llvm-svn: 44172
-
Steve Naroff authored
Implement support for variadic methods (work in progress). llvm-svn: 44171
-
Steve Naroff authored
- Implement ivar rewrite (patch by Fariborz). - RewriteMessageExpr()...make implicit casts explicit with synthesizing call (removing warnings when calling objc_msgSend()). llvm-svn: 44156
-
- Nov 14, 2007
-
-
Steve Naroff authored
Allow properties within a protocol. The case below was asserting...now it works fine. @protocol CAMediaTiming @property int beginTime; @end Comments in the code tell the rest of the story... llvm-svn: 44117
-
Chris Lattner authored
to declare a function with a typedef: typedef int unary_int_func(int arg); unary_int_func add_one; This patch contributed by Seo Sanghyeon! llvm-svn: 44100
-
- Nov 13, 2007
-
-
Nate Begeman authored
variables. llvm-svn: 44073
-
Nate Begeman authored
llvm-svn: 44069
-
Ted Kremenek authored
are compared against builtins such as __builtin_inf. llvm-svn: 44058
-
Ted Kremenek authored
llvm-svn: 44054
-
Steve Naroff authored
Teach Sema::CheckCompareOperands() about "void *" (C99 6.5.9p2) llvm-svn: 44047
-
Steve Naroff authored
Tune the lookup logic in Sema::ActOnInstanceMessage() to handle private methods (declared within the implementation). llvm-svn: 44041
-
Fariborz Jahanian authored
llvm-svn: 44038
-
Steve Naroff authored
Fix Sema::CheckAssignmentConstraints() to operate on the canonical, unqualified type. llvm-svn: 44036
-
- Nov 12, 2007
-
-
Fariborz Jahanian authored
llvm-svn: 44028
-
Steve Naroff authored
Add category method definitions incrementally, removing a FIXME (like we do for class implementations). llvm-svn: 44027
-
Fariborz Jahanian authored
llvm-svn: 44026
-
Fariborz Jahanian authored
llvm-svn: 44025
-