October 15, 2019 newCTFE Status October 2019 | ||||
---|---|---|---|---|
| ||||
Hello Boys and Girls, I am proud to announce that the following code now works with newCTFE. class IntExp : Exception { this(int x) { super(""); this.value = x; } int value; } void fthrow(int x) { throw new IntExp(x); } int fn(int x) { try { fthrow(x); } catch (IntExp e) { return e.value; } assert(0); } static assert (fn(22) == 22); This means simple exception handling can now be done. However calling destructors and other cleanup, is not yet implemented. Nor will this work properly if the exception is thrown more than one level below the try catch block. However having this feature work in a simple form is already a huge step forward. Feel free to ask me anything related to newCTFE, or exceptions. If you have nasty nested ctfe exception testcases please share them. Cheers, Stefan |
October 15, 2019 Re: newCTFE Status October 2019 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Stefan Koch | On Tuesday, 15 October 2019 at 15:28:48 UTC, Stefan Koch wrote: > Hello Boys and Girls, > > I am proud to announce that the following code now works with newCTFE. > ... > If you have nasty nested ctfe exception testcases please share them. > > Cheers, > > Stefan Hello, It's nice to know that you keep moving forward! Regards! |
Copyright © 1999-2021 by the D Language Foundation