[clang] 861c189 - Add some wildcards to pass FP difference on one of the buildbots

2022-04-01 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-04-01T12:04:20-07:00 New Revision: 861c189d2a5203ba8c8e983e8d2e109c0de153a5 URL: https://github.com/llvm/llvm-project/commit/861c189d2a5203ba8c8e983e8d2e109c0de153a5 DIFF: https://github.com/llvm/llvm-project/commit/861c189d2a5203ba8c8e983e8d2e109c0de153a5.diff L

[clang] eb92098 - FIX the wildcards to pass an FP diff in mangle-nttp-anon-union.cpp

2022-04-01 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-04-01T12:22:44-07:00 New Revision: eb920989865d992093993143ba3c6e71126cbb89 URL: https://github.com/llvm/llvm-project/commit/eb920989865d992093993143ba3c6e71126cbb89 DIFF: https://github.com/llvm/llvm-project/commit/eb920989865d992093993143ba3c6e71126cbb89.diff L

[clang] 9ba8c40 - Fix behavior of ifuncs with 'used' extern "C" static functions

2022-04-01 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-04-01T13:00:59-07:00 New Revision: 9ba8c4024b52bb8d0491fa1d15790ce7e9a9eae1 URL: https://github.com/llvm/llvm-project/commit/9ba8c4024b52bb8d0491fa1d15790ce7e9a9eae1 DIFF: https://github.com/llvm/llvm-project/commit/9ba8c4024b52bb8d0491fa1d15790ce7e9a9eae1.diff L

[clang] d1205bb - Reapply"[GH54588]Fix ItaniumMangler for NTTP unnamed unions w/ unnamed structs"

2022-04-04 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-04-04T06:41:47-07:00 New Revision: d1205bb37d8c37c6e427c339d704e707147989d2 URL: https://github.com/llvm/llvm-project/commit/d1205bb37d8c37c6e427c339d704e707147989d2 DIFF: https://github.com/llvm/llvm-project/commit/d1205bb37d8c37c6e427c339d704e707147989d2.diff L

[clang] b1ed286 - Attempt to re-enable demangle test in mangle-nttp-anon-union

2022-04-04 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-04-04T07:28:29-07:00 New Revision: b1ed28685766e6632938ea47d1d60c3028ebcfcf URL: https://github.com/llvm/llvm-project/commit/b1ed28685766e6632938ea47d1d60c3028ebcfcf DIFF: https://github.com/llvm/llvm-project/commit/b1ed28685766e6632938ea47d1d60c3028ebcfcf.diff L

[clang] b259027 - [NFCI] Propagate MLTAL through more concepts in prep of deferred inst.

2022-07-29 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-07-29T05:54:04-07:00 New Revision: b25902736c2e330429278e1929cc5afd2201fb77 URL: https://github.com/llvm/llvm-project/commit/b25902736c2e330429278e1929cc5afd2201fb77 DIFF: https://github.com/llvm/llvm-project/commit/b25902736c2e330429278e1929cc5afd2201fb77.diff L

[clang] fb65b17 - [NFCI] Refactor how KeywordStatus is calculated

2022-08-03 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-08-03T06:41:43-07:00 New Revision: fb65b17932e1163adeda943a3a36f9b482b97f47 URL: https://github.com/llvm/llvm-project/commit/fb65b17932e1163adeda943a3a36f9b482b97f47 DIFF: https://github.com/llvm/llvm-project/commit/fb65b17932e1163adeda943a3a36f9b482b97f47.diff L

[clang] bf6db18 - Fix char8_t in C mode regression from fb65b179

2022-08-03 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-08-03T07:15:30-07:00 New Revision: bf6db18e52815475baebff2c330763fedac6b5e4 URL: https://github.com/llvm/llvm-project/commit/bf6db18e52815475baebff2c330763fedac6b5e4 DIFF: https://github.com/llvm/llvm-project/commit/bf6db18e52815475baebff2c330763fedac6b5e4.diff L

[clang] 68ef916 - Delete PrintingPolicy's copy constructor/operator.

2021-07-23 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2021-07-23T11:22:52-07:00 New Revision: 68ef916659b9cd4127276f9502fc2870ca6cfdea URL: https://github.com/llvm/llvm-project/commit/68ef916659b9cd4127276f9502fc2870ca6cfdea DIFF: https://github.com/llvm/llvm-project/commit/68ef916659b9cd4127276f9502fc2870ca6cfdea.diff L

[clang] e7afaad - Revert "Delete PrintingPolicy's copy constructor/operator."

