[Bug ada/82141] [8 Regression] raised RTSFIND.RE_NOT_AVAILABLE : rtsfind.adb:851 on darwin

simon at pushface dot org gcc-bugzilla@gcc.gnu.org
Thu Sep 14 12:58:00 GMT 2017


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

--- Comment #36 from simon at pushface dot org ---
(In reply to simon from comment #28)
> For the Darwin 15 build (+ patch to darwin.h from PR80556) was 
> configured with
> 
> --prefix=/Volumes/Miscellaneous/tmp/opt/gcc-8.0.0 
> --without-libiconv-prefix 
> --disable-libmudflap 
> --disable-libstdcxx-pch 
> --disable-libsanitizer 
> --disable-libcc1 
> --disable-libcilkrts 
> --disable-multilib 
> --disable-nls 
> --enable-languages=c,c++,ada 
> --build=x86_64-apple-darwin15
> 
> and built with make -k; these components all showed the RTSFIND 
> error:
> 
> g-exptty
> g-locfil
> s-gloloc
> g-socthi
> 
> I tried removing these from the build, to see whether the exception 
> problem showed up in simpler code, but s-gloloc is used indirectly 
> by rtsfind, so I stopped.

On second thoughts, rtsfind isn’t part of the RTS, so I eliminated the only
caller of s-globloc (s-shasto) and the build succeeded.

I then tried a tiny exception demonstrator,

with Ada.Exceptions;
with Ada.Text_IO; use Ada.Text_IO;
procedure Raiser is
   Ex : exception;
   procedure Do_It (J : Natural);
   procedure Do_It (J : Natural) is
   begin
      if J - 1 not in Natural then
         raise Ex with "underflow";
      end if;
      Do_It (J - 1);
   end Do_It;
begin
   begin
      Do_It (5);
   exception
      when E : others =>
         Put_Line (Ada.Exceptions.Exception_Information (E));
   end;
   Put_Line ("end of raiser");
end Raiser;

which worked fine with both static and dynamic binding, and with no command 
line options and with the options used to compile rtsfind (A -gnatwa 
-nostdinc -O2 -Wextra -Wall -gnatwa -g -gnatp -gnatg -gnata -mtune=core2 
-mmacosx-version-min=10.11.0 --RTS=/where/its/installed).

As an extra check, I linked with the options used to link the compiler 
gnat1 (-fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall 
-Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute 
-Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros 
-Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -static-libstdc++ 
-static-libgcc -Wl,-no_pie): still no problems.

I then tried g-exptty; it fails, as previously observed, no matter what
the compilation flags.


More information about the Gcc-bugs mailing list