使用GCC的-fdump-translation-unit解析C enum / structure / union / arrays

时间:2013-07-31 00:14:54

标签: parsing gcc struct enums union

我正在使用GCC的 -fdump-translation-unit 选项来解析C enum / structure / union / arrays。请考虑以下代码

enum eDAY
{
    monday = 0,
    tuesday,
    wednesday
};

enum eDAY day = monday;

我可以让枚举器的所有成员解析GCC的转储。

但如果以下声明不存在

enum eDAY day = monday;

GCC的转储没有关于调查员成员的任何信息。结构/联合等存在同样的问题。如何解决这个问题。是否有某种优化标志需要关闭以便GCC解析所有对象,即使它没有被使用?

1 个答案:

答案 0 :(得分:0)

-fdump-translation-unit是CPP选项。如果上面的代码存在于.cpp文件中,或者我们在上面的代码片段中使用标志-fdump-translation-unit运行g ++,我们将获得有关代码中所有内容的信息(即使有一个未使用的变量) )。