为什么Delphi编译器忽略这个缺失的括号?编译器忽略退出命令的缺失括号
function Test: Boolean;
begin
Exit(True; // <-- eek! it compiles...
end;
我发现了一些我的代码看起来像这一点,首先想到的是德尔福忽略了我的单位 - 但它只是忽略了这种类型的语法错误。所以现在我当然想知道为什么。
为什么Delphi编译器忽略这个缺失的括号?编译器忽略退出命令的缺失括号
function Test: Boolean;
begin
Exit(True; // <-- eek! it compiles...
end;
我发现了一些我的代码看起来像这一点,首先想到的是德尔福忽略了我的单位 - 但它只是忽略了这种类型的语法错误。所以现在我当然想知道为什么。
也许编译器认为要么 1.有一个退出本身,或 2.有一个退出带有一组圆括号()。 如果它没有找到#2它会到#1。
这看起来像编译器中的一个bug。 –
与XE2更新4中的相同。但Error Insight将其标记。 –
我想这应该是因为该函数没有其他的东西,它忽略了函数本身。尝试在退出前添加一些代码。 – CyprUS