用于x86平台构建的编译器警告C4702(无法访问的代码),但不适用于x64

时间:2017-12-21 13:19:03

标签: c++ visual-studio-2015 compiler-warnings unreachable-code

我们使用Microsoft Visual Studio Professional 2015, Version 14.0.25431.01 Update 3构建项目。在为C4702平台构建解决方案时,完全相同的代码会给编译器警告x86(无法访问的代码),但在为x64平台构建解决方案时没有警告。

代码如下所示:

if (is_some_condition)
    Func_1();
else
    Func_2();

LOG_MSG("...some logs...")    // ----> compiler warning C4702 here!

现在,Func_1Func_2内部都有一个无限的工作循环,如下所示:

void Func_1()
{
   while(true)
   {
      // ...do something...
   }
}

我理解,警告的内容是什么,但我不明白,为什么它仅针对x86目标而不针对x64。这有什么区别?控制流程是否有任何不同之处?为什么?请帮忙。

0 个答案:

没有答案