The Constraint_Error is triggered when parsing the following node in
gprbuild's compilers.xml:

  <compiler_description>
    <name>GCC-28</name>
    <executable>gcc</executable>
    <version>
      <external>gcc -v</external>
      <grep regexp="^gcc \S+ (\S+)" group="1"></grep>
      <must_match>2\.8\.</must_match>
    </version>
    <languages>C</languages>
    <target>
      <external>gcc -dumpmachine</external>
      <grep regexp="[^\r\n]+"></grep>
    </target>
  </compiler_description>

which is the first node where <executable> lacks a "prefix="1""
attribute.  There are other <executable> nodes lacking the prefix
attribute.

On amd64, gprconfig raises the same constraint_error but handles it and
does not report anything.  Therefore this bug is a compiler bug similar
but not identical to #666106 (which is reported to occur only in the
presence of tasks).

I have found more instances of this bug in other places, which I have
corrected on org.debian.gprbuild.  But now I've hit another wall, an
exception with this backtrace:

#0  0x0815ce93 in __gnat_backtrace ()
#1  0x081529c0 in system.traceback.call_chain ()
#2  0x08108bbb in ada.exceptions.call_chain ()
#3  0x08108fab in ada.exceptions.complete_occurrence ()
#4  0x08108fc8 in ada.exceptions.complete_and_propagate_occurrence ()
#5  0x08109018 in __gnat_raise_exception ()
#6  0x08132e19 in gnat.expect.expect ()
#7  0x08132f38 in gnat.expect.expect ()
#8  0x08132fc0 in gnat.expect.expect ()
#9  0x0813489e in gnat.expect.get_command_output ()
#10 0x080e5f55 in gprconfig.knowledge.get_external_value (attribute=..., 
value=..., comp=..., split_into_words=false, merge_same_dirs=false, 
processed_value=...)
    at /home/lbrenta/gprbuild-2014/src/gprconfig-knowledge.adb:1774
#11 0x080e9e7e in gprconfig.knowledge.foreach_language_runtime (iterator=..., 
base=..., name=300000258, executable=300000342, directory=..., 
prefix=300000000, from_extra_dir=false,
    on_target=24, descr=..., path_order=2, continue=true) at 
/home/lbrenta/gprbuild-2014/src/gprconfig-knowledge.adb:2094
#12 0x080efa4c in gprconfig.knowledge.foreach_compiler_in_dir (iterator=..., 
base=..., directory=..., from_extra_dir=false, on_target=24, path_order=2, 
continue=true)
    at /home/lbrenta/gprbuild-2014/src/gprconfig-knowledge.adb:2592
#13 0x080f11b3 in gprconfig.knowledge.foreach_compiler_in_path (iterator=..., 
base=..., on_target=24, extra_dirs=...) at 
/home/lbrenta/gprbuild-2014/src/gprconfig-knowledge.adb:2805
#14 0x0807ada1 in gprconfig.main () at 
/home/lbrenta/gprbuild-2014/src/gprconfig-main.adb:490

and the command to run is "gcc -dumpversion".

Having reached the end of my available time for today, I'll leave it at
that for now.

-- 
Ludovic Brenta.


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to