This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug ada/52033] New: Compiler assertion, apparently due to incomplete type


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52033

             Bug #: 52033
           Summary: Compiler assertion, apparently due to incomplete type
    Classification: Unclassified
           Product: gcc
           Version: 4.5.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ada
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: garynot@comcast.net


Created attachment 26495
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26495
gnatchop file containing the source

This code causes a compiler assertion in GNAT-GCC 4.6.2.

The same code presented to GNAT-GPL 4.5.3 reports:

    /home/geb/gnat/try/pl-io.ads:175:14: error: premature usage of
               incomplete type "Quick_T" defined at line 175

Which isn't really a correct diagnostic.  The type Quick_T isn't what is
incomplete.  Line 175 is where Quick_T would be completed.  Rather the
problem is the Stream field of Quick_T at line 177.  It has an incomplete
type named Stream_T.

Except for the main program (which is a single Text_Io.Put_Line call) all of
the code is a series of Ada specification units.

    Gary

------------------------------------------------------------------------------
lapwarmer-256: which gcc
/usr/local/gcc-4.6.2/bin/gcc
------------------------------------------------------------------------------
lapwarmer-257: which gnat
/usr/local/gcc-4.6.2/bin/gnat
------------------------------------------------------------------------------
lapwarmer-258: gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/gcc-4.6.2/libexec/gcc/i686-pc-linux-gnu/4.6.2/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: ../gcc-4.6.2/configure --enable-languages=c,c++,ada
--prefix=/usr/local/gcc-4.6.2 --with-local-prefix=/usr/local/gcc-4.6.2
--with-stage1-ldflags=-L/usr/local/gcc-4.6.2/lib
--with-boot-ldflags=-L/usr/local/gcc-4.6.2/lib
--with-cloog=/usr/local/gcc-4.6.2 --with-ppl=/usr/local/gcc-4.6.2
Thread model: posix
gcc version 4.6.2 (GCC) 
------------------------------------------------------------------------------
lapwarmer-259: gnat make -P simple.gpr pb_code_main.adb 
gcc -c -gnata -gnatE -fstack-check -gnatef -gnatf -gnatm50 -gnatn -gnato -gnatU
-gnatwa -gnatwe -gnatwi -gnatwj -gnatwK -gnatwl -Wuninitialized -gnatVa
-pass-exit-codes -O -g -I- -gnatA /home/geb/gnat/try/pb_code_main.adb
+===========================GNAT BUG DETECTED==============================+
| 4.6.2 (i686-pc-linux-gnu) Assert_Failure sem_ch3.adb:13569               |
| Error detected at pl-io.ads:510:9                                        |
| Please submit a bug report; see http://gcc.gnu.org/bugs.html.            |
| 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 gcc or gnatmake command that you entered.              |
| Also include sources listed below in gnatchop format                     |
| (concatenated together with no headers between files).                   |
+==========================================================================+

Please include these source files with error report
Note that list may not be accurate in some cases,
so please double check that the problem can still
be reproduced with the set of files listed.
Consider also -gnatd.n switch (see debug.adb).

