Then explain
the intention?... As far as I am concerned it leads to clashes between the two forms.... It leads to logically completely different paths.. Erratic at best.
When the compiler parses {$endif} and {$ifend) the same that is a
huge bug, intentional or not, that is wrong and you know it.
There is simply not a predictable match....
Since {$ifdef} and {$if} are distinct...
It is a feature, not a bug?
( a humble
sigh added...
)