------- Comment #6 from ludovic at ludovic-brenta dot org 2009-11-18 22:09 ------- With a stock GCC 4.4.2 bootstrapped with the default options (-g -O2, I think) on alpha the symptoms are the same. Here is a backtrace:
(gdb) run -vP2 -Pp Starting program: /home/lbrenta/gcc-obj/gcc/gnatmake -vP2 -Pp GPR_PROJECT_PATH=".:/home/lbrenta/gcc/lib/gcc/alphaev68-unknown-linux-gnu/4.4.2/../../../gnat" Project_Path_Name_Of ("p", "/home/lbrenta/"); Trying /home/lbrenta//p.gpr Project_Name_From ("/home/lbrenta/p.gpr") ^C Program received signal SIGINT, Interrupt. 0x00000001200f8ed8 in prj.part.parse_single_project (in_tree=0x1205fc3e0, path_name=<value optimized out>, extended=<value optimized out>, from_extended=<value optimized out>, in_limited=false, packages_to_check=..., depth=0, current_dir=...) at /home/lbrenta/gcc-4.4.2/gcc/ada/prj-part.adb:1104 1104 Tree_Private_Part.Projects_Htable.Get_Next (In_Tree.Projects_HT); (gdb) bt #0 0x00000001200f8ed8 in prj.part.parse_single_project (in_tree=0x1205fc3e0, path_name=<value optimized out>, extended=<value optimized out>, from_extended=<value optimized out>, in_limited=false, packages_to_check=..., depth=0, current_dir=...) at /home/lbrenta/gcc-4.4.2/gcc/ada/prj-part.adb:1104 #1 0x00000001200fb020 in prj.part.parse (in_tree=0x1205fc3e0, project_file_name=<value optimized out>, always_errout_finalize=<value optimized out>, packages_to_check=<value optimized out>, store_comments=false, current_directory=...) at /home/lbrenta/gcc-4.4.2/gcc/ada/prj-part.adb:525 #2 0x00000001200f4878 in prj.pars.parse (in_tree=<value optimized out>, project_file_name=..., packages_to_check=..., when_no_sources=<value optimized out>, reset_tree=true) at /home/lbrenta/gcc-4.4.2/gcc/ada/prj-pars.adb:63 #3 0x00000001200858f8 in make.initialize () at /home/lbrenta/gcc-4.4.2/gcc/ada/make.adb:6993 #4 0x00000001200866cc in make.gnatmake () at /home/lbrenta/gcc-4.4.2/gcc/ada/make.adb:4708 #5 0x0000000120067708 in gnatmake () at /home/lbrenta/gcc-4.4.2/gcc/ada/gnatmake.adb:38 (gdb) p In_Tree.Projects_HT $4 = (access prj.tree.tree_private_part.projects_htable.tab.instance_data) 0x0 The infinite loop appears to be the loop starting at prj-pars.adb:1048 (frame #0 in the above backtrace). I'll attach a disassembly. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42073