[openmp] [lldb] [llvm] [libcxx] [libc] [clang-tools-extra] [compiler-rt] [lld] [flang] [libcxxabi] [clang] [mlir] [libunwind] [C23] Implement N3018: The constexpr specifier for object definitions (PR

2023-12-11 Thread Guillot Tony via cfe-commits
@@ -0,0 +1,287 @@ +// RUN: %clang_cc1 -std=c2x -verify -triple x86_64 -pedantic -Wno-conversion -Wno-constant-conversion -Wno-div-by-zero %s + +// Check that constexpr only applies to variables. +constexpr void f0() {} // expected-error {{'constexpr' can only be used in variable

[mlir] [libc] [lld] [libcxxabi] [compiler-rt] [lldb] [llvm] [clang-tools-extra] [libunwind] [libcxx] [clang] [openmp] [flang] [C23] Implement N3018: The constexpr specifier for object definitions (PR

2023-12-11 Thread Guillot Tony via cfe-commits
to268 wrote: I have found no major issues with the C23 `auto` keyword. There is a minor improvement that I've found in the test cases. Concerning N3006 (AKA: Underspecified object declarations), I haven't reviewed yet the compatibility with the `constexpr` keyword, since I haven't work much on

[clang] [C23] Implement N3018: The constexpr specifier for object definitions (PR #73099)

2023-11-22 Thread Guillot Tony via cfe-commits
to268 wrote: That's probably because I have still not commit access, but I'll take a look. https://github.com/llvm/llvm-project/pull/73099 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commi

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-03-18 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/79845 >From f463907db6a68422c2f28d08593ab21e42c6a497 Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Mon, 29 Jan 2024 15:14:32 +0100 Subject: [PATCH 1/3] Implementation base of N3006 Underspecified object declarations

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-03-18 Thread Guillot Tony via cfe-commits
to268 wrote: I have rebased my PR to include N3018 constexpr feature and reverted a formatted snippet of code that is not part of the PR. I will add constexpr tests but I need to investigate why the constexpr keyword does not trigger the diagnostic (not sure if it's a constexpr implementation

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-02-05 Thread Guillot Tony via cfe-commits
to268 wrote: Ping: @AaronBallman https://github.com/llvm/llvm-project/pull/79845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-01-29 Thread Guillot Tony via cfe-commits
https://github.com/to268 created https://github.com/llvm/llvm-project/pull/79845 The N3006 Underspecified object declarations paper describes that underspecified declarations should be diagnosed as an error. Example snippet: ```c struct S1 { int x, y; }; union U1 { int a; double b; }; enum E1 {

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-01-29 Thread Guillot Tony via cfe-commits
@@ -7639,6 +7639,8 @@ def err_attribute_arm_mve_polymorphism : Error< "'__clang_arm_mve_strict_polymorphism' attribute can only be applied to an MVE/NEON vector type">; def err_attribute_webassembly_funcref : Error< "'__funcref' attribute can only be applied to a function

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-01-29 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/79845 >From fe082a252d7290730f39228736d93eeea992e041 Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Mon, 29 Jan 2024 15:14:32 +0100 Subject: [PATCH 1/2] Implementation base of N3006 Underspecified object declarations

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-01-29 Thread Guillot Tony via cfe-commits
to268 wrote: CC: @AaronBallman https://github.com/llvm/llvm-project/pull/79845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-01-29 Thread Guillot Tony via cfe-commits
@@ -7805,10 +7805,38 @@ Sema::BuildCompoundLiteralExpr(SourceLocation LParenLoc, TypeSourceInfo *TInfo, diag::err_variable_object_no_init)) return ExprError(); } + } else if (LangOpts.C23 && + (literalType->is

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-01-29 Thread Guillot Tony via cfe-commits
@@ -7639,6 +7639,8 @@ def err_attribute_arm_mve_polymorphism : Error< "'__clang_arm_mve_strict_polymorphism' attribute can only be applied to an MVE/NEON vector type">; def err_attribute_webassembly_funcref : Error< "'__funcref' attribute can only be applied to a function

[clang] [clang][C2x] Remove confusing diagnostic auto storage class specifier in C23 (PR #68710)

2023-10-10 Thread Guillot Tony via cfe-commits
https://github.com/to268 created https://github.com/llvm/llvm-project/pull/68710 When declaring `auto int` at local or file scope, we emit a warning intended for C++11 and later, which is incorrect and confusing in C23. See [Godbolt example](https://godbolt.org/z/j1acGhecd). Now this diagnostic

[clang] [clang][C2x] Remove confusing diagnostic auto storage class specifier (PR #68710)

2023-10-10 Thread Guillot Tony via cfe-commits
https://github.com/to268 edited https://github.com/llvm/llvm-project/pull/68710 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][C2x] Remove confusing diagnostic auto storage class specifier (PR #68710)

2023-10-10 Thread Guillot Tony via cfe-commits
to268 wrote: Can you land this patch on my behalf? "Guillot Tony " https://github.com/llvm/llvm-project/pull/68710 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][C2x] Remove confusing diagnostic auto storage class specifier (PR #68710)

2023-10-11 Thread Guillot Tony via cfe-commits
to268 wrote: Nope, I can't > This branch has no conflicts with the base branch Only those with [write access](https://docs.github.com/articles/what-are-the-different-access-permissions) to this repository can merge pull requests. https://github.com/llvm/llvm-project/pull/68710

[clang] [clang][NFC] Regroup declarations in `Sema` (PR #82217)

2024-02-21 Thread Guillot Tony via cfe-commits
to268 wrote: FYI: There is currently 26 PRs that impacts `Sema.h`, bellow is the bash one liner with GitHub CLI to count the numbers of impacted PRs and another one to list links to impacted PRs. - Count all impacted PRs: ```bash gh pr list --json files --jq '.[] | {paths: [.files[].path | sel

[clang] [clang][NFC] Regroup declarations in `Sema` (PR #82217)

2024-02-21 Thread Guillot Tony via cfe-commits
to268 wrote: That's because you are filtering only opened PRs, not including drafts PRs. https://github.com/llvm/llvm-project/pull/82217 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-06-29 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/79845 >From 44d103f75aef4227262b823fd5168c081307ce23 Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Mon, 29 Jan 2024 15:14:32 +0100 Subject: [PATCH 1/4] Implementation base of N3006 Underspecified object declarations

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-06-29 Thread Guillot Tony via cfe-commits
to268 wrote: I've rebased the branch from main https://github.com/llvm/llvm-project/pull/79845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-07-07 Thread Guillot Tony via cfe-commits
@@ -0,0 +1,27 @@ +// RUN: %clang_cc1 -std=c2x -verify %s + +/* WG14 N3006: Full + * Underspecified object declarations + */ + +struct S1 { int x, y; };// expected-note {{previous definition is here}} +union U1 { int a; double b; }; // expected-note {{previous definition

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-07-07 Thread Guillot Tony via cfe-commits
@@ -7813,6 +7813,32 @@ Sema::BuildCompoundLiteralExpr(SourceLocation LParenLoc, TypeSourceInfo *TInfo, diag::err_variable_object_no_init)) return ExprError(); } + } else if (LangOpts.C23 && to268 wrote:

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-07-07 Thread Guillot Tony via cfe-commits
https://github.com/to268 edited https://github.com/llvm/llvm-project/pull/79845 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-07-07 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/79845 >From 5cd7ca393c35ea31f76ceae522d9cd480f9381f1 Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Mon, 29 Jan 2024 15:14:32 +0100 Subject: [PATCH 1/5] Implementation base of N3006 Underspecified object declarations

[clang] Match against all plugins when parsing microsoft attributes (PR #86426)

2024-04-05 Thread Guillot Tony via cfe-commits
to268 wrote: CC: @erichkeane, since it's a PR about attributes. I can't add the `extension::microsoft`label to the PR myself. https://github.com/llvm/llvm-project/pull/86426 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2024-07-24 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/79845 >From 5eca1b0b822e839b5834ea87f329819368caf563 Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Wed, 24 Jul 2024 13:11:48 +0200 Subject: [PATCH] Rebased N3006 feature after LLVM 19 release branch creation --- cla

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2025-02-07 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/79845 >From 7132c5d853fafb3e956c89b190313bf25ef1c773 Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Thu, 30 Jan 2025 01:12:13 +0100 Subject: [PATCH] N3006 base --- clang/docs/ReleaseNotes.rst | 2 +

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2025-01-17 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/79845 >From 16328b43eac2ddd6fe999eac68e8ae07d040f54a Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Mon, 9 Dec 2024 01:46:40 +0100 Subject: [PATCH] N3006 base --- clang/docs/ReleaseNotes.rst | 3 +-

[clang] [clang][C23] N3006 Underspecified object declarations (PR #79845)

2025-01-29 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/79845 >From 6b4ac6b0dc8bafa19521d47856d7dee341439fbc Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Thu, 30 Jan 2025 01:12:13 +0100 Subject: [PATCH] N3006 base --- clang/docs/ReleaseNotes.rst | 2 +