January 23, 2011
druntime commit, revision 519


user: jmdavis

msg:
Added Throwable and default arguments to most Exception and Error constructors.

For whatever reason, a number of Exception and Error types didn't take a Throwable for chaining exceptions, and most of them didn't have default arguments for file and line number (some didn't even take file and line number in the first place). So, most of the Exception and Error types in core.exception and object_.d/object.di now have take an optional Throwable argument and optional file and line number arguments which default to __FILE__ and __LINE__. In at least one case (AssertError), I couldn't make it take default arguments for file and line number without breaking code, so it doesn't. But if I could do it and maintain backwards comptability, I did. I also added unit tests to verify that the various constructors work properly.

http://www.dsource.org/projects/druntime/changeset/519

paths changed:
U   trunk/import/object.di
U   trunk/src/core/exception.d
U   trunk/src/object_.d