2021-07-23 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2021-07-23T11:24:30-07:00 New Revision: e7afaadd8b7a41cf9fab15786e863e78a8cc1473 URL: https://github.com/llvm/llvm-project/commit/e7afaadd8b7a41cf9fab15786e863e78a8cc1473 DIFF: https://github.com/llvm/llvm-project/commit/e7afaadd8b7a41cf9fab15786e863e78a8cc1473.diff L

[clang] dc15265 - Have cpu-specific variants set 'tune-cpu' as an optimization hint

2022-03-14 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-03-14T06:14:30-07:00 New Revision: dc152659b4527cc2e5f75cc33f36df67c7d5db26 URL: https://github.com/llvm/llvm-project/commit/dc152659b4527cc2e5f75cc33f36df67c7d5db26 DIFF: https://github.com/llvm/llvm-project/commit/dc152659b4527cc2e5f75cc33f36df67c7d5db26.diff L

[clang] bc7034c - [Concepts] Fix an assertion failure while diagnosing constrained

2022-03-15 Thread Erich Keane via cfe-commits
Author: Roy Jacobson Date: 2022-03-15T13:11:32-07:00 New Revision: bc7034c1ecfbe942bc55ed054fca856c5ab90dc8 URL: https://github.com/llvm/llvm-project/commit/bc7034c1ecfbe942bc55ed054fca856c5ab90dc8 DIFF: https://github.com/llvm/llvm-project/commit/bc7034c1ecfbe942bc55ed054fca856c5ab90dc8.diff

[clang] 30adb9f - let EST_Uninstantiated in FunctionProtoType::canThrow return

2022-03-16 Thread Erich Keane via cfe-commits
Author: Zhouyi Zhou Date: 2022-03-16T07:09:42-07:00 New Revision: 30adb9fd279785d18f9902ba980c7d8b31a6c8d7 URL: https://github.com/llvm/llvm-project/commit/30adb9fd279785d18f9902ba980c7d8b31a6c8d7 DIFF: https://github.com/llvm/llvm-project/commit/30adb9fd279785d18f9902ba980c7d8b31a6c8d7.diff L

[clang] 6f20744 - Add support for ignored bitfield conditional codegen.

2022-04-13 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-04-13T10:33:55-07:00 New Revision: 6f20744b7ff875bb5eb735d1e7636ad6a66d4526 URL: https://github.com/llvm/llvm-project/commit/6f20744b7ff875bb5eb735d1e7636ad6a66d4526 DIFF: https://github.com/llvm/llvm-project/commit/6f20744b7ff875bb5eb735d1e7636ad6a66d4526.diff L

[clang] 38823b7 - Fix Werror build issue from 6f20744b7ff875

2022-04-13 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-04-13T11:00:09-07:00 New Revision: 38823b7f5f01e01c44360b17b4ab99b2729b7197 URL: https://github.com/llvm/llvm-project/commit/38823b7f5f01e01c44360b17b4ab99b2729b7197 DIFF: https://github.com/llvm/llvm-project/commit/38823b7f5f01e01c44360b17b4ab99b2729b7197.diff L

[clang] 8073da0 - [NFC] Fix sign-compare warning in GrammarBNF thanks to int promotion

2022-02-09 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-02-09T11:25:58-08:00 New Revision: 8073da0beed804d0cef1697b72fdc4151457a327 URL: https://github.com/llvm/llvm-project/commit/8073da0beed804d0cef1697b72fdc4151457a327 DIFF: https://github.com/llvm/llvm-project/commit/8073da0beed804d0cef1697b72fdc4151457a327.diff L

[clang] a037eac - Fix test from 5ff992 to work with win 32 bit, fix a typo.

2022-04-26 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-04-26T06:37:19-07:00 New Revision: a037eace91a350b2a45d0b901f547903df3d3cb3 URL: https://github.com/llvm/llvm-project/commit/a037eace91a350b2a45d0b901f547903df3d3cb3 DIFF: https://github.com/llvm/llvm-project/commit/a037eace91a350b2a45d0b901f547903df3d3cb3.diff L

[clang] 4b6c2cd - Deferred Concept Instantiation Implementation

2022-05-02 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-02T05:49:15-07:00 New Revision: 4b6c2cd647e9e5a147954886338f97ffb6a1bcfb URL: https://github.com/llvm/llvm-project/commit/4b6c2cd647e9e5a147954886338f97ffb6a1bcfb DIFF: https://github.com/llvm/llvm-project/commit/4b6c2cd647e9e5a147954886338f97ffb6a1bcfb.diff L

[clang] 0c31da4 - Revert "Deferred Concept Instantiation Implementation"

2022-05-02 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-02T06:25:38-07:00 New Revision: 0c31da48389754822dc3eecc4723160c295b9ab2 URL: https://github.com/llvm/llvm-project/commit/0c31da48389754822dc3eecc4723160c295b9ab2 DIFF: https://github.com/llvm/llvm-project/commit/0c31da48389754822dc3eecc4723160c295b9ab2.diff L

