- Jan 31, 2009
-
-
Fariborz Jahanian authored
nonfragile abi). llvm-svn: 63461
-
Fariborz Jahanian authored
to private extern (in objc2 nonfragile abi). llvm-svn: 63460
-
Daniel Dunbar authored
in terms of where the type resides in the containing object. This is a more clear embodiement of the spec & fixes a merging issue with unions. Down to 3/1000 failures. llvm-svn: 63455
-
Fariborz Jahanian authored
llvm-svn: 63453
-
Douglas Gregor authored
sequence. Previously, we weren't permitting the second step to call copy constructors, which left user-defined conversion sequences surprisingly broken. Now, we perform overload resolution among all of the constructors, but only accept the result if it makes the conversion a standard conversion. Note that this behavior is different from both GCC and EDG (which don't agree with each other, either); I've submitted a core issue on the matter. llvm-svn: 63450
-
Anders Carlsson authored
Turn on -flax-vector-conversions by default, issue a warning whenever one is done. Add a -fnolax-vector-conversions option. Fixes PR2862. llvm-svn: 63447
-
Fariborz Jahanian authored
llvm-svn: 63445
-
- Jan 30, 2009
-
-
Daniel Dunbar authored
computing in bytes not bits. We are now down to 22/1000 failures on the return types tests, and 18 of those are gcc bugs I believe. llvm-svn: 63438
-
Douglas Gregor authored
error, since both C99 and C++ consider it an error. For reference, GCC makes this a warning while G++ makes it an error. llvm-svn: 63435
-
Douglas Gregor authored
- Support initialization of reference members; complain if any reference members are left uninitialized. - Use C++ copy-initialization for initializing each element (falls back to constraint checking in C) - Make sure we diagnose when one tries to provide an initializer list for a non-aggregate. - Don't complain about empty initializers in C++ (they are permitted) - Unrelated but necessary: don't bother trying to convert the decl-specifier-seq to a type when we're dealing with a C++ constructor, destructor, or conversion operator; it results in spurious warnings. llvm-svn: 63431
-
Fariborz Jahanian authored
llvm-svn: 63430
-
Daniel Dunbar authored
class, not integer. llvm-svn: 63426
-
Ted Kremenek authored
the liveness state of block-level expressions could oscillate because of two issues: - The initial value before a merge was not always set to "Top" - The set of live block-level expressions is a union, not an intersection This fixes <rdar://problem/650084>. llvm-svn: 63421
-
Fariborz Jahanian authored
own sections (related to objc2 nonfragile abi). llvm-svn: 63418
-
Daniel Dunbar authored
matches gcc 4.2 (not llvm-gcc). llvm-svn: 63413
-
Ted Kremenek authored
llvm-svn: 63412
-
Fariborz Jahanian authored
llvm-svn: 63408
-
Daniel Dunbar authored
robust enough for general use. llvm-svn: 63406
-
Daniel Dunbar authored
x86_64 ABI: Split small vectors which cross an eightbyte boundary. Down to 33/500 return type failures. llvm-svn: 63404
-
Chris Lattner authored
parameter that allows users to omit the printing of the source location on a diagnostic. So basically it would omit the "abc.c:5:1: " at the beginning of the line." Patch by Alexei Svitkine! llvm-svn: 63396
-
Douglas Gregor authored
type" rather than the C definition. We do this because both C99 and Clang always use "aggregate type" as "aggregate or union type", and the C++ definition includes union types. llvm-svn: 63395
-
Anders Carlsson authored
llvm-svn: 63394
-
Steve Naroff authored
llvm-svn: 63393
-
Daniel Dunbar authored
- This brings us down to an 8% failure rate on the first 500 return types tests (from 12%). llvm-svn: 63383
-
Anders Carlsson authored
llvm-svn: 63379
-
Chris Lattner authored
llvm-svn: 63363
-
Douglas Gregor authored
LookupName et al. Instead, use an enum and a bool to describe its contents. Optimized the C/Objective-C path through LookupName, eliminating any unnecessarily C++isms. Simplify IdentifierResolver::iterator, removing some code and arguments that are no longer used. Eliminated LookupDeclInScope/LookupDeclInContext, moving all callers over to LookupName, LookupQualifiedName, or LookupParsedName, as appropriate. All together, I'm seeing a 0.2% speedup on Cocoa.h with PTH and -disable-free. Plus, we're down to three name-lookup routines. llvm-svn: 63354
-
Daniel Dunbar authored
llvm-svn: 63352
-
Fariborz Jahanian authored
(objc2 nonfragile-abi). llvm-svn: 63351
-
Ted Kremenek authored
- NonLoc::MakeVal() would use sizeof(unsigned) (literally) instead of consulting ASTContext for the size (in bits) of 'int'. While it worked, it was a conflation of concepts and using ASTContext.IntTy is 100% correct. - RegionStore::getSizeInElements() no longer assumes that a VarRegion has the type "ConstantArray", and handles the case when uses use ordinary variables as if they were arrays. - Fixed ElementRegion::getRValueType() to just return the rvalue type of its "array region" in the case the array didn't have ArrayType. - All of this fixes <rdar://problem/6541136> llvm-svn: 63347
-
Fariborz Jahanian authored
non-fragile abi. llvm-svn: 63343
-
- Jan 29, 2009
-
-
Ted Kremenek authored
retain/release checker: When generating summaries for CF/CG functions, allow arguments to "escape" if they are passed to a function containing the terms "InsertValue", "SetValue", or "AddValue". This fixes <rdar://problem/6539791>. llvm-svn: 63341
-
Fariborz Jahanian authored
build protocol translation table meta-data (objc2 non-fragile abi). llvm-svn: 63329
-
Douglas Gregor authored
Make CodeGen produce an error if we come across a non-constant initializer list that involves the GNU array-range designator extension llvm-svn: 63327
-
Fariborz Jahanian authored
Lot more to do in this area. llvm-svn: 63326
-
Chris Lattner authored
llvm-svn: 63324
-
Steve Naroff authored
This results in a 1.7% improvement for "Cocoa.h". If we can figure out how to return a "Decl *", rather than a Sema::LookupResult(), we will likely bump the speedup from 1.7%->2.5%. I verified this, however couldn't get it to work without breaking a fair number of C++ test cases. Will discuss with Doug offline. llvm-svn: 63320
-
Chris Lattner authored
diags around, eliminating #defines, etc. Patch by Anders Johnsen! llvm-svn: 63318
-
Douglas Gregor authored
represents an implicit value-initialization of a subobject of a particular type. This replaces the (ab)use of CXXZeroValueInitExpr within initializer lists for the "holes" that occur due to the use of C99 designated initializers. The new test case is currently XFAIL'd, because CodeGen's ConstExprEmitter (in lib/CodeGen/CGExprConstant.cpp) needs to be taught to value-initialize when it sees ImplicitValueInitExprs. llvm-svn: 63317
-
Douglas Gregor authored
have to try to guess which member is being initialized. llvm-svn: 63315
-