- Jul 01, 2011
-
-
Evan Cheng authored
llvm-svn: 134259
-
Richard Trieu authored
int f(int x) { if (int foo = f(bar)) {} return 0; } Clang produces the following error messages: paren_imbalance.cc:2:19: error: use of undeclared identifier 'bar' if (int foo = f(bar)) {} ^ paren_imbalance.cc:2:26: error: expected ')' if (int foo = f(bar)) {} ^ paren_imbalance.cc:2:6: note: to match this '(' if (int foo = f(bar)) {} ^ The second error is incorrect. This patch will stop Clang from producing an error on parenthesis imbalance during error recovery when there isn't one. llvm-svn: 134258
-
Evan Cheng authored
itineraries. - Refactor TargetSubtarget to be based on MCSubtargetInfo. - Change tablegen generated subtarget info to initialize MCSubtargetInfo and hide more details from targets. llvm-svn: 134257
-
Howard Hinnant authored
llvm-svn: 134252
-
Richard Trieu authored
Fix for PR7410. Allow functions in a derived class that improperly overwrite a virtual function in the base class to be inserted into the derived class function list to prevent extra errors every time the derived class is used. llvm-svn: 134251
-
Richard Smith authored
Fix AST representations of alias-declarations which define tag types. Inside classes, the tag types need to have an associated access specifier, and inside function definitions, they need to be included in the declarations of the DeclStmt. These issues manifested as assertions during template instantiation, and also in a WIP constexpr patch. llvm-svn: 134250
-
Howard Hinnant authored
Correct for new rules regarding implicitly deleted special members. http://llvm.org/bugs/show_bug.cgi?id=10191 llvm-svn: 134248
-
Jim Grosbach authored
(low two bits always zero, so off by one bit of encoded value). llvm-svn: 134247
-
Johnny Chen authored
A few of the auto-generated method docstrings don't look right, and may need to be fixed by either overwriting the auto-gened docstrings or some post-processing steps. llvm-svn: 134246
-
Douglas Gregor authored
CompilerInvocation on the stack, because other objects (e.g., the CompilerInstance) maintain an intrusive reference-counted pointer to the CompilerInvocation. This doesn't matter in the normal case, because we take back the CompilerInvocation. However, during crash recovery, this leads to us trying to free an object on the stack, and hilarity ensues. Fixes <rdar://problem/9652540>. llvm-svn: 134245
-
Evan Cheng authored
llvm-svn: 134244
-
Jim Grosbach authored
t2MOVCC[ri] are just t2MOV[ri] instructions, so properly pseudo-ize them. The Thumb1 versions, tMOVCC[ri] were only present for use by the size- reduction pass, so they're no longer necessary at all and can be deleted. llvm-svn: 134242
-
Evan Cheng authored
llvm-svn: 134240
-
Douglas Gregor authored
llvm-svn: 134238
-
Duncan Sands authored
copy is a kill") to see if it fixes the i386 dragonegg buildbot, which is timing out because gcc built with dragonegg is going into an infinite loop. llvm-svn: 134237
-
Francois Pichet authored
llvm-svn: 134236
-
Nick Lewycky authored
llvm-svn: 134235
-
Rafael Espindola authored
llvm-svn: 134234
-
Greg Clayton authored
llvm-svn: 134232
-
Rafael Espindola authored
llvm-svn: 134231
-
Greg Clayton authored
I am giving up the fight... llvm-svn: 134230
-
Rafael Espindola authored
llvm-svn: 134229
-
Rafael Espindola authored
llvm-svn: 134228
-
John McCall authored
This is kindof questionable but seems to do more-or-less the right thing. This is not a particularly friendly part of the ABI. llvm-svn: 134227
-
Jakob Stoklund Olesen authored
The constraints are represented by the register class of the original virtual register created for the inline asm. If the register class were included in the operand descriptor, we might be able to do this. For now, just give up on regclass inflation when inline asm is involved. No test case, this bug hasn't happened yet. llvm-svn: 134226
-
Douglas Gregor authored
type/expression/template argument/etc. is instantiation-dependent if it somehow involves a template parameter, even if it doesn't meet the requirements for the more common kinds of dependence (dependent type, type-dependent expression, value-dependent expression). When we see an instantiation-dependent type, we know we always need to perform substitution into that instantiation-dependent type. This keeps us from short-circuiting evaluation in places where we shouldn't, and lets us properly implement C++0x [temp.type]p2. In theory, this would also allow us to properly mangle instantiation-dependent-but-not-dependent decltype types per the Itanium C++ ABI, but we aren't quite there because we still mangle based on the canonical type in cases like, e.g., template<unsigned> struct A { }; template<typename T> void f(A<sizeof(sizeof(decltype(T() + T())))>) { } template void f<int>(A<sizeof(sizeof(int))>); and therefore get the wrong answer. llvm-svn: 134225
-
Akira Hatanaka authored
llvm-svn: 134224
-
Dan Gohman authored
llvm-svn: 134223
-
Eric Christopher authored
supporting the instruction that the constraint is for 'movw'. Part of rdar://9119939 llvm-svn: 134222
-
Dan Gohman authored
llvm-svn: 134221
-
Eric Christopher authored
for the 'x' register constraint. Part of rdar://9119939 llvm-svn: 134220
-
Evan Cheng authored
llvm-svn: 134219
-
Eric Christopher authored
Part of rdar://9119939 llvm-svn: 134217
-
Rafael Espindola authored
llvm-svn: 134216
-
Eric Christopher authored
Part of rdar://9307836 and rdar://9119939 llvm-svn: 134215
-
John McCall authored
that serve as the base template name of an unresolved-name to be mangled as a substitution. llvm-svn: 134213
-
Bill Wendling authored
llvm-svn: 134212
-
Eric Christopher authored
llvm-svn: 134211
-
Eric Christopher authored
llvm-svn: 134210
-
Bill Wendling authored
llvm-svn: 134209
-