r339198 - [Sema] Ensure an auto non-type template parameter is dependent

2018-08-07 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Aug 7 15:59:02 2018 New Revision: 339198 URL: http://llvm.org/viewvc/llvm-project?rev=339198&view=rev Log: [Sema] Ensure an auto non-type template parameter is dependent The dependent auto was getting stripped away while rebuilding the template parameter type, so substitu

r339375 - [Sema] P0961R1: Relaxing the structured bindings customization point finding rules

2018-08-09 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Aug 9 13:11:13 2018 New Revision: 339375 URL: http://llvm.org/viewvc/llvm-project?rev=339375&view=rev Log: [Sema] P0961R1: Relaxing the structured bindings customization point finding rules Differential revision: https://reviews.llvm.org/D50418 Modified: cfe/trunk/l

[libcxxabi] r339580 - [itanium demangler] Add llvm::itaniumFindTypesInMangledName()

2018-08-13 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Aug 13 09:37:47 2018 New Revision: 339580 URL: http://llvm.org/viewvc/llvm-project?rev=339580&view=rev Log: [itanium demangler] Add llvm::itaniumFindTypesInMangledName() This function calls a callback whenever a is parsed. This is necessary to implement FindAlternateFunc

r340301 - [Parser] Support alternative operator token keyword args in Objective-C++

2018-08-21 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Aug 21 09:47:04 2018 New Revision: 340301 URL: http://llvm.org/viewvc/llvm-project?rev=340301&view=rev Log: [Parser] Support alternative operator token keyword args in Objective-C++ rdar://30741878 Differential revision: https://reviews.llvm.org/D50527 Added: cfe/tru

r340306 - Add a new flag and attributes to control static destructor registration

2018-08-21 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Aug 21 10:24:06 2018 New Revision: 340306 URL: http://llvm.org/viewvc/llvm-project?rev=340306&view=rev Log: Add a new flag and attributes to control static destructor registration This commit adds the flag -fno-c++-static-destructors and the attributes [[clang::no_destroy]

r340311 - Address Aaron Ballman's post-commit review comments from r340306, NFC

2018-08-21 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Aug 21 10:50:10 2018 New Revision: 340311 URL: http://llvm.org/viewvc/llvm-project?rev=340311&view=rev Log: Address Aaron Ballman's post-commit review comments from r340306, NFC Modified: cfe/trunk/lib/Sema/SemaDeclAttr.cpp cfe/trunk/test/SemaCXX/no_destroy.cpp Mo

r314865 - [ExprConstant] Allow constexpr ctor to modify non static data members

2017-10-03 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Oct 3 17:18:55 2017 New Revision: 314865 URL: http://llvm.org/viewvc/llvm-project?rev=314865&view=rev Log: [ExprConstant] Allow constexpr ctor to modify non static data members Fixes PR19741. Differential revision: https://reviews.llvm.org/D38483 Modified: cfe/trunk

[libcxx] r340544 - Comment out #define __cpp_lib_node_extract, we only support half of that functionality

2018-08-23 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Aug 23 10:08:02 2018 New Revision: 340544 URL: http://llvm.org/viewvc/llvm-project?rev=340544&view=rev Log: Comment out #define __cpp_lib_node_extract, we only support half of that functionality Differential revision: https://reviews.llvm.org/D51172 Modified: libcxx/

r341490 - [Sema] Don't warn about omitting unavailable enum constants in a switch

2018-09-05 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Sep 5 12:13:27 2018 New Revision: 341490 URL: http://llvm.org/viewvc/llvm-project?rev=341490&view=rev Log: [Sema] Don't warn about omitting unavailable enum constants in a switch rdar://42717026 Differential revision: https://reviews.llvm.org/D51649 Added: cfe/trunk

r341566 - [Sema] Clean up some __builtin_*_chk diagnostics

2018-09-06 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Sep 6 10:19:33 2018 New Revision: 341566 URL: http://llvm.org/viewvc/llvm-project?rev=341566&view=rev Log: [Sema] Clean up some __builtin_*_chk diagnostics Namely, print the likely macro name when it's used, and include the actual computed sizes in the diagnostic message,

r341869 - [AST] Fix a crash on invalid.

2018-09-10 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Sep 10 14:54:04 2018 New Revision: 341869 URL: http://llvm.org/viewvc/llvm-project?rev=341869&view=rev Log: [AST] Fix a crash on invalid. Problem was that we were appending to the source location info buffer in the copy assignment operator (instead of overwriting). rdar:/

r341874 - [Sema][ObjC] Infer availability of +new from availability of -init.

2018-09-10 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Sep 10 15:20:09 2018 New Revision: 341874 URL: http://llvm.org/viewvc/llvm-project?rev=341874&view=rev Log: [Sema][ObjC] Infer availability of +new from availability of -init. When defined in NSObject, +new will call -init. If -init has been marked unavailable, diagnose us

r337470 - [Sema] Add a new warning, -Wmemset-transposed-args