[clang] a978991 - Re-apply 4b6c2cd642 "Deferred Concept Instantiation Implementation""

2022-05-02 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-02T07:49:26-07:00 New Revision: a97899108e495147985e5e9492e742d51d5cc97a URL: https://github.com/llvm/llvm-project/commit/a97899108e495147985e5e9492e742d51d5cc97a DIFF: https://github.com/llvm/llvm-project/commit/a97899108e495147985e5e9492e742d51d5cc97a.diff L

[clang] 45c07db - Revert "Re-apply 4b6c2cd642 "Deferred Concept Instantiation Implementation"""

2022-05-02 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-02T11:12:14-07:00 New Revision: 45c07db31cc76802a1a2e41bed1ce9c1b8198181 URL: https://github.com/llvm/llvm-project/commit/45c07db31cc76802a1a2e41bed1ce9c1b8198181 DIFF: https://github.com/llvm/llvm-project/commit/45c07db31cc76802a1a2e41bed1ce9c1b8198181.diff L

[clang] e71fd54 - [NFC] Move check for isEqualityOp to CheckFloatComparisons

2022-07-14 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-07-14T09:30:29-07:00 New Revision: e71fd547194591fbdfb617479e47b1b7cf6e9151 URL: https://github.com/llvm/llvm-project/commit/e71fd547194591fbdfb617479e47b1b7cf6e9151 DIFF: https://github.com/llvm/llvm-project/commit/e71fd547194591fbdfb617479e47b1b7cf6e9151.diff L

[clang] 3ff86f9 - [NFC] Start saving InstantiatedFromDecl in non-template functions

2022-07-22 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-07-22T12:37:14-07:00 New Revision: 3ff86f961094306d1a3f219a44614e9cfd1dbd6b URL: https://github.com/llvm/llvm-project/commit/3ff86f961094306d1a3f219a44614e9cfd1dbd6b DIFF: https://github.com/llvm/llvm-project/commit/3ff86f961094306d1a3f219a44614e9cfd1dbd6b.diff L

[clang] 70c62f4 - [NFC] give getParentFunctionOrMethod a 'Lexical' parameter

2022-07-22 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-07-22T12:52:26-07:00 New Revision: 70c62f4cadbec132c4ab5f939648d10ca6338b15 URL: https://github.com/llvm/llvm-project/commit/70c62f4cadbec132c4ab5f939648d10ca6338b15 DIFF: https://github.com/llvm/llvm-project/commit/70c62f4cadbec132c4ab5f939648d10ca6338b15.diff L

[clang] 0b36a62 - [NFC] Add some additional features to MultiLevelTemplateArgumentList

2022-07-22 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-07-22T13:05:42-07:00 New Revision: 0b36a62d5f3505e21692ae0abf25ef00836329e3 URL: https://github.com/llvm/llvm-project/commit/0b36a62d5f3505e21692ae0abf25ef00836329e3 DIFF: https://github.com/llvm/llvm-project/commit/0b36a62d5f3505e21692ae0abf25ef00836329e3.diff L

[clang] 629903c - Reapply "[NFC] Add some additional features to MultiLevelTemplateArgumentList""

2022-07-25 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-07-25T06:57:23-07:00 New Revision: 629903c8a4440095ecb98c7095f029783255db11 URL: https://github.com/llvm/llvm-project/commit/629903c8a4440095ecb98c7095f029783255db11 DIFF: https://github.com/llvm/llvm-project/commit/629903c8a4440095ecb98c7095f029783255db11.diff L

[clang] a425cac - "Re-apply 4b6c2cd642 "Deferred Concept Instantiation Implementation""""

2022-05-09 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-09T06:29:47-07:00 New Revision: a425cac31e2e4cee8e14b7b9a99c8ba17c1ebb52 URL: https://github.com/llvm/llvm-project/commit/a425cac31e2e4cee8e14b7b9a99c8ba17c1ebb52 DIFF: https://github.com/llvm/llvm-project/commit/a425cac31e2e4cee8e14b7b9a99c8ba17c1ebb52.diff L

