- May 27, 2009
-
-
Douglas Gregor authored
declaration references. The key realization is that dependent Decls, which actually require instantiation, can only refer to the current instantiation or members thereof. And, since the current context during instantiation contains all of those members of the current instantiation, we can simply find the real instantiate that matches up with the "current instantiation" template. llvm-svn: 72486
-
Bill Wendling authored
llvm-svn: 72485
-
Douglas Gregor authored
improve some error recovery with explicit template instantiation. llvm-svn: 72484
-
Bruno Cardoso Lopes authored
llvm-svn: 72483
-
Douglas Gregor authored
within a template now have a link back to the enumeration from which they were instantiated. This means that we can now find the instantiation of an anonymous enumeration. llvm-svn: 72482
-
Douglas Gregor authored
references. There are several smallish fixes here: - Make sure we look through template parameter scope when determining whether we're parsing a nested class (or nested class *template*). This makes sure that we delay parsing the bodies of inline member functions until after we're out of the outermost class (template) scope. - Since the bodies of member functions are always parsed "out-of-line", even when they were declared in-line, teach unqualified name lookup to look into the (semantic) parents. - Use the new InstantiateDeclRef to handle the instantiation of a reference to a declaration (in DeclRefExpr), which drastically simplifies template instantiation for DeclRefExprs. - When we're instantiating a ParmVarDecl, it must be in the current instantiation scope, so only look there. Also, remove the #if 0's and FIXME's from the dynarray example, which now compiles and executes thanks to Anders and Eli. llvm-svn: 72481
-
Douglas Gregor authored
llvm-svn: 72480
-
Anders Carlsson authored
llvm-svn: 72479
-
Anders Carlsson authored
llvm-svn: 72478
-
Anders Carlsson authored
llvm-svn: 72477
-
Fariborz Jahanian authored
Patch by Benjamin Kramer. llvm-svn: 72476
-
Steve Naroff authored
This allows me to remove some API that I don't want to carry over to ObjCObjectPointerType. No functionality change. llvm-svn: 72475
-
Anders Carlsson authored
llvm-svn: 72474
-
Oscar Fuentes authored
used by CMake with --ldflags. llvm-svn: 72470
-
Eli Friedman authored
BUILD_VECTOR. llvm-svn: 72469
-
Eli Friedman authored
llvm-svn: 72468
-
Eli Friedman authored
llvm-svn: 72467
-
Eli Friedman authored
llvm-svn: 72465
-
Eli Friedman authored
llvm-svn: 72464
-
Eli Friedman authored
of a reference correctly. llvm-svn: 72463
-
Eli Friedman authored
llvm-svn: 72462
-
Douglas Gregor authored
instantiation of a declaration from the template version (or version that lives in a template) and a given set of template arguments. This needs much, much more testing, but it suffices for simple examples like typedef T* iterator; iterator begin(); llvm-svn: 72461
-
Douglas Gregor authored
overloaded operator[] or overloaded postfix unary operator (++, --). Thanks to Eli for finding this bug! llvm-svn: 72460
-
Eli Friedman authored
type. llvm-svn: 72459
-
Anders Carlsson authored
llvm-svn: 72458
-
Anders Carlsson authored
llvm-svn: 72457
-
Eli Friedman authored
llvm-svn: 72456
-
Eli Friedman authored
llvm-svn: 72455
-
Eli Friedman authored
llvm-svn: 72454
-
Dan Gohman authored
llvm-svn: 72453
-
Dan Gohman authored
possible. For example, it now emits %p.2.ip.1 = getelementptr [3 x [3 x double]]* %p, i64 2, i64 %tmp, i64 1 instead of the equivalent but less obvious %p.2.ip.1 = getelementptr [3 x [3 x double]]* %p, i64 0, i64 %tmp, i64 19 llvm-svn: 72452
-
Dan Gohman authored
beyond their associated static array type. I believe that this fixes a legitimate bug, because BasicAliasAnalysis already has code to check for this condition that works for non-constant indices, however it was missing the case of constant indices. With this change, it checks for both. This fixes PR4267, and miscompiles of SPEC 188.ammp and 464.h264.href. llvm-svn: 72451
-
Anders Carlsson authored
llvm-svn: 72450
-
Anders Carlsson authored
llvm-svn: 72449
-
Mike Stump authored
one else is tempted to copy the style, incorrectly. llvm-svn: 72448
-
Eli Friedman authored
handling for every single opcode. llvm-svn: 72447
-
Anders Carlsson authored
llvm-svn: 72446
-
Eli Friedman authored
FP_TO_XINT. Necessary for some cleanups I'm working on. Updated from the previous version (r72431) to fix a bug and make some things a bit clearer. llvm-svn: 72445
-
Mike Stump authored
llvm-svn: 72444
-
Dale Johannesen authored
llvm-svn: 72443
-