2018-07-19 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Jul 19 09:46:15 2018 New Revision: 337470 URL: http://llvm.org/viewvc/llvm-project?rev=337470&view=rev Log: [Sema] Add a new warning, -Wmemset-transposed-args This diagnoses calls to memset that have the second and third arguments transposed, for example: memset(buf, si

r337497 - [Sema] Diagnose an invalid dependent function template specialization

2018-07-19 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Jul 19 13:40:20 2018 New Revision: 337497 URL: http://llvm.org/viewvc/llvm-project?rev=337497&view=rev Log: [Sema] Diagnose an invalid dependent function template specialization Previously, clang marked the specialization as invalid without emitting a diagnostic. This lead

r337706 - [Sema] Don't emit -Wmemset-transposed-args for memset(p, 0, 0)

2018-07-23 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 23 09:24:14 2018 New Revision: 337706 URL: http://llvm.org/viewvc/llvm-project?rev=337706&view=rev Log: [Sema] Don't emit -Wmemset-transposed-args for memset(p,0,0) Thanks to Arthur O'Dwyer for the suggestion! Modified: cfe/trunk/lib/Sema/SemaChecking.cpp cfe/

Re: r337470 - [Sema] Add a new warning, -Wmemset-transposed-args

2018-07-23 Thread Erik Pilkington via cfe-commits
.chromium.org/p/chromium/issues/detail?id=866202>) Maybe the warning shouldn't fire if the memset is from a macro? On Thu, Jul 19, 2018 at 12:51 PM Erik Pilkington via cfe-commits mailto:cfe-commits@lists.llvm.org>> wrote: Author: epilk Date: Thu J

[libcxxabi] r337759 - [demangler] call terminate() if allocation failed

2018-07-23 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 23 15:23:04 2018 New Revision: 337759 URL: http://llvm.org/viewvc/llvm-project?rev=337759&view=rev Log: [demangler] call terminate() if allocation failed We really should set *status to memory_alloc_failure, but we need to refactor the demangler a bit to properly propa

r337766 - [Sema] Fix crash on BlockExprs in a default member initializers

2018-07-23 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 23 15:47:37 2018 New Revision: 337766 URL: http://llvm.org/viewvc/llvm-project?rev=337766&view=rev Log: [Sema] Fix crash on BlockExprs in a default member initializers Clang would crash when instantiating a BlockDecl that appeared in a default-member-initializer of a c

r337780 - NFC: Add the emacs c++ mode hint "-*- C++ -*-" to the headers that don't have it

2018-07-23 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 23 17:07:49 2018 New Revision: 337780 URL: http://llvm.org/viewvc/llvm-project?rev=337780&view=rev Log: NFC: Add the emacs c++ mode hint "-*- C++ -*-" to the headers that don't have it https://llvm.org/docs/CodingStandards.html#file-headers Modified: cfe/trunk/inc

Re: r337470 - [Sema] Add a new warning, -Wmemset-transposed-args

2018-07-26 Thread Erik Pilkington via cfe-commits
; https://bugs.chromium.org/p/chromium/issues/detail?id=866202) Maybe the warning shouldn't fire if the memset is from a macro? On Thu, Jul 19, 2018 at 12:51 PM Erik Pilkington via cfe-commits mailto:cfe-commits@lists.llvm.org>> wrote: Author: ep

Re: r337470 - [Sema] Add a new warning, -Wmemset-transposed-args

2018-07-26 Thread Erik Pilkington via cfe-commits
On 7/26/18 1:38 PM, Richard Smith wrote: On Thu, 26 Jul 2018 at 13:14, Erik Pilkington via cfe-commits mailto:cfe-commits@lists.llvm.org>> wrote: On 7/26/18 12:52 PM, Richard Smith wrote: Other than the (fixed) ffmpeg false positive, I see this firing in three places.

r338089 - [Sema] Fix a crash by completing a type before using it

2018-07-26 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Jul 26 16:40:42 2018 New Revision: 338089 URL: http://llvm.org/viewvc/llvm-project?rev=338089&view=rev Log: [Sema] Fix a crash by completing a type before using it Only apply this exception on a type that we're able to check. rdar://41903969 Differential revision: https:

[libcxxabi] r338138 - [demangler] Support for reference collapsing

2018-07-27 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Jul 27 10:27:40 2018 New Revision: 338138 URL: http://llvm.org/viewvc/llvm-project?rev=338138&view=rev Log: [demangler] Support for reference collapsing llvm.org/PR38323 Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cpp Mo

r338165 - [Sema] Use a TreeTransform to extract deduction guide parameter types

2018-07-27 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Jul 27 14:23:48 2018 New Revision: 338165 URL: http://llvm.org/viewvc/llvm-project?rev=338165&view=rev Log: [Sema] Use a TreeTransform to extract deduction guide parameter types Previously, we just canonicalized the type, but this lead to crashes with parameter types that

r338186 - Compile SemaTemplate.cpp with /bigobj on MSVC

2018-07-27 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Jul 27 18:29:31 2018 New Revision: 338186 URL: http://llvm.org/viewvc/llvm-project?rev=338186&view=rev Log: Compile SemaTemplate.cpp with /bigobj on MSVC This should fix some bot failures introduced by r338165. Modified: cfe/trunk/lib/Sema/CMakeLists.txt Modified: cf