[clang] 017abbb - Revert ""Re-apply 4b6c2cd642 "Deferred Concept Instantiation Implementation"""""

2022-05-09 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-09T09:12:05-07:00 New Revision: 017abbb258618ed7aad4573f8940a67eb868027f URL: https://github.com/llvm/llvm-project/commit/017abbb258618ed7aad4573f8940a67eb868027f DIFF: https://github.com/llvm/llvm-project/commit/017abbb258618ed7aad4573f8940a67eb868027f.diff L

[clang] 508d2b4 - [NFC]Add Missing Break in switch that we didn't notice because it was

2022-05-10 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-10T12:27:45-07:00 New Revision: 508d2b4e13c05388a19173e5bd98ac06b9dd9b98 URL: https://github.com/llvm/llvm-project/commit/508d2b4e13c05388a19173e5bd98ac06b9dd9b98 DIFF: https://github.com/llvm/llvm-project/commit/508d2b4e13c05388a19173e5bd98ac06b9dd9b98.diff L

[clang] b6572ad - [NFC] Add missing 'break' in a switch case

2022-05-10 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-10T12:48:08-07:00 New Revision: b6572ad504753c6c27ba49c2ed595a091c977dcd URL: https://github.com/llvm/llvm-project/commit/b6572ad504753c6c27ba49c2ed595a091c977dcd DIFF: https://github.com/llvm/llvm-project/commit/b6572ad504753c6c27ba49c2ed595a091c977dcd.diff L

[clang] eadeabb - [NFC] Replace not-null and not-isa check with a not-isa_and_nonnull

2022-05-10 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-10T13:34:07-07:00 New Revision: eadeabbe10f5096b12e488e7bd8e2292429b5e08 URL: https://github.com/llvm/llvm-project/commit/eadeabbe10f5096b12e488e7bd8e2292429b5e08 DIFF: https://github.com/llvm/llvm-project/commit/eadeabbe10f5096b12e488e7bd8e2292429b5e08.diff L

[clang] 6da3d66 - [concepts] Implement dcl.decl.general p4: No constraints on non-template funcs

2022-05-17 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-17T06:21:51-07:00 New Revision: 6da3d66f03f9162ef341cc67218be40e22fe9808 URL: https://github.com/llvm/llvm-project/commit/6da3d66f03f9162ef341cc67218be40e22fe9808 DIFF: https://github.com/llvm/llvm-project/commit/6da3d66f03f9162ef341cc67218be40e22fe9808.diff L

[clang] 2def74b - Fix release note typo from 6da3d66f

2022-05-17 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-17T06:35:06-07:00 New Revision: 2def74bef15a867d940520ddf3808d09b7fff95b URL: https://github.com/llvm/llvm-project/commit/2def74bef15a867d940520ddf3808d09b7fff95b DIFF: https://github.com/llvm/llvm-project/commit/2def74bef15a867d940520ddf3808d09b7fff95b.diff L

[clang] 0ef7ca8 - Fix test from df2a4e to work with 32 bit windows targets.

2022-05-20 Thread Erich Keane via cfe-commits
Author: Erich Keane Date: 2022-05-20T06:21:52-07:00 New Revision: 0ef7ca86cf1e28d91113dcf834a61ad155dbb7cb URL: https://github.com/llvm/llvm-project/commit/0ef7ca86cf1e28d91113dcf834a61ad155dbb7cb DIFF: https://github.com/llvm/llvm-project/commit/0ef7ca86cf1e28d91113dcf834a61ad155dbb7cb.diff L

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane commented: A quick few things I noticed, not nearly a thorough review. https://github.com/llvm/llvm-project/pull/87130 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/87130 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][AST][NFC] Move template argument dependence computations for MemberExpr to computeDependence (PR #86682)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/86682 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][AST][NFC] Move template argument dependence computations for MemberExpr to computeDependence (PR #86682)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -583,11 +583,14 @@ class alignas(void *) Stmt { unsigned IsArrow : 1; /// True if this member expression used a nested-name-specifier to -/// refer to the member, e.g., "x->Base::f", or found its member via -/// a using declaration. When true, a MemberExprN

[clang] [Clang][AST][NFC] Move template argument dependence computations for MemberExpr to computeDependence (PR #86682)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane approved this pull request. 2 nits, else LGTM. https://github.com/llvm/llvm-project/pull/86682 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][AST][NFC] Move template argument dependence computations for MemberExpr to computeDependence (PR #86682)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1735,48 +1757,21 @@ MemberExpr *MemberExpr::Create( ValueDecl *MemberDecl, DeclAccessPair FoundDecl, DeclarationNameInfo NameInfo, const TemplateArgumentListInfo *TemplateArgs, QualType T, ExprValueKind VK, ExprObjectKind OK, NonOdrUseReason NOUR) { - bool HasQ

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [Clang] Unify interface for accessing template arguments as written for class/variable template specializations (PR #81642)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/81642 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Unify interface for accessing template arguments as written for class/variable template specializations (PR #81642)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -2596,27 +2588,14 @@ class VarTemplateSpecializationDecl : public VarDecl, llvm::PointerUnion SpecializedTemplate; - /// Further info for explicit template specialization/instantiation. - struct ExplicitSpecializationInfo { -/// The type-as-written. -TypeSourc

[clang] [Clang] Unify interface for accessing template arguments as written for class/variable template specializations (PR #81642)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -2545,10 +2545,12 @@ ASTDeclReader::VisitClassTemplateSpecializationDeclImpl( } // Explicit info. - if (TypeSourceInfo *TyInfo = readTypeSourceInfo()) { -auto *ExplicitInfo = -new (C) ClassTemplateSpecializationDecl::ExplicitSpecializationInfo; -Explici

[clang] [Clang] Unify interface for accessing template arguments as written for class/variable template specializations (PR #81642)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane commented: A few more suggestions, also I like Shafik's suggestion on the variable name. https://github.com/llvm/llvm-project/pull/81642 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bi

[clang] [Clang] Unify interface for accessing template arguments as written for class/variable template specializations (PR #81642)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1455,21 +1455,17 @@ void TypePrinter::printTag(TagDecl *D, raw_ostream &OS) { // If this is a class template specialization, print the template // arguments. - if (const auto *Spec = dyn_cast(D)) { -ArrayRef Args; -TypeSourceInfo *TAW = Spec->getTypeAsWritten

[clang] [Clang] Unify interface for accessing template arguments as written for class/variable template specializations (PR #81642)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1455,21 +1455,17 @@ void TypePrinter::printTag(TagDecl *D, raw_ostream &OS) { // If this is a class template specialization, print the template // arguments. - if (const auto *Spec = dyn_cast(D)) { -ArrayRef Args; -TypeSourceInfo *TAW = Spec->getTypeAsWritten

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [clang][FMV] Direct-call FMV callees from FMV callers (PR #80093)

2024-04-01 Thread Erich Keane via cfe-commits
erichkeane wrote: I'd be OK with Clang providing some level of metadata to clarify which is an FMV, and what our target features are. But this sort of analysis still needs to happen in LLVM. https://github.com/llvm/llvm-project/pull/80093 ___ cfe-

[clang] [Clang] Unify interface for accessing template arguments as written for class/variable template specializations (PR #81642)

2024-04-01 Thread Erich Keane via cfe-commits
erichkeane wrote: > @erichkeane Regarding "Still waiting on this?", I pushed a commit that > addresses the fixme. I'll be addressing the rest of your review comments in a > subsequent commit.. > > Also, if we are renaming `ExplicitInstantiationInfo::ExternLoc` to > `ExternKeywordLoc`, should

[clang] [clang][FMV] Direct-call FMV callees from FMV callers (PR #80093)

2024-04-01 Thread Erich Keane via cfe-commits
erichkeane wrote: > I'm not sure llvm needs to know the priorities. I haven't had time to work on > this, but my plan was to have something that attempts to step through the > resolver instruction by instruction with known bits for the value loaded from > `__aarch64_cpu_features.features` acco

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/84050 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane commented: Quite a bit of cleanup level stuff, plus wanting 1 minor refactor here (re the lookup function), but otherwise is pretty good. https://github.com/llvm/llvm-project/pull/84050 ___ cfe-commits mailing list cfe-co

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -990,6 +970,18 @@ Sema::BuildMemberReferenceExpr(Expr *BaseExpr, QualType BaseExprType, const Scope *S, bool SuppressQualifierCheck, ActOnMemberAccessExtraArgs *ExtraArgs) { + asse

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -131,7 +131,9 @@ struct BuiltinTypeDeclBuilder { DeclarationNameInfo NameInfo = DeclarationNameInfo(DeclarationName(&II), SourceLocation()); LookupResult R(S, NameInfo, Sema::LookupOrdinaryName); -S.LookupParsedName(R, S.getCurScope(), &SS, false); +S

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1055,9 +1045,19 @@ Sema::BuildMemberReferenceExpr(Expr *BaseExpr, QualType BaseExprType, } } -Diag(R.getNameLoc(), diag::err_no_member) - << MemberName << DC - << (BaseExpr ? BaseExpr->getSourceRange() : SourceRange()); +if (SS.isNotEmpty() &&

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -825,7 +825,10 @@ void Sema::ActOnPragmaUnused(const Token &IdTok, Scope *curScope, IdentifierInfo *Name = IdTok.getIdentifierInfo(); LookupResult Lookup(*this, Name, IdTok.getLocation(), LookupOrdinaryName); - LookupParsedName(Lookup, curScope, nullptr, true); + Loo

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -5789,7 +5789,10 @@ static ImplicitConversionSequence TryObjectArgumentInitialization( return ICS; } +// FIXME: Should this check getAsRecordDecl instead? erichkeane wrote: again. https://github.com/llvm/llvm-project/pull/84050

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1287,7 +1287,10 @@ static ExprResult LookupMemberExpr(Sema &S, LookupResult &R, return ExprError(); QualType BaseType = BaseExpr.get()->getType(); + +#if 0 erichkeane wrote: Hmm? https://github.com/llvm/llvm-project/pull/84050

[clang] [Clang][Sema] Diagnose class member access expressions naming non-existent members of the current instantiation prior to instantiation in the absence of dependent base classes (PR #84050)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -131,7 +131,9 @@ struct BuiltinTypeDeclBuilder { DeclarationNameInfo NameInfo = DeclarationNameInfo(DeclarationName(&II), SourceLocation()); LookupResult R(S, NameInfo, Sema::LookupOrdinaryName); -S.LookupParsedName(R, S.getCurScope(), &SS, false); +S

[clang] [clang] Constexpr for __builtin_shufflevector and __builtin_convertvector (PR #76615)

2024-04-01 Thread Erich Keane via cfe-commits
Pol Marcet =?utf-8?q?Sardà?= , Pol Marcet =?utf-8?q?Sardà?= , Pol Marcet =?utf-8?q?Sardà?= Message-ID: In-Reply-To: @@ -10318,6 +10318,8 @@ def err_shufflevector_nonconstant_argument : Error< def err_shufflevector_argument_too_large : Error< "index for __builtin_shufflevect

[clang] [clang] Constexpr for __builtin_shufflevector and __builtin_convertvector (PR #76615)

2024-04-01 Thread Erich Keane via cfe-commits
Pol Marcet =?utf-8?q?Sardà?= , Pol Marcet =?utf-8?q?Sardà?= , Pol Marcet =?utf-8?q?Sardà?= Message-ID: In-Reply-To: https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/76615 ___ cfe-commits mailing list cfe-commits@lists.ll

[clang] [clang] Constexpr for __builtin_shufflevector and __builtin_convertvector (PR #76615)

2024-04-01 Thread Erich Keane via cfe-commits
Pol Marcet =?utf-8?q?Sard=C3=A0?= , Pol Marcet =?utf-8?q?Sard=C3=A0?= , Pol Marcet =?utf-8?q?Sard=C3=A0?= Message-ID: In-Reply-To: https://github.com/erichkeane commented: I would love it if @sethp can do another review, but only 1 nit from me. https://github.com/llvm/llvm-project/pull/76615

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [clang-tools-extra] [Clang][Sema] Fix explicit specializations of member function templates with a deduced return type (PR #86817)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane approved this pull request. https://github.com/llvm/llvm-project/pull/86817 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Sema] Fix the lambda call expression inside of a type alias declaration (PR #82310)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane commented: 1 thought, else I don't see anything. @cor3ntin is coming back in a few days, so I'd like him to do a final once over. https://github.com/llvm/llvm-project/pull/82310 ___ cfe-commits mailing list cfe-commits@l

[clang] [Clang][Sema] Fix the lambda call expression inside of a type alias declaration (PR #82310)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/82310 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Sema] Fix the lambda call expression inside of a type alias declaration (PR #82310)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -80,6 +80,81 @@ struct Response { return R; } }; + +// Retrieve the primary template for a lambda call operator. It's +// unfortunate that we only have the mappings of call operators rather +// than lambda classes. +const FunctionDecl * +getPrimaryTemplateOfGenericLamb

[clang] [Clang][Sema] set declaration invalid earlier to prevent crash in calculating record layout (PR #87173)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -3899,6 +3899,9 @@ static QualType GetDeclSpecTypeForDeclarator(TypeProcessingState &state, SemaRef.Diag(OwnedTagDecl->getLocation(), DiagID) << SemaRef.Context.getTypeDeclType(OwnedTagDecl); D.setInvalidType(true); + OwnedTagDecl->setCompleteDefi

[clang] [Clang] [Sema] Improve support for `__restrict`-qualified member functions (PR #83855)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/83855 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] [Sema] Improve support for `__restrict`-qualified member functions (PR #83855)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -5052,6 +5052,21 @@ void Sema::InstantiateFunctionDefinition(SourceLocation PointOfInstantiation, Function->setInnerLocStart(PatternDecl->getInnerLocStart()); Function->setRangeEnd(PatternDecl->getEndLoc()); + // Propagate '__restrict' properly. + if (auto MD = dyn_c

[clang] [Clang] [Sema] Improve support for `__restrict`-qualified member functions (PR #83855)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane commented: I did a review, but didn't stop to decide whether we SHOULD :) Aaron should be around 'sometime' to make that judgement, my restrict knowledge/reasoning is slim/none. https://github.com/llvm/llvm-project/pull/83855 _

[clang] [libclc] [llvm] [openmp] [Clang] `__attribute__((assume))` refactor (PR #84934)

2024-04-01 Thread Erich Keane via cfe-commits
erichkeane wrote: OpenCL is "C" based, not C++. However, C23 DID add namespacing to attributes, so if OpenCL can use C23, we should be able to make the spelling `[[omp::assume]]`. That said, I DO see value for an `__attribute__` spelling, so I think `omp_assume` is probably an unfortunate ne

[clang] [libclc] [llvm] [openmp] [Clang] `__attribute__((assume))` refactor (PR #84934)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1,14 +0,0 @@ -// RUN: %clang_cc1 -triple i386-apple-darwin9 -fsyntax-only -verify %s erichkeane wrote: Same here, can we just rename this to attr-omp-assume.c and change the name in the test? https://github.com/llvm/llvm-project/pull/84934 _

[clang] [libclc] [llvm] [openmp] [Clang] `__attribute__((assume))` refactor (PR #84934)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1,58 +0,0 @@ -// RUN: %clang_cc1 -emit-llvm -triple i386-linux-gnu %s -o - | FileCheck %s erichkeane wrote: would be great if we could just rename/update this test rather than deleting it? https://github.com/llvm/llvm-project/pull/84934 ___

[clang] [Clang] [Sema] Fix dependence of DREs in lambdas with an explicit object parameter (PR #84473)

2024-04-01 Thread Erich Keane via cfe-commits
https://github.com/erichkeane approved this pull request. This seems sensible to me. Please give @cor3ntin a few days to review, after which, feel free to commit. https://github.com/llvm/llvm-project/pull/84473 ___ cfe-commits mailing list cfe-commit

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [BitInt] Expose a _BitInt literal suffix in C++ (PR #86586)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -80,7 +80,8 @@ class NumericLiteralParser { bool isFloat128 : 1; // 1.0q bool isFract : 1; // 1.0hr/r/lr/uhr/ur/ulr bool isAccum : 1; // 1.0hk/k/lk/uhk/uk/ulk - bool isBitInt : 1;// 1wb, 1uwb (C23) + bool isBitInt : 1; // 1wb, 1uwb (C23)

[clang] [BitInt] Expose a _BitInt literal suffix in C++ (PR #86586)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -1117,6 +1118,26 @@ NumericLiteralParser::NumericLiteralParser(StringRef TokSpelling, if (isImaginary) break; // Cannot be repeated. isImaginary = true; continue; // Success. +case '_': + if (isFPConstant) +break; // Invalid for floats

[clang] [BitInt] Expose a _BitInt literal suffix in C++ (PR #86586)

2024-04-01 Thread Erich Keane via cfe-commits
@@ -974,6 +974,7 @@ NumericLiteralParser::NumericLiteralParser(StringRef TokSpelling, bool isFixedPointConstant = isFixedPointLiteral(); bool isFPConstant = isFloatingLiteral(); bool HasSize = false; + bool PossibleBitInt = false; erichkeane wrote: I'd

[clang] [Clang][AST][NFC] Move template argument dependence computations for MemberExpr to computeDependence (PR #86682)

2024-04-02 Thread Erich Keane via cfe-commits
erichkeane wrote: > @erichkeane Requested changes applied... should I wait for other reviews on > the other PR (#86678), or do you think I should go ahead and merge #86678 and > then this one? #86678 is entirely 'contained' in this review, right? Seems like it is 'reviewed', so you can proba

[clang] Rework the printing of attributes (PR #87281)

2024-04-02 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/87281 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Rework the printing of attributes (PR #87281)

2024-04-02 Thread Erich Keane via cfe-commits
@@ -250,87 +241,43 @@ raw_ostream& DeclPrinter::Indent(unsigned Indentation) { return Out; } -// For CLANG_ATTR_LIST_CanPrintOnLeft macro. -#include "clang/Basic/AttrLeftSideCanPrintList.inc" - -// For CLANG_ATTR_LIST_PrintOnLeft macro. -#include "clang/Basic/AttrLeftSideMus

[clang] Rework the printing of attributes (PR #87281)

2024-04-02 Thread Erich Keane via cfe-commits
@@ -129,11 +118,13 @@ namespace { const TemplateParameterList *Params); void printTemplateArguments(llvm::ArrayRef Args, const TemplateParameterList *Params); - -inline void prettyPrintAttributes(Decl *D) {

[clang] Rework the printing of attributes (PR #87281)

2024-04-02 Thread Erich Keane via cfe-commits
@@ -250,87 +241,43 @@ raw_ostream& DeclPrinter::Indent(unsigned Indentation) { return Out; } -// For CLANG_ATTR_LIST_CanPrintOnLeft macro. -#include "clang/Basic/AttrLeftSideCanPrintList.inc" - -// For CLANG_ATTR_LIST_PrintOnLeft macro. -#include "clang/Basic/AttrLeftSideMus

[clang] Rework the printing of attributes (PR #87281)

2024-04-02 Thread Erich Keane via cfe-commits
@@ -250,87 +241,43 @@ raw_ostream& DeclPrinter::Indent(unsigned Indentation) { return Out; } -// For CLANG_ATTR_LIST_CanPrintOnLeft macro. -#include "clang/Basic/AttrLeftSideCanPrintList.inc" - -// For CLANG_ATTR_LIST_PrintOnLeft macro. -#include "clang/Basic/AttrLeftSideMus

[clang] Rework the printing of attributes (PR #87281)

2024-04-02 Thread Erich Keane via cfe-commits
https://github.com/erichkeane commented: Since this adds so much logic, we definitely need tests that handle when the attribute is defined in a macro, when there are multiples on each side, when there are multiples in macros/etc. https://github.com/llvm/llvm-project/pull/87281 ___

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-02 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [Sema] Mark alias/ifunc targets used and consider mangled names (PR #87130)

2024-04-02 Thread Erich Keane via cfe-commits
@@ -1980,6 +1981,23 @@ static void handleWeakRefAttr(Sema &S, Decl *D, const ParsedAttr &AL) { D->addAttr(::new (S.Context) WeakRefAttr(S.Context, AL)); } +// Mark alias/ifunc target as used. For C++, we look up the demangled name +// ignoring parameters. This should handle

[clang] [Clang][AST][NFC] Move template argument dependence computations for MemberExpr to computeDependence (PR #86682)

2024-04-02 Thread Erich Keane via cfe-commits
erichkeane wrote: Ah, i see... yeah, i think there is value to submitting them separately, feel free to do so. https://github.com/llvm/llvm-project/pull/86682 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailm

[clang] [Clang][Sema] fix crash in codegen stage when an lambda expression declared in an unevaluated context (PR #80802)

2024-02-06 Thread Erich Keane via cfe-commits
@@ -1613,8 +1613,8 @@ namespace { bool TemplateInstantiator::AlreadyTransformed(QualType T) { if (T.isNull()) return true; - - if (T->isInstantiationDependentType() || T->isVariablyModifiedType()) + if (T->isInstantiationDependentType() || T->isVariablyModifiedType() ||

[clang] [clang][TSA] Make RequiresCapability a DeclOrType attribute (PR #67095)

2024-02-06 Thread Erich Keane via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: @@ -8938,6 +8957,11 @@ static void processTypeAttrs(TypeProcessingState &state, QualType &type, attr.setUsedAsTypeAttr();

[clang] [Clang][Sema] Diagnose declarative nested-name-specifiers naming alias templates (PR #80842)

2024-02-06 Thread Erich Keane via cfe-commits
https://github.com/erichkeane edited https://github.com/llvm/llvm-project/pull/80842 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Sema] Diagnose declarative nested-name-specifiers naming alias templates (PR #80842)

2024-02-06 Thread Erich Keane via cfe-commits
https://github.com/erichkeane commented: Added other reviewers, this part of naming is something that I need other eyes on. https://github.com/llvm/llvm-project/pull/80842 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/

[clang] [Clang][Sema] Diagnose declarative nested-name-specifiers naming alias templates (PR #80842)

2024-02-06 Thread Erich Keane via cfe-commits
@@ -6295,22 +6297,36 @@ bool Sema::diagnoseQualifiedDeclaration(CXXScopeSpec &SS, DeclContext *DC, << FixItHint::CreateRemoval(TemplateId->TemplateKWLoc); NestedNameSpecifierLoc SpecLoc(SS.getScopeRep(), SS.location_data()); - while (SpecLoc.getPrefix()) { + do {

[clang] [Clang][Sema] Diagnose declarative nested-name-specifiers naming alias templates (PR #80842)

2024-02-06 Thread Erich Keane via cfe-commits
@@ -6295,22 +6297,36 @@ bool Sema::diagnoseQualifiedDeclaration(CXXScopeSpec &SS, DeclContext *DC, << FixItHint::CreateRemoval(TemplateId->TemplateKWLoc); NestedNameSpecifierLoc SpecLoc(SS.getScopeRep(), SS.location_data()); - while (SpecLoc.getPrefix()) { + do {

[clang] Diagnose misuse of the cleanup attribute (PR #80040)

2024-02-06 Thread Erich Keane via cfe-commits
erichkeane wrote: > ``` > extern void free(void *); > extern void *malloc(size_t size); > void t8(void) { > void *p __attribute__((cleanup(free))) = malloc(10); // > expected-warning{{attempt to call free on non-heap object 'p'}} > } > ``` > > I added this, but I am getting this error: (Sorry

<    3   4   5   6   7   8   9   10   11   12   >