public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug preprocessor/89971] [9/10/11/12 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
@ 2021-05-14  9:51 ` jakub at gcc dot gnu.org
  2021-06-01  8:13 ` rguenth at gcc dot gnu.org
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-05-14  9:51 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|8.5                         |9.4

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 8 branch is being closed.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10/11/12 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
  2021-05-14  9:51 ` [Bug preprocessor/89971] [9/10/11/12 Regression] ICE: unspellable token PADDING jakub at gcc dot gnu.org
@ 2021-06-01  8:13 ` rguenth at gcc dot gnu.org
  2021-12-28 23:27 ` pinskia at gcc dot gnu.org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-01  8:13 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|9.4                         |9.5

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 9.4 is being released, retargeting bugs to GCC 9.5.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10/11/12 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
  2021-05-14  9:51 ` [Bug preprocessor/89971] [9/10/11/12 Regression] ICE: unspellable token PADDING jakub at gcc dot gnu.org
  2021-06-01  8:13 ` rguenth at gcc dot gnu.org
@ 2021-12-28 23:27 ` pinskia at gcc dot gnu.org
  2021-12-29 14:47 ` jakub at gcc dot gnu.org
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-12-28 23:27 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Here is a testcase which clang accepts but GCC rejects:
int b;
int e;
#define a(...)  b /##__VA_OPT__(c) e
int y = a();

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10/11/12 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2021-12-28 23:27 ` pinskia at gcc dot gnu.org
@ 2021-12-29 14:47 ` jakub at gcc dot gnu.org
  2021-12-30 21:24 ` cvs-commit at gcc dot gnu.org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-12-29 14:47 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |jakub at gcc dot gnu.org

--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 52082
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52082&action=edit
gcc12-pr89971.patch

Untested fix.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10/11/12 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2021-12-29 14:47 ` jakub at gcc dot gnu.org
@ 2021-12-30 21:24 ` cvs-commit at gcc dot gnu.org
  2021-12-30 21:27 ` [Bug preprocessor/89971] [9/10/11 " jakub at gcc dot gnu.org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-12-30 21:24 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

--- Comment #8 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:5545d1edcbdb1701443f94dde7ec97c5ce3e1a6c

commit r12-6155-g5545d1edcbdb1701443f94dde7ec97c5ce3e1a6c
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Thu Dec 30 22:23:58 2021 +0100

    libcpp: Fix up ##__VA_OPT__ handling [PR89971]

    In the following testcase we incorrectly error about pasting / token
    with padding token (which is a result of __VA_OPT__); instead we should
    like e.g. for ##arg where arg is empty macro argument clear PASTE_LEFT
    flag of the previous token if __VA_OPT__ doesn't add any real tokens
    (which can happen either because the macro doesn't have any tokens
    passed to ... (i.e. __VA_ARGS__ expands to empty) or when __VA_OPT__
    doesn't have any tokens in between ()s).

    2021-12-30  Jakub Jelinek  <jakub@redhat.com>

            PR preprocessor/89971
    libcpp/
            * macro.c (replace_args): For ##__VA_OPT__, if __VA_OPT__ expands
            to no tokens at all, drop PASTE_LEFT flag from the previous token.
    gcc/testsuite/
            * c-c++-common/cpp/va-opt-9.c: New test.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10/11 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2021-12-30 21:24 ` cvs-commit at gcc dot gnu.org
@ 2021-12-30 21:27 ` jakub at gcc dot gnu.org
  2022-01-24  9:20 ` cvs-commit at gcc dot gnu.org
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-12-30 21:27 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[9/10/11/12 Regression]     |[9/10/11 Regression] ICE:
                   |ICE: unspellable token      |unspellable token PADDING
                   |PADDING                     |

--- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed on the trunk so far.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10/11 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2021-12-30 21:27 ` [Bug preprocessor/89971] [9/10/11 " jakub at gcc dot gnu.org
@ 2022-01-24  9:20 ` cvs-commit at gcc dot gnu.org
  2022-01-24  9:29 ` [Bug preprocessor/89971] [9/10 " jakub at gcc dot gnu.org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-01-24  9:20 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Jakub Jelinek
<jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:533695ca333bdfa056979520fbcde3752f14bb7c

commit r11-9496-g533695ca333bdfa056979520fbcde3752f14bb7c
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Thu Dec 30 22:23:58 2021 +0100

    libcpp: Fix up ##__VA_OPT__ handling [PR89971]

    In the following testcase we incorrectly error about pasting / token
    with padding token (which is a result of __VA_OPT__); instead we should
    like e.g. for ##arg where arg is empty macro argument clear PASTE_LEFT
    flag of the previous token if __VA_OPT__ doesn't add any real tokens
    (which can happen either because the macro doesn't have any tokens
    passed to ... (i.e. __VA_ARGS__ expands to empty) or when __VA_OPT__
    doesn't have any tokens in between ()s).

    2021-12-30  Jakub Jelinek  <jakub@redhat.com>

            PR preprocessor/89971
    libcpp/
            * macro.c (replace_args): For ##__VA_OPT__, if __VA_OPT__ expands
            to no tokens at all, drop PASTE_LEFT flag from the previous token.
    gcc/testsuite/
            * c-c++-common/cpp/va-opt-9.c: New test.

    (cherry picked from commit 5545d1edcbdb1701443f94dde7ec97c5ce3e1a6c)

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (6 preceding siblings ...)
  2022-01-24  9:20 ` cvs-commit at gcc dot gnu.org
@ 2022-01-24  9:29 ` jakub at gcc dot gnu.org
  2022-05-10  8:22 ` cvs-commit at gcc dot gnu.org
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-01-24  9:29 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[9/10/11 Regression] ICE:   |[9/10 Regression] ICE:
                   |unspellable token PADDING   |unspellable token PADDING

--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed for 11.3 too.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (7 preceding siblings ...)
  2022-01-24  9:29 ` [Bug preprocessor/89971] [9/10 " jakub at gcc dot gnu.org
@ 2022-05-10  8:22 ` cvs-commit at gcc dot gnu.org
  2022-05-11  6:23 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 12+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-05-10  8:22 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

--- Comment #12 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Jakub Jelinek
<jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:618a978d855eeff08bd046d27aaa4c09dfabf275

commit r10-10663-g618a978d855eeff08bd046d27aaa4c09dfabf275
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Thu Dec 30 22:23:58 2021 +0100

    libcpp: Fix up ##__VA_OPT__ handling [PR89971]

    In the following testcase we incorrectly error about pasting / token
    with padding token (which is a result of __VA_OPT__); instead we should
    like e.g. for ##arg where arg is empty macro argument clear PASTE_LEFT
    flag of the previous token if __VA_OPT__ doesn't add any real tokens
    (which can happen either because the macro doesn't have any tokens
    passed to ... (i.e. __VA_ARGS__ expands to empty) or when __VA_OPT__
    doesn't have any tokens in between ()s).

    2021-12-30  Jakub Jelinek  <jakub@redhat.com>

            PR preprocessor/89971
    libcpp/
            * macro.c (replace_args): For ##__VA_OPT__, if __VA_OPT__ expands
            to no tokens at all, drop PASTE_LEFT flag from the previous token.
    gcc/testsuite/
            * c-c++-common/cpp/va-opt-9.c: New test.

    (cherry picked from commit 5545d1edcbdb1701443f94dde7ec97c5ce3e1a6c)

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (8 preceding siblings ...)
  2022-05-10  8:22 ` cvs-commit at gcc dot gnu.org
@ 2022-05-11  6:23 ` cvs-commit at gcc dot gnu.org
  2022-05-11  6:33 ` jakub at gcc dot gnu.org
  2022-05-27  7:18 ` rguenth at gcc dot gnu.org
  11 siblings, 0 replies; 12+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-05-11  6:23 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

--- Comment #13 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by Jakub Jelinek
<jakub@gcc.gnu.org>:

https://gcc.gnu.org/g:86b98701bf927ea438354723932e623557c04e42

commit r9-10116-g86b98701bf927ea438354723932e623557c04e42
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Thu Dec 30 22:23:58 2021 +0100

    libcpp: Fix up ##__VA_OPT__ handling [PR89971]

    In the following testcase we incorrectly error about pasting / token
    with padding token (which is a result of __VA_OPT__); instead we should
    like e.g. for ##arg where arg is empty macro argument clear PASTE_LEFT
    flag of the previous token if __VA_OPT__ doesn't add any real tokens
    (which can happen either because the macro doesn't have any tokens
    passed to ... (i.e. __VA_ARGS__ expands to empty) or when __VA_OPT__
    doesn't have any tokens in between ()s).

    2021-12-30  Jakub Jelinek  <jakub@redhat.com>

            PR preprocessor/89971
    libcpp/
            * macro.c (replace_args): For ##__VA_OPT__, if __VA_OPT__ expands
            to no tokens at all, drop PASTE_LEFT flag from the previous token.
    gcc/testsuite/
            * c-c++-common/cpp/va-opt-9.c: New test.

    (cherry picked from commit 5545d1edcbdb1701443f94dde7ec97c5ce3e1a6c)

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (9 preceding siblings ...)
  2022-05-11  6:23 ` cvs-commit at gcc dot gnu.org
@ 2022-05-11  6:33 ` jakub at gcc dot gnu.org
  2022-05-27  7:18 ` rguenth at gcc dot gnu.org
  11 siblings, 0 replies; 12+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-05-11  6:33 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Fixed.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Bug preprocessor/89971] [9/10 Regression] ICE: unspellable token PADDING
       [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
                   ` (10 preceding siblings ...)
  2022-05-11  6:33 ` jakub at gcc dot gnu.org
@ 2022-05-27  7:18 ` rguenth at gcc dot gnu.org
  11 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-05-27  7:18 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89971

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |9.5.0
   Target Milestone|9.5                         |10.4

--- Comment #15 from Richard Biener <rguenth at gcc dot gnu.org> ---
Reverted on the GCC 9 branch due to PR105732.

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2022-05-27  7:18 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-89971-4@http.gcc.gnu.org/bugzilla/>
2021-05-14  9:51 ` [Bug preprocessor/89971] [9/10/11/12 Regression] ICE: unspellable token PADDING jakub at gcc dot gnu.org
2021-06-01  8:13 ` rguenth at gcc dot gnu.org
2021-12-28 23:27 ` pinskia at gcc dot gnu.org
2021-12-29 14:47 ` jakub at gcc dot gnu.org
2021-12-30 21:24 ` cvs-commit at gcc dot gnu.org
2021-12-30 21:27 ` [Bug preprocessor/89971] [9/10/11 " jakub at gcc dot gnu.org
2022-01-24  9:20 ` cvs-commit at gcc dot gnu.org
2022-01-24  9:29 ` [Bug preprocessor/89971] [9/10 " jakub at gcc dot gnu.org
2022-05-10  8:22 ` cvs-commit at gcc dot gnu.org
2022-05-11  6:23 ` cvs-commit at gcc dot gnu.org
2022-05-11  6:33 ` jakub at gcc dot gnu.org
2022-05-27  7:18 ` rguenth at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).