Re: r338165 - [Sema] Use a TreeTransform to extract deduction guide parameter types

2018-07-27 Thread Erik Pilkington via cfe-commits
This should be fixed by r338186. I'll keep an eye on this bot to make sure that this is the case. Thanks! Erik On 2018-07-27 5:46 PM, Galina Kistanova wrote: C:\ps4-buildslave2\llvm-clang-x86_64-expensive-checks-win\llvm\tools\clang\lib\Sema\SemaTemplate.cpp : fatal error C1128: number of secti

Re: r338165 - [Sema] Use a TreeTransform to extract deduction guide parameter types

2018-07-27 Thread Erik Pilkington via cfe-commits
Okay, the bot can now compile this file, but it looks like somebody else broke it again in the meantime... FAIL: LLVM :: CodeGen/AArch64/arm64-opt-remarks-lazy-bfi.ll (17518 of 39837) TEST 'LLVM :: CodeGen/AArch64/arm64-opt-remarks-lazy-bfi.ll' FAILED ***

[libcxxabi] r338190 - [demangler] Fix an oss-fuzz bug from r338138

2018-07-27 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Jul 27 21:06:30 2018 New Revision: 338190 URL: http://llvm.org/viewvc/llvm-project?rev=338190&view=rev Log: [demangler] Fix an oss-fuzz bug from r338138 Stack overflow on invalid. While collapsing references, we were skipping over a cycle check in ForwardTemplateReference

r338338 - [Sema] Relax a failing assert in TemplateArgumentLoc

2018-07-30 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 30 17:18:30 2018 New Revision: 338338 URL: http://llvm.org/viewvc/llvm-project?rev=338338&view=rev Log: [Sema] Relax a failing assert in TemplateArgumentLoc Any of these template argument kinds can be represented with an expression, so accept them in this constructor.

[libcxxabi] r338747 - [itanium demangler] Support dot suffixes on block invocation functions

2018-08-02 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Aug 2 10:45:01 2018 New Revision: 338747 URL: http://llvm.org/viewvc/llvm-project?rev=338747&view=rev Log: [itanium demangler] Support dot suffixes on block invocation functions rdar://32378759 Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/t

[libcxxabi] r324282 - [demangler] Refactor the type parser

2018-02-05 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Feb 5 14:41:20 2018 New Revision: 324282 URL: http://llvm.org/viewvc/llvm-project?rev=324282&view=rev Log: [demangler] Refactor the type parser Differential revision: https://reviews.llvm.org/D41889 Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modified: libcxxabi/

[libcxxabi] r324969 - [demangler] Support for dependent elaborate type specifiers.

2018-02-12 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Feb 12 16:15:53 2018 New Revision: 324969 URL: http://llvm.org/viewvc/llvm-project?rev=324969&view=rev Log: [demangler] Support for dependent elaborate type specifiers. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cpp Modi

[libcxxabi] r324970 - [demangler] Support for initializer lists and designated initializers.

2018-02-12 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Feb 12 16:15:56 2018 New Revision: 324970 URL: http://llvm.org/viewvc/llvm-project?rev=324970&view=rev Log: [demangler] Support for initializer lists and designated initializers. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass

[libcxxabi] r324968 - [demangler] All on one type should share one entry in the substitution table.

2018-02-12 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Feb 12 16:15:46 2018 New Revision: 324968 URL: http://llvm.org/viewvc/llvm-project?rev=324968&view=rev Log: [demangler] All on one type should share one entry in the substitution table. Previously, both s and got their own entries. Modified: libcxxabi/trunk/src/cx

[libcxxabi] r325023 - [demangler] Support for inheriting constructors.

2018-02-13 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Feb 13 09:09:07 2018 New Revision: 325023 URL: http://llvm.org/viewvc/llvm-project?rev=325023&view=rev Log: [demangler] Support for inheriting constructors. Fixes PR33223. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cpp

[libcxxabi] r325022 - [demangler] Rewrite parse_nested_name in the new style.

2018-02-13 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Feb 13 09:09:03 2018 New Revision: 325022 URL: http://llvm.org/viewvc/llvm-project?rev=325022&view=rev Log: [demangler] Rewrite parse_nested_name in the new style. Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modified: libcxxabi/trunk/src/cxa_demangle.cpp URL: http

[libcxxabi] r325093 - [demangler] Support for exception specifications on function types.

2018-02-13 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Feb 13 17:08:20 2018 New Revision: 325093 URL: http://llvm.org/viewvc/llvm-project?rev=325093&view=rev Log: [demangler] Support for exception specifications on function types. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cp

[libcxxabi] r325092 - [demangler] Simplify the AST for function types, NFC.

2018-02-13 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Feb 13 17:08:17 2018 New Revision: 325092 URL: http://llvm.org/viewvc/llvm-project?rev=325092&view=rev Log: [demangler] Simplify the AST for function types, NFC. Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modified: libcxxabi/trunk/src/cxa_demangle.cpp URL: http:/

