- Dec 15, 2009
-
-
Daniel Dunbar authored
- This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). llvm-svn: 91446
-
Eli Friedman authored
llvm-svn: 91411
-
Eli Friedman authored
llvm-svn: 91409
-
Eli Friedman authored
llvm-svn: 91396
-
- Dec 14, 2009
-
-
Douglas Gregor authored
CompleteConstructorCall to perform type-checking. llvm-svn: 91279
-
Anders Carlsson authored
llvm-svn: 91257
-
- Dec 11, 2009
-
-
Eli Friedman authored
llvm-svn: 91156
-
Eli Friedman authored
llvm-svn: 91152
-
Eli Friedman authored
llvm-svn: 91149
-
Eli Friedman authored
correctly. llvm-svn: 91136
-
Anders Carlsson authored
XFAIL this for now, fixing linkage bugs causes the order of globals to change. Will fix later today. llvm-svn: 91130
-
Anders Carlsson authored
llvm-svn: 91127
-
Eli Friedman authored
for logical not. llvm-svn: 91112
-
Eli Friedman authored
llvm-svn: 91108
-
Anders Carlsson authored
Improve linkage of RTTI data structures. Introduce CodeGenModule::GetAddrOfRTTI which figures out the right linkage of the RTTI information for the given type and whether it should be defined or not. I will migrate clients over to GetAddrOfRTTI in subsequent commits (with tests). llvm-svn: 91098
-
Eli Friedman authored
llvm-svn: 91097
-
Anders Carlsson authored
When an exception needs to be freed by calling __cxa_exception_free, make sure to stash away the exception pointer somewhere. This fixes an "Instruction does not dominate all uses!" verification error when compiling TableGen. llvm-svn: 91084
-
- Dec 10, 2009
-
-
Eli Friedman authored
this construct, but might as well for completeness. llvm-svn: 91071
-
Eli Friedman authored
recently introduced crash. llvm-svn: 91070
-
Anders Carlsson authored
llvm-svn: 91069
-
Eli Friedman authored
llvm-svn: 91043
-
Anders Carlsson authored
llvm-svn: 91027
-
Mike Stump authored
llvm-svn: 90994
-
Douglas Gregor authored
new notion of an "initialization sequence", which encapsulates the computation of the initialization sequence along with diagnostic information and the capability to turn the computed sequence into an expression. At present, I've only switched one CheckReferenceInit callers over to this new mechanism; more will follow. Aside from (hopefully) being much more true to the standard, the diagnostics provided by this reference-initialization code are a bit better than before. Some examples: p5-var.cpp:54:12: error: non-const lvalue reference to type 'struct Derived' cannot bind to a value of unrelated type 'struct Base' Derived &dr2 = b; // expected-error{{non-const lvalue reference to ... ^ ~ p5-var.cpp:55:9: error: binding of reference to type 'struct Base' to a value of type 'struct Base const' drops qualifiers Base &br3 = bc; // expected-error{{drops qualifiers}} ^ ~~ p5-var.cpp:57:15: error: ambiguous conversion from derived class 'struct Diamond' to base class 'struct Base': struct Diamond -> struct Derived -> struct Base struct Diamond -> struct Derived2 -> struct Base Base &br5 = diamond; // expected-error{{ambiguous conversion from ... ^~~~~~~ p5-var.cpp:59:9: error: non-const lvalue reference to type 'long' cannot bind to a value of unrelated type 'int' long &lr = i; // expected-error{{non-const lvalue reference to type ... ^ ~ p5-var.cpp:74:9: error: non-const lvalue reference to type 'struct Base' cannot bind to a temporary of type 'struct Base' Base &br1 = Base(); // expected-error{{non-const lvalue reference to ... ^ ~~~~~~ p5-var.cpp:102:9: error: non-const reference cannot bind to bit-field 'i' int & ir1 = (ib.i); // expected-error{{non-const reference cannot ... ^ ~~~~~~ p5-var.cpp:98:7: note: bit-field is declared here int i : 17; // expected-note{{bit-field is declared here}} ^ llvm-svn: 90992
-
- Dec 08, 2009
-
-
Eli Friedman authored
pointer. llvm-svn: 90840
-
Eli Friedman authored
DeclContext, so they don't completely disappear from the AST. I don't particularly like this fix, but I don't see any obviously better way to deal with it, and I think it's pretty clearly an improvement; comments welcome. llvm-svn: 90835
-
Eli Friedman authored
llvm-svn: 90832
-
Eli Friedman authored
llvm-svn: 90831
-
Eli Friedman authored
llvm-svn: 90825
-
Eli Friedman authored
or non-record aggregate members. It might be worth spending some time to optimize this code (and the parallel code for copy constructors) to memcpy in larger chunks, rather than copying one member at a time. Not sure exactly how beneficial that would be, but it seems like could help for large classes with, for example, a vtable pointer forcing the generation of a copy constructor. llvm-svn: 90823
-
Anders Carlsson authored
No need to add tail padding if the resulting LLVM struct type will have the same size as the final record size. llvm-svn: 90820
-
- Dec 07, 2009
-
-
Eli Friedman authored
llvm-svn: 90800
-
Anders Carlsson authored
llvm-svn: 90794
-
Anders Carlsson authored
llvm-svn: 90751
-
Eli Friedman authored
subsequent code which depends on a complete type does the right thing. llvm-svn: 90727
-
Sam Weinig authored
Don't print a void return type for C++ constructors and destructors when generating a predefined expr for them. llvm-svn: 90725
-
- Dec 06, 2009
-
-
Eli Friedman authored
generation, and make sure we generate thunks when the function is defined rather than when the vtable is defined. llvm-svn: 90722
-
Anders Carlsson authored
llvm-svn: 90711
-
Eli Friedman authored
Fixes PR5695. llvm-svn: 90702
-
Anders Carlsson authored
llvm-svn: 90687
-