Final by default?

Walter Bright newshound2 at digitalmars.com
Fri Mar 14 10:52:39 PDT 2014


On 3/14/2014 7:34 AM, Mike Parker wrote:
> For me, the issue is that this has to go in *every* module that needs
> MeaningfulVersion and OtherMeaningfulVersion to be defined. That's a lot more
> points to track than a single line of ORed versions in each module.
>
> When I do need something like this, I just define some manifest constants in a
> config module, import that everywhere, and use static if. But that feels very
> much like the workaround it is. I would much prefer to have boolean versions.


I know this seems to make perfect sense, and that is how things are done in the 
C world. I've spent decades doing it that way. I grew to hate it, but had a hard 
time thinking of a better way, because I was so used to doing it that way.

There's a better way, though. In my posts, I listed a couple ways to avoid 
having to do this in every module.

BTW, the static if approach was used in druntime, and caused a bug that took me 
hours to track down. I PR'd that out.


 > The bottom line is that I'm doing exactly what Walter apparently doesn't want me
 > to do anyway, just with the added annoyance of importing an extra module to get
 > it done.

Your code is your business, but while ah gots bref in mah body, that won't be in 
druntime/phobos :-)


More information about the Digitalmars-d mailing list