[libcxxabi] r303718 - [demangler] Fix a crash in the demangler during parsing of a lamdba

2017-05-23 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed May 24 00:44:19 2017 New Revision: 303718 URL: http://llvm.org/viewvc/llvm-project?rev=303718&view=rev Log: [demangler] Fix a crash in the demangler during parsing of a lamdba The problem is that multiple types could have been parsed from parse_type(), which the lamdba par

[libcxxabi] r303806 - [Demangler] Remove a failing assert introduced in r303718

2017-05-24 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed May 24 15:53:13 2017 New Revision: 303806 URL: http://llvm.org/viewvc/llvm-project?rev=303806&view=rev Log: [Demangler] Remove a failing assert introduced in r303718 Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modified: libcxxabi/trunk/src/cxa_demangle.cpp URL: ht

[libcxx] r303874 - Add support for shared_ptr

2017-05-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu May 25 10:43:31 2017 New Revision: 303874 URL: http://llvm.org/viewvc/llvm-project?rev=303874&view=rev Log: Add support for shared_ptr Fixes PR27566. Differential revision: https://reviews.llvm.org/D30837 Added: libcxx/trunk/test/libcxx/utilities/memory/util.smartpt

[libcxx] r303878 - Fix a test that was failing in C++11 mode introduced in r303874

2017-05-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu May 25 11:16:17 2017 New Revision: 303878 URL: http://llvm.org/viewvc/llvm-project?rev=303878&view=rev Log: Fix a test that was failing in C++11 mode introduced in r303874 Modified: libcxx/trunk/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/function_

[libcxxabi] r304113 - [demangler] Fix a exponential string copying bug

2017-05-28 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sun May 28 18:15:50 2017 New Revision: 304113 URL: http://llvm.org/viewvc/llvm-project?rev=304113&view=rev Log: [demangler] Fix a exponential string copying bug The problem was that if base_name() was called from a context without an actual base name, it could gulp up the enti

r304306 - [Sema][ObjC] Don't emit availability diags for category @implementations

2017-05-31 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed May 31 10:45:57 2017 New Revision: 304306 URL: http://llvm.org/viewvc/llvm-project?rev=304306&view=rev Log: [Sema][ObjC] Don't emit availability diags for category @implementations These diagnostics can't be disabled, and can't actually catch any bugs. rdar://32427296 Dif

r305195 - [Sema][C++1z] Ensure binding in dependent range for have non-null type

2017-06-12 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jun 12 11:11:06 2017 New Revision: 305195 URL: http://llvm.org/viewvc/llvm-project?rev=305195&view=rev Log: [Sema][C++1z] Ensure binding in dependent range for have non-null type Fixes PR32172 Differential revision: https://reviews.llvm.org/D34096 Modified: cfe/trunk

Re: [libcxxabi] r305173 - cxa_demangle: fix -Wimplicit-fallthrough for GCC:7

2017-06-12 Thread Erik Pilkington via cfe-commits
Clang warns on macos here: /Users/epilk/llvm/projects/libcxxabi/src/cxa_demangle.cpp:2261:27: warning: unknown attribute 'fallthrough' ignored [-Wunknown-attributes] [[gnu::fallthrough]]; ^ Can you try defining a compatibility macro like LLVM_FAL

[libcxxabi] r326796 - [demangler] Modernize parse_unresolved_name.

2018-03-06 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Mar 6 06:21:08 2018 New Revision: 326796 URL: http://llvm.org/viewvc/llvm-project?rev=326796&view=rev Log: [demangler] Modernize parse_unresolved_name. Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modified: libcxxabi/trunk/src/cxa_demangle.cpp URL: http://llvm.org

[libcxxabi] r326797 - [demangler] Modernize the rest of the demangler.

2018-03-06 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Mar 6 06:21:10 2018 New Revision: 326797 URL: http://llvm.org/viewvc/llvm-project?rev=326797&view=rev Log: [demangler] Modernize the rest of the demangler. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cpp Modified: libcxx

[libcxxabi] r326871 - [demangler] Fix a mistake in r326797.

2018-03-06 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Mar 6 20:29:33 2018 New Revision: 326871 URL: http://llvm.org/viewvc/llvm-project?rev=326871&view=rev Log: [demangler] Fix a mistake in r326797. Thanks to Nico Weber for pointing this out! Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_d

Re: [libcxxabi] r326797 - [demangler] Modernize the rest of the demangler.

2018-03-06 Thread Erik Pilkington via cfe-commits
ed. Was that an intentional change? On Tue, Mar 6, 2018 at 9:21 AM, Erik Pilkington via cfe-commits mailto:cfe-commits@lists.llvm.org>> wrote: Author: epilk Date: Tue Mar  6 06:21:10 2018 New Revision: 326797 URL: http://llvm.org/viewvc/llvm-project?rev=326797&view=rev <

[libcxxabi] r327227 - [demangler] Support for sequence numbers on lifetime extended temporaries.

