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

            Bug ID: 115292
           Summary: [15 Regression] i686-darwin17 bootstrap fails for Ada
                    (between r15-856 and r15-889)
           Product: gcc
           Version: 9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ada
          Assignee: unassigned at gcc dot gnu.org
          Reporter: iains at gcc dot gnu.org
                CC: dkm at gcc dot gnu.org
  Target Milestone: ---
              Host: i686-darwin17
            Target: i686-darwin17
             Build: i686-darwin17

The fail occurs in stage #3 building libs.

What is special about this configuration is that we are building i686-darwin17
on an x86_64-darwin17 box (I would expect this to be analogous to building
i686-linux on a x86_64-linux box which has the 32b runtimes installed (but I
did not try to relicate this there).  So far this is the only version of Darwin
(which supports this mode) on which I've tried this (it is a perfectly valid
configuration and is expected to work).

On a 32b host, the same revision (r15-889) built OK although there are massive
[10s] (unanalysed) Acats regressions on earlier Darwin platforms (so I think
things have become a bit unstable recently).

Unfortunately, I don't have time to analyze further right now - but this at
least brackets the change to a smallish commit range.

=======

Depending on the jN we get different sources failing:

+===========================GNAT BUG DETECTED==============================+
| 15.0.0 20240529 (experimental) [master revision r15-889-g241a6cc88d86]
(i686-apple-darwin17) |
| Assert_Failure sem_ch12.adb:17782                                        |
| Error detected at a-string.ads:27:66                                     |
| Compiling g-socpol.adb                                                   |
| Please submit a bug report; see https://gcc.gnu.org/bugs/ .              |
| Use a subject line meaningful to you and us to track the bug.            |
| Include the entire contents of this bug box in the report.               |
| Include the exact command that you entered.                              |
| Also include sources listed below.                                       |
+==========================================================================+

The assert is in "function Save_And_Reset"

                  if Indexed_Assoc.Act_Id'Valid then
                     Result_Pair.Actual_Id := Indexed_Assoc.Act_Id;
                  else
                     pragma Assert (Index = Result'Last);
                     Result_Pair.Actual_Id := Empty;
                  end if;

Reply via email to