我可以在语句后进行 MSVS 2013 标志声明吗?

Can I make MSVS 2013 flag declarations after statements?

我的代码是在 MSVS 2013 的某些平台和 MSVS 2010 的其他平台上编译的(更不用说 UNIX 和 VMS)。由于 MSVS 2010 不支持语句后的声明(如 “weird-compilation-error-in-visual-studio-2008” 等帖子中所述),我(遗憾地)想让 MSVS 2013 将此类语句标记为错误或带有警告(我将其视为错误)。

我已经查看了该项目的 C 编译器选项,希望看到诸如语言标准之类的东西,我可以将其设置为 C89,但一无所获:我看不到强制执行此操作的方法 — 我是否遗漏了一些东西, 我可以在水下做些别的事吗,还是我必须忍受它?

原则上2010年我可以做所有事情,但是2013年在代码分析和许多其他方面有了显着改进,所以即使我不能标记错误我也会坚持2013年。

我认为 VS2013 不支持此一致性选项。对不起。必须 运行 较旧的编译器,但在这样做时您甚至可能会遇到其他一些不兼容问题,而不仅仅是您关心的问题。

一种替代方法是 运行 custom build step 中的旧编译器。

如果您使用 SVN 等源代码控制工具,另一种选择是 运行 旧版编译器作为该工具的预提交步骤。