- May 20, 2010
-
-
Daniel Dunbar authored
Driver/MC: Add 'clang -cc1as' integrated assembler tool, currently accepts approximately the same interface as 'llvm-mc'. llvm-svn: 104239
-
Daniel Dunbar authored
llvm-svn: 104237
-
Fariborz Jahanian authored
be turned into a setter call (fixes radar 8008649). llvm-svn: 104235
-
Douglas Gregor authored
llvm-svn: 104230
-
Douglas Gregor authored
llvm-svn: 104229
-
Douglas Gregor authored
particular issue was the cause of the Boost.Interprocess failures, and in general will lead to horrendous, hard-to-diagnose miscompiles. The assertion itself has survives self-host and a full Boost build, so we are close to eradicating this problem in C++. Note that the assertion is *not* turned on for Objective-C++, where we still have problems with introducing memcpy's of non-POD class types. That part of the assertion will go away as soon as we fix the known issues in Objective-C++. llvm-svn: 104227
-
Abramo Bagnara authored
llvm-svn: 104226
-
David Chisnall authored
Fix my inability to spell 'continue' and a case where message sends returning non-pointer-sized things were generating invalid IR inside @try blocks. llvm-svn: 104222
-
Abramo Bagnara authored
Renamed misleading getSourceRange -> getLocalSourceRange and getFullSourceRange -> getSourceRange for TypeLoc. llvm-svn: 104220
-
Douglas Gregor authored
subobject. Previously, we could only properly bind to a base class subobject while extending the lifetime of the complete object (of a derived type); for non-static data member subobjects, we could memcpy (!) the result and bind to that, which is rather broken. Now, we pull apart the expression that we're binding to, to figure out which subobject we're accessing, then construct the temporary object (adding a destruction if needed) and, finally, dig out the subobject we actually meant to access. This fixes yet another instance where we were memcpy'ing rather than doing the right thing. However, note the FIXME in references.cpp: there's more work to be done for binding to subobjects, since the AST is incorrectly modeling some member accesses in base classes as lvalues when they are really rvalues. llvm-svn: 104219
-
John McCall authored
llvm-svn: 104218
-
John McCall authored
<rdar://problem/7995494>. llvm-svn: 104217
-
Douglas Gregor authored
class type (that uses a return slot), pass the return slot to the callee directly rather than allocating new storage and trying to copy the object. This appears to have been the cause of the remaining two Boost.Interprocess failures. llvm-svn: 104215
-
Douglas Gregor authored
llvm-svn: 104207
-
Douglas Gregor authored
instance variables: - Use isRecordType() rather than isa<RecordType>(), so that we see through typedefs in ivar types. - Mark the destructor as referenced - Perform C++ access control on the destructor llvm-svn: 104206
-
-
John McCall authored
(the codegen works here, too, but that's annoying to test without execution) llvm-svn: 104202
-
Chris Lattner authored
c++'03 code and variadic support "needs work". llvm-svn: 104195
-
Chris Lattner authored
instead of new[]'d. This greatly reduces the number of new[]'s, and guess what, they were all leaked. This adds a fixme in this hunk: unsigned NumPackArgs = NumFlatArgs - PackBeginIndex; + // FIXME: NumPackArgs shouldn't be negative here??? if (NumPackArgs) - PackArgs = &FlatArgs[PackBeginIndex]; + PackArgs = FlatArgs.data()+PackBeginIndex; where test/SemaTemplate/variadic-class-template-2.cpp is accessing the vector out of range and NumPackArgs is negative. I assume variadic template args are completely hosed. llvm-svn: 104194
-
Chris Lattner authored
be a copy constructor (since it isn't one semantically) and fix the ownership bits it sets to be correct! llvm-svn: 104192
-
Chris Lattner authored
"structure" arg lists, the first step to fixing some massive memory leaks. llvm-svn: 104191
-
Jim Grosbach authored
llvm-svn: 104188
-
Douglas Gregor authored
create a temporary copy of both the "true" and "false" results. Fixes the Boost.Interprocess failures. Daniel did all the hard work of tracking down the issue, I get to type up the trivial fix for this horrible miscompile. llvm-svn: 104184
-
- May 19, 2010
-
-
Abramo Bagnara authored
llvm-svn: 104169
-
Fariborz Jahanian authored
object variables and functions returning such objects. llvm-svn: 104168
-
Daniel Dunbar authored
occuring on..." which breaks some Objective-C code. Working on getting a test case... llvm-svn: 104150
-
Douglas Gregor authored
llvm-svn: 104140
-
Douglas Gregor authored
some seriously non-linear performance with deeply nested template instantiations, as shown in PR6998. llvm-svn: 104139
-
Ted Kremenek authored
llvm-svn: 104135
-
Douglas Gregor authored
llvm-svn: 104121
-
Benjamin Kramer authored
llvm-svn: 104118
-
Chandler Carruth authored
template names. We were completely missing naming classes for many unqualified lookups, but this didn't trigger code paths that need it. This removes part of an optimization that re-uses the template name lookup done by the parser to determine if explicit template arguments actually form a template-id. Unfortunately the technique for avoiding the duplicate lookup lost needed data such as the class context in which the lookup succeeded. llvm-svn: 104117
-
Douglas Gregor authored
way regardless of whether some overloaded operator functions were found by name lookup within the template. Fixes PR6851. llvm-svn: 104107
-
Douglas Gregor authored
llvm-svn: 104106
-
Douglas Gregor authored
llvm-svn: 104105
-
Chandler Carruth authored
the same .cpp file as provided the definitions referenced these functions, hiding the issue. However, they are clearly no longer inline. Let me know if there is a reason to move their definitions to the header and make them truly inline. llvm-svn: 104104
-
Chandler Carruth authored
welcome for one. llvm-svn: 104101
-
Fariborz Jahanian authored
gc attributes to be inline with Objective-C (for radar 7925141). llvm-svn: 104084
-
Douglas Gregor authored
expressions in attributes, pragmas. llvm-svn: 104083
-
Douglas Gregor authored
involves extending implicit conversion sequences to model vector conversions and vector splats, along with teaching the C++ conditional operator-checking code about vector types. Fixes <rdar://problem/7983501>. llvm-svn: 104081
-