| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
completely into CXXRecordDecl, by adding a new completeDefinition()
function. This required a little reshuffling of the final-overrider
checking code, since the "abstract" calculation in the presence of
abstract base classes needs to occur in
CXXRecordDecl::completeDefinition() but we don't want to compute final
overriders more than one in the common case.
llvm-svn: 115007
|
| |
|
|
| |
llvm-svn: 115004
|
| |
|
|
|
|
| |
CXXRecordDecl::DefinitionData, rather than having Sema mark the bit.
llvm-svn: 114993
|
| |
|
|
|
|
| |
<rdar://problem/8459981>.
llvm-svn: 114984
|
| |
|
|
|
|
| |
Fixes rdar://8476159.
llvm-svn: 114982
|
| |
|
|
|
|
|
|
|
|
|
|
| |
in CXXRecordDecl itself. Yes, this is also part of <rdar://problem/8459981>.
This reinstates r114924, with one crucial bug fix: we were ignoring
the implicit fields created by anonymous structs/unions when updating
the bits in CXXRecordDecl, which means that a class/struct containing
only an anonymous class/struct would be considered "empty". Hilarity
follows.
llvm-svn: 114980
|
| |
|
|
|
|
| |
the header can get away with forward declarations only for ObjCMethodList and Selector. Fixes <rdar://8467631>.
llvm-svn: 114978
|
| |
|
|
|
|
|
|
| |
Centralize the management of CXXRecordDecl::DefinitionData's Aggregate
and PlainOldData bits in CXXRecordDecl itself. Another milepost on the
road toward <rdar://problem/8459981>.
llvm-svn: 114977
|
| |
|
|
|
|
|
|
| |
verify that we aren't in a message-send expression before digging into
the identifier or looking ahead more tokens. Fixes a regression
(<rdar://problem/8483253>) I introduced with bracket insertion.
llvm-svn: 114968
|
| |
|
|
|
|
|
|
| |
"(void *)false".
Fixes rdar://8459342.
llvm-svn: 114955
|
| |
|
|
|
|
| |
rdar://8483139.
llvm-svn: 114954
|
| |
|
|
| |
llvm-svn: 114940
|
| |
|
|
| |
llvm-svn: 114937
|
| |
|
|
|
|
| |
patches.
llvm-svn: 114936
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
one of them) was causing a series of failures:
http://google1.osuosl.org:8011/builders/clang-x86_64-darwin10-selfhost/builds/4518
svn merge -c -114929 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114929 into '.':
U include/clang/Sema/Sema.h
U include/clang/AST/DeclCXX.h
U lib/Sema/SemaDeclCXX.cpp
U lib/Sema/SemaTemplateInstantiateDecl.cpp
U lib/Sema/SemaDecl.cpp
U lib/Sema/SemaTemplateInstantiate.cpp
U lib/AST/DeclCXX.cpp
svn merge -c -114925 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114925 into '.':
G include/clang/AST/DeclCXX.h
G lib/Sema/SemaDeclCXX.cpp
G lib/AST/DeclCXX.cpp
svn merge -c -114924 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114924 into '.':
G include/clang/AST/DeclCXX.h
G lib/Sema/SemaDeclCXX.cpp
G lib/Sema/SemaDecl.cpp
G lib/AST/DeclCXX.cpp
U lib/AST/ASTContext.cpp
svn merge -c -114921 https://llvm.org/svn/llvm-project/cfe/trunk
--- Reverse-merging r114921 into '.':
G include/clang/AST/DeclCXX.h
G lib/Sema/SemaDeclCXX.cpp
G lib/Sema/SemaDecl.cpp
G lib/AST/DeclCXX.cpp
llvm-svn: 114933
|
| |
|
|
|
|
|
|
|
|
|
| |
HasTrivialConstructor, HasTrivialCopyConstructor,
HasTrivialCopyAssignment, and HasTrivialDestructor bits in
CXXRecordDecl's methods. This completes all but the Abstract bit and
the set of conversion functions, both of which will require a bit of
extra work. The majority of <rdar://problem/8459981> is now
implemented (but not all of it).
llvm-svn: 114929
|
| |
|
|
|
|
|
| |
Polymorphic bit in CXXRecordDecl itself. Yes, this is also part of
<rdar://problem/8459981>.
llvm-svn: 114925
|
| |
|
|
|
|
| |
in CXXRecordDecl itself. Yes, this is also part of <rdar://problem/8459981>.
llvm-svn: 114924
|
| |
|
|
| |
llvm-svn: 114922
|
| |
|
|
|
|
|
| |
and PlainOldData bits in CXXRecordDecl itself. Another milepost on the
road toward <rdar://problem/8459981>.
llvm-svn: 114921
|
| |
|
|
|
|
|
| |
DeclaredDestructor and UserDeclaredDestructor bits in CXXRecordDecl
itself. Another step on the road to <rdar://problem/8459981>.
llvm-svn: 114918
|
| |
|
|
|
|
|
| |
passed to nonnull attributed functions. Implements radar
6857843.
llvm-svn: 114917
|
| |
|
|
|
|
|
|
| |
already be determined by isCopyAssignmentOperator(), and was set too
late in the process for all clients to see the appropriate
value. Cleanup only; no functionality change.
llvm-svn: 114916
|
| |
|
|
|
|
| |
them the correct IDs. Fixes a crash in XCode.
llvm-svn: 114913
|
| |
|
|
|
|
|
| |
CXXRecordDecl::DefinitionData::DeclaredCopyAssignment, for
copy-assignment operators. Another step toward <rdar://problem/8459981>.
llvm-svn: 114899
|
| |
|
|
|
|
|
| |
"shift with non-immediate" intrinsics. It gets here because we they aren't
immediates anymore.
llvm-svn: 114890
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
DeclaredCopyConstructor bits in CXXRecordDecl's DefinitionData
structure. Rather than having Sema call addedConstructor or set the
bits directly at semi-random places, move all of the logic for
managing these bits into CXXRecordDecl itself and tie the
addedConstructor call into DeclContext::addDecl().
This makes it easier for AST-building clients to get the right bits
set in DefinitionData, and is one small part of <rdar://problem/8459981>.
llvm-svn: 114889
|
| |
|
|
|
|
|
|
| |
templates whose explicit instantiation is first declared and then defined.
Fixes http://llvm.org/pr8207
llvm-svn: 114874
|
| |
|
|
|
|
|
|
|
| |
(on functions with no pointer arguments) but only when
the attribute has not been coming from a macro
instantiation in a header file. Fixes first part
of radar 6857843.
llvm-svn: 114860
|
| |
|
|
|
|
|
| |
into a temporary is elidable as well.
(Finishes up radar 8291337).
llvm-svn: 114845
|
| |
|
|
| |
llvm-svn: 114836
|
| |
|
|
| |
llvm-svn: 114820
|
| |
|
|
|
|
| |
That, and keep aKor happy :P.
llvm-svn: 114816
|
| |
|
|
| |
llvm-svn: 114814
|
| |
|
|
|
|
| |
using generic GCC tools.
llvm-svn: 114793
|
| |
|
|
|
|
|
|
|
|
| |
automatic storage added:
- LocalScope class with iterator used to pointing into it,
- fat doxygen comment for LocalScope indended usage,
- BlockScopePosPair class used for storing jump targets/sources (for: goto, break, continue), that replaces raw CFGBlock pointer used earlier for this purpose.
llvm-svn: 114790
|
| |
|
|
|
|
|
| |
for property reference expression (of c++ object type)
in the conditional expression. Fixes // rdar://8291337
llvm-svn: 114783
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
identifier, we may have a Sema object but no translation unit scope
(because parsing is finished). In this case, we still need to update
the IdResolver, which might still be used when writing a PCH
containing another PCH (without chaining). This bug manifested as a
failure with precompiled preambles.
Also, add a little environment-variable-sensitive logging for
libclang.
llvm-svn: 114774
|
| |
|
|
| |
llvm-svn: 114762
|
| |
|
|
|
|
| |
likely to be multithreaded. Also move the printing of timers to somewhere better for multithreaded libclang clients
llvm-svn: 114760
|
| |
|
|
|
|
| |
to prevent users from trying unsupported stuff. Useful for testing.
llvm-svn: 114749
|
| |
|
|
|
|
| |
Fixed //rdar://8472487.
llvm-svn: 114741
|
| |
|
|
|
|
| |
vla. Implements pr7827.
llvm-svn: 114737
|
| |
|
|
|
|
|
|
|
| |
the location of the @implementation
is just confusing for clients that want to use SourceLocations for syntactic references.
Fixes: <rdar://problem/8470540>
llvm-svn: 114714
|
| |
|
|
| |
llvm-svn: 114713
|
| |
|
|
| |
llvm-svn: 114712
|
| |
|
|
| |
llvm-svn: 114711
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
provided when the optimization is disabled. In particular, split
the completion context CCC_Other into two contexts: CCC_Other, which
means that it's an undisclosed context for which any other results are
unwelcome, and CCC_Recovery, which is used in recovery cases.
Since we're now using the completion context within the completion
results builder, make sure that it's always set to something.
Fixes <rdar://problem/8470644>.
llvm-svn: 114704
|
| |
|
|
|
|
|
|
|
| |
warning if the zero value was an
enum or was expanded from a macro.
Fixes: <rdar://problem/8414119>
llvm-svn: 114695
|
| |
|
|
|
|
|
|
|
| |
use the class extension
as the lexical DeclContext for the @property declaration that gets auto-created for the @interface.
Fixes: <rdar://problem/8467189>
llvm-svn: 114693
|