Source: gnat-4.9 Severity: normal Dear Maintainer,
*** Reporter, please consider answering these questions, where appropriate *** * What led up to the situation? Use of the -D option to gnatmake, to locate (most) intermediate files in a separate directory. This worked up to a certain point, then failed despite reducing testcase to 3 small files. * What exactly did you do (or not do) that was effective (or ineffective)? Use the -D option to locate .o,.ali files in a subdirectory Eliminating the -D option allowed a successful build (with a cluttered directory) * What was the outcome of this action? brian@Gannet:~/Ada/bug$ mkdir objs brian@Gannet:~/Ada/bug$ gnatmake -D objs mai_read_config.adb gcc-4.8 -c -o /home/brian/Ada/bug/objs/mai_read_config.o mai_read_config.adb gcc-4.8 -c -o /home/brian/Ada/bug/objs/mai_driver.o mai_driver.adb gnatbind -aO/home/brian/Ada/bug/objs -x /home/brian/Ada/bug/objs/mai_read_config.ali gnatlink /home/brian/Ada/bug/objs/mai_read_config.ali Exception name: CONSTRAINT_ERROR Message: gnatlink.adb:2094 range check failed gnatlink: INTERNAL ERROR. Please report gnatmake: *** link failed. Seen with Debian gnat-4.8 (gcc4.8.2) - constraint error at gnatlink.adb line 2094 Seen with Debian gnat-4.9 - constraint error at at gnatlink.adb line 2195 NOT seen with home-built upstream gnat-4.9 snapshot (gcc-4.9-20140112) * What outcome did you expect instead? brian@Gannet:~/Ada/bug$ export PATH=/opt/gcc4_9/bin:$PATH brian@Gannet:~/Ada/bug$ gnatmake -D objs mai_read_config.adb gcc -c -o /home/brian/Ada/bug/objs/mai_read_config.o mai_read_config.adb gcc -c -o /home/brian/Ada/bug/objs/mai_driver.o mai_driver.adb gnatbind -aO/home/brian/Ada/bug/objs -x /home/brian/Ada/bug/objs/mai_read_config.ali gnatlink /home/brian/Ada/bug/objs/mai_read_config.ali *** End of the template - remove these template lines *** -- System Information: Debian Release: jessie/sid APT prefers testing-updates APT policy: (500, 'testing-updates'), (500, 'testing') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.14-1-amd64 (SMP w/4 CPU cores) Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
with Mai_Driver; procedure MAI_Read_Config is begin MAI_Driver.Open(Addr => 0); MAI_Driver.Close; end MAI_Read_Config;
package MAI_driver is procedure Open(Addr : natural); procedure Close; end MAI_driver;
package body MAI_driver is procedure Open(Addr : natural) is begin null; end Open; procedure Close is begin null; end Close; end MAI_driver;