comparison runtime/internal/dmain2.d @ 645:bb8d73e29324

Adjust dmain catch to print exception trace info.
author Christian Kamm <kamm incasoftware de>
date Sat, 04 Oct 2008 13:35:27 +0200
parents 68be7408a0db
children 51c4d1a64da6
comparison
equal deleted inserted replaced
644:49466efd4fba 645:bb8d73e29324
231 { 231 {
232 while (e) 232 while (e)
233 { 233 {
234 if (e.file) 234 if (e.file)
235 { 235 {
236 debug(PRINTF) printf("%.*s(%u): %.*s\n", e.file.length, e.file.ptr, e.line, e.msg.length, e.msg.ptr); 236 // fprintf(stderr, "%.*s(%u): %.*s\n", e.file, e.line, e.msg);
237 console (e.classinfo.name)("@")(e.file)("(")(e.line)("): ")(e.msg)("\n"); 237 console (e.classinfo.name)("@")(e.file)("(")(e.line)("): ")(e.toString)("\n");
238 } 238 }
239 else 239 else
240 { 240 {
241 // debug(PRINTF) printf("%.*s\n", e.toString()); 241 // fprintf(stderr, "%.*s\n", e.toString());
242 console (e.classinfo.name)(": ")(e.toString)("\n"); 242 console (e.classinfo.name)(": ")(e.toString)("\n");
243 } 243 }
244 if (e.info)
245 {
246 console ("----------------\n");
247 foreach (t; e.info)
248 console (t)("\n");
249 }
250 if (e.next)
251 console ("\n");
244 e = e.next; 252 e = e.next;
245 } 253 }
246 result = EXIT_FAILURE; 254 result = EXIT_FAILURE;
247 } 255 }
248 catch (Object o) 256 catch (Object o)