2018-03-10 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sat Mar 10 13:31:22 2018 New Revision: 327227 URL: http://llvm.org/viewvc/llvm-project?rev=327227&view=rev Log: [demangler] Support for sequence numbers on lifetime extended temporaries. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.

[libcxxabi] r327226 - [demangler] Support for structured bindings.

2018-03-10 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sat Mar 10 13:31:15 2018 New Revision: 327226 URL: http://llvm.org/viewvc/llvm-project?rev=327226&view=rev Log: [demangler] Support for structured bindings. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cpp Modified: libcxxabi/

[libcxxabi] r327228 - [demangler] Simplify printing of structured bindings.

2018-03-10 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sat Mar 10 14:33:49 2018 New Revision: 327228 URL: http://llvm.org/viewvc/llvm-project?rev=327228&view=rev Log: [demangler] Simplify printing of structured bindings. Thanks to Richard Smith for the post-commit review! Modified: libcxxabi/trunk/src/cxa_demangle.cpp lib

Re: [libcxxabi] r327226 - [demangler] Support for structured bindings.

2018-03-10 Thread Erik Pilkington via cfe-commits
On 2018-03-10 4:40 PM, Richard Smith wrote: On 10 Mar 2018 13:33, "Erik Pilkington via cfe-commits" mailto:cfe-commits@lists.llvm.org>> wrote: Author: epilk Date: Sat Mar 10 13:31:15 2018 New Revision: 327226 URL: http://llvm.org/viewvc/llvm-project?rev

[libcxxabi] r327690 - [demangler] Support for s in generic lambdas.

2018-03-15 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Mar 15 20:06:30 2018 New Revision: 327690 URL: http://llvm.org/viewvc/llvm-project?rev=327690&view=rev Log: [demangler] Support for s in generic lambdas. These s refer to "artifical" s that don't appear in the mangled name, so we just print them as "auto". Modified: l

[libcxx] r333948 - Fix a strict aliasing violation in map and unordered_map.

2018-06-04 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jun 4 13:38:23 2018 New Revision: 333948 URL: http://llvm.org/viewvc/llvm-project?rev=333948&view=rev Log: Fix a strict aliasing violation in map and unordered_map. These containers type-punned between pair and pair as an optimization. This commit instead provides access

r344101 - [Basic] Split out -Wimplicit-int-conversion and -Wimplicit-float-conversion from -Wconversion

2018-10-09 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Oct 9 17:40:50 2018 New Revision: 344101 URL: http://llvm.org/viewvc/llvm-project?rev=344101&view=rev Log: [Basic] Split out -Wimplicit-int-conversion and -Wimplicit-float-conversion from -Wconversion These two diagnostics are noisy, so its reasonable for users to opt-ou

r344157 - [Sema] Fix a multiple definition bug with friends and templates

2018-10-10 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Oct 10 10:17:51 2018 New Revision: 344157 URL: http://llvm.org/viewvc/llvm-project?rev=344157&view=rev Log: [Sema] Fix a multiple definition bug with friends and templates The problem was that MergeFunctionDecl sometimes needs the injected template arguments of a FunctionT

r344373 - [CodeGen] Handle extern references to OBJC_CLASS_$_*

2018-10-12 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Oct 12 10:22:10 2018 New Revision: 344373 URL: http://llvm.org/viewvc/llvm-project?rev=344373&view=rev Log: [CodeGen] Handle extern references to OBJC_CLASS_$_* Some ObjC users declare a extern variable named OBJC_CLASS_$_Foo, then use it's address as a Class. I.e., one co

r345075 - NFC: Remove MANGLE_CHECKER from ItaniumMangle.cpp

2018-10-23 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Oct 23 12:55:38 2018 New Revision: 345075 URL: http://llvm.org/viewvc/llvm-project?rev=345075&view=rev Log: NFC: Remove MANGLE_CHECKER from ItaniumMangle.cpp This hasn't even compiled since 2011. It would be useful to have some test to verify that ItaniumMangle and Itanium

r345486 - Support for groups of attributes in #pragma clang attribute

2018-10-28 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sun Oct 28 19:29:21 2018 New Revision: 345486 URL: http://llvm.org/viewvc/llvm-project?rev=345486&view=rev Log: Support for groups of attributes in #pragma clang attribute This commit enables pushing an empty #pragma clang attribute push, then adding multiple attributes to it,

r345487 - Revert "Support for groups of attributes in #pragma clang attribute"

2018-10-28 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sun Oct 28 20:24:16 2018 New Revision: 345487 URL: http://llvm.org/viewvc/llvm-project?rev=345487&view=rev Log: Revert "Support for groups of attributes in #pragma clang attribute" This reverts commit r345486. Looks like it causes some old versions of GCC to crash, I'll see i

r345517 - Revert "Revert "Support for groups of attributes in #pragma clang attribute""

2018-10-29 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Oct 29 10:38:42 2018 New Revision: 345517 URL: http://llvm.org/viewvc/llvm-project?rev=345517&view=rev Log: Revert "Revert "Support for groups of attributes in #pragma clang attribute"" This reverts commit r345487, which reverted r345486. I think the crashes were caused by

