summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* [C++11] Replacing CXXRecordDecl iterators init_begin() and init_end() with ↵Aaron Ballman2014-03-1311-57/+38
| | | | | | iterator_range inits(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203819
* [C++11] Replacing CXXRecordDecl iterators capture_begin() and capture_end() ↵Aaron Ballman2014-03-132-10/+14
| | | | | | with iterator_range captures(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203817
* MS intrinsics: __interlockedbittestandset(64) (PR19054)Hans Wennborg2014-03-131-0/+22
| | | | llvm-svn: 203816
* [C++11] Replacing CXXRecordDecl iterators friend_begin() and friend_end() ↵Aaron Ballman2014-03-133-4/+8
| | | | | | with iterator_range friends(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203815
* [C++11] Replacing CXXRecordDecl iterators ctor_begin() and ctor_end() with ↵Aaron Ballman2014-03-133-18/+15
| | | | | | iterator_range ctors(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203814
* Prevent outputting HeaderFileInfos for files not used as headersBen Langmuir2014-03-133-9/+28
| | | | | | | | | | | When building an AST file, we don't want to output HeaderFileInfo structures for files that are not actually used as headers in the current context. This can lead to assuming that unrelated files have include counts of 0, defeating multiple-include prevention. This is accomplished by adding an IsValid bit to the HFI. llvm-svn: 203813
* [C++11] Replacing CXXRecordDecl iterators method_begin() and method_end() ↵Aaron Ballman2014-03-136-60/+34
| | | | | | with iterator_range methods(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203812
* [C++11] Replacing CXXRecordDecl iterators vbases_begin() and vbases_end() ↵Aaron Ballman2014-03-1313-145/+93
| | | | | | with iterator_range vbases(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203808
* Removing some methods which appear to be unused (at least in clang, lld and ↵Aaron Ballman2014-03-131-34/+0
| | | | | | lldb). llvm-svn: 203805
* Simplify code. No functionality change.Rafael Espindola2014-03-131-5/+5
| | | | llvm-svn: 203804
* [C++11] Replacing CXXRecordDecl iterators bases_begin() and bases_end() with ↵Aaron Ballman2014-03-1337-510/+361
| | | | | | iterator_range bases(). Updating all of the usages of the iterators with range-based for loops. llvm-svn: 203803
* CMake: allow generation of a Qt Compressed Help file for Clang sourceDmitri Gribenko2014-03-132-0/+84
| | | | | | | | | | | | | | | | | | | | | | r203272 enables generation of a Qt Compressed Help file for the LLVM source code. As a consequence, this change brings the same capabilities to Clang while reusing these two variables: LLVM_ENABLE_DOXYGEN_QT_HELP LLVM_DOXYGEN_QHELPGENERATOR_PATH and adding CLANG_DOXYGEN_QCH_FILENAME="org.llvm.clang.qch" CLANG_DOXYGEN_QHP_NAMESPACE="org.llvm.clang" CLANG_DOXYGEN_QHP_CUST_FILTER_NAME="Clang ${CLANG_VERSION}" CLANG_DOXYGEN_QHP_CUST_FILTER_ATTRS="Clang,${CLANG_VERSION}" Patch by Konrad Kleine. llvm-svn: 203801
* Remove an unnecessary check for FormatTok not being null.Alexander Kornienko2014-03-131-1/+2
| | | | | | | | | | | | | | | | | Summary: This check hints clang analyzer, that FormatTok may be null, and it reports a null pointer dereference error: http://buildd-clang.debian.net/scan-build/report-827c64.html#Path28 Reviewers: djasper Reviewed By: djasper CC: cfe-commits, klimek Differential Revision: http://llvm-reviews.chandlerc.com/D3040 llvm-svn: 203800
* clang-format: Prevent ObjC code from confusing the braced-init detectionDaniel Jasper2014-03-132-0/+9
| | | | | | | | | | | | | | | | | | | | | | | This was leading to bad formatting, e.g.: Before: f(^{ @autoreleasepool { if (a) { g(); } } }); After: f(^{ @autoreleasepool { if (a) { g(); } } }); llvm-svn: 203777
* Tests for DR389-399.Richard Smith2014-03-132-9/+247
| | | | llvm-svn: 203771
* [C++11] Add 'override' keyword to virtual methods that override their base ↵Craig Topper2014-03-134-82/+68
| | | | | | class. llvm-svn: 203769
* De-virtualize a method. It's called through template magic and doesn't ↵Craig Topper2014-03-131-1/+1
| | | | | | override anything. llvm-svn: 203764
* Remove unreachable PragmaCaptured method. It's not a real PPCallback.Craig Topper2014-03-131-10/+0
| | | | llvm-svn: 203759
* [C++11] Add 'override' keyword to virtual methods that override their base ↵Craig Topper2014-03-1328-403/+383
| | | | | | class. llvm-svn: 203758
* [C++11] Add 'override' keyword to virtual methods that override their base ↵Craig Topper2014-03-134-128/+124
| | | | | | class. llvm-svn: 203746
* Always use --eh-frame-hdr on NetBSD, even for -static.Joerg Sonnenberger2014-03-132-11/+11
| | | | llvm-svn: 203742
* PR18275: If a member function of a class template is declared with aRichard Smith2014-03-132-0/+35
| | | | | | | | | | | | | | | const-qualified parameter type and the defined with a non-const-qualified parameter type, the parameter is not const inside its body. Ensure that the type we use when instantiating the body is the right one. Patch by suyog sarda! This is still rather unsatisfactory; it seems like it might be better to instantiate at least the function parameters, and maybe the complete function declaration, when we instantiate the definition for such a member function (instead of reusing the declaration from inside the instantiated class definition). llvm-svn: 203741
* Only allow streaming exactly type 'bool' to a DiagnosticBuilder, not anythingRichard Smith2014-03-124-7/+12
| | | | | | | that implicitly converts to 'bool' (such as pointers, and the first operand of ?:). Clean up issues found by this. Patch by Stephan Tolksdorf! llvm-svn: 203735
* Fix crash if delayed template parsing meets an erroneous trailing return type.Richard Smith2014-03-124-24/+40
| | | | | | | Based on a patch and test by Stephan Tolksdorf! Refactoring and fixing adjacent brokenness by me. llvm-svn: 203733
* MS intrinsics: implement the __movs and __stos intrinsics (PR19054)Hans Wennborg2014-03-121-0/+54
| | | | llvm-svn: 203722
* Thread Safety Analysis: new test case for lambdasDeLesley Hutchins2014-03-121-2/+33
| | | | llvm-svn: 203720
* MS intrinsics: implement __readgs{byte,word,dword,qword} (PR19054)Hans Wennborg2014-03-121-4/+27
| | | | llvm-svn: 203715
* MS intrinsics: don't declare __readeflags and __writeeflags in Intrin.hHans Wennborg2014-03-122-2/+5
| | | | | | | | They're already defined in ia32intrin.h, and this would cause including Intrin.h in 64-bit mode to fail because of conflicting types. Update ms-intrin.cpp to also run in 64-bit mode to catch things like this. llvm-svn: 203714
* Revert "CodeGen: Use a binary format for instrumentation based profiling"Justin Bogner2014-03-1212-53/+179
| | | | | | | | | I've clearly done something wrong with how to get this to link correctly. Reverting for now. This reverts commit r203711. llvm-svn: 203712
* CodeGen: Use a binary format for instrumentation based profilingJustin Bogner2014-03-1212-179/+53
| | | | | | | | This updates CodeGenPGO to use the ProfileDataReader introduced to llvm in r203703 and the new API for writing out the profile introduced to compiler-rt in r203710. llvm-svn: 203711
* Dont unconditionally add gcc4.2 include paths on FreeBSD.Roman Divacky2014-03-121-5/+0
| | | | | | Newer FreeBSD doesnt ship with gcc and defaults to using libc++. llvm-svn: 203700
* Objective-C. Issue diagnostics on mismatched methods when their selector is usedFariborz Jahanian2014-03-123-6/+83
| | | | | | in an @selector expression. // rdar://15794055 llvm-svn: 203693
* PR19113: Emit 'vtable' TBAA metadata when loading a vptr in a ↵Richard Smith2014-03-122-3/+9
| | | | | | pointer-to-member-function call. llvm-svn: 203691
* CodeGen: Move hot/cold logic out of PGOProfileDataJustin Bogner2014-03-122-39/+21
| | | | llvm-svn: 203689
* DR1346: a parenthesized braced-init-list cannot be used as the initializer whenRichard Smith2014-03-128-6/+75
| | | | | | performing auto type deduction. llvm-svn: 203683
* Don't recompute inlining threshold - use new overload provided by LLVMEli Bendersky2014-03-121-10/+3
| | | | | | Follow-up on LLVM r203669 llvm-svn: 203673
* Check for LLVM_ON_WIN32 instead of _WIN32.Hans Wennborg2014-03-126-13/+18
| | | | | | This is a follow-up to r203624 to address Anton's comment. llvm-svn: 203668
* Use vector<T>::data() to simplify codeDmitri Gribenko2014-03-121-3/+1
| | | | llvm-svn: 203665
* ARM: Correct alignment of structs passed as byval pointerOliver Stannard2014-03-124-6/+20
| | | | | | | | | | When a struct has bitfields overlapping with other members (as required by the AAPCS), clang uses a packed struct to represent this. If such a struct is large enough for clang to pass it as a byval pointer (>64 bytes), we need to set the alignment of the argument to match the original type. llvm-svn: 203660
* clang-format: Fix crasher.Daniel Jasper2014-03-122-3/+6
| | | | | | | | | | Caused by unknown tokens (e.g. "\n") not properly updating the state. Example: const char* c = STRINGIFY( \na : b); llvm-svn: 203645
* [C++11] Add 'override' keyword to virtual methods that override their base ↵Craig Topper2014-03-1217-599/+570
| | | | | | class. llvm-svn: 203643
* Disable cross-windows-on-linux.cpp for now. It may or may not fail. :/NAKAMURA Takumi2014-03-121-0/+3
| | | | llvm-svn: 203642
* [C++11] Add 'override' keyword to virtual methods that override their base ↵Craig Topper2014-03-128-57/+56
| | | | | | class. llvm-svn: 203641
* [C++11] Add 'override' keyword to virtual methods that override their base ↵Craig Topper2014-03-1225-230/+241
| | | | | | class. llvm-svn: 203640
* Lexer: split test into separate filesSaleem Abdulrasool2014-03-122-10/+14
| | | | | | | | Unfortunately, XFAIL applies to the entire file. Split the test into two different units, enabling the proper application of XFAIL on the test which is expected to fail on Windows. llvm-svn: 203633
* Lex: reduce buffer size, add a testSaleem Abdulrasool2014-03-123-1/+16
| | | | | | | Reduce the stack usage as hopefully include paths are usually not too long. Add a test case for the path normalisation behaviour. llvm-svn: 203632
* Add an option -fmodules-validate-system-headersBen Langmuir2014-03-127-4/+49
| | | | | | | | When enabled, always validate the system headers when loading a module. The end result of this is that when these headers change, we will notice and rebuild the module. llvm-svn: 203630
* Allow GNU-style attributes on lambda expressions.Aaron Ballman2014-03-123-4/+34
| | | | llvm-svn: 203628
* DebugInfo: Remove debug-info-pubtypes.ccp - pubnames/pubtypes are adequately ↵David Blaikie2014-03-111-16/+0
| | | | | | tested in LLVM now. llvm-svn: 203625
* Be case sensitive when determining driver mode based on argv[0] except on ↵Hans Wennborg2014-03-111-0/+3
| | | | | | | | | Windows This narrows the impact of r188833 after Dimitry pointed out that it's good to be able to tell the difference between 'cc' and 'CC'. llvm-svn: 203624
OpenPOWER on IntegriCloud