- Feb 14, 2017
-
-
Richard Smith authored
feature-test macro, and mark feature as done on status page. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@295011 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
They are a little bit of a special case in the mangling. They are always mangled without taking into account their virtual-ness of the destructor. They are also mangled to return void, unlike the actual destructor. This fixes PR31931. Differential Revision: https://reviews.llvm.org/D29912 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@295010 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
such guides below explicit ones, and ensure that references to the class's template parameters are not treated as forwarding references. We make a few tweaks to the wording in the current standard: 1) The constructor parameter list is copied faithfully to the deduction guide, without losing default arguments or a varargs ellipsis (which the standard wording loses by omission). 2) If the class template declares no constructors, we add a T() -> T<...> guide (which will only ever work if T has default arguments for all non-pack template parameters). 3) If the class template declares nothing that looks like a copy or move constructor, we add a T(T<...>) -> T<...> guide. #2 and #3 follow from the "pretend we had a class type with these constructors" philosophy for deduction guides. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@295007 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nick Lewycky authored
This bypasses integer sanitization checks which are redundant on the expression since it's been checked by Sema. Fixes a clang codegen assertion on "void test() { new int[0+1]{0}; }" when building with -fsanitize=signed-integer-overflow. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@295006 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alex Lorenz authored
rdar://29219185 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@295003 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alex Lorenz authored
This commit adds context sensitive code completion support for the C++11 keywords that currently don't have completion results. The following keywords are supported by this patch: alignas constexpr static_assert noexcept (as a function/method qualifier) thread_local The following special identifiers are also supported: final (as a method qualifier or class qualifier) override rdar://29219185 Differential Revision: https://reviews.llvm.org/D28286 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@295001 91177308-0d34-0410-b5e6-96231b3b80d8
-
Charles Li authored
Set 5 Objective-C++ tests to run at gnu++98 Differential Revision: https://reviews.llvm.org/D29739 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294997 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Feb 13, 2017
-
-
Charles Li authored
Different diagnostics when format string does not match actual arg type. This commit contains the first 2 of 3 tests reviewed in D29685 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294979 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
Fixes https://bugs.llvm.org/show_bug.cgi?id=31932 Based on a patch by Roland McGrath Reviewed By: phosek Differential Revision: https://reviews.llvm.org/D29843 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294978 91177308-0d34-0410-b5e6-96231b3b80d8
-
Charles Li authored
C++11 destructors are nothrow by default. Differential Revision: https://reviews.llvm.org/D29859 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294972 91177308-0d34-0410-b5e6-96231b3b80d8
-
Benjamin Kramer authored
If the preamble had diagnostic state this would leave behind invalid state in the DiagnosticsEngine and crash later. The test case runs into an assertion in DiagnosticsEngine::setSourceManager. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294963 91177308-0d34-0410-b5e6-96231b3b80d8
-
Davide Italiano authored
Differential Revision: https://reviews.llvm.org/D29309 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294961 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
CMake handles paths with slashes. It caused cmake/install failure on msbuild.exe. Note, Other llvm-config-oriented variables have been normalized since they are stored in the cache attributed with PATH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294954 91177308-0d34-0410-b5e6-96231b3b80d8
-
Gor Nishanov authored
Summary: Sema::CheckCompletedCoroutineBody was growing unwieldy with building all of the substatements. Also, constructors for CoroutineBodyStmt had way too many parameters. Instead, CoroutineBodyStmt now defines CtorArgs structure with all of the required construction parameters. CheckCompleteCoroutineBody delegates construction of individual substatements to short functions one per each substatement. Also, added a drive-by fix of initializing CoroutinePromise to nullptr in ScopeInfo.h. And addressed the FIXME that wanted to tail allocate extra room at the end of the CoroutineBodyStmt to hold parameter move expressions. (The comment was longer that the code that implemented tail allocation). Reviewers: rsmith, EricWF Subscribers: mehdi_amini, cfe-commits Differential Revision: https://reviews.llvm.org/D28835 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294933 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Feb 12, 2017
-
-
Aaron Ballman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294911 91177308-0d34-0410-b5e6-96231b3b80d8
-
Renato Golin authored
...function type with a redeclaration having the same attribute. Fixing this introduced a secondary problem where we were assuming that K&R functions could not be attributed types when reporting old-style function definitions that are not preceded by a prototype." Also Revert "Hopefully fixes a compile error introduced by r294861." This reverts commit r294862, r294861, as they bork the ARM builds and haven't fix it back. Also, please, short commit titles, long commit decsriptions... git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294910 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Blaikie authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294904 91177308-0d34-0410-b5e6-96231b3b80d8
-
Davide Italiano authored
On Windows the filename might have an extension, namely `.exe`, so the search will fail. Sorry, I don't have a good way to test this as it seems to fail only in some weird configurations. r284430 has the same modification for Fuchsia. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294879 91177308-0d34-0410-b5e6-96231b3b80d8
-
Saleem Abdulrasool authored
Use # as the comment leader for AArch64 auto-release elision marker. This is to keep it in sync with the value used in swift. When building libdispatch for Linux AArch64, the auto-release elision marker was emitted. However, ELF uses # as the comment leader while MachO accepts both ; and #. Use the common marker for it instead. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294877 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Feb 11, 2017
-
-
Saleem Abdulrasool authored
Certain ARC runtime functions have an ABI contract of being forwarding. Annotate the functions with the appropriate `returned` attribute on the arguments. This hoists some of the runtime ABI contract information into the frontend rather than the backend transformations. The test adjustments are to mark the returned function parameter as such. The minor change to the IR output is due to the fact that the returned reference of the object causes it to extend the lifetime of the object by returning an autoreleased return value. The result is that the explicit objc_autorelease call is no longer formed, as autorelease elision is now possible on the return. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294872 91177308-0d34-0410-b5e6-96231b3b80d8
-
Saleem Abdulrasool authored
Silence some diagnostics which clang now generates. This makes it easier to see the failures in lit output. NFC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294871 91177308-0d34-0410-b5e6-96231b3b80d8
-
Dylan McKay authored
Summary: The -mmcu option for GCC sets macros like __AVR_ATmega328P__ (with the trailing underscores), be sure to include these underscores for Clangs -mcpu option. See "AVR Built-in Macros" in https://gcc.gnu.org/onlinedocs/gcc/AVR-Options.html Reviewers: jroelofs, dylanmckay Reviewed By: jroelofs, dylanmckay Subscribers: efriedma, cfe-commits Differential Revision: https://reviews.llvm.org/D29817 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294869 91177308-0d34-0410-b5e6-96231b3b80d8
-
Aaron Ballman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294862 91177308-0d34-0410-b5e6-96231b3b80d8
-
Aaron Ballman authored
Attributes on K&R C functions should not cause incompatible function type with a redeclaration having the same attribute. Fixing this introduced a secondary problem where we were assuming that K&R functions could not be attributed types when reporting old-style function definitions that are not preceded by a prototype. This patch fixes PR31020. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294861 91177308-0d34-0410-b5e6-96231b3b80d8
-
Saleem Abdulrasool authored
objc_storeStrong does not return a value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294855 91177308-0d34-0410-b5e6-96231b3b80d8
-
Saleem Abdulrasool authored
Adjust style before making more intrusive changes. NFC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294854 91177308-0d34-0410-b5e6-96231b3b80d8
-
Saleem Abdulrasool authored
The conditional cast is unnecessary since we know that it will always succeed. NFC. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294853 91177308-0d34-0410-b5e6-96231b3b80d8
-
Benjamin Kramer authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294838 91177308-0d34-0410-b5e6-96231b3b80d8
-
Benjamin Kramer authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294820 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Trieu authored
The Inputs/ directory is the recommended location for extra files for test cases. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294815 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294802 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Feb 10, 2017
-
-
George Burgess IV authored
What we want to actually control this behavior is something more local than an EvalutationMode. Please see the linked revision for more discussion on why/etc. This fixes PR31843. Differential Revision: https://reviews.llvm.org/D29469 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294800 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
specialization types from within their own initializers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294796 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
It's actually meaningful and useful to allow such variables to have no initializer, but we are strictly following the standard here until the C++ committee reaches consensus on allowing this. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294785 91177308-0d34-0410-b5e6-96231b3b80d8
-
Tim Shen authored
Summary: powerpc64 big-endian is not supported, but I believe that most logic can be shared, except for xray_powerpc64.cc. Also add a function InvalidateInstructionCache to xray_util.h, which is copied from llvm/Support/Memory.cpp. I'm not sure if I need to add a unittest, and I don't know how. Reviewers: dberris, echristo, iteratee, kbarton, hfinkel Subscribers: mehdi_amini, nemanjai, mgorny, llvm-commits Differential Revision: https://reviews.llvm.org/D29742 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294781 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294778 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
[c++1z] Disallow deduction guides with deduced types that don't syntactically match the template being deduced. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294773 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nico Weber authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294772 91177308-0d34-0410-b5e6-96231b3b80d8
-
Joey Gouly authored
Expose the half type (fp16) through libclang and the python bindings. It seems CXType_LastBuiltin was not updated in b2ea6d9a ("Enable support for __float128 in Clang", 2016-04-13), so update it now. Add an Index test for OpenCL types; in the future we will add other OpenCL types such as images to this test. Patch by Sven van Haastregt. Differential Revision: https://reviews.llvm.org/D29718 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294754 91177308-0d34-0410-b5e6-96231b3b80d8
-
Simon Pilgrim authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@294740 91177308-0d34-0410-b5e6-96231b3b80d8
-