r345637 - NFC: Remove the ObjC1/ObjC2 distinction from clang (and related projects)

2018-10-30 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Oct 30 13:31:30 2018 New Revision: 345637 URL: http://llvm.org/viewvc/llvm-project?rev=345637&view=rev Log: NFC: Remove the ObjC1/ObjC2 distinction from clang (and related projects) We haven't supported compiling ObjC1 for a long time (and never will again), so there isn't

[clang-tools-extra] r345637 - NFC: Remove the ObjC1/ObjC2 distinction from clang (and related projects)

2018-10-30 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Oct 30 13:31:30 2018 New Revision: 345637 URL: http://llvm.org/viewvc/llvm-project?rev=345637&view=rev Log: NFC: Remove the ObjC1/ObjC2 distinction from clang (and related projects) We haven't supported compiling ObjC1 for a long time (and never will again), so there isn't

r345646 - NFC: Merge KEYOBJC and KEYARC

2018-10-30 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Oct 30 13:51:28 2018 New Revision: 345646 URL: http://llvm.org/viewvc/llvm-project?rev=345646&view=rev Log: NFC: Merge KEYOBJC and KEYARC We used to only define ARC keywords in -fobjc-arc mode, but now that we define them in ObjC mode, there isn't any reason to keep them s

r351108 - Improve a -Wunguarded-availability note

2019-01-14 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jan 14 11:17:31 2019 New Revision: 351108 URL: http://llvm.org/viewvc/llvm-project?rev=351108&view=rev Log: Improve a -Wunguarded-availability note Mention the deployment target, and don't say "partial" which doesn't really mean anything to users. rdar://problem/33601513

Re: r350856 - Split -Wdelete-non-virtual-dtor into two groups

2019-01-14 Thread Erik Pilkington via cfe-commits
handy to summarize the changes from the previous reverted version of this patch (& mention the original commit revision and revert revision) - in the commit message is ideal, but in a reply to the commit after the fact will do in a pinch On Fri, Jan 11, 2019 at 4:06 AM Erik Pilkington via

r351461 - [CodeGenObjC] Use a constant value for non-fragile ivar offsets when possible

2019-01-17 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Jan 17 10:18:53 2019 New Revision: 351461 URL: http://llvm.org/viewvc/llvm-project?rev=351461&view=rev Log: [CodeGenObjC] Use a constant value for non-fragile ivar offsets when possible If a class inherits from NSObject and has an implementation, then we can assume that iv

r351595 - [Sema] Suppress a warning about a forward-declared fixed enum in C mode

2019-01-18 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Jan 18 13:33:23 2019 New Revision: 351595 URL: http://llvm.org/viewvc/llvm-project?rev=351595&view=rev Log: [Sema] Suppress a warning about a forward-declared fixed enum in C mode As of r343360, we support fixed-enums in C. This lead to some warnings in project headers whe

r352239 - [Sema] Improve a -Warray-bounds diagnostic

2019-01-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Jan 25 12:52:45 2019 New Revision: 352239 URL: http://llvm.org/viewvc/llvm-project?rev=352239&view=rev Log: [Sema] Improve a -Warray-bounds diagnostic Fix a bug where we would compare array sizes with incompatible element types, and look through explicit casts. rdar://448

r352665 - Add a new builtin: __builtin_dynamic_object_size

2019-01-30 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Jan 30 12:34:53 2019 New Revision: 352665 URL: http://llvm.org/viewvc/llvm-project?rev=352665&view=rev Log: Add a new builtin: __builtin_dynamic_object_size This builtin has the same UI as __builtin_object_size, but has the potential to be evaluated dynamically. It is mean

r352664 - Add a 'dynamic' parameter to the objectsize intrinsic

2019-01-30 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Jan 30 12:34:35 2019 New Revision: 352664 URL: http://llvm.org/viewvc/llvm-project?rev=352664&view=rev Log: Add a 'dynamic' parameter to the objectsize intrinsic This is meant to be used with clang's __builtin_dynamic_object_size. When 'true' is passed to this parameter, t

r352672 - Don't define __has_feature(objc_fixed_enum) in non-objc mode

2019-01-30 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Jan 30 13:14:08 2019 New Revision: 352672 URL: http://llvm.org/viewvc/llvm-project?rev=352672&view=rev Log: Don't define __has_feature(objc_fixed_enum) in non-objc mode This is only a formal language feature in ObjC, otherwise its just an extension. Making this change was

Re: r352672 - Don't define __has_feature(objc_fixed_enum) in non-objc mode

2019-01-30 Thread Erik Pilkington via cfe-commits
Hans, can you cherry-pick this into LLVM 8? Thanks! On 1/30/19 1:14 PM, Erik Pilkington via cfe-commits wrote: Author: epilk Date: Wed Jan 30 13:14:08 2019 New Revision: 352672 URL: http://llvm.org/viewvc/llvm-project?rev=352672&view=rev Log: Don't define __has_feature(objc_fixed_enu

r352687 - [CodeGenObjC] Handle exceptions when calling objc_alloc or objc_allocWithZone

