Re: r350572 - Add a __has_feature check for namespaces on #pragma clang attribute.

2019-01-08 Thread Erik Pilkington via cfe-commits
On 1/7/19 4:43 PM, Richard Smith wrote: On Mon, 7 Jan 2019 at 16:12, Erik Pilkington via cfe-commits mailto:cfe-commits@lists.llvm.org>> wrote: On 1/7/19 3:51 PM, Richard Smith wrote: On Mon, 7 Jan 2019 at 13:57, Erik Pilkington via cfe-commits mailto:cfe-commits@lists.ll

r350642 - __has_feature(pragma_clang_attribute_namespaces) should be __has_extension

2019-01-08 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Jan 8 10:24:39 2019 New Revision: 350642 URL: http://llvm.org/viewvc/llvm-project?rev=350642&view=rev Log: __has_feature(pragma_clang_attribute_namespaces) should be __has_extension Thanks to Richard Smith for pointing this out. Modified: cfe/trunk/docs/LanguageExten

r350639 - Revert "Split -Wdelete-non-virtual-dtor into -Wdelete-abstract-non-virtual-dtor"

2019-01-08 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Jan 8 09:04:38 2019 New Revision: 350639 URL: http://llvm.org/viewvc/llvm-project?rev=350639&view=rev Log: Revert "Split -Wdelete-non-virtual-dtor into -Wdelete-abstract-non-virtual-dtor" This reverts commit r350585. There was some late post-commit review on phab. Remove

r350585 - Split -Wdelete-non-virtual-dtor into -Wdelete-abstract-non-virtual-dtor

2019-01-07 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jan 7 16:21:05 2019 New Revision: 350585 URL: http://llvm.org/viewvc/llvm-project?rev=350585&view=rev Log: Split -Wdelete-non-virtual-dtor into -Wdelete-abstract-non-virtual-dtor -Wdelete-non-virtual-dtor previously controlled two diagnostics: 1) calling a non-virtual dto

Re: r350572 - Add a __has_feature check for namespaces on #pragma clang attribute.

2019-01-07 Thread Erik Pilkington via cfe-commits
On 1/7/19 3:51 PM, Richard Smith wrote: On Mon, 7 Jan 2019 at 13:57, Erik Pilkington via cfe-commits mailto:cfe-commits@lists.llvm.org>> wrote: Author: epilk Date: Mon Jan  7 13:54:00 2019 New Revision: 350572 URL: http://llvm.org/viewvc/llvm-project?rev=350572&am

r350572 - Add a __has_feature check for namespaces on #pragma clang attribute.

2019-01-07 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jan 7 13:54:00 2019 New Revision: 350572 URL: http://llvm.org/viewvc/llvm-project?rev=350572&view=rev Log: Add a __has_feature check for namespaces on #pragma clang attribute. Support for this was added in r349845. Modified: cfe/trunk/docs/LanguageExtensions.rst

r350422 - [ObjCARC] Add an new attribute, objc_externally_retained

2019-01-04 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Jan 4 10:33:06 2019 New Revision: 350422 URL: http://llvm.org/viewvc/llvm-project?rev=350422&view=rev Log: [ObjCARC] Add an new attribute, objc_externally_retained This attribute, called "objc_externally_retained", exposes clang's notion of pseudo-__strong variables in AR

r349845 - Add support for namespaces on #pragma clang attribute

2018-12-20 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Dec 20 14:32:04 2018 New Revision: 349845 URL: http://llvm.org/viewvc/llvm-project?rev=349845&view=rev Log: Add support for namespaces on #pragma clang attribute Namespaces are introduced by adding an "identifier." before a push/pop directive. Pop directives with namespace

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

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

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

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

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

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

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

