| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 131108
|
| |
|
|
|
|
|
|
|
|
|
| |
extension.
http://msdn.microsoft.com/en-us/library/hzc8ytsz(v=VS.100).aspx
Microsoft doc claims this is a C++/CLI feature but it is really always enabled.
This removes 2 error when parsing MFC code with clang.
llvm-svn: 131051
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 130909
|
| |
|
|
|
|
| |
foo.pic.gcno instead of foo.gcno.
llvm-svn: 130899
|
| |
|
|
| |
llvm-svn: 130898
|
| |
|
|
|
|
| |
crashes during PCH validation.
llvm-svn: 130886
|
| |
|
|
| |
llvm-svn: 130866
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
create an ASTUnit
from a CompilerInvocation along with an ASTFrontendAction to invoke, and without all the goo
about the precompiled preamble.
llvm-svn: 130805
|
| |
|
|
|
|
| |
compatable
llvm-svn: 130710
|
| |
|
|
|
|
|
| |
"X:\foo\bar") with -isysroot. test/PCH/reloc.c can pass.
FIXME: We should consider better isysroot scheme on Win32 hosts.
llvm-svn: 130683
|
| |
|
|
| |
llvm-svn: 130616
|
| |
|
|
| |
llvm-svn: 130564
|
| |
|
|
|
|
| |
Radar 9333566. Patch by Chad Rosier!
llvm-svn: 130554
|
| |
|
|
|
|
| |
instantiated in a different PCH than its containing class. Otherwise we get double definition errors. Fixes a Boost.MPL problem that affects Boost.Accumulators and probably a lot more of Boost.
llvm-svn: 130488
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
defines to real types.
Otherwise statements like:
__int64 var = __int64(0);
would be expanded to:
long long var = long long(0);
and fail to compile.
llvm-svn: 130369
|
| |
|
|
|
|
| |
Wieczorek.
llvm-svn: 130152
|
| |
|
|
|
|
| |
notify any mutation listeners of it. This fixes a crasher in chained PCH, where an implicit destructor in a PCH gets a definition in a chained PCH, which is then lost. However, any further use of the destructor would cause its definition to be regenerated in the final file, hiding the bug.
llvm-svn: 130103
|
| |
|
|
|
|
| |
from dgregor.
llvm-svn: 130066
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
matches GCC behavior which libstdc++ uses to limit #warning-based
messages about deprecation.
The machinery involves threading this through a new '-fdeprecated-macro'
flag for CC1. The flag defaults to "on", similarly to -Wdeprecated. We
turn the flag off in the driver when the warning is turned off (modulo
matching some GCC bugs). We record this as a language option, and key
the preprocessor on the option when introducing the define.
A separate flag rather than a '-D' flag allows us to properly represent
the difference between C and C++ builds (only C++ receives the define),
and it allows the specific behavior of following -Wdeprecated without
potentially impacting the set of user-provided macro flags.
llvm-svn: 130055
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-Wwrite-strings. First and foremost, once the positive form of the flag
was passed, it could never be disabled by passing -Wno-write-strings.
Also, the diagnostic engine couldn't in turn use -Wwrite-strings to
control diagnostics (as GCC does) because it was essentially hijacked to
drive the language semantics.
Fix this by giving CC1 a clean '-fconst-strings' flag to enable
const-qualified strings in C and ObjC compilations. Corresponding
'-fno-const-strings' is also added. Then the driver is taught to
introduce '-fconst-strings' in the CC1 command when '-Wwrite-strings'
dominates.
This entire flag is basically GCC-bug-compatibility driven, so we also
match GCC's bug where '-w' doesn't actually disable -Wwrite-strings. I'm
open to changing this though as it seems insane.
llvm-svn: 130051
|
| |
|
|
|
|
|
|
|
| |
function definitions are parsed at the end of the translation unit only if it is required by an actual instantiation. As such all the symbols of the TU are available during name lookup.
Using this flag is necessary for compatibility with Microsoft template code.
This also provides some parsing speed improvement.
llvm-svn: 130022
|
| |
|
|
|
|
|
|
|
| |
compile time) and .gcda emission (at runtime). --coverage enables both.
This does not yet add the profile_rt library to the link step if -fprofile-arcs
is enabled when linking.
llvm-svn: 129956
|
| |
|
|
| |
llvm-svn: 129907
|
| |
|
|
| |
llvm-svn: 129823
|
| |
|
|
|
|
| |
Monrocq
llvm-svn: 129614
|
| |
|
|
|
|
| |
and output file is not writable. // rdar://9286457.
llvm-svn: 129587
|
| |
|
|
| |
llvm-svn: 129567
|
| |
|
|
|
|
| |
Luis Felipe Strano Moraes!
llvm-svn: 129559
|
| |
|
|
| |
llvm-svn: 129553
|
| |
|
|
|
|
| |
function template from a previous PCH. Fixes the only crasher when using massive chains on Clang's Sema component. We still have some incomplete codegen there.
llvm-svn: 129516
|
| |
|
|
| |
llvm-svn: 129514
|
| |
|
|
|
|
| |
for them. The only major missing feature is references.
llvm-svn: 129234
|
| |
|
|
|
|
| |
per PR9577
llvm-svn: 129201
|
| |
|
|
| |
llvm-svn: 129103
|
| |
|
|
| |
llvm-svn: 129095
|
| |
|
|
|
|
| |
outputting dwarf-debug-flags.
llvm-svn: 129094
|
| |
|
|
|
|
| |
output missing data.
llvm-svn: 129093
|
| |
|
|
| |
llvm-svn: 129091
|
| |
|
|
|
|
| |
it.
llvm-svn: 129089
|
| |
|
|
|
|
| |
anything.
llvm-svn: 129086
|
| |
|
|
|
|
| |
Patch by Bobby Powers
llvm-svn: 129014
|
| |
|
|
| |
llvm-svn: 128854
|
| |
|
|
| |
llvm-svn: 128853
|
| |
|
|
|
|
|
|
| |
dependency cycle
between libFrontend and libDriver.
llvm-svn: 128852
|
| |
|
|
|
|
| |
CompilerInvocation from command-line args.
llvm-svn: 128848
|
| |
|
|
| |
llvm-svn: 128606
|