| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
class method to an object receiver. rdar://16263395
llvm-svn: 216038
|
| |
|
|
| |
llvm-svn: 216029
|
| |
|
|
|
|
|
| |
ext_vector_type's 'hi/lo' components when
used as lvalue. rdar://18031917 pr20697
llvm-svn: 215991
|
| |
|
|
|
|
| |
Changes diagnostic options, language standard options, diagnostic identifiers, diagnostic wording to use c++14 instead of c++1y. It also modifies related test cases to use the updated diagnostic wording.
llvm-svn: 215982
|
| |
|
|
| |
llvm-svn: 215980
|
| |
|
|
|
|
| |
functional changes (having common superclass is convenient for future loop directives CodeGen implementation)
llvm-svn: 215975
|
| |
|
|
|
|
|
|
| |
MSVC "14" CTP 3 has fixed it's mangling for alias templates when used as
template-template arguments; update clang to be compatible with this
mangling.
llvm-svn: 215972
|
| |
|
|
| |
llvm-svn: 215968
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Always put static sanitizer runtimes to the front of the linker
invocation line. This was already done for all sanitizers except UBSan:
in case user provides static libstdc++ we need to make sure that new/delete
operator definitions are picked from sanitizer runtimes instead of libstdc++.
We have to put UBSan runtime first for similar reasons: it depends on some
libstdc++ parts (e.g. __dynamic_cast function), and has to go first in
link line to ensure these functions will be picked up from libstdc++.
2. Put sanitizer libraries system dependencies (-ldl, -lpthread etc.) right
after sanitizer runtimes. This will ensure these libraries participate in
the link even if user provided -Wl,-as-needed flag. This should fix PR15823.
3. In case we link in several sanitizer runtimes (e.g. "ubsan", "ubsan_cxx"
and "san"), add system dependencies (-ldl, -lpthread, ...) only once.
llvm-svn: 215940
|
| |
|
|
|
|
|
|
|
| |
Predefined decls like 'Protocol' in objc are not loaded from AST files,
so we cannot rely on loading the canonical decl to complete the redecl
chain for redeclarations of these decls. The broken redecl chain was
non-circular, so looping over redecls() would hang.
llvm-svn: 215929
|
| |
|
|
| |
llvm-svn: 215928
|
| |
|
|
| |
llvm-svn: 215927
|
| |
|
|
| |
llvm-svn: 215926
|
| |
|
|
| |
llvm-svn: 215925
|
| |
|
|
| |
llvm-svn: 215900
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Adding remaining 2 cases handling:
* from x32 to 32 via -m32
* from x32 to 64 via -m64
Test Plan: linux-ld test updated
Reviewers: chandlerc, atanasyan
Subscribers: cfe-commits, zinovy.nis
Differential Revision: http://reviews.llvm.org/D4930
llvm-svn: 215899
|
| |
|
|
|
|
| |
silent coverity warning CID 1231654
llvm-svn: 215897
|
| |
|
|
|
|
|
|
| |
UniqueID(uint64_t Device, uint64_t File)
Fixes CID 1095247
llvm-svn: 215896
|
| |
|
|
|
|
| |
needing to mention the size.
llvm-svn: 215869
|
| |
|
|
|
|
| |
Thanks to David Blaikie for the suggestion.
llvm-svn: 215866
|
| |
|
|
| |
llvm-svn: 215864
|
| |
|
|
| |
llvm-svn: 215856
|
| |
|
|
| |
llvm-svn: 215853
|
| |
|
|
|
|
|
|
|
|
|
| |
Name might be empty again after we removed the '%' prefix
and Name[0] would assert.
Found on code like
register int foo asm("%" MACRO);
where MACRO was supposed to be defined in a header file that was not found.
llvm-svn: 215834
|
| |
|
|
|
|
| |
attributes parsing FIXMEs.
llvm-svn: 215814
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
tables that correspond to ContinuousRangeMaps, since the keys to those
maps need to be unique, or we may map to the wrong offset.
This fixes a crash + malformed AST file seen when loading some modules
that import Cocoa on Darwin, which is a module with no contents except
imports of other modules. Unfortunately I have not been able to find a
reduced test case that reproduces this problem.
Also add an assert that we aren't mapping one key to multiple values
in CRM. We ought to be able to say there are no duplicate keys at all,
but there are a bunch of 0 -> 0 mappings that are showing up, probably
coming from the source location table.
llvm-svn: 215810
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes PR20671, see the bug for details. In short, ActOnTranslationUnit()
calls DefineUsedVTables() and only then PerformPendingInstantiations(). But
PerformPendingInstantiations() is what does delayed template parsing, so
vtables only references from late-parsed templates weren't marked used.
As a fix, move the SavePendingInstantiationsAndVTableUsesRAII in
PerformPendingInstantiations() up above the delayed template parsing code.
That way, vtables referenced from templates end up in the RAII object, and the
call to DefineUsedVTables() in PerformPendingInstantiations() marks them used.
llvm-svn: 215786
|
| |
|
|
|
|
| |
behavior change.
llvm-svn: 215780
|
| |
|
|
| |
llvm-svn: 215776
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
statement.
A little test case simplification - this could be simplified further,
though there are certainly interesting connections to the if/else
construct so I'm hesitant to remove that entirely though it does appear
somewhat unrelated.
(similar fix to r215766, related to PR19864)
llvm-svn: 215768
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
loop, to the start of the loop.
This avoids debuggers stepping to strange places (like the last
statement in the loop body, or the first statement in the if).
This is not the whole answer, though - similar bugs no doubt exist in
other loops (patches to follow) and attributing exception handling code
to the correct line is also tricky (based on the previous fix to
PR19864, exception handling is still erroneously attributed to the 'if'
line).
llvm-svn: 215766
|
| |
|
|
| |
llvm-svn: 215764
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: klimek
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D4910
llvm-svn: 215757
|
| |
|
|
|
|
| |
They can be compared for identity.
llvm-svn: 215745
|
| |
|
|
| |
llvm-svn: 215738
|
| |
|
|
|
|
|
| |
user provided setter name (as declared in @property attribute declaration).
rdar://18022762
llvm-svn: 215736
|
| |
|
|
| |
llvm-svn: 215731
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: klimek
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D4911
llvm-svn: 215714
|
| |
|
|
| |
llvm-svn: 215706
|
| |
|
|
| |
llvm-svn: 215704
|
| |
|
|
|
|
|
|
|
| |
Since __SIZEOF_LONG_LONG__ is always defined as 8 on ARM targets,
there's no point in checking this. NFC.
Patch by Moritz Roth.
llvm-svn: 215697
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
typename aaaaaaaaaa<aaaaaa>::aaaaaaaaaaa aaaaaaaaaa<
aaaaaa>::aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(bool *aaaaaaaaaaaaaaaaaa,
bool *aa) {}
After:
typename aaaaaaaaaa<aaaaaa>::aaaaaaaaaaa
aaaaaaaaaa<aaaaaa>::aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(
bool *aaaaaaaaaaaaaaaaaa, bool *aa) {}
llvm-svn: 215693
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
option (MyProto.options) = {
field_c : "OK" msg_field{field_d : 123}
};
After:
option (MyProto.options) = {
field_c : "OK"
msg_field{field_d : 123}
};
(Note that the colon after "msg_field" is optional).
llvm-svn: 215692
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
When the CallExpr passed to Sema::ConvertArgumentsForCall has all default parameters, and the number of actual arguments passed is zero, this function will segfault in the call to Call->getLocStart() if the Callee has an invalid getLocStart(), the reason being that since ConvertArgumentsForCall has set the correct number of arguments, but has not filled them in yet, getLocStart() will try to access the first (not yet existent) argument and thus segfaults.
This fixes that by making getLocStart return an invalid source location if the queried argument is NULL rather than segfaulting.
Reviewers: rnk
Reviewed By: rnk
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D4917
llvm-svn: 215686
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, any undeclared unqualified id starting a nested name
specifier in a dependent context would have its lookup retried during
template instantiation. Now we limit that retry hack to methods of a
class with dependent bases. Free function templates in particular are
no longer affected by this hack.
Also, diagnose this as a Microsoft extension. This has the downside that
template authors may see this warning *and* an error during
instantiation time about this identifier. Fixing that will probably
require formalizing some kind of "delayed" identifier, instead of our
ad-hoc solutions of forming dependent AST nodes when lookup fails.
Based on a patch by Kim Gräsman!
Differential Revision: http://reviews.llvm.org/D4854
llvm-svn: 215683
|
| |
|
|
| |
llvm-svn: 215678
|
| |
|
|
|
|
| |
additional notes that are helpful when compiling statistics on thread safety warnings.
llvm-svn: 215677
|
| |
|
|
|
|
|
| |
members from all redefinitions of a class that have them, in case the special
member is defined in one module but only declared in another.
llvm-svn: 215675
|
| |
|
|
|
|
| |
Fixes PR20662.
llvm-svn: 215672
|
| |
|
|
|
|
| |
data members and range based for loops.
llvm-svn: 215671
|