Jos Visser <[EMAIL PROTECTED]> wrote:
> Hi,

> The long story short:

> * EXCEPTION_LEX_NOT_FOUND is not picked up correctly from the include file

Its a macro, so you have to put a dot in front.

> * The return continuation of the exception does not save registers,
>   since $P1 (mapped to P16 by imcc) is messed up by $P2 (also mapped to
>   P16).

imcc/docs/calling_conventions.pod:
,--[ cite ]----------------
| Exception handlers
|        TBD.
`--------------------------

The register allocator does currently know nothing about exceptions and
returning from an exception doesn't preserve registers (continuations
don't do that), so that registers are messed up.

I don't know yet, what to do about perserving registers and how to flag
exception handlers (specially these that might return).

Proposals welcome.

> * I would really like the name of the missing lexical in a field
>   "_lexical" of the exception hash.

That's IMHO (or for now) too high level for Parrot. Its also not decided
if Parrot will classify Exceptions or if its up to the HLL.

> What am I missing?

Basically: ».« ;-)

Exceptions are in a very early and experimental stage, that's it.

leo

Reply via email to