[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

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

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

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

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,

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

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

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

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

r343360 - Support enums with a fixed underlying type in all language modes.

2018-09-28 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Sep 28 13:24:58 2018 New Revision: 343360 URL: http://llvm.org/viewvc/llvm-project?rev=343360&view=rev Log: Support enums with a fixed underlying type in all language modes. Previously we supported these in C++, ObjC, and C with -fms-extensions. rdar://43831380 Different

r343263 - NFC: Fix some darwin linker warnings introduced in r338385

2018-09-27 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Sep 27 13:36:28 2018 New Revision: 343263 URL: http://llvm.org/viewvc/llvm-project?rev=343263&view=rev Log: NFC: Fix some darwin linker warnings introduced in r338385 The darwin linker was complaining about Toolchains/RISCV.cpp and Toolchains/Arch/RISCV.cpp had the same na

Re: r338385 - [RISCV] Add driver for riscv32-unknown-elf baremetal target

2018-09-26 Thread Erik Pilkington via cfe-commits
I put a patch up to fix this here: https://reviews.llvm.org/D52574 Please take these warnings more seriously next time. It's the committer's responsibility to fix these warnings [1], and they often identify legitimate issues in the patch. Thanks, Erik [1]: https://llvm.org/docs/DeveloperPoli

r343050 - Fix a bot failure from r343042.

2018-09-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Sep 25 16:52:29 2018 New Revision: 343050 URL: http://llvm.org/viewvc/llvm-project?rev=343050&view=rev Log: Fix a bot failure from r343042. Modified: cfe/trunk/test/Sema/warn-duplicate-enum.c Modified: cfe/trunk/test/Sema/warn-duplicate-enum.c URL: http://llvm.org/vi

r343042 - [Sema] Use a more civilized hash map to implement -Wduplicate-enum.

2018-09-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Sep 25 15:53:06 2018 New Revision: 343042 URL: http://llvm.org/viewvc/llvm-project?rev=343042&view=rev Log: [Sema] Use a more civilized hash map to implement -Wduplicate-enum. DenseMap used LONG_MAX as a tombstone, so it asserts when you try to insert it! rdar://44774672

r342679 - Fix an assert in -Wquoted-include-in-framework-header

2018-09-20 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Sep 20 12:00:03 2018 New Revision: 342679 URL: http://llvm.org/viewvc/llvm-project?rev=342679&view=rev Log: Fix an assert in -Wquoted-include-in-framework-header Fixes rdar://43692300 Differential revision: https://reviews.llvm.org/D52253 Added: cfe/trunk/test/Module

r342672 - [Sema] Retain __restrict qualifiers when substituting a reference type.

2018-09-20 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Sep 20 11:12:24 2018 New Revision: 342672 URL: http://llvm.org/viewvc/llvm-project?rev=342672&view=rev Log: [Sema] Retain __restrict qualifiers when substituting a reference type. Fixes rdar://43760099 Differential revision: https://reviews.llvm.org/D52271 Added: cfe

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

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:/

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,

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

[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/

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

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]

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

[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

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

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

[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

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] 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

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 ***

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

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

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

[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

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:

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.

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

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

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

[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

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

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/

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

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

r336634 - [Sema] Fix a structured binding typo correction bug

2018-07-09 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 9 19:15:07 2018 New Revision: 336634 URL: http://llvm.org/viewvc/llvm-project?rev=336634&view=rev Log: [Sema] Fix a structured binding typo correction bug BindingDecls have null type until their initializer is processed, so we can't assume that a correction candidate

r336478 - [Sema] Emit -Wincomplete-implementation for partial methods.

2018-07-06 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Jul 6 18:50:20 2018 New Revision: 336478 URL: http://llvm.org/viewvc/llvm-project?rev=336478&view=rev Log: [Sema] Emit -Wincomplete-implementation for partial methods. Fixes rdar://40634455 Modified: cfe/trunk/lib/Sema/SemaDeclObjC.cpp cfe/trunk/test/SemaObjC/inc

r336233 - [Sema] Discarded statment should be an evaluatable context.

2018-07-03 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Jul 3 15:15:36 2018 New Revision: 336233 URL: http://llvm.org/viewvc/llvm-project?rev=336233&view=rev Log: [Sema] Discarded statment should be an evaluatable context. The constexpr evaluator was erroring out because these templates weren't defined. Despite being used in a

[libcxxabi] r336162 - Revert r336159, r336157. Some bots failed on qualified std::max_align_t, and other on unqualified max_align_t.

2018-07-02 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 2 18:30:53 2018 New Revision: 336162 URL: http://llvm.org/viewvc/llvm-project?rev=336162&view=rev Log: Revert r336159, r336157. Some bots failed on qualified std::max_align_t, and other on unqualified max_align_t. I'll take another stab at this tomorrow. Any ideas fo

[libcxxabi] r336159 - Some buildbots were choking on std::max_align_t, try using the global alias.

2018-07-02 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 2 17:48:27 2018 New Revision: 336159 URL: http://llvm.org/viewvc/llvm-project?rev=336159&view=rev Log: Some buildbots were choking on std::max_align_t, try using the global alias. Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modified: libcxxabi/trunk/src/cxa_de

[libcxxabi] r336157 - [demangler] Fix a MSVC alignment warning.

2018-07-02 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Jul 2 17:23:18 2018 New Revision: 336157 URL: http://llvm.org/viewvc/llvm-project?rev=336157&view=rev Log: [demangler] Fix a MSVC alignment warning. This should fix llvm.org/PR37944 Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modified: libcxxabi/trunk/src/cxa_dem

[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

r331098 - [ItaniumMangle] Undeduced auto type shouldn't be substitutable.

2018-04-27 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Apr 27 19:40:28 2018 New Revision: 331098 URL: http://llvm.org/viewvc/llvm-project?rev=331098&view=rev Log: [ItaniumMangle] Undeduced auto type shouldn't be substitutable. We still support the old mangling if we're trying to be ABI-compatible with Clang 6.0, though. Diffe

[libcxxabi] r329950 - [demangler] NFC: Some refactoring to support partial demangling.

2018-04-12 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu Apr 12 13:41:06 2018 New Revision: 329950 URL: http://llvm.org/viewvc/llvm-project?rev=329950&view=rev Log: [demangler] NFC: Some refactoring to support partial demangling. I'm committing this to libcxxabi too so that the two demanglers remain as simular as possible. Modi

[libcxxabi] r329601 - [demangler] Support for fold expressions.

2018-04-09 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Apr 9 11:33:01 2018 New Revision: 329601 URL: http://llvm.org/viewvc/llvm-project?rev=329601&view=rev Log: [demangler] Support for fold expressions. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cpp Modified: libcxxabi/tru

[libcxxabi] r329600 - [demangler] Support for .

2018-04-09 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Apr 9 11:32:25 2018 New Revision: 329600 URL: http://llvm.org/viewvc/llvm-project?rev=329600&view=rev Log: [demangler] Support for . Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cpp Modified: libcxxabi/trunk/src/cxa_deman

[libcxxabi] r329599 - [demangler] Support for partially substituted sizeof....

2018-04-09 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Apr 9 11:31:50 2018 New Revision: 329599 URL: http://llvm.org/viewvc/llvm-project?rev=329599&view=rev Log: [demangler] Support for partially substituted sizeof Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.cpp Modified

r329244 - [AST] Don't track lambda captures when checking a potential constant expression.

2018-04-04 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Apr 4 17:12:05 2018 New Revision: 329244 URL: http://llvm.org/viewvc/llvm-project?rev=329244&view=rev Log: [AST] Don't track lambda captures when checking a potential constant expression. Fixes PR36054. Differential revision: https://reviews.llvm.org/D45194 Modified:

[libcxxabi] r328507 - [demangler] Fix a bug in r328464 found by oss-fuzz.

2018-03-26 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Mon Mar 26 08:34:36 2018 New Revision: 328507 URL: http://llvm.org/viewvc/llvm-project?rev=328507&view=rev Log: [demangler] Fix a bug in r328464 found by oss-fuzz. Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modified: libcxxabi/trunk/src/cxa_demangle.cpp URL: http://l

[libcxxabi] r328464 - [demangler] Use a back-patching scheme to resolve forward references.

2018-03-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sun Mar 25 15:50:33 2018 New Revision: 328464 URL: http://llvm.org/viewvc/llvm-project?rev=328464&view=rev Log: [demangler] Use a back-patching scheme to resolve forward references. Strictly in a conversion operator's type, a refers to a that is further ahead in the mangled

[libcxxabi] r328463 - [demangler] Tweak how parameter pack sizes are determined.

2018-03-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sun Mar 25 15:49:57 2018 New Revision: 328463 URL: http://llvm.org/viewvc/llvm-project?rev=328463&view=rev Log: [demangler] Tweak how parameter pack sizes are determined. Rather than eagerly propagating up parameter pack sizes in Node ctors, find the parameter pack size during

[libcxxabi] r328462 - [demangler] Support for clang's enable_if attribute.

2018-03-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sun Mar 25 15:49:16 2018 New Revision: 328462 URL: http://llvm.org/viewvc/llvm-project?rev=328462&view=rev Log: [demangler] Support for clang's enable_if attribute. Fixes PR33569. Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_demangle.pass.c

[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

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] 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

[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] 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.

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] 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

[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] 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] 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] 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] 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] 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] 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] 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] r324203 - [demangler] return early if conditional expr parsing failed

2018-02-04 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Sun Feb 4 18:34:41 2018 New Revision: 324203 URL: http://llvm.org/viewvc/llvm-project?rev=324203&view=rev Log: [demangler] return early if conditional expr parsing failed This should fix some bugs found by oss-fuzz. Modified: libcxxabi/trunk/src/cxa_demangle.cpp Modifie

[libcxxabi] r323906 - [demangler] Improve variadic template support

2018-01-31 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Jan 31 12:17:06 2018 New Revision: 323906 URL: http://llvm.org/viewvc/llvm-project?rev=323906&view=rev Log: [demangler] Improve variadic template support This commit changes how variadic templates are represented in the demangler, in order to fix some longstanding bugs. No

[libcxxabi] r318874 - [demangler] Support for abi_tag attribute

2017-11-22 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Wed Nov 22 12:38:22 2017 New Revision: 318874 URL: http://llvm.org/viewvc/llvm-project?rev=318874&view=rev Log: [demangler] Support for abi_tag attribute Differential revision: https://reviews.llvm.org/D40279 Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/tr

[libcxxabi] r318765 - [demangler] Document some features that the demangler doesn't yet support, NFC

2017-11-21 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Tue Nov 21 07:04:08 2017 New Revision: 318765 URL: http://llvm.org/viewvc/llvm-project?rev=318765&view=rev Log: [demangler] Document some features that the demangler doesn't yet support, NFC Modified: libcxxabi/trunk/src/cxa_demangle.cpp libcxxabi/trunk/test/test_deman

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

r311191 - [Sema] Don't emit -Wunguarded-availability for switch cases

2017-08-18 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Fri Aug 18 13:20:56 2017 New Revision: 311191 URL: http://llvm.org/viewvc/llvm-project?rev=311191&view=rev Log: [Sema] Don't emit -Wunguarded-availability for switch cases This made it awkward to switch over an enum where some entries are partial and is unlikley to catch any b

<    1   2   3   4   >