| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
DEBUG({ // Comment that used to confuse clang-format.
fdafas();
});
Before:
DEBUG({ // Comments are now fine.
fdafas();
});
This fixed llvm.org/PR17619.
llvm-svn: 193051
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before (note the missing space before "..." which can lead to compile
errors):
switch (x) {
case 'A'... 'Z':
case 1... 5:
break;
}
After:
switch (x) {
case 'A' ... 'Z':
case 1 ... 5:
break;
}
llvm-svn: 193050
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
NSDictionary *d = @{ @"nam" : NSUserNam(), @"dte" : [NSDate date],
@"processInfo" : [NSProcessInfo processInfo]
};
After:
NSDictionary *d = @{
@"nam" : NSUserNam(),
@"dte" : [NSDate date],
@"processInfo" : [NSProcessInfo processInfo]
};
llvm-svn: 193049
|
| |
|
|
|
|
| |
some linkers depend on it.
llvm-svn: 193048
|
| |
|
|
| |
llvm-svn: 193047
|
| |
|
|
| |
llvm-svn: 193046
|
| |
|
|
|
|
|
|
|
|
|
| |
This fixes PR17591.
N.B. This actually goes beyond what the standard mandates by requiring
the restriction to hold for declarations instead of definitions. This
is believed to be a defect in the standard and an LWG issue has been
submitted.
llvm-svn: 193044
|
| |
|
|
|
|
|
|
|
|
| |
* NamedDecl and CXXMethodDecl were missing getMostRecentDecl.
* The const version can just forward to the non const.
* getMostRecentDecl can use cast instead of cast_or_null.
This then removes some casts from the callers.
llvm-svn: 193039
|
| |
|
|
| |
llvm-svn: 193028
|
| |
|
|
|
|
| |
Redeclarable already had a isFirstDecl, but it was missing from DeclBase.
llvm-svn: 193027
|
| |
|
|
| |
llvm-svn: 193026
|
| |
|
|
| |
llvm-svn: 193025
|
| |
|
|
|
|
|
| |
pick up the common bits ubsan actually needs. Also remove whole-archive when we
aren't trying to re-export the symbols.
llvm-svn: 193022
|
| |
|
|
|
|
|
|
|
|
|
| |
Now that CorrectTypo knows how to correctly search classes for typo
correction candidates, there is no good reason to only replace an
existing CXXScopeSpecifier if it refers to a namespace. While the actual
enablement was a matter of changing a single comparison, the fallout
from enabling the functionality required a lot more code changes
(including my two previous commits).
llvm-svn: 193020
|
| |
|
|
|
|
| |
NestedNameSpecifier that replaces an existing specifier.
llvm-svn: 193019
|
| |
|
|
|
|
| |
essentially the same.
llvm-svn: 193018
|
| |
|
|
| |
llvm-svn: 193010
|
| |
|
|
| |
llvm-svn: 193006
|
| |
|
|
|
|
|
| |
test also adds FIXMEs for a number of places where imports and includes of
submodules don't work very well.
llvm-svn: 193005
|
| |
|
|
|
|
|
| |
attributes when such methods are actually envoked in message
expression. // rdar://15242010
llvm-svn: 193003
|
| |
|
|
| |
llvm-svn: 192997
|
| |
|
|
|
|
| |
in the "uknown" state. Patch by chris.wailes@gmail.com. Reviewed by delesley.
llvm-svn: 192995
|
| |
|
|
|
|
|
|
|
|
| |
specified.
In particular it makes sure that relative paths for non-virtual files aren't
made absolute.
Added unittest.
llvm-svn: 192992
|
| |
|
|
|
|
| |
default constructor. Patch by chris.wailes@gmail.com, reviewed by delesley.
llvm-svn: 192991
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before, clang-format would not adjust leading indents if it found a
structural error (e.g. unmatched {}). It seems, however, that
clang-format has gotten good enough at parsing the code structure that
this hurts in almost all cases. Commonly, while writing code, it is
very useful to be able to correclty indent incomplete if statements or
for loops.
In case this leads to errors that we don't anticipate, we need to find
out and fix those.
This fixed llvm.org/PR17594.
llvm-svn: 192988
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This looks ugly and leads to llvm.org/PR17590.
Before (with AlwaysBreakBeforeMultilineStrings):
return
"aaaa"
"bbbb";
After:
return "aaaa"
"bbbb";
llvm-svn: 192984
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Specifically, prefer breaking before trailing annotations over breaking
before the first parameter.
Before:
void ffffffffffffffffffffffff(
int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,
int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) OVERRIDE;
After:
void ffffffffffffffffffffffff(int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,
int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
OVERRIDE;
llvm-svn: 192983
|
| |
|
|
| |
llvm-svn: 192982
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
aaaaaaaaaaaaaaaaaaaaaaaaaaa.aaaaaaaaaaaaaaaaaa().aaaaaaaaaaaaaaaaa().has<
bbbbbbbbbbbbbbbbbbbbb>();
After:
aaaaaaaaaaaaaaaaaaaaaaaaaaa.aaaaaaaaaaaaa()
.aaaaaaaaaaaaaaaaaaaaaaaaaa()
.has<bbbbbbbbbbbbbbbbbbbbb>();
llvm-svn: 192981
|
| |
|
|
| |
llvm-svn: 192971
|
| |
|
|
| |
llvm-svn: 192969
|
| |
|
|
|
|
| |
Patch by Kim Gräsman. Thank you!
llvm-svn: 192964
|
| |
|
|
|
|
| |
module.
llvm-svn: 192951
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If we have multiple definitions of the same entity from different modules, we
nominate the first definition which we see as being the canonical definition.
If we load a declaration from a different definition and we can't find a
corresponding declaration in the canonical definition, issue a diagnostic.
This is insufficient to prevent things from going horribly wrong in all cases
-- we might be in the middle of emitting IR for a function when we trigger some
deserialization and discover that it refers to an incoherent piece of the AST,
by which point it's probably too late to bail out -- but we'll at least produce
a diagnostic.
llvm-svn: 192950
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r177003 applied the late parsed template technique to friend functions
but omitted the corresponding check for redefinitions.
This patch adds the same check already in use for templates to the
new code path in order to diagnose and reject invalid redefinitions
that were being silently accepted.
Fixes PR17324.
Reviewed by Richard Smith.
llvm-svn: 192948
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Delayed exception specification checking for defaulted members and virtual
destructors are both susceptible to mutation during iteration so we need to
swap and process the worklists.
This resolves both accepts-invalid and rejects-valid issues and moreover fixes
potential invalid memory access as the contents of the vectors change during
iteration and recursive template instantiation.
Checking can be further delayed where parent classes aren't yet fully defined.
This patch adds two assertions at end of TU to ensure no specs are left
unchecked as was happenning before the fix, plus a test case from Marshall Clow
for the defaulted member crash extracted from the libcxx headers.
Reviewed by Richard Smith.
llvm-svn: 192947
|
| |
|
|
| |
llvm-svn: 192937
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
'final'
Summary: Some MS headers use these features.
Reviewers: rnk, rsmith
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1948
llvm-svn: 192936
|
| |
|
|
|
|
|
| |
function parameters must be in a particular state. Patch by
chris.wailes@gmail.com. Reviewed by delesley@google.com.
llvm-svn: 192934
|
| |
|
|
|
|
| |
No functional change.
llvm-svn: 192933
|
| |
|
|
|
|
|
| |
to be treated as return values, and marked with the "returned_typestate"
attribute. Patch by chris.wailes@gmail.com; reviewed by delesley@google.com.
llvm-svn: 192932
|
| |
|
|
|
|
|
|
| |
macros, prefer the typedef immediately following the
enum declaration to the one preceeding it.
// rdar://15200915
llvm-svn: 192927
|
| |
|
|
|
|
| |
These are uncommon and this is better than miscompiling.
llvm-svn: 192923
|
| |
|
|
|
|
|
|
|
|
|
| |
The changes caused the sanitizer bot to hang:
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/2311
Needs investigation.
This reverts commit r192914.
llvm-svn: 192921
|
| |
|
|
|
|
|
|
| |
This is a common extension on Windows, and now clang will assemble them
instead of treating them as linker input which is the default for unknown
file types.
llvm-svn: 192919
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Delayed exception specification checking for defaulted members and virtual
destructors are both susceptible to mutation during iteration so we need to
process the worklists fully.
This resolves both accepts-invalid and rejects-valid issues and moreover fixes
potential invalid memory access as the contents of the vectors change during
iteration and recursive template instantiation.
This patch also adds two assertions at end of TU to ensure no specs are left
unchecked as was happenning before the fix, plus a test case from Marshall Clow
for the defaulted member crash extracted from the libcxx headers.
Reviewed by Richard Smith.
llvm-svn: 192914
|
| |
|
|
| |
llvm-svn: 192911
|
| |
|
|
|
|
|
|
| |
class. The instruction class includes the signed saturating doubling
multiply-add long, signed saturating doubling multiply-subtract long, and
the signed saturating doubling multiply long instructions.
llvm-svn: 192909
|
| |
|
|
|
|
|
|
|
|
| |
This adds support for outputing the assembly to a file during compilation.
It does this by changing the compilation pipeling to not use the integrated
assembler, and keep the intermediate assembler file.
Differential Revision: http://llvm-reviews.chandlerc.com/D1946
llvm-svn: 192902
|
| |
|
|
|
|
| |
Every other function in Redeclarable.h was using Decl instead of Declaration.
llvm-svn: 192900
|