| Commit message (Collapse) | Author | Age | Files | Lines | 
| | 
| 
| 
| 
| 
|  | 
errors for additional uses of this invalid typedef.
llvm-svn: 131043
 | 
| | 
| 
| 
| 
| 
|  | 
DeclContext's lookup table when they aren't in any identifier namespace.
llvm-svn: 131037
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
any names that aren't in the appropriate identifier namespaces. Fixes
an embarrassing bug where we give a redefinition error due to an
Objective-C category (<rdar://problem/9388207>).
llvm-svn: 131036
 | 
| | 
| 
| 
| 
| 
|  | 
non-bitfield following a bitfield if size of their types differ.
llvm-svn: 131032
 | 
| | 
| 
| 
| 
| 
|  | 
a non-bitfield if size of their types differ.
llvm-svn: 131023
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
build a precompiled header. Use this information to eliminate the call
to SourceManager::getLocation() while loading a precompiled preamble,
since SourceManager::getLocation() itself causes unwanted
deserialization.
Fixed <rdar://problem/9399352>.
llvm-svn: 131021
 | 
| | 
| 
| 
|  | 
llvm-svn: 131019
 | 
| | 
| 
| 
|  | 
llvm-svn: 131018
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
function definition.
Allow to include or exclude code depending on if a symbol exists or not. Just like a #ifdef but for C/C++ symbols.
More doc: http://msdn.microsoft.com/en-us/library/x7wy9xh3(v=VS.100).aspx
Support at class and namespace scopes will be added later.
llvm-svn: 131014
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
- New isDefined() function checks for deletedness
 - isThisDeclarationADefinition checks for deletedness
 - New doesThisDeclarationHaveABody() does what
   isThisDeclarationADefinition() used to do
 - The IsDeleted bit is not propagated across redeclarations
 - isDeleted() now checks the canoncial declaration
 - New isDeletedAsWritten() does what it says on the tin.
 - isUserProvided() now correct (thanks Richard!)
This fixes the bug that we weren't catching
void foo() = delete;
void foo() {}
as being a redefinition.
llvm-svn: 131013
 | 
| | 
| 
| 
| 
| 
|  | 
and a lot of downside (like PR9850, which is about clang's xmmintrin.h making an unexpected transformation on an expression involving _mm_add_epi32).
llvm-svn: 131000
 | 
| | 
| 
| 
| 
| 
|  | 
a bit messy, but it is correct as long as the method in question doesn't use indirect gotos.  A couple of possible alternative implementations are outlined in FIXME's in this patch. rdar://problem/8077308 .
llvm-svn: 130993
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
CXTranslationUnit_NestedMacroInstantiations, which indicates whether
we want to see "nested" macro instantiations (e.g., those that occur
inside other macro instantiations) within the detailed preprocessing
record. Many clients (e.g., those that only care about visible tokens)
don't care about this information, and in code that uses preprocessor
metaprogramming, this information can have a very high cost.
Addresses <rdar://problem/9389320>.
llvm-svn: 130990
 | 
| | 
| 
| 
| 
| 
|  | 
This enables incremental codegen, where the initializer array can be removed from the module, such that only new initializers will be emitted and run.
llvm-svn: 130986
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
function. Extend the logic to check if the input was compiled.
Use -relax-all as default only if -O0 is used for compilation.
Fixes bug 9290.
llvm-svn: 130983
 | 
| | 
| 
| 
| 
| 
|  | 
class constructor/destructor. Fixes PR7966.
llvm-svn: 130982
 | 
| | 
| 
| 
| 
| 
|  | 
properly reflect its behavior.
llvm-svn: 130981
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
Explictly defaultedness is correctly reflected on the AST, but there are
no changes to how that affects the definition of functions or much else
really.
llvm-svn: 130974
 | 
| | 
| 
| 
| 
| 
| 
|  | 
direction and not introduce things in the wrong place three different
times.
llvm-svn: 130968
 | 
| | 
| 
| 
| 
| 
|  | 
template-id in an alias declaration was meant to be a specialization. Use a generic, but more accurate, diagnostic.
llvm-svn: 130961
 | 
| | 
| 
| 
| 
| 
|  | 
// rdar://9362887
llvm-svn: 130956
 | 
| | 
| 
| 
|  | 
llvm-svn: 130953
 | 
| | 
| 
| 
| 
| 
|  | 
packed attribute on the field. //rdar://9217290
llvm-svn: 130948
 | 
| | 
| 
| 
| 
| 
|  | 
broke with the MMX rewrite a while back.
llvm-svn: 130945
 | 
| | 
| 
| 
| 
| 
| 
|  | 
blockScopeInfo's CapturesCXXThis field need get set as
well. // rdar://9362021. John M. please review.
llvm-svn: 130930
 | 
| | 
| 
| 
|  | 
llvm-svn: 130929
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
sense). Fixes <rdar://problem/9366066> by eliminating an inconsistency
between C++ overloading (which handled scoped enumerations correctly)
and C binary operator type-checking (which didn't).
llvm-svn: 130924
 | 
| | 
| 
| 
| 
| 
| 
|  | 
also include methods with zero-argument selectors. Implements
<rdar://problem/9048332>.
llvm-svn: 130922
 | 
| | 
| 
| 
| 
| 
|  | 
StoredDiagnostic.
llvm-svn: 130919
 | 
| | 
| 
| 
| 
| 
|  | 
entire TranslationUnit.  Patch by Lei Zhang.
llvm-svn: 130913
 | 
| | 
| 
| 
| 
| 
|  | 
There's some unused stuff for now.
llvm-svn: 130912
 | 
| | 
| 
| 
|  | 
llvm-svn: 130909
 | 
| | 
| 
| 
|  | 
llvm-svn: 130906
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
the overloading of member and non-member functions results in arity
mismatches that don't fit well into our overload-printing scheme. This
only happens for invalid code (which breaks the arity invariants for
these cases), so just suppress the diagnostic rather than inventing
anything new. Fixes <rdar://problem/9222009>.
llvm-svn: 130902
 | 
| | 
| 
| 
| 
| 
|  | 
foo.pic.gcno instead of foo.gcno.
llvm-svn: 130899
 | 
| | 
| 
| 
|  | 
llvm-svn: 130898
 | 
| | 
| 
| 
| 
| 
| 
|  | 
that we've previously seen, both in declared methods and from previous
KVC completions, to eliminate duplicates. Fixes <rdar://problem/9162207>.
llvm-svn: 130890
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
|  | 
Increase robustness of the delegating constructor cycle detection
mechanism. No more infinite loops on invalid or logic errors leading to
false results. Ensure that this is maintained correctly accross
serialization.
llvm-svn: 130887
 | 
| | 
| 
| 
| 
| 
|  | 
crashes during PCH validation.
llvm-svn: 130886
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
information. Rather than looking at the declaration kind to figure out
what TypeLoc to build, look at the type; it makes so much more
sense. Fixes <rdar://problem/9086649>.
llvm-svn: 130882
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
We can use this to produce nice diagnostics (and try to fixit-and-recover) in
various cases where we might see "MyFunction" instead of "MyFunction()". The
changes in SemaExpr are an example of how to use isExprCallable.
llvm-svn: 130878
 | 
| | 
| 
| 
| 
| 
| 
|  | 
template parameter of type 'bool', force the value to be zero or
one. Fixes <rdar://problem/9169404>.
llvm-svn: 130873
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Ivar offsets for synthesized ivars are wrong, which could end up with a large
number of dirty pages because of ivar fixups at runtime. When we pack all of the
synthesized ivars into the same section, it limits the number of dirty pages
created. Place them in the "__DATA,__objc_ivar" section.
<rdar://problem/9374905>
llvm-svn: 130870
 | 
| | 
| 
| 
|  | 
llvm-svn: 130866
 | 
| | 
| 
| 
|  | 
llvm-svn: 130864
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
Adjacent bit fields are packed into the same 1-, 2-, or
4-byte allocation unit if the integral types are the same
size. // rdar://8823265.
llvm-svn: 130851
 | 
| | 
| 
| 
| 
| 
|  | 
Like in r126648, provide (empty) default implementation for pure virtual getMemoryBufferSizes(). Not all use cases have meaningful implementations.
llvm-svn: 130838
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
libstdc++6-4.5, as collected from http://packages.ubuntu.com/search?mode=exactfilename&suite=natty§ion=all&arch=any&searchon=contents&keywords=c%2B%2Blocale.h and http://packages.debian.org/wheezy/armel/libstdc++6-4.5-dev/filelist
Fixes compilation with clang++ on Ubuntu 11.04.
llvm-svn: 130837
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
This is more efficient as it's all done at once at the end of the TU.
This could still get expensive, so a flag is provided to disable it. As
an added bonus, the diagnostics will now print out a cycle.
The PCH test is XFAILed because we currently can't deal with a note
emitted in the header and I, being tired, see no other way to verify the
serialization of delegating constructors. We should probably address
this problem /somehow/ but no good solution comes to mind.
llvm-svn: 130836
 | 
| | 
| 
| 
|  | 
llvm-svn: 130833
 |