| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
as exclusive.
llvm-svn: 164332
|
| |
|
|
|
|
| |
lock expressions.
llvm-svn: 164324
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
but can be dereferenced to form an expression which does have viable begin/end
functions, then typo-correct the range, even if something else goes wrong with
the statement (such as inaccessible begin/end or the wrong type of loop
variable).
In order to ensure we recover correctly and produce any followup diagnostics in
this case, redo semantic analysis on the for-range statement outside of the
diagnostic trap, after issuing the typo-correction.
llvm-svn: 164323
|
| |
|
|
|
|
| |
Patch by Sean McBride.
llvm-svn: 164318
|
| |
|
|
|
|
| |
Richard's comments. // rdar://12202422
llvm-svn: 164316
|
| |
|
|
|
|
|
|
|
|
|
|
| |
specifying a target triple.
This test behavior differs depending (at least) on whether
sizeof(wchar_t) == sizeof(int) or not.
When they are equal, the first redeclaration will fail because decltype(+L'x')
is unsigned int instead of the expected int. This occurs on ARM.
llvm-svn: 164315
|
| |
|
|
|
|
|
|
|
|
|
|
| |
example)
While it might be nice to have a quick end-to-end sanity test, it's just not
really the right place for it & would require more work to enable lit to
provide a detection flag ("XFAIL: cross" or similar) than the value we get from
having this test. Early on it might've made more sense, but these days we've
got some pretty good coverage across the stack with more targeted tests.
llvm-svn: 164314
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is some really old code (took me a while to find the test cases) & the
diagnostic text is slightly incorrect (it should really only apply to
re/declarations/, redefinitions are an error regardless of whether the types
match). Not sure if anyone cares about it, though.
For now this just makes the diagnostic more clear in less obvious cases where
the type of a declaration might not be explicitly written (eg: because it
uses decltype)
llvm-svn: 164313
|
| |
|
|
|
|
|
| |
Patch by Gábor Horváth.
Review: http://llvm-reviews.chandlerc.com/D45
llvm-svn: 164304
|
| |
|
|
|
|
|
|
| |
disambiguate them from integers.
Based on a patch by Olaf Krzikalla, UDL fixes by me.
llvm-svn: 164303
|
| |
|
|
| |
llvm-svn: 164301
|
| |
|
|
|
|
|
|
|
|
| |
- Inputs/system-header-simulator.h: Declare strlen() with size_t.
- malloc-interprocedural.c: Move the definition of size_t into the header above.
Then XFAIL can be pruned.
llvm-svn: 164300
|
| |
|
|
|
|
| |
ASan doesn't play well with -D_FORTIFY_SOURCE, which is enabled by default starting at OS X 10.7
llvm-svn: 164299
|
| |
|
|
|
|
|
|
|
|
|
|
| |
By changing the conversion operator into a conversion constructor, we
can enabled based on the template parameters leading to better error
messages. E.g.: stmt(decl()) will now create an error message including:
note: candidate function not viable: no known conversion from
'clang::ast_matchers::internal::BindableMatcher<clang::Decl>' to 'const
clang::ast_matchers::internal::Matcher<clang::Stmt>' for 1st argument
llvm-svn: 164298
|
| |
|
|
|
|
| |
for now. Investigating.
llvm-svn: 164295
|
| |
|
|
| |
llvm-svn: 164279
|
| |
|
|
|
|
|
|
|
|
|
| |
If someone provides their own function called 'strdup', or 'reallocf', or
even 'malloc', and we inlined it, the inlining should have given us all the
malloc-related information we need. If we then try to attach new information
to the return value, we could end up with spurious warnings.
<rdar://problem/12317671>
llvm-svn: 164276
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
removeDeadBindings."
While we definitely want this optimization in the future, we're not
currently handling constraints on symbolic /expressions/ correctly.
These should stay live even if the SymExpr itself is no longer referenced
because could recreate an identical SymExpr later. Only once the SymExpr
can no longer be recreated -- i.e. a component symbol is dead -- can we
safely remove the constraints on it.
This liveness issue is tracked by <rdar://problem/12333297>.
This reverts r163444 / 24c7f98828e039005cff3bd847e7ab404a6a09f8.
llvm-svn: 164275
|
| |
|
|
| |
llvm-svn: 164274
|
| |
|
|
|
|
| |
non-function friend declaration. Patch by Josh Magee!
llvm-svn: 164273
|
| |
|
|
|
|
| |
it into -Wgnu.
llvm-svn: 164272
|
| |
|
|
|
|
| |
member function templates with an rvalue ref qualifier.
llvm-svn: 164267
|
| |
|
|
|
|
| |
functions.
llvm-svn: 164263
|
| |
|
|
|
|
| |
Otherwise clang can't analyze code that relies on features provided by libc++.
llvm-svn: 164262
|
| |
|
|
| |
llvm-svn: 164260
|
| |
|
|
| |
llvm-svn: 164254
|
| |
|
|
| |
llvm-svn: 164253
|
| |
|
|
| |
llvm-svn: 164252
|
| |
|
|
|
|
| |
is placed on a function that has no path to the exit block.
llvm-svn: 164244
|
| |
|
|
|
|
|
| |
LOCKS_EXCLUDED is used on a method with a name that is is not a simple
identifier.
llvm-svn: 164242
|
| |
|
|
|
|
| |
Patch by Joey Gouly.
llvm-svn: 164239
|
| |
|
|
| |
llvm-svn: 164234
|
| |
|
|
|
|
| |
example.
llvm-svn: 164226
|
| |
|
|
| |
llvm-svn: 164223
|
| |
|
|
|
|
|
|
| |
clang has recently started to warn about the enum compares:
lib/Serialization/ASTWriter.cpp:2760:31: warning: comparison of literal 256 with expression of type
'clang::DeclarationName::NameKind' is always true [-Wtautological-constant-out-of-range-compare]
llvm-svn: 164220
|
| |
|
|
| |
llvm-svn: 164218
|
| |
|
|
|
|
| |
longer needed after the unused Context member was removed in r164104.
llvm-svn: 164196
|
| |
|
|
| |
llvm-svn: 164187
|
| |
|
|
|
|
|
|
| |
definition info; it needs to be there because the mangler needs to
access it before we're finished defining the lambda class.
PR12808.
llvm-svn: 164186
|
| |
|
|
| |
llvm-svn: 164179
|
| |
|
|
|
|
|
|
|
| |
The Freescale SDK is based on OpenEmbedded, and this might be useful
for other OpenEmbedded-based configurations as well.
With minor modifications, patch by Tobias von Koch!
llvm-svn: 164177
|
| |
|
|
|
|
| |
Patch by Tobias von Koch!
llvm-svn: 164176
|
| |
|
|
|
|
| |
relational operators of enumeration type. From the gcc testsuite.
llvm-svn: 164171
|
| |
|
|
|
|
| |
avoid a crash. PR13860.
llvm-svn: 164168
|
| |
|
|
| |
llvm-svn: 164167
|
| |
|
|
| |
llvm-svn: 164145
|
| |
|
|
|
|
|
|
| |
integral expression have the obvious result.
Patch reviewed by John McCall off line.
// rdar://12202422
llvm-svn: 164143
|
| |
|
|
| |
llvm-svn: 164133
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes Clang warn about self references in in-class initializers,
for example:
struct S {
int a = a + 42;
};
This basically just moves UninitializedFieldVisitor up a bit in
SemaDeclCXX.cpp, and adds a call to it from ActOnCXXInClassMemberInitializer.
llvm-svn: 164131
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Without this patch, the isDerivedFrom matcher asserts in the
"assert(ClassDecl != NULL);" in the new test, as a
DependentTemplateSpecilizationType is not a sub-type of
TemplateSpecializationType and also does not offer getAsCXXRecordDecl().
I am not sure why this did not cause problems before. It is now (after
the changed implementation of isDerivedFrom) easier to write a matcher
that actually gets into this branch of the code.
llvm-svn: 164127
|