| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 220802
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
ReturnType MACRO
FunctionName() {}
After:
ReturnType MACRO
FunctionName() {}
This fixes llvm.org/PR21404.
I wonder what the motivation for that if-condition was. But as no test
breaks, ...
llvm-svn: 220801
|
| |
|
|
|
|
| |
we're in a new-type-id or conversion-type-id, since those things can legitimately be followed by a binary && operator.
llvm-svn: 220785
|
| |
|
|
|
|
|
|
|
|
| |
Apparently, people are very much divided on what the "correct"
indentation is. So, best to give them a choice.
The new flag is called ObjCBlockIndentWidth and the default is now set
to the same value as IndentWidth for the pre-defined styles.
llvm-svn: 220784
|
| |
|
|
|
|
|
|
| |
explicitly using the resulting .pcm file. Unlike for an implicit module build,
we don't need nor want to require these flags to match between the module
and its users.
llvm-svn: 220780
|
| |
|
|
|
|
| |
style.
llvm-svn: 220778
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Add valueDecl() matcher.
Reviewers: klimek
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D6005
llvm-svn: 220776
|
| |
|
|
|
|
| |
The option is '--allow-multiple-definition' not '--allow-multiple-definitions'.
llvm-svn: 220760
|
| |
|
|
| |
llvm-svn: 220742
|
| |
|
|
| |
llvm-svn: 220738
|
| |
|
|
| |
llvm-svn: 220733
|
| |
|
|
| |
llvm-svn: 220731
|
| |
|
|
|
|
| |
to C type a collection literal. rdar://18768214
llvm-svn: 220727
|
| |
|
|
|
|
|
|
|
| |
GCC doesn't do this and it semes weird to include a file that we can't
open.
This fixes PR21362.
llvm-svn: 220726
|
| |
|
|
|
|
|
|
|
| |
GCC defines __EXCEPTIONS, regardless of language mode, if -fexceptions
is passed. We should do the same.
This fixes PR21358.
llvm-svn: 220714
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We should avoid a tail padding not only if the last field
has zero size but also if the last field is a struct with a flexible array.
If/when http://reviews.llvm.org/D5478 is committed,
this will also handle the case of structs with zero-sized arrays.
Reviewers: majnemer, rsmith
Reviewed By: rsmith
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D5924
llvm-svn: 220708
|
| |
|
|
|
|
|
| |
overriding methods. Patch review by Richard Smith.
rdar://18295240
llvm-svn: 220703
|
| |
|
|
|
|
|
|
| |
This includes adding the new TypoExpr-based lazy typo correction to
LookupMemberExprInRecord as an alternative to the existing eager typo
correction.
llvm-svn: 220698
|
| |
|
|
|
|
|
| |
Also keep track of the stack of Exprs visited during the tree transform
so the callback can be passed the parent of the TypoExpr.
llvm-svn: 220697
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
matches of the typo.
Also be more proactive about checking a correction's visibility so that
a correction requiring a module import can be distinguished from the
original typo even if it looks identical. Otherwise the correction will
be excluded and the diagnostic about needing the module import won't be
emitted.
Note that no change was made to checkCorrectionVisibility other than
moving where it is at in SemaLookup.cpp.
llvm-svn: 220696
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Part of the infrastructure is a map from a TypoExpr to the Sema-specific
state needed to correct it, along with helpers to ease dealing with the
state.
The the typo count is propagated up the stack of
ExpressionEvaluationContextRecords when one is popped off of to
avoid accidentally dropping TypoExprs on the floor. For example,
the attempted correction of g() in test/CXX/class/class.mem/p5-0x.cpp
happens with an ExpressionEvaluationContextRecord that is popped off
the stack prior to ActOnFinishFullExpr being called and the tree
transform for TypoExprs being run.
llvm-svn: 220695
|
| |
|
|
|
|
|
|
|
|
|
| |
Two additional methods are provided: one to return the current
correction (the last correction returned by getNextCorrection), and one
to "reset" the state so that getNextCorrection will return the previous
corrections before returning any new corrections.
Also ensure that all TypoCorrections have valid source ranges.
llvm-svn: 220694
|
| |
|
|
|
|
| |
TypoCorrectionConsumer can keep the callback around as long as needed.
llvm-svn: 220693
|
| |
|
|
| |
llvm-svn: 220692
|
| |
|
|
|
|
|
|
|
| |
This makes it available outside of SemaLookup.cpp, as
needed for the forthcoming TypoExpr AST node which will
keep a TypoCorrectionConsumer that provides the possible
typo corrections for that TypoExpr.
llvm-svn: 220691
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
void
SomeFunction(int parameter);
After:
void SomeFunction(
int parameter);
(Unless AlwaysBreakAfterDefinitionReturnType after type is set).
llvm-svn: 220686
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
SomeFunction([]() {
#define A a
return 43; });
After:
SomeFunction([]() {
#define A a
return 43;
});
llvm-svn: 220684
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Speed up clang-tidy when profiling in on.
It makes profiling runs twice as fast by reusing the time samples between the
different actions.
It also joins together the sampling of different matchers of the same check.
Reviewers: alexfh
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D5972
llvm-svn: 220682
|
| |
|
|
|
|
| |
http://reviews.llvm.org/D5999
llvm-svn: 220680
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
optional Type type = 1 [(mutate_options) = {vital : true
abc : false}];
After:
optional Type type = 1 [(mutate_options) = {
vital : true
abc : false
}];
llvm-svn: 220679
|
| |
|
|
| |
llvm-svn: 220678
|
| |
|
|
| |
llvm-svn: 220677
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5994
llvm-svn: 220675
|
| |
|
|
| |
llvm-svn: 220668
|
| |
|
|
| |
llvm-svn: 220659
|
| |
|
|
|
|
|
| |
This eliminates converting back and forth between the 3 formats and
gives us a more homogeneous interface.
llvm-svn: 220657
|
| |
|
|
| |
llvm-svn: 220646
|
| |
|
|
| |
llvm-svn: 220644
|
| |
|
|
| |
llvm-svn: 220640
|
| |
|
|
| |
llvm-svn: 220639
|
| |
|
|
|
|
|
| |
Refactor the path search into a helper function to avoid duplicating the path
handling for the search. NFC.
llvm-svn: 220628
|
| |
|
|
|
|
|
|
|
| |
Rather than asserting that the target is unsupported, make a guess at what the
tree for a port would look like and use that for the search path.
Addresses review comments from Ried Kleckner for SVN r220547.
llvm-svn: 220624
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
We would crash because we used operator[] to access past the end of a
SmallString. This occured because our token had length zero.
Instead, form the pointer using .data() and arithmetic. This is safe
because this forms a one-past-the-end pointer and it is only used to
compare with another one-past-the-end pointer.
This fixes PR21379.
llvm-svn: 220614
|
| |
|
|
| |
llvm-svn: 220609
|
| |
|
|
|
|
|
|
|
|
|
| |
The MS linker cannot do anything interesting with these, it doesn't make
sense to emit them.
This fixes PR21373.
Differential Revision: http://reviews.llvm.org/D5986
llvm-svn: 220595
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid an assertion when materializing a lifetime type aggregate temporary. When
performing CodeGen for ObjC++, we could generate a lifetime-only aggregate
temporary by using an initializer list (which is effectively an array). We
would reach through the temporary expression, fishing out the inner expression.
If this expression was a lifetime expression, we would attempt to emit this as a
scalar. This would eventually result in an assertion as the emission would
eventually assert that the expression being emitted has a scalar evaluation
kind.
Add a case to handle the aggregate expressions. Use the EmitAggExpr to emit the
aggregate expression rather than the EmitScalarInit.
Addresses PR21347.
llvm-svn: 220590
|
| |
|
|
| |
llvm-svn: 220589
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Template template parameters weren't added to the list of substitutions.
This would make the substitution map contain inaccurate mappings,
leading to Clang violating the Itanium ABI and breaking compatibility
with GCC.
This fixes PR21351.
Differential Revision: http://reviews.llvm.org/D5959
llvm-svn: 220588
|
| |
|
|
|
|
| |
Switch to a range-based for loop. NFC.
llvm-svn: 220587
|
| |
|
|
|
|
|
|
| |
This fixes a corner-case where __uuidof as a template argument would
result in us trying to emit a GLValue as an RValue. This would lead to
a crash down the road.
llvm-svn: 220585
|