> From: "Markus Mauhart" <[EMAIL PROTECTED]>
> Date: Tue, 17 Jan 2006 22:57:59 +0100
>
> Next I reproduce the "hanging situation" ("-j noNumber" "mode 1"), but now
> let it "hang" inside the MSVS IDE debugger - turns out that it loops the
> "while (goals != 0)", remake.c, update_goal_chain(), line 112, forever.
You mean inside the loop that this while statement on line 112 begins?
Or in that line 112 only?
> To verify this outside the debugger I insert ...
> printf ("\r%u " ,++printfCounter);
> ... rebuild and run the release version again w/o debugger: as usually it
> "hangs" before reaching any compilation, there are about 170 batch files,
> I then stop it using CTRL-C once the printfCounter reached ~200K.
If it loops inside the loop, the next step is to see why the loop
never ends. Could you do that?
> Repeat it, but now inside the debugger:
> Here I catch an exception in sub_proc.c, process_register(),
> proc_index is shown as allmost 33M ?! (btw, having 261 new batch files)
> (coming from process_easy() from start_job_command())
>
> 261 ? proc_index is allmost 33M ? !
>
> -->
>
> static sub_process *proc_array[256];
> static int proc_index = 0;
>
> proc_array[proc_index++] = (sub_process *) proc;
>
> ... looks like we just left the bounds of our static array :-)
What happens if you use -j 200 instead of just -j? Does it work
successfully then?
_______________________________________________
Make-w32 mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/make-w32