2019-01-30 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Jan 30 15:17:38 2019 New Revision: 352687 URL: http://llvm.org/viewvc/llvm-project?rev=352687&view=rev Log: [CodeGenObjC] Handle exceptions when calling objc_alloc or objc_allocWithZone objc_alloc and objc_allocWithZone may throw exceptions if the underlying method does. I

r346004 - [CodeGen] Fix a crash when updating a designated initializer

2018-11-02 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Nov 2 10:36:58 2018 New Revision: 346004 URL: http://llvm.org/viewvc/llvm-project?rev=346004&view=rev Log: [CodeGen] Fix a crash when updating a designated initializer We need to handle the ConstantAggregateZero case here too. rdar://45691981 Differential revision: http

r346709 - [Sema] Make sure we substitute an instantiation-dependent default template argument

2018-11-12 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Nov 12 13:31:06 2018 New Revision: 346709 URL: http://llvm.org/viewvc/llvm-project?rev=346709&view=rev Log: [Sema] Make sure we substitute an instantiation-dependent default template argument Fixes llvm.org/PR39623 Differential revision: https://reviews.llvm.org/D54414

r348218 - NFC: Make this test kinder on downstream forks

2018-12-03 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Dec 3 16:31:31 2018 New Revision: 348218 URL: http://llvm.org/viewvc/llvm-project?rev=348218&view=rev Log: NFC: Make this test kinder on downstream forks Downstream forks that have their own attributes often run into this test failing when a new attribute is added to clan

r348325 - [Sema] Remove some conditions of a failing assert

2018-12-04 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Dec 4 16:43:11 2018 New Revision: 348325 URL: http://llvm.org/viewvc/llvm-project?rev=348325&view=rev Log: [Sema] Remove some conditions of a failing assert We should have been checking that this state is consistent, but its possible for it to be filled later, so it isn't

r348388 - Address a post-commit review comment on r348325.

2018-12-05 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Dec 5 09:43:26 2018 New Revision: 348388 URL: http://llvm.org/viewvc/llvm-project?rev=348388&view=rev Log: Address a post-commit review comment on r348325. Modified: cfe/trunk/test/SemaCXX/friend-template-redecl.cpp Modified: cfe/trunk/test/SemaCXX/friend-template-re

Re: r348325 - [Sema] Remove some conditions of a failing assert

2018-12-05 Thread Erik Pilkington via cfe-commits
On 12/4/18 7:07 PM, Richard Smith wrote: On Tue, 4 Dec 2018 at 16:46, Erik Pilkington via cfe-commits mailto:cfe-commits@lists.llvm.org>> wrote: Author: epilk Date: Tue Dec  4 16:43:11 2018 New Revision: 348325 URL: http://llvm.org/viewvc/llvm-project?rev=348325&am

r354826 - [CodeGenObjC] Fix a nullptr dyn_cast

2019-02-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Feb 25 13:35:14 2019 New Revision: 354826 URL: http://llvm.org/viewvc/llvm-project?rev=354826&view=rev Log: [CodeGenObjC] Fix a nullptr dyn_cast ObjCMessageExpr::getInstanceReceiver returns nullptr if the receiver is 'super'. Make this check more strict, since we don't car

r355054 - [CodeGen] Fix some broken IR generated by -fsanitize=unsigned-integer-overflow

2019-02-27 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Feb 27 16:47:55 2019 New Revision: 355054 URL: http://llvm.org/viewvc/llvm-project?rev=355054&view=rev Log: [CodeGen] Fix some broken IR generated by -fsanitize=unsigned-integer-overflow I think the author of the function assumed that `GetInsertBlock()` wouldn't change fro

r356075 - [Parse] Parse '#pragma clang attribute' as an external-declaration

2019-03-13 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Mar 13 11:30:59 2019 New Revision: 356075 URL: http://llvm.org/viewvc/llvm-project?rev=356075&view=rev Log: [Parse] Parse '#pragma clang attribute' as an external-declaration Previously, we parsed it only in the top level, which excludes namespaces and extern "C" blocks.

r356087 - Fix a failing test.

2019-03-13 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Mar 13 12:20:45 2019 New Revision: 356087 URL: http://llvm.org/viewvc/llvm-project?rev=356087&view=rev Log: Fix a failing test. Modified: cfe/trunk/test/Parser/pragma-attribute-context.cpp Modified: cfe/trunk/test/Parser/pragma-attribute-context.cpp URL: http://llvm.

r356103 - Revert "Add a new attribute, fortify_stdlib"

2019-03-13 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Mar 13 14:37:01 2019 New Revision: 356103 URL: http://llvm.org/viewvc/llvm-project?rev=356103&view=rev Log: Revert "Add a new attribute, fortify_stdlib" This reverts commit r353765. After talking with our c stdlib folks, we decided to use the existing pass_object_size attr

r356187 - [Sema] Fix a use-after-free of a _Nonnull ParsedAttr

