"register int n" alternative

lithium iodate whatdoiknow at doesntexist.net
Sun Feb 16 20:18:07 UTC 2020


On Sunday, 16 February 2020 at 15:15:44 UTC, Stefan Koch wrote:
> The register keyword as been deprecated for ages in C.
> Since the compiler cannot actually guarantee that the variable 
> will be a register.
> As a result D does not have the register keyword.

That only applies for C++, where it doesn't (or rather didn't) 
even do the same thing as in C. In C it's an optimization aid 
with actual semantic implications. A register storage-class 
variable cannot be aliased, in fact, any attempt should cause 
compilation failure.

Whether it actually helps modern compilers with optimization is 
of course another matter ;)


More information about the Digitalmars-d-learn mailing list