| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Style guide demands a two-space indent.
Before:
NSArray *arguments = @[
kind == kUserTicket ? @"--user-store" : @"--system-store",
@"--print-tickets",
@"--productid",
@"com.google.Chrome"
];
After:
NSArray *arguments = @[
kind == kUserTicket ? @"--user-store" : @"--system-store",
@"--print-tickets",
@"--productid",
@"com.google.Chrome"
];
llvm-svn: 193168
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
NSArray *arguments =
@[ kind == kUserTicket ? @"--user-store" : @"--system-store",
@"--print-tickets", @"--productid", @"com.google.Chrome" ];
After:
NSArray *arguments = @[
kind == kUserTicket ? @"--user-store" : @"--system-store",
@"--print-tickets",
@"--productid",
@"com.google.Chrome"
];
This fixes llvm.org/PR15231.
llvm-svn: 193167
|
| |
|
|
| |
llvm-svn: 193166
|
| |
|
|
| |
llvm-svn: 193164
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
undefined names. For example, with this patch we now reject"
This reverts commit r193161.
It broke
void foo() __attribute__((alias("bar")));
void bar() {}
void zed() __attribute__((alias("foo")));
Looks like we have to fix pr17639 first :-(
llvm-svn: 193162
|
| |
|
|
|
|
|
|
|
|
|
|
| |
names. For example, with this patch we now reject
void f1(void) __attribute__((alias("g1")));
This patch is implemented in CodeGen. It is quiet a bit simpler and more
compatible with gcc than implementing it in Sema. The downside is that the
errors only fire during -emit-llvm.
llvm-svn: 193161
|
| |
|
|
| |
llvm-svn: 193154
|
| |
|
|
|
|
|
|
|
|
| |
If we run into the second preprocessor branch chain, the first branch
chain might have already set the maximum branch count on that level to
something > 0.
Fixes PR17645.
llvm-svn: 193153
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch changes two things:
a) Allow a header to be part of multiple modules. The reasoning is that
in existing codebases that have a module-like build system, the same
headers might be used in several build targets. Simple reasons might be
that they defined different classes that are declared in the same
header. Supporting a header as a part of multiple modules will make the
transistion easier for those cases. A later step in clang can then
determine whether the two modules are actually compatible and can be
merged and error out appropriately. The later check is similar to what
needs to be done for template specializations anyway.
b) Allow modules to be stored in a directory tree separate from the
headers they describe.
Review: http://llvm-reviews.chandlerc.com/D1951
llvm-svn: 193151
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Enforce the rule in C++11 [temp.mem]p2 that local classes cannot have
member templates.
This fixes PR16947.
N.B. C++14 has slightly different wording to afford generic lambdas
declared inside of functions.
Fun fact: Some formulations of local classes with member templates
would cause clang to crash during Itanium mangling, such as the
following:
void outer_mem() {
struct Inner {
template <typename = void>
struct InnerTemplateClass {
static void itc_mem() {}
};
};
Inner::InnerTemplateClass<>::itc_mem();
}
Reviewers: eli.friedman, rsmith, doug.gregor, faisalv
Reviewed By: doug.gregor
CC: cfe-commits, ygao
Differential Revision: http://llvm-reviews.chandlerc.com/D1866
llvm-svn: 193144
|
| |
|
|
|
|
|
|
| |
Microsoft inline asm crashes on the hexagon bot for unknown reasons.
This reverts commit r193124.
llvm-svn: 193128
|
| |
|
|
| |
llvm-svn: 193124
|
| |
|
|
|
|
|
|
|
| |
This reverts commit r193100.
It was failing to compile with MSVC 2012 while instantiating
llvm::Optional<DynTypedMatcher>.
llvm-svn: 193123
|
| |
|
|
| |
llvm-svn: 193120
|
| |
|
|
| |
llvm-svn: 193118
|
| |
|
|
| |
llvm-svn: 193116
|
| |
|
|
|
|
|
|
|
| |
Instead of using not, just drop the fastcall attribute which was causing
an warning:
calling convention 'fastcall' ignored for this target
llvm-svn: 193110
|
| |
|
|
|
|
| |
GCC does the same.
llvm-svn: 193103
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Refactor DynTypedMatcher into a value type class, just like Matcher<T>.
This simplifies its usage and removes the virtual hierarchy from Matcher<T>.
It also enables planned changes to replace MatcherInteface<T>.
Too many instantiaions of this class hierarchy has been causing Registry.cpp.o to bloat in size and number of symbols.
Reviewers: klimek
CC: cfe-commits, revane
Differential Revision: http://llvm-reviews.chandlerc.com/D1661
llvm-svn: 193100
|
| |
|
|
| |
llvm-svn: 193099
|
| |
|
|
|
|
| |
Patch by Daniel Marjamäki.
llvm-svn: 193093
|
| |
|
|
|
|
| |
Also fixes some funky formatting.
llvm-svn: 193079
|
| |
|
|
|
|
|
| |
The second parameter of the SLD intrinsic is the number of columns (GPR) to
slide left the source array.
llvm-svn: 193076
|
| |
|
|
|
|
| |
default for A32 armv8.
llvm-svn: 193075
|
| |
|
|
|
|
| |
divide in the mode that we are compiling in (depending on the target features), not defined if we don't. Should be compatible with the GCC conterpart. Also adding a -hwdiv option to overide the default behavior.
llvm-svn: 193074
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Due to statement expressions supported as GCC extension, it is possible
to put 'break' or 'continue' into a loop/switch statement but outside its
body, for example:
for ( ; ({ if (first) { first = 0; continue; } 0; }); )
Such usage must be diagnosed as an error, GCC rejects it. To recognize
this and similar patterns the flags BreakScope and ContinueScope are
temporarily turned off while parsing condition expression.
Differential Revision: http://llvm-reviews.chandlerc.com/D1762
llvm-svn: 193073
|
| |
|
|
|
|
|
|
| |
Now that we iterate on the formatting multiple times when we
have chains of preprocessor branches, we need to correctly reset
the token's previous and next pointer for the first / last token.
llvm-svn: 193071
|
| |
|
|
|
| |
Review: http://llvm-reviews.chandlerc.com/D1974
llvm-svn: 193069
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The C and C++ standards disallow using universal character names to
refer to some characters, such as basic ascii and control characters,
so we reject these sequences in the lexer. However, when the
preprocessor isn't being used on C or C++, it doesn't make sense to
apply these restrictions.
Notably, accepting these characters avoids issues with unicode escapes
when GHC uses the compiler as a preprocessor on haskell sources.
Fixes rdar://problem/14742289
llvm-svn: 193067
|
| |
|
|
|
|
|
| |
We claimed that the __is_interface_class keyword was KEYCXX even though
the __interface keyword was KEYMS.
llvm-svn: 193065
|
| |
|
|
|
|
| |
LWG issue.
llvm-svn: 193062
|
| |
|
|
| |
llvm-svn: 193061
|
| |
|
|
|
|
|
|
|
| |
This uses function prefix data to store function type information at the
function pointer.
Differential Revision: http://llvm-reviews.chandlerc.com/D1338
llvm-svn: 193058
|
| |
|
|
| |
llvm-svn: 193057
|
| |
|
|
|
|
| |
The convention is LF unless specifically testing line endings.
llvm-svn: 193056
|
| |
|
|
|
|
|
|
|
|
|
| |
ResolveSingleFunctionTemplateSpecialization() returns 0 and doesn't emit diags
unless the expression has template-ids, so we must null check the result.
Also add a better diag noting which overloads are causing the problem.
Reviewed by Aaron Ballman.
llvm-svn: 193055
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Before:
auto PointerBinding = [](const char * S) {};
After:
auto PointerBinding = [](const char *S) {};
This fixes llvm.org/PR17618.
llvm-svn: 193054
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 193040
|
| |
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
|
|
|
| |
Thanks to David Blaikie for noticing it.
llvm-svn: 193037
|
| |
|
|
|
|
| |
Thanks to Sean Silva for the suggestion.
llvm-svn: 193036
|
| |
|
|
| |
llvm-svn: 193032
|
| |
|
|
| |
llvm-svn: 193028
|