This is Debian bug #408703; see the attached files that reproduce the problem. The command line is
gnatmake integer_indexed_io-debug.ads After successfully compiling a couple of files, gnat1 then goes into an infinite loop while parsing integer_indexed_io-debug.ads. The backtrace I got when running "gnat1 integer_indexed_io-debug.ads" under gdb and hitting Ctrl+C says: #1 0x00000000005b0cc0 in sem_ch8.end_use_clauses () #2 0x00000000005b0e4d in sem_ch8.pop_scope () #3 0x0000000000560b4a in sem_ch10.remove_parents () #4 0x0000000000560c19 in sem_ch10.remove_context () #5 0x00000000005664f2 in sem_ch10.analyze_compilation_unit () #6 0x000000000054b4ac in sem.analyze () #7 0x000000000054b829 in sem.semantics.do_analyze () #8 0x000000000054ba66 in sem.semantics () #9 0x00000000004f1a30 in frontend () #10 0x000000000062bac6 in gnat1drv () #11 0x0000000000412dad in gnat_parse_file () #12 0x0000000000870138 in toplev_main () #13 0x00002ade5132c4ca in __libc_start_main () from /lib/libc.so.6 #14 0x0000000000402f0a in _start () at ../sysdeps/x86_64/elf/start.S:113 If you stop gnat1 at various times, the topmost frame (#0) varies, but after executing the statements until you return to sem_ch8.end_use_clauses and type n, the infinite loop resumes. Memory usage remains constant in the infinite loop. -- Ludovic Brenta. -- Summary: Infinite loop in sem_ch8.end_use_clauses Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ludovic at ludovic-brenta dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30618