> After rtems initialization a thread is created which calls the gnat_main
> function and then runs the rts and the task.
> What I see so far is that after the hello_tasks delays itself the
> Complete_Master procedure (s-tassta.adb:444) is called, but with
> Self_Id set to the Id of the hello_task.
> The call finishes and the runtime is cleaned before the task if able to wake
> up.
> If I debug the same program on my desktop pc  Complete_Master is called with
> the Id of the main task. It then notices that it has to wait for its  
> dependent
> task (hello_task), sleeps until it finishes and  only then terminates the
> runtime.
> 
> I would like to know from where Complete_Master is called to break there and
> find out why it uses the wrong id.

Why don't you simply put a breakpoint on Complete_Master?

You can also build hello.adb with the -gnatD switch to debug at the code
expansion level where you'll see the call to Complete_Master.

Arno

Reply via email to