The only drawback I see is that it makes compilation a bit slower and pollutes object files with code just executed during CTFE.
Currently, the bloat can be reduced like this:
void foo()
{
if (__ctfe)
{
// function body
}
else
asm { naked; }
}
But that's an awful dangerous hack. A better solution is needed.
