C++ 自动化后移植c++;11自动声明

C++ 自动化后移植c++;11自动声明,c++,c++11,auto,C++,C++11,Auto,我有一个C++11代码库,我需要用一个pre-11工具链来构建它。所使用的11个特性中的大多数都具有与boost等效的功能,因此这不是一个太大的问题。但是有大量的“自动”声明。 是否有一种很好的预处理源代码的方法来用显式类型替换所有的自动声明?也许将auto重新定义为MYUNKNOWNTYPE,然后通过编译器运行每个文件,并解析“无法将您实际想要的类型转换为MYUNKNOWNTYPE”,或者可能在gcc/clang的11版本中有一些trace/diag选项,可以将它们全部转储掉?可以通过clan

我有一个C++11代码库,我需要用一个pre-11工具链来构建它。所使用的11个特性中的大多数都具有与boost等效的功能,因此这不是一个太大的问题。但是有大量的“自动”声明。

是否有一种很好的预处理源代码的方法来用显式类型替换所有的自动声明?也许将auto重新定义为MYUNKNOWNTYPE,然后通过编译器运行每个文件,并解析“无法将您实际想要的类型转换为MYUNKNOWNTYPE”,或者可能在gcc/clang的11版本中有一些trace/diag选项,可以将它们全部转储掉?

可以通过clang工具/重写实现:从AST,您可能会得到表达式的类型…副本并不完全是您要寻找的,但您可能能够使用BOOST_AUTO并对源代码进行一些准备。