Throwable, Exception, and Error
Steve Teale
steve.teale at britseyeview.com
Sun May 3 11:12:00 PDT 2009
Christopher Wright Wrote:
> Steve Teale wrote:
> > Christopher Wright Wrote:
> >
> >> Frank Benoit wrote:
> >>> Walter Bright schrieb:
> >>>> Steve Teale wrote:
> >>>>> If I want a catch-all catch, which should I be using.
> >>>>>
> >>>>> Out of habit I use Exception, but if I do that then I will miss some
> >>>>> things thrown from Phobos.
> >>>>>
> >>>>> Is it the intention that Throwable be used for this purpose?
> >>>>>
> >>>> Yes.
> >>> Why is it possible to throw an Object?
> >>> I think "throw" and "catch" should be restricted to Throwable and
> >>> derived types.
> >> Because Phobos did not contain Throwable until the advent of druntime.
> >> This was sufficiently recent that Walter has not yet modified the
> >> compiler accordingly, or, most likely, noticed or decided to do so.
> >
> > When that is done, and the object being thrown has been checked out, would it be a good idea for the compiler to automatically populate the file and line members of the Throwable?
>
> Hrm. You want to assign the file and line numbers where the exception is
> thrown, but not if you are rethrowing the exception.
>
> The runtime has something like _d_throw; if the signature included
> __FILE__ and __LINE__ for the throw expression, that should work.
OK, I did not think it through, but it would save a lot of typing grief;
... , __FILE__, __LINE__);
every time you wanted to be careful.
More information about the Digitalmars-d
mailing list