@ctfeonly

Joakim dlang at joakim.fea.st
Sat Dec 9 02:13:51 UTC 2017


On Thursday, 7 December 2017 at 01:21:11 UTC, Nicholas Wilson 
wrote:
> I'd like to add an attribute to indicate that the annotated 
> function is only available at compile time so that in cases 
> where the operation is invalid at runtime (strings and 
> concatenation on a GPU for instance) but the result is only 
> used at compile time (for a mixin) the compiler is free to not 
> codegen that function.
>
> I can add this to LDC pretty easily, but does anyone else have 
> a use for this (e.g. shrinking binary sizes for mixin heavy 
> codebases) and would benefit having this as a standard thing?

This doesn't fulfill everything you're looking for, ie no 
compile-time error if tried to use at runtime, but isn't this 
existing idiom good enough?

https://github.com/dlang/phobos/blob/master/std/functional.d#L307


More information about the Digitalmars-d mailing list