/home/geb/gnat/try/pb_code_main.adb
/home/geb/gnat/try/GNAT-TEMP-000001.TMP
/home/geb/gnat/try/GNAT-TEMP-000002.TMP
/home/geb/gnat/try/pl.ads
/home/geb/gnat/try/pl-container.ads
/home/geb/gnat/try/pl-convert.ads
/home/geb/gnat/try/pl-types.ads
/home/geb/gnat/try/pl-internal.ads
/home/geb/gnat/try/pl-internal-configuration.ads
/home/geb/gnat/try/pl-dp.ads
/home/geb/gnat/try/pl-container-depr.ads
/home/geb/gnat/try/pl-container-depr-ary.ads
/home/geb/gnat/try/pl-container-depr-interfaces.ads
/home/geb/gnat/try/pl-container-depr-interfaces-abstract_iterators.ads
/home/geb/gnat/try/pl-container-depr-interfaces-item_type.ads
/home/geb/gnat/try/pl-container-depr-ary-interfaces.ads
/home/geb/gnat/try/pl-container-depr-interfaces-item_type-iterators.ads
/home/geb/gnat/try/pl-container-depr-hashfixed.ads
/home/geb/gnat/try/pl-container-depr-hashfixed-ek_items.ads
/home/geb/gnat/try/pl-container-depr-hashfixed-ek_items-interfaces.ads
/home/geb/gnat/try/pl-container-depr-hashfixed-items.ads
/home/geb/gnat/try/pl-container-depr-hashfixed-items-interfaces.ads
/home/geb/gnat/try/pl-container-depr-hashfixed-sk_items.ads
/home/geb/gnat/try/pl-container-depr-interfaces-abstract_iterators_sk.ads
/home/geb/gnat/try/pl-container-depr-hashfixed-sk_items-interfaces.ads
/home/geb/gnat/try/pl-container-depr-hashvaria.ads
/home/geb/gnat/try/pl-container-depr-hashvaria-ek_items.ads
/home/geb/gnat/try/pl-container-depr-hashvaria-ek_items-interfaces.ads
/home/geb/gnat/try/pl-container-depr-hashvaria-items.ads
/home/geb/gnat/try/pl-container-depr-hashvaria-items-interfaces.ads
/home/geb/gnat/try/pl-container-depr-hashvaria-sk_items.ads
/home/geb/gnat/try/pl-container-depr-hashvaria-sk_items-interfaces.ads
/home/geb/gnat/try/pl-container-depr-interfaces-abstract_iterators-over_container.ads
/home/geb/gnat/try/pl-container-depr-interfaces-abstract_iterators_sk-over_container.ads
/home/geb/gnat/try/pl-container-depr-interfaces-dp_container_t.ads
/home/geb/gnat/try/pl-container-depr-interfaces-embedded_key_type.ads
/home/geb/gnat/try/pl-container-depr-interfaces-forall.ads
/home/geb/gnat/try/pl-container-depr-interfaces-hash_item_type.ads
/home/geb/gnat/try/pl-container-depr-interfaces-hash_key_type.ads
/home/geb/gnat/try/pl-container-depr-interfaces-separate_key_type.ads
/home/geb/gnat/try/pl-container-depr-seq.ads
/home/geb/gnat/try/pl-container-depr-seq-dllist.ads
/home/geb/gnat/try/pl-container-depr-seq-dllist-interfaces.ads
/home/geb/gnat/try/pl-container-depr-seq-fixary.ads
/home/geb/gnat/try/pl-container-depr-seq-fixary-interfaces.ads
/home/geb/gnat/try/pl-container-depr-seq-incary.ads
/home/geb/gnat/try/pl-container-depr-seq-incary-interfaces.ads
/home/geb/gnat/try/pl-container-depr-seq-sllist.ads
/home/geb/gnat/try/pl-container-depr-seq-sllist-interfaces.ads
/home/geb/gnat/try/pl-container-depr-seq-varary.ads
/home/geb/gnat/try/pl-container-depr-seq-varary-interfaces.ads
/home/geb/gnat/try/pl-container-depr-tree.ads
/home/geb/gnat/try/pl-container-depr-tree-ek_items.ads
/home/geb/gnat/try/pl-container-depr-tree-ek_items-interfaces.ads
/home/geb/gnat/try/pl-container-depr-tree-items.ads
/home/geb/gnat/try/pl-container-depr-tree-items-interfaces.ads
/home/geb/gnat/try/pl-container-depr-tree-sk_items.ads
/home/geb/gnat/try/pl-container-depr-tree-sk_items-interfaces.ads
/home/geb/gnat/try/pl-db.ads
/home/geb/gnat/try/pl-io.ads
/home/geb/gnat/try/pl-pointer.ads
/home/geb/gnat/try/pl-pointer-char8.ads
/home/geb/gnat/try/pl-pointer-generic_pointer.ads
/home/geb/gnat/try/pl-pointer-uint8.ads
/home/geb/gnat/try/pl-storage.ads
/home/geb/gnat/try/pl-heap.ads
/home/geb/gnat/try/pl-heap-generic_ada_heap.ads
/home/geb/gnat/try/pl-heap-chunk.ads
/home/geb/gnat/try/pl-heap-generic_caching_splitting.ads
/home/geb/gnat/try/pl-heap-generic_alignment.ads
/home/geb/gnat/try/pl-heap-generic_mixin_caching.ads
/home/geb/gnat/try/pl-heap-cache.ads
/home/geb/gnat/try/pl-internal-heap.ads
/home/geb/gnat/try/pl-heap-generic_mixin_splitting.ads
/home/geb/gnat/try/pl-heap-generic_paranoia_helper.ads
/home/geb/gnat/try/pl-heap-malloc_raw.ads
/home/geb/gnat/try/pl-heap-malloc_alignment.ads
/home/geb/gnat/try/pl-heap-generic_storage_pool.ads
/home/geb/gnat/try/pl-string.ads
/home/geb/gnat/try/pl-unix.ads
/home/geb/gnat/try/pl-db-messages.ads
/home/geb/gnat/try/pl-heap-chunk_set.ads
/home/geb/gnat/try/pl-heap-generic_c_cpp_heap.ads
/home/geb/gnat/try/pl-heap-generic_caching.ads
/home/geb/gnat/try/pl-heap-generic_splitting.ads
/home/geb/gnat/try/pl-heap-mmap.ads
/home/geb/gnat/try/pl-heap-mmap_alignment.ads
/home/geb/gnat/try/pl-heap-mmap_raw.ads
/home/geb/gnat/try/pl-io-file.ads
/home/geb/gnat/try/pl-io-string.ads
/home/geb/gnat/try/pl-types-dp_subr.ads
/home/geb/gnat/try/pl-unix-strings.ads

compilation abandoned
gnatmake: "/home/geb/gnat/try/pb_code_main.adb" compilation error
lapwarmer-260:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]