2019-03-14 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Mar 14 11:38:02 2019 New Revision: 356187 URL: http://llvm.org/viewvc/llvm-project?rev=356187&view=rev Log: [Sema] Fix a use-after-free of a _Nonnull ParsedAttr We were allocating the implicit attribute in the declarator's attribute pool, but putting into the declaration s

r356397 - [Sema] Add some compile time _FORTIFY_SOURCE diagnostics

2019-03-18 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Mar 18 12:23:45 2019 New Revision: 356397 URL: http://llvm.org/viewvc/llvm-project?rev=356397&view=rev Log: [Sema] Add some compile time _FORTIFY_SOURCE diagnostics These diagnose overflowing calls to subset of fortifiable functions. Some functions, like sprintf or strcpy

r356515 - Add a spelling of pass_object_size that uses __builtin_dynamic_object_size

2019-03-19 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Mar 19 13:44:18 2019 New Revision: 356515 URL: http://llvm.org/viewvc/llvm-project?rev=356515&view=rev Log: Add a spelling of pass_object_size that uses __builtin_dynamic_object_size The attribute pass_dynamic_object_size(n) behaves exactly like pass_object_size(n), but in

r356599 - [Sema] Deduplicate some availability checking logic

2019-03-20 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Mar 20 12:26:33 2019 New Revision: 356599 URL: http://llvm.org/viewvc/llvm-project?rev=356599&view=rev Log: [Sema] Deduplicate some availability checking logic Before this commit, we emit unavailable errors for calls to functions during overload resolution, and for referen

r356600 - Add a __has_extension check for '#pragma clang attribute' as an external-declaration

2019-03-20 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Mar 20 12:26:37 2019 New Revision: 356600 URL: http://llvm.org/viewvc/llvm-project?rev=356600&view=rev Log: Add a __has_extension check for '#pragma clang attribute' as an external-declaration This was added in r356075. Modified: cfe/trunk/include/clang/Basic/Feature

r357040 - [Sema] Fix an assert when a block captures a constexpr local

2019-03-26 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Mar 26 16:21:19 2019 New Revision: 357040 URL: http://llvm.org/viewvc/llvm-project?rev=357040&view=rev Log: [Sema] Fix an assert when a block captures a constexpr local MarkVarDeclODRUsed indirectly calls captureInBlock, which creates a copy expression. The copy expression

r357041 - Emit -Wfortify-source using DiagRuntimeBehaviour

2019-03-26 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Mar 26 16:21:22 2019 New Revision: 357041 URL: http://llvm.org/viewvc/llvm-project?rev=357041&view=rev Log: Emit -Wfortify-source using DiagRuntimeBehaviour This fixes a false positive on the following, where st is configured to have different sizes based on some preproces

r357304 - [Sema] Avoid sending a dependent expression to the constant evaluator.

2019-03-29 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Mar 29 12:53:41 2019 New Revision: 357304 URL: http://llvm.org/viewvc/llvm-project?rev=357304&view=rev Log: [Sema] Avoid sending a dependent expression to the constant evaluator. Fixes llvm.org/PR41286 Modified: cfe/trunk/lib/Sema/SemaChecking.cpp cfe/trunk/test/S

r357516 - [Sema] Fix a use-after-deallocate of a ParsedAttr

2019-04-02 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Apr 2 12:48:11 2019 New Revision: 357516 URL: http://llvm.org/viewvc/llvm-project?rev=357516&view=rev Log: [Sema] Fix a use-after-deallocate of a ParsedAttr moveAttrFromListToList only makes sense when moving an attribute to a list with a pool that's either equivalent, or

r357515 - [CodeGen] Fix a regression by emitting lambda expressions in EmitLValue

2019-04-02 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Apr 2 12:48:07 2019 New Revision: 357515 URL: http://llvm.org/viewvc/llvm-project?rev=357515&view=rev Log: [CodeGen] Fix a regression by emitting lambda expressions in EmitLValue This ability was removed in r351487, but it's needed when a lambda appears as an OpaqueValueE

r358136 - Fix a test, NFC

2019-04-10 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Apr 10 14:18:21 2019 New Revision: 358136 URL: http://llvm.org/viewvc/llvm-project?rev=358136&view=rev Log: Fix a test, NFC This test was duplicated, and the last declaration had some syntax errors since the invalid attribute caused the @implementation to be skipped by the

r358201 - Support objc_nonlazy_class attribute on Objective-C implementations

2019-04-11 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Apr 11 10:55:34 2019 New Revision: 358201 URL: http://llvm.org/viewvc/llvm-project?rev=358201&view=rev Log: Support objc_nonlazy_class attribute on Objective-C implementations Fixes rdar://49523079 Differential revision: https://reviews.llvm.org/D60544 Modified: cfe/

r358200 - Add support for attributes on @implementations in Objective-C

2019-04-11 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Apr 11 10:55:30 2019 New Revision: 358200 URL: http://llvm.org/viewvc/llvm-project?rev=358200&view=rev Log: Add support for attributes on @implementations in Objective-C We want to make objc_nonlazy_class apply to implementations, but ran into this. There doesn't seem to b

  1   2   3   4   >