- Jun 26, 2015
-
-
Manuel Klimek authored
Get rid of code-path that (according to Richard Smith) is not needed but leads to a crasher bug when assuming a template has been fully instantiated and thus has a definition. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240752 91177308-0d34-0410-b5e6-96231b3b80d8
-
Paul Robinson authored
Attribute 'nodebug' means no llvm.dbg.* intrinsics, no !dbg annotations, and no DISubprogram for the function. Differential Revision: http://reviews.llvm.org/D10747 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240747 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nico Weber authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240743 91177308-0d34-0410-b5e6-96231b3b80d8
-
Davide Italiano authored
Skip calls to HasTrivialDestructorBody() in the case where the destructor is never invoked. Alternatively, Richard proposed to change Sema to declare a trivial destructor for anonymous union member, which seems too wasteful. Differential Revision: http://reviews.llvm.org/D10508 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240742 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nico Weber authored
Before MSVS2015, MSVS's headers disagree about int32_t and PRIx32 and so on. Provide a wrapper header to fix this, so that -Wformat can still be used. Fixes PR23412. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240741 91177308-0d34-0410-b5e6-96231b3b80d8
-
Meador Inge authored
This patch fixes a crash caused by the following case: template<typename T> auto f(T x) { auto g = [](auto ... args) { auto h = [args...]() -> int { return 0; }; return h; }; return g; } auto x = f(0)(); When the templated function 'f' is instantiated and the inner-most lambda is transformed the ellipsis location on the captured variable is lost. Then the lambda returned by 'f' is instantiated and the tree transformer chokes on the invalid ellipsis location. The problem is fixed by making a minor change to properly track the ellipsis location. This fixes PR23716. Differential Revision: http://reviews.llvm.org/D10590 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240740 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
isTriviallyRecursive is only supposed to guard functions part of the implementation. This fixes PR23953. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240735 91177308-0d34-0410-b5e6-96231b3b80d8
-
Kaelyn Takata authored
In certain cases, the tree transform would introduce new TypoExprs while trying one of the corrections, invalidating the unique_ptr in the state reference, and also causing a TypoExpr to exist that will never be corrected since it doesn't exist in the final corrected expression. The simple solution to both problems is to temporarily disable typo correction while handling potentially ambiguous typo corrections. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240734 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anna Zaks authored
- Added the description of the interceptor suppression. - Re-organized a bit: grouped a few things under the Issue Suppression section, grouped IOC and leaks under a section, placed symbolication info into Symbolizing the Reports section.. - In supported platforms: "MacOS" -> "OS X"; added "iOS Simulator" - Added a paragraph to the Usage section describing when DYLD_INSERT_LIBRARIES might need to be used. - "attribute((no_sanitize_address))" -> "__attribute__((no_sanitize("address")))" - Updated Leak Sanitizer page with most up to date info. .... http://reviews.llvm.org/D10559 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240725 91177308-0d34-0410-b5e6-96231b3b80d8
-
Sean Silva authored
Ever since the target attributes change, we don't need to guard these headers with `requires`. Actually it's a bit worse, because if we do then they are included textually under the covers, causing declarations to appear in submodules they aren't supposed to be in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240720 91177308-0d34-0410-b5e6-96231b3b80d8
-
Jonathan Roelofs authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240718 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Samsonov authored
Summary: Namely, we must have proper C++ABI support in UBSan runtime. We don't have a good way to check for that, so just assume that C++ABI support is there whenever -fsanitize=vptr is supported (i.e. only on handful of platforms). Exact diagnostic is also tricky. It's not "cfi" that is unsupported, just the diagnostic mode. So, I suggest to report that "-fno-sanitize-trap=cfi-foobar" is incompatible with a given target toolchain. Test Plan: regression test suite Reviewers: pcc Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D10751 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240716 91177308-0d34-0410-b5e6-96231b3b80d8
-
Diego Novillo authored
When a profile file cannot be opened, we used to display just the error message but not the name of the profile the compiler was trying to open. This will become useful in the next set of patches that introduce GCC-compatible flags to specify profiles. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240715 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chris Bieneman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240710 91177308-0d34-0410-b5e6-96231b3b80d8
-
Meador Inge authored
This patch implements the functionality specified by DR948. The changes are two fold. First, the parser was modified to allow 'constexpr's to appear in condition declarations (which was a hard error before). Second, Sema was modified to cleanup maybe odr-used declarations by way of a call to 'ActOnFinishFullExpr'. As 'constexpr's were not allowed in condition declarations before the cleanup wasn't necessary (such declarations were always odr-used). This fixes PR22491. Differential Revision: http://reviews.llvm.org/D8978 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240707 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 25, 2015
-
-
Richard Smith authored
parsing then merged again when the module was loaded. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240700 91177308-0d34-0410-b5e6-96231b3b80d8
-
Peter Collingbourne authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240696 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chris Bieneman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240693 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
This is exercised by existing tests, and fixes a failure with -fsanitize=null. No observable change otherwise; the code happened to do the right thing in practice under recent versions of Clang and GCC because MacroDirective::getDefinition happens to check whether this == null. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240691 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chris Bieneman authored
Summary: For better or worse the OS X command line tools refer to the iOS simulator as iphonesimucator. We should provide an alias flag -miphonesimulator-version-min that matches a consistent pattern with the other tools. This is in the interest of making it easier for people to write platform-agnostic darwin build scripts. Reviewers: bob.wilson, bogner Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D10743 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240686 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Samsonov authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240685 91177308-0d34-0410-b5e6-96231b3b80d8
-
Douglas Katzman authored
To match the '-ccc-print-phases' command-line flag. Also make two more 'for' loops range-based. NFC git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240680 91177308-0d34-0410-b5e6-96231b3b80d8
-
Douglas Katzman authored
Differential Revision: http://reviews.llvm.org/D10738 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240674 91177308-0d34-0410-b5e6-96231b3b80d8
-
Artem Belevich authored
Integer variants are implemented as atomicrmw or cmpxchg instructions. Atomic add for floating point (__nvvm_atom_add_gen_f()) is implemented as a call to an overloaded @llvm.nvvm.atomic.load.add.f32.* LVVM intrinsic. Differential Revision: http://reviews.llvm.org/D10666 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240669 91177308-0d34-0410-b5e6-96231b3b80d8
-
Paul Robinson authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240664 91177308-0d34-0410-b5e6-96231b3b80d8
-
Artem Belevich authored
Differential Revision: http://reviews.llvm.org/D10664 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240659 91177308-0d34-0410-b5e6-96231b3b80d8
-
Aaron Ballman authored
Fix #pragma redefine_extname when there is a local variable of the same name. The local should not be renamed, only the externally-available declaration should be. Patch by Andrey Bokhanko! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240653 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Marjamaki authored
Patch by takeshi-yoshimura! Differential Revision: http://reviews.llvm.org/D10145 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240643 91177308-0d34-0410-b5e6-96231b3b80d8
-
Jay Foad authored
Summary: This is the Clang part of the PPC64 memory sanitizer implementation in D10648. Reviewers: kcc, eugenis, willschm, wschmidt, samsonov Reviewed By: samsonov Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D10650 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240628 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Jasper authored
Before: optional string operator= 1; After: optional string operator = 1; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240624 91177308-0d34-0410-b5e6-96231b3b80d8
-
Steven Wu authored
This re-commits r226005 with a tweak. The origin attempt failed because Darwin bot sets up SDKROOT and clang can deduce SDK version from them after this patch. That broke many driver tests due to the change of deployment target version. Now the tests should not complain after r240574. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240619 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Samsonov authored
See https://llvm.org/bugs/show_bug.cgi?id=23539 for why this is necessary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240618 91177308-0d34-0410-b5e6-96231b3b80d8
-
Hubert Tong authored
Summary: This patch reduces duplication in the template argument deduction code for handling deduction from initializer lists in a function call. This extends the fix for PR12119 to also apply to the case where the corresponding parameter is a trailing parameter pack. Test Plan: A test for deduction from nested initializer lists where the corresponding parameter is a trailing parameter pack is added in `clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp`. Reviewers: fraggamuffin, rsmith Reviewed By: rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D10681 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240612 91177308-0d34-0410-b5e6-96231b3b80d8
-
Hubert Tong authored
Summary: This change implements parse-only acceptance of the optional requires-clause in a template-declaration. Diagnostic testing is added for cases where the grammar is ambiguous with the expectation that the longest token sequence which matches the syntax of a constraint-expression is consumed without backtracking. Reviewers: faisalv, fraggamuffin, rsmith Reviewed By: rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D10462 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240611 91177308-0d34-0410-b5e6-96231b3b80d8
-
Ranjeet Singh authored
when iterating through the Features vector if we don't keep track of what's already been set. This could lead to the macro __ARM_FP getting the wrong value. This patch fixes this issue by keeping track of the bits that have already been set in the loop. Differential Revision: http://reviews.llvm.org/D10395 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240607 91177308-0d34-0410-b5e6-96231b3b80d8
-
Derek Schuff authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240601 91177308-0d34-0410-b5e6-96231b3b80d8
-
Derek Schuff authored
Summary: Byval argument pair formation assumes that if a type is less than 8 bytes it must be an integer and not a pointer, which is not true for x32 and NaCl. Relax the assertion and add a test for a codegen case that triggered it. Reviewers: jvoung Subscribers: jfb, cfe-commits Differential Revision: http://reviews.llvm.org/D10701 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240600 91177308-0d34-0410-b5e6-96231b3b80d8
-
Douglas Gregor authored
Addresses the rest of rdar://problem/21530726. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240597 91177308-0d34-0410-b5e6-96231b3b80d8
-
Douglas Gregor authored
Addresses a conflict with glibc's __nonnull macro by renaming the type nullability qualifiers as follows: __nonnull -> _Nonnull __nullable -> _Nullable __null_unspecified -> _Null_unspecified This is the major part of rdar://problem/21530726, but does not yet provide the Darwin-specific behavior for the old names. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240596 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 24, 2015
-
-
Steven Wu authored
Summary: Remove some of dangerous environmental variables from clang/Driver tests. Driver tests should not rely on preset value of these variables and may actually fail because of them. They cannot be removed in test/lit.cfg because we still need to support relocatable SDKs and other overwrite for other clang tests. Reviewers: bogner Subscribers: rnk, cfe-commits Differential Revision: http://reviews.llvm.org/D7135 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@240574 91177308-0d34-0410-b5e6-96231b3b80d8
-