- Jan 29, 2009
-
-
Douglas Gregor authored
initializers. - We now initialize unions properly when a member other than the first is named by a designated initializer. - We now provide proper semantic analysis and code generation for GNU array-range designators *except* that side effects will occur more than once. We warn about this. llvm-svn: 63253
-
- Jan 28, 2009
-
-
Fariborz Jahanian authored
of class's meta-data (related to objc2 nonfragile abi). llvm-svn: 63251
-
Ted Kremenek authored
llvm-svn: 63250
-
Ted Kremenek authored
llvm-svn: 63249
-
Daniel Dunbar authored
- Merged into single ComplexEvaluator, these share too much logic to be worth splitting for float/int (IMHO). Will split on request. llvm-svn: 63248
-
Fariborz Jahanian authored
llvm-svn: 63246
-
Douglas Gregor authored
The approach I've taken in this patch is relatively straightforward, although the code itself is non-trivial. Essentially, as we process an initializer list we build up a fully-explicit representation of the initializer list, where each of the subobject initializations occurs in order. Designators serve to "fill in" subobject initializations in a non-linear way. The fully-explicit representation makes initializer lists (both with and without designators) easy to grok for codegen and later semantic analyses. We keep the syntactic form of the initializer list linked into the AST for those clients interested in exactly what the user wrote. Known limitations: - Designating a member of a union that isn't the first member may result in bogus initialization (we warn about this) - GNU array-range designators are not supported (we warn about this) llvm-svn: 63242
-
Ted Kremenek authored
retain/release checker: Always generate an "autorelease" summary for an "autorelease" message, and have the summary processing logic treat it as a no-op in GC mode. This change is motivated to encode more of the semantics in the summaries themselves for eventual better diagnostics. llvm-svn: 63241
-
Daniel Dunbar authored
llvm-svn: 63238
-
Ted Kremenek authored
llvm-svn: 63232
-
Ted Kremenek authored
Enhance PTHManager::Create() to take an optional Diagnostic* argument that can be used to report issues such as a missing PTH file. llvm-svn: 63231
-
Ted Kremenek authored
Fix TextDiagnosticPrinter::HandleDiagnostic to handle invalid FullSourceLocs that do not have a SourceManager. llvm-svn: 63230
-
Ted Kremenek authored
llvm-svn: 63229
-
Steve Naroff authored
Since it doesn't return a bool, is shouldn't be prefixed with 'is'. llvm-svn: 63226
-
Steve Naroff authored
This removes ~10% of the calls to Sema::isTypeName(), which amount to a little less than a 1% reduction in usertime (for Cocoa.h). llvm-svn: 63219
-
Fariborz Jahanian authored
llvm-svn: 63218
-
Sebastian Redl authored
Fix a stupid mistake in UnwrapSimilarPointers that made any two member pointers compatible as long as the pointee was the same. Make a few style corrections as suggested by Chris. llvm-svn: 63215
-
Douglas Gregor authored
rules are slightly different than in C, and now we handle both dialects properly. llvm-svn: 63211
-
Steve Naroff authored
Even though Sema::LookupDecl() is deprecated, it's still used all over the place. Simplifying the interface will make it easier to understand/optimize/convert. llvm-svn: 63210
-
Steve Naroff authored
Even though Sema::LookupDecl() is deprecated, it's still used all over the place. Simplifying the interface will make it easier to understand/optimize/convert. llvm-svn: 63208
-
Chris Lattner authored
llvm-svn: 63191
-
Ted Kremenek authored
retain/release checker: Improve diagnostics to indicate that CF objects are not automatically garbage collected. llvm-svn: 63187
-
Ted Kremenek authored
retain/release checker: Indicate whether a tracked object is a Core Foundation or Objective-C object. llvm-svn: 63186
-
Ted Kremenek authored
llvm-svn: 63184
-
Ted Kremenek authored
retain/release checker: Embed an "object type" into the RetEffect/RetVal objects to help distinguish between Objective-C and Core Foundation objects (for better diagnostics). llvm-svn: 63183
-
Ted Kremenek authored
llvm-svn: 63181
-
Ted Kremenek authored
llvm-svn: 63180
-
Ted Kremenek authored
llvm-svn: 63179
-
Ted Kremenek authored
llvm-svn: 63178
-
Ted Kremenek authored
llvm-svn: 63177
-
Ted Kremenek authored
llvm-svn: 63176
-
Ted Kremenek authored
Patch by Alexei Svitkine: Refactor Sema::ParseAST API to allow clients to pass as an argument a TranslationUnit object whose contents live beyond the call to ParseAST. llvm-svn: 63175
-
Fariborz Jahanian authored
accessibility of the ivar (related to objc2's non-fragile abi). llvm-svn: 63166
-
Fariborz Jahanian authored
Changed section names for meta-data (to match current gcc). llvm-svn: 63163
-
Ted Kremenek authored
llvm-svn: 63162
-
Ted Kremenek authored
Performance impact (clang -fsyntax-only INPUTS/Cocoa_h.m): non-PTH: 0.4% improvement PTH: 0.8% improvement llvm-svn: 63159
-
Nuno Lopes authored
llvm-svn: 63158
-
Ted Kremenek authored
llvm-svn: 63157
-
Steve Naroff authored
snaroff% time ../../Release-Asserts/bin/clang INPUTS/Cocoa_h.m 0.179u 0.051s 0:00.23 95.6% 0+0k 0+0io 0pf+0w snaroff% time ../../Release-Asserts/bin/clang INPUTS/Cocoa_h.m -disable-free 0.169u 0.052s 0:00.22 95.4% 0+0k 0+0io 0pf+0w llvm-svn: 63153
-
Sebastian Redl authored
llvm-svn: 63150
-