public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
@ 2022-09-24 17:08 unlvsur at live dot com
  2022-09-24 17:09 ` [Bug libgcc/107026] " unlvsur at live dot com
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: unlvsur at live dot com @ 2022-09-24 17:08 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 107026
           Summary: gcc_assert (in_shutdown || ob); build failure for
                    i586-msdosdjgpp target
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libgcc
          Assignee: unassigned at gcc dot gnu.org
          Reporter: unlvsur at live dot com
  Target Milestone: ---

../../../../../../gcc/libgcc/unwind-dw2-fde.c:287:15: error: 'in_shutdown'
undeclared (first use in this function)
  287 |   gcc_assert (in_shutdown || ob);
      |               ^~~~~~~~~~~
../../../../../../gcc/libgcc/../gcc/tsystem.h:122:36: note: in definition of
macro 'gcc_assert'
  122 | #define gcc_assert(EXPR) ((void)(!(EXPR) ? abort (), 0 : 0))
      |                                    ^~~~
../../../../../../gcc/libgcc/unwind-dw2-fde.c:287:15: note: each undeclared
identifier is reported only once for each function it appears in
  287 |   gcc_assert (in_shutdown || ob);
      |               ^~~~~~~~~~~
../../../../../../gcc/libgcc/../gcc/tsystem.h:122:36: note: in definition of
macro 'gcc_assert'
  122 | #define gcc_assert(EXPR) ((void)(!(EXPR) ? abort (), 0 : 0))
      |                                    ^~~~
make[2]: *** [../../../../../../gcc/libgcc/static-object.mk:17:
unwind-dw2-fde.o] Error 1
make[2]: *** Waiting for unfinished jobs....

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

* [Bug libgcc/107026] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
@ 2022-09-24 17:09 ` unlvsur at live dot com
  2022-09-24 19:07 ` [Bug libgcc/107026] [13 Regression] " pinskia at gcc dot gnu.org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: unlvsur at live dot com @ 2022-09-24 17:09 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from cqwrteur <unlvsur at live dot com> ---
Created attachment 53623
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53623&action=edit
config.log

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
  2022-09-24 17:09 ` [Bug libgcc/107026] " unlvsur at live dot com
@ 2022-09-24 19:07 ` pinskia at gcc dot gnu.org
  2022-09-25  6:06 ` unlvsur at live dot com
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-09-24 19:07 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2022-09-24
           Keywords|                            |build
            Summary|gcc_assert (in_shutdown ||  |[13 Regression] gcc_assert
                   |ob); build failure for      |(in_shutdown || ob); build
                   |i586-msdosdjgpp target      |failure for i586-msdosdjgpp
                   |                            |target
   Target Milestone|---                         |13.0
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Introduced by r13-2801-g94ccaf62c378c3.


The use in_shutdown is not inside the #ifdef ATOMIC_FDE_FAST_PATH
 case.

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
  2022-09-24 17:09 ` [Bug libgcc/107026] " unlvsur at live dot com
  2022-09-24 19:07 ` [Bug libgcc/107026] [13 Regression] " pinskia at gcc dot gnu.org
