| Summary: | Exception thrown by the delegate function is never caught | ||
|---|---|---|---|
| Product: | z_Archived | Reporter: | Jing Qian <jqian> |
| Component: | EDT | Assignee: | Project Inbox <edt.javagen-inbox> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | major | ||
| Priority: | P3 | CC: | carrollk, jeffdouglas, wxwu |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
| Whiteboard: | |||
fixed This high severity defect was fixed several weeks ago, so I am closing. |
try this in RBD and EDT, you will see different results RBD is correct, the exception thrown by delegate function is being caught EDT is wrong, the exception thrown by delegate can not be caught by user. package c; Record JingException type Exception end delegate runTest() end // basic program // program SimpleException type BasicProgram {} function main() d runTest = testFunction; try d(); onException(exp JingException) sysLib.writeStdOut ("JingException caught, reason: " + exp.message); onException(exp AnyException) sysLib.writeStdOUt ("JingException NOT cought, that's wrong!!"); end end function testFunction() throw new JingException{message = "I failed"}; end end