- Feb 16, 2012
-
-
DeLesley Hutchins authored
For compatibility with gcc, clang will now parse gcc attributes on function definitions, but issue a warning if the attribute is not a thread safety attribute. Warning controlled by -Wgcc-compat. llvm-svn: 150698
-
Hans Wennborg authored
This is in preparation for being able to warn about 'q' and other non-standard format string features. It also allows us to print its name correctly. llvm-svn: 150697
-
David Chisnall authored
llvm-svn: 150696
-
Benjamin Kramer authored
Turns out this isn't safe, because the code below depends on LHS and RHS having the same type. llvm-svn: 150695
-
Benjamin Kramer authored
llvm-svn: 150694
-
Tobias Grosser authored
I think I did not get the implementation right. As the current implementation works well, we will just stick with it for now. llvm-svn: 150691
-
Benjamin Kramer authored
llvm-svn: 150690
-
Evgeniy Stepanov authored
llvm-svn: 150689
-
Sebastian Redl authored
This finishes generalized initializer support in Sema. llvm-svn: 150688
-
Sebastian Redl authored
Revert "Revert "Make CXXNewExpr contain only a single initialier, and not hold the used constructor itself."" This reintroduces commit r150682 with a fix for the Bullet benchmark crash. llvm-svn: 150685
-
Sebastian Redl authored
Revert "Make CXXNewExpr contain only a single initialier, and not hold the used constructor itself." It leads to a compiler crash in the Bullet benchmark. This reverts commit r12014. llvm-svn: 150684
-
Alexey Samsonov authored
llvm-svn: 150683
-
Sebastian Redl authored
Holding the constructor directly makes no sense when list-initialized arrays come into play. The constructor is now held in a CXXConstructExpr, if construction is what is done. The new design can also distinguish properly between list-initialization and direct-initialization, as well as implicit default-initialization constructors and explicit value-initialization constructors. Finally, doing it this way removes redundance from the AST because CXXNewExpr doesn't try to handle both the allocation and the initialization responsibilities. This breaks the static analysis of new expressions. I've filed PR12014 to track this. llvm-svn: 150682
-
Bill Wendling authored
llvm-svn: 150679
-
Bill Wendling authored
llvm-svn: 150678
-
Bill Wendling authored
llvm-svn: 150677
-
Tobias Grosser authored
llvm-svn: 150676
-
Tobias Grosser authored
llvm-svn: 150675
-
Tobias Grosser authored
llvm-svn: 150674
-
Tobias Grosser authored
llvm-svn: 150673
-
Tobias Grosser authored
llvm-svn: 150672
-
Tobias Grosser authored
llvm-svn: 150671
-
James Molloy authored
llvm-svn: 150670
-
James Molloy authored
Modify the algorithm when traversing the DAGCombiner's worklist to be O(log N) for all operations. This fixes a horrible worst case with lots of nodes where 99% of the time was being spent in std::remove. llvm-svn: 150669
-
Bill Wendling authored
llvm-svn: 150668
-
NAKAMURA Takumi authored
With MSVCRT, prior checker missed emission of #INF and #NAN. FIXME: Checking should be simpler. llvm-svn: 150667
-
NAKAMURA Takumi authored
llvm-svn: 150666
-
Jim Ingham authored
Use this to allow the lldb Driver to emit notifications for breakpoint modifications. <rdar://problem/10619974> llvm-svn: 150665
-
Eli Bendersky authored
Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. Patch reviewed by Daniel Dunbar. It will be followed by additional cleanup patches. llvm-svn: 150664
-
Eli Friedman authored
Shift Microsoft enum extensions from -fms-extensions to -fms-compatibility, so -fms-extensions doesn't affect enum semantics in incompatible ways. <rdar://problem/10657186>. llvm-svn: 150663
-
Pete Cooper authored
Template specialize SmallVector::push_back based on POD-ness of the type. Reduces clang binary by 188KB llvm-svn: 150662
-
NAKAMURA Takumi authored
atof(3) might behave differently among platforms. llvm-svn: 150661
-
Eli Friedman authored
llvm-svn: 150660
-
Anna Zaks authored
piece can always be generated. The default end of diagnostic path piece was failing to generate on a BlockEdge that was outgoing from a basic block without a terminator, resulting in a very simple diagnostic being rendered (ex: no path highlighting or custom visitors). Reuse another function, which is essentially doing the same thing and correct it not to fail when a block has no terminator. llvm-svn: 150659
-
Anna Zaks authored
We are not properly handling the memory regions that escape into struct fields, which led to a bunch of false positives. Be conservative here and give up when a pointer escapes into a struct. llvm-svn: 150658
-
Richard Smith authored
* Fix bug when determining whether && / || are potential constant expressions * Try harder when determining whether ?: is a potential constant expression * Produce a diagnostic on sizeof(VLA) to provide a better source location llvm-svn: 150657
-
Nico Weber authored
llvm-svn: 150656
-
Lang Hames authored
llvm-svn: 150655
-
Lang Hames authored
llvm-svn: 150654
-
Lang Hames authored
llvm-svn: 150653
-