@ 2022-09-25  6:06 ` unlvsur at live dot com
  2022-09-25 23:21 ` tnfchris at gcc dot gnu.org
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: unlvsur at live dot com @ 2022-09-25  6:06 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from cqwrteur <unlvsur at live dot com> ---
(In reply to Andrew Pinski from comment #2)
> Introduced by r13-2801-g94ccaf62c378c3.
> 
> 
> The use in_shutdown is not inside the #ifdef ATOMIC_FDE_FAST_PATH
>  case.

this also happens with x86_64-w64-mingw32 target

btw it is weird why --disable-sjlj-exceptions is not working any more for
x86_64-w64-mingw32 target

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
                   ` (2 preceding siblings ...)
  2022-09-25  6:06 ` unlvsur at live dot com
@ 2022-09-25 23:21 ` tnfchris at gcc dot gnu.org
  2022-09-25 23:23 ` tnfchris at gcc dot gnu.org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: tnfchris at gcc dot gnu.org @ 2022-09-25 23:21 UTC (permalink / raw)
  To: gcc-bugs

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

Tamar Christina <tnfchris at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|i586-msdosdjgpp             |i586-msdosdjgpp,
                   |                            |aarch64-none-elf
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=107018
                 CC|                            |tnfchris at gcc dot gnu.org

--- Comment #4 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
Also broken on AArch64

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
                   ` (3 preceding siblings ...)
  2022-09-25 23:21 ` tnfchris at gcc dot gnu.org
@ 2022-09-25 23:23 ` tnfchris at gcc dot gnu.org
  2022-09-26  5:44 ` tneumann at users dot sourceforge.net
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: tnfchris at gcc dot gnu.org @ 2022-09-25 23:23 UTC (permalink / raw)
  To: gcc-bugs

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

Tamar Christina <tnfchris at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tneumann at users dot sourceforge.
                   |                            |net

--- Comment #5 from Tamar Christina <tnfchris at gcc dot gnu.org> ---
CC'ing author.

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
                   ` (4 preceding siblings ...)
  2022-09-25 23:23 ` tnfchris at gcc dot gnu.org
@ 2022-09-26  5:44 ` tneumann at users dot sourceforge.net
  2022-09-26  7:48 ` marxin at gcc dot gnu.org
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: tneumann at users dot sourceforge.net @ 2022-09-26  5:44 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Thomas Neumann <tneumann at users dot sourceforge.net> ---
I have a patch ready, I am waiting for approval:

https://gcc.gnu.org/pipermail/gcc-patches/2022-September/602130.html

When using the atomic fast path deregistering can fail during
program shutdown if the lookup structures are already destroyed.
The assert in __deregister_frame_info_bases takes that into
account. In the non-fast-path case however is not aware of
program shutdown, which caused a compiler error on such platforms.
We fix that by introducing a constant for in_shutdown in
non-fast-path builds.

libgcc/ChangeLog:
        * unwind-dw2-fde.c: Introduce a constant for in_shutdown
        for the non-fast-path case.
---
 libgcc/unwind-dw2-fde.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libgcc/unwind-dw2-fde.c b/libgcc/unwind-dw2-fde.c
index d237179f4ea..0bcd5061d76 100644
--- a/libgcc/unwind-dw2-fde.c
+++ b/libgcc/unwind-dw2-fde.c
@@ -67,6 +67,8 @@ static void
 init_object (struct object *ob);

 #else
+/* Without fast path frame deregistration must always succeed.  */
+static const int in_shutdown = 0;

 /* The unseen_objects list contains objects that have been registered
    but not yet categorized in any way.  The seen_objects list has had
-- 
2.34.1

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
                   ` (5 preceding siblings ...)
  2022-09-26  5:44 ` tneumann at users dot sourceforge.net
@ 2022-09-26  7:48 ` marxin at gcc dot gnu.org
  2022-09-26 13:57 ` tschwinge at gcc dot gnu.org
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-09-26  7:48 UTC (permalink / raw)
  To: gcc-bugs

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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dje at gcc dot gnu.org

--- Comment #7 from Martin Liška <marxin at gcc dot gnu.org> ---
*** Bug 107018 has been marked as a duplicate of this bug. ***

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
                   ` (6 preceding siblings ...)
  2022-09-26  7:48 ` marxin at gcc dot gnu.org
@ 2022-09-26 13:57 ` tschwinge at gcc dot gnu.org
  2022-09-26 14:00 ` tneumann at users dot sourceforge.net
  2022-09-27  9:17 ` tschwinge at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: tschwinge at gcc dot gnu.org @ 2022-09-26 13:57 UTC (permalink / raw)
  To: gcc-bugs

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

Thomas Schwinge <tschwinge at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tschwinge at gcc dot gnu.org
           See Also|                            |https://github.com/Rust-GCC
                   |                            |/gccrs/issues/1544
             Target|i586-msdosdjgpp,            |i586-msdosdjgpp,
                   |aarch64-none-elf            |aarch64-none-elf,
                   |                            |x86_64-apple-darwin20.6.0
           Assignee|unassigned at gcc dot gnu.org      |tneumann at gcc dot gnu.org
             Status|NEW                         |ASSIGNED

--- Comment #8 from Thomas Schwinge <tschwinge at gcc dot gnu.org> ---
Thomas Neumann, I suppose this is fixed via your commit
r13-2870-g386ebf75f4c0342b1f823f4e4aba07abda3288d1 "fix assert in
__deregister_frame_info_bases"?

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
                   ` (7 preceding siblings ...)
  2022-09-26 13:57 ` tschwinge at gcc dot gnu.org
@ 2022-09-26 14:00 ` tneumann at users dot sourceforge.net
  2022-09-27  9:17 ` tschwinge at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: tneumann at users dot sourceforge.net @ 2022-09-26 14:00 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from Thomas Neumann <tneumann at users dot sourceforge.net> ---
Yes, commit 386ebf75f4c0342b1f823f4e4aba07abda3288d1 fixes the assert.

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

* [Bug libgcc/107026] [13 Regression] gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target
  2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
                   ` (8 preceding siblings ...)
  2022-09-26 14:00 ` tneumann at users dot sourceforge.net
@ 2022-09-27  9:17 ` tschwinge at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: tschwinge at gcc dot gnu.org @ 2022-09-27  9:17 UTC (permalink / raw)
  To: gcc-bugs

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

Thomas Schwinge <tschwinge at gcc dot gnu.org> changed:

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

--- Comment #10 from Thomas Schwinge <tschwinge at gcc dot gnu.org> ---
Thomas Neumann, cool, I'm thus setting this RESOLVED, FIXED.  (Everyone, please
re-open if in fact there still remains any breakage.)

In the future, please feel free to set ASSIGNED to yourself any PRs that you're
working on, and later RESOLVED, FIXED, etc.

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

end of thread, other threads:[~2022-09-27  9:17 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-24 17:08 [Bug libgcc/107026] New: gcc_assert (in_shutdown || ob); build failure for i586-msdosdjgpp target unlvsur at live dot com
2022-09-24 17:09 ` [Bug libgcc/107026] " unlvsur at live dot com
2022-09-24 19:07 ` [Bug libgcc/107026] [13 Regression] " pinskia at gcc dot gnu.org
2022-09-25  6:06 ` unlvsur at live dot com
2022-09-25 23:21 ` tnfchris at gcc dot gnu.org
2022-09-25 23:23 ` tnfchris at gcc dot gnu.org
2022-09-26  5:44 ` tneumann at users dot sourceforge.net
2022-09-26  7:48 ` marxin at gcc dot gnu.org
2022-09-26 13:57 ` tschwinge at gcc dot gnu.org
2022-09-26 14:00 ` tneumann at users dot sourceforge.net
2022-09-27  9:17 ` tschwinge 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).