| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 157772
|
| |
|
|
|
|
|
|
|
|
| |
We should lock the number of elements after the initial parsing is
complete. Recursive AST visitors in AnalyzesConsumer and CallGarph can
trigger lazy pch deserialization resulting in more calls to
HandleTopLevelDecl and appending to the LocalTUDecls list. We should
ignore those.
llvm-svn: 157762
|
| |
|
|
| |
llvm-svn: 157759
|
| |
|
|
|
|
|
|
|
| |
we have significantly
improved the pruning heuristics. The current heuristics are pretty good, but they make diagnostics
for uninitialized variables warnings particularly useless in some cases.
llvm-svn: 157734
|
| |
|
|
| |
llvm-svn: 157733
|
| |
|
|
|
|
| |
As per comments following r157659.
llvm-svn: 157722
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Follow up in r155693, r155680.
Prevents a hard to reproduce crash with the following stack trace:
3 libsystem_c.dylib 0x00007ff55a835050 _sigtramp + 18446744029881443184
4 clang 0x0000000106218e97 (anonymous
namespace)::AnalysisConsumer::HandleTranslationUnit(clang::ASTContext&)
+ 519
5 clang 0x0000000105cf3002 clang::ParseAST(clang::Sema&,
bool, bool) + 690
6 clang 0x00000001059a41d8
clang::ASTFrontendAction::ExecuteAction() + 312
7 clang 0x00000001059a3df7 clang::FrontendAction::Execute()
+ 231
8 clang 0x00000001059b0ecc
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 860
9 clang 0x000000010595e451
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 961
10 clang 0x0000000105947f29 cc1_main(char const**, char
const**, char const*, void*) + 969
11 clang 0x0000000105958259 main + 473
12 clang 0x0000000105947b34 start + 52
llvm-svn: 157721
|
| |
|
|
| |
llvm-svn: 157716
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This is a large class of false positives where anonymous enums are used to
declare constants (see Clang's Diagnostics.h for example). A small number of
true positives could probably be found in this bucket by still warning if the
anonymous enum is used in a declarator (enum { ... } x;) but so far we don't
believe this to be a source of significant benefit so I haven't bothered to
preserve those cases.
General offline review/acknowledgment by rtrieu.
llvm-svn: 157713
|
| |
|
|
|
|
| |
and reported as PR12959. // rdar://11499742
llvm-svn: 157697
|
| |
|
|
|
|
| |
Adds missing header guards to Refactoring.h.
llvm-svn: 157694
|
| |
|
|
| |
llvm-svn: 157687
|
| |
|
|
|
|
| |
missing break at the end of btver1 feature list.
llvm-svn: 157680
|
| |
|
|
| |
llvm-svn: 157676
|
| |
|
|
| |
llvm-svn: 157667
|
| |
|
|
|
|
|
|
|
|
|
|
| |
same value and were initialized with literals. Clang will warn on code like
this:
enum A {
FIRST = 1,
SECOND = 1
};
llvm-svn: 157666
|
| |
|
|
|
|
|
| |
Also, do not display the builtin name and macro expansion when the
function is a builtin.
llvm-svn: 157659
|
| |
|
|
|
|
| |
This patch fixes it. // rdar://11488351
llvm-svn: 157646
|
| |
|
|
|
|
|
|
| |
getter result type is safe but does not match with property
type resulting in spurious warning followed by crash in
IRGen. // rdar://11515196
llvm-svn: 157641
|
| |
|
|
| |
llvm-svn: 157639
|
| |
|
|
|
|
|
| |
This is a clean-room implementation based on public documentation and
I tried to validate it as much as possible against gcc.
llvm-svn: 157638
|
| |
|
|
| |
llvm-svn: 157635
|
| |
|
|
|
|
|
| |
the Clang::ConstructJob() to the new ArgList::getLastArg() routine
with eight argument. That simplifies reusing of this code.
llvm-svn: 157633
|
| |
|
|
|
|
| |
This doesn't really fit the existing SSELevel so it gets an extra flag.
llvm-svn: 157630
|
| |
|
|
| |
llvm-svn: 157628
|
| |
|
|
| |
llvm-svn: 157626
|
| |
|
|
|
|
| |
Leave a better fixme for different debug info flags
llvm-svn: 157602
|
| |
|
|
|
|
|
| |
is negligible, but it makes the code clearer. Based on a suggestion by
Jordy Rose.
llvm-svn: 157601
|
| |
|
|
|
|
| |
the operands are vectors of doubles.
llvm-svn: 157596
|
| |
|
|
|
|
|
|
| |
derive from it.
Use actual factory functions rather than derived classes acting as named constructors/factories.
llvm-svn: 157588
|
| |
|
|
|
|
| |
for this. Reported by Timur Iskhodzhanov.
llvm-svn: 157583
|
| |
|
|
| |
llvm-svn: 157561
|
| |
|
|
| |
llvm-svn: 157557
|
| |
|
|
|
|
|
|
|
|
| |
instantiatiating a template.
This comes up in the begin/end calls of a range-for (see the included test
case). Other suggestions are welcome, though this seems to do the trick without
regressing anything.
llvm-svn: 157553
|
| |
|
|
|
|
|
| |
The DenseMap reallocates after 64 insertions so this only happened in
large test cases under very specific circumstances.
llvm-svn: 157549
|
| |
|
|
|
|
|
|
| |
bitwidth and signedness. Also rename the variable to reflect its purpose.
No test case - discovered during random code exploration.
llvm-svn: 157547
|
| |
|
|
|
|
| |
to the declaration in this patch. // rdar://10893232
llvm-svn: 157537
|
| |
|
|
|
|
| |
While there make it a SmallPtrSet.
llvm-svn: 157532
|
| |
|
|
| |
llvm-svn: 157531
|
| |
|
|
|
|
| |
Win32 doesn't allow rename/removing opened files.
llvm-svn: 157528
|
| |
|
|
|
|
|
| |
the Microsoft Visual C++ ABI. Currently limited to type and integral
non-type arguments. Based on a patch by Timur Iskhodzhanov!
llvm-svn: 157524
|
| |
|
|
|
|
|
|
| |
already adds some.
No test as the output is highly dependend on the local configuration.
llvm-svn: 157520
|
| |
|
|
|
|
| |
// rdar://11528439
llvm-svn: 157517
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-Wsometimes-uninitialized diagnostics to make it clearer that the cause
of the issue may be a condition which must always evaluate to true or
false, rather than an uninitialized variable.
To emphasize this, add a new note with a fixit which removes the
impossible condition or replaces it with a constant.
Also, downgrade the diagnostic from -Wsometimes-uninitialized to
-Wconditional-uninitialized when it applies to a range-based for loop,
since the condition is not written explicitly in the code in that case.
llvm-svn: 157511
|
| |
|
|
| |
llvm-svn: 157510
|
| |
|
|
|
|
| |
switch label immediately followed by a 'break;'.
llvm-svn: 157508
|
| |
|
|
|
|
| |
add test case for C++ codegen
llvm-svn: 157500
|
| |
|
|
|
|
| |
method template.
llvm-svn: 157486
|
| |
|
|
| |
llvm-svn: 157483
|
| |
|
|
|
|
| |
function template.
llvm-svn: 157480
|