Thoughts about D
Ola Fosheim Grøstad
ola.fosheim.grostad+dlang at gmail.com
Thu Nov 30 10:39:07 UTC 2017
On Thursday, 30 November 2017 at 09:01:20 UTC, Jonathan M Davis
wrote:
> It's close enough. Instead of segfaulting when the member
> function is called, it'll segfault when it tries to access one
> of the member variables or non-final member functions inside
> the member function. So, there isn't any more need to add null
> checks for final member functions than there is for non-final
> member functions.
Err... wait. What if you have a conditional:
if(input == 0) { do something bad }
access field
Seems like you would be better off by injecting:
assert this not null
at the beginning of all final methods and remove the assertion if
all paths will lead to a field access before something bad can
happen.
Adding checks and then only remove them if they provably have no
consequence tend to be the safer approach.
More information about the Digitalmars-d
mailing list