Leopold Toetsch <[EMAIL PROTECTED]> writes:

> Juergen Boemmels wrote:
> 
> > Leopold Toetsch <[EMAIL PROTECTED]> writes:
> > [...]
> 
> >
> 
> >>PIO_eprintf
> >>PIO_printf
> >>
> >>for printing to stderr/stdout during 1st interpreter construction &
> >>destruction if something goes wrong. In all other cases we have an
> >>valid interpreter (or an parent interpreter if any).
> >>
> > This means all the Parrot_warn(NULL,...) in
> > config/gen/platform/ansi.c
> 
> > are invalid. Ok remove them
> 
> Not exactly :-)
> platform/ansi and probably miniparrot using such function should IMHO
> and probably just PANIC() or throw an exception, which might then do
> panic.

Most of them don't need to panic, they do the right thing:
Parrot_floatval_time: returns a float representing the time but only with
    seconds resolution. But the resolution is always platform
    dependend.
Parrot_sleep: No need to panic here. Maybe busy waiting. Yes this is ugly
    but portable.
Parrot_dlopen: It cant open a dynamic library so it fails -> returns NULL.
    The caller must already check this as there also might be a
    "File not found"
Parrot_dlsym:
Parrot_close: These two should never be called as there never will be
    a valid handle. These may PANIC() or just return error.

> Its very likely a sever error, when unsupported platform functions are
> called during parrot bootstrap, which is that what I presume
> miniparrot/ansi.c will finally be doing.

They should not fail more drastic than necessary. Only fail if its not
possible to report an error to the upper level.

bye
boe
-- 
Juergen Boemmels                        [EMAIL PROTECTED]
Fachbereich Physik                      Tel: ++49-(0)631-205-2817
Universitaet Kaiserslautern             Fax: ++49-(0)631-205-3906
PGP Key fingerprint = 9F 56 54 3D 45 C1 32 6F  23 F6 C7 2F 85 93 DD 47

Reply via email to