Temporary header file '/tmp/4fQmnO2cDp/dump1.h' with the following content will be compiled to create GCC translation unit dump: // add defines #define __STDC_VERSION__ 201710L #define _GXX_NULLPTR_T #define CLUTTER_ENABLE_COMPOSITOR_API 1 #define _REGEX_NELTS(n) #define _Atomic #define PACKED #define getaddrinfo_a(a,b,c,d) // add includes #include "/usr/include/stdio.h" #include "/usr/include/stdint.h" #include "/usr/include/bit.h" #include "/usr/include/model.h" #include "/usr/include/control.h" #include "/usr/include/helper.h" #include "/usr/include/floorplan.h" #include "/usr/include/parts.h" // add classes _G_fpos64_t* tmp_add_class_0; _G_fpos_t* tmp_add_class_1; _IO_cookie_io_functions_t* tmp_add_class_2; _cfg_atom* tmp_add_class_3; f_owner_ex* tmp_add_class_4; file_handle* tmp_add_class_5; flock64* tmp_add_class_6; fpga_bits* tmp_add_class_7; fpga_config* tmp_add_class_8; fpga_config_reg_rw* tmp_add_class_9; fpga_device* tmp_add_class_10; fpga_model* tmp_add_class_11; fpga_net* tmp_add_class_12; fpga_tile* tmp_add_class_13; fpgadev_bscan* tmp_add_class_14; fpgadev_bufgmux* tmp_add_class_15; fpgadev_bufio* tmp_add_class_16; fpgadev_iob* tmp_add_class_17; fpgadev_logic* tmp_add_class_18; fpgadev_logic_a2d* tmp_add_class_19; hashed_strarray* tmp_add_class_20; iovec* tmp_add_class_21; net_el* tmp_add_class_22; seed_data* tmp_add_class_23; statx_timestamp* tmp_add_class_24; sw_chain* tmp_add_class_25; sw_conns* tmp_add_class_26; sw_set* tmp_add_class_27; switch_to_rel* tmp_add_class_28; switch_to_yx* tmp_add_class_29; switch_to_yx_l2* tmp_add_class_30; w_net* tmp_add_class_31; w_net_i* tmp_add_class_32; w_point* tmp_add_class_33; w_yx* tmp_add_class_34; xc6_pkg_info* tmp_add_class_35; xc6_routing_bitpos* tmp_add_class_36; xc_die* tmp_add_class_37; xc_major_info* tmp_add_class_38; xc_type2_info* tmp_add_class_39; The GCC parameters: gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/4fQmnO2cDp/dump1.h" In file included from /tmp/4fQmnO2cDp/dump1.h:17: /usr/include/helper.h:56:16: error: redefinition of ‘struct _cfg_atom’ 56 | typedef struct _cfg_atom | ^~~~~~~~~ In file included from /usr/include/model.h:16, from /tmp/4fQmnO2cDp/dump1.h:15: /usr/include/helper.h:56:16: note: previous definition of ‘struct _cfg_atom’ 56 | typedef struct _cfg_atom | ^~~~~~~~~ /usr/include/helper.h:62:3: error: conflicting declaration ‘typedef int cfg_atom_t’ 62 | } cfg_atom_t; | ^~~~~~~~~~ /usr/include/helper.h:62:3: note: previous declaration as ‘typedef struct _cfg_atom cfg_atom_t’ 62 | } cfg_atom_t; | ^~~~~~~~~~ /usr/include/helper.h:133:8: error: redefinition of ‘struct hashed_strarray’ 133 | struct hashed_strarray | ^~~~~~~~~~~~~~~ /usr/include/helper.h:133:8: note: previous definition of ‘struct hashed_strarray’ 133 | struct hashed_strarray | ^~~~~~~~~~~~~~~ In file included from /tmp/4fQmnO2cDp/dump1.h:19: /usr/include/parts.h:41:8: error: redefinition of ‘struct xc_major_info’ 41 | struct xc_major_info | ^~~~~~~~~~~~~ In file included from /usr/include/model.h:17: /usr/include/parts.h:41:8: note: previous definition of ‘struct xc_major_info’ 41 | struct xc_major_info | ^~~~~~~~~~~~~ /usr/include/parts.h:51:8: error: redefinition of ‘struct xc_type2_info’ 51 | struct xc_type2_info | ^~~~~~~~~~~~~ /usr/include/parts.h:51:8: note: previous definition of ‘struct xc_type2_info’ 51 | struct xc_type2_info | ^~~~~~~~~~~~~ /usr/include/parts.h:79:8: error: redefinition of ‘struct xc_die’ 79 | struct xc_die | ^~~~~~ /usr/include/parts.h:79:8: note: previous definition of ‘struct xc_die’ 79 | struct xc_die | ^~~~~~ /usr/include/parts.h:100:6: error: multiple definition of ‘enum xc6_pkg’ 100 | enum xc6_pkg { TQG144, FTG256, CSG324, FGG484 }; | ^~~~~~~ /usr/include/parts.h:100:6: note: previous definition here 100 | enum xc6_pkg { TQG144, FTG256, CSG324, FGG484 }; | ^~~~~~~ /usr/include/parts.h:103:8: error: redefinition of ‘struct xc6_pkg_info’ 103 | struct xc6_pkg_info | ^~~~~~~~~~~~ /usr/include/parts.h:103:8: note: previous definition of ‘struct xc6_pkg_info’ 103 | struct xc6_pkg_info | ^~~~~~~~~~~~ /usr/include/parts.h:214:6: error: multiple definition of ‘enum major_type’ 214 | enum major_type { MAJ_ZERO, MAJ_LEFT, MAJ_RIGHT, MAJ_CENTER, | ^~~~~~~~~~ /usr/include/parts.h:214:6: note: previous definition here 214 | enum major_type { MAJ_ZERO, MAJ_LEFT, MAJ_RIGHT, MAJ_CENTER, | ^~~~~~~~~~ /usr/include/parts.h:235:8: error: redefinition of ‘struct xc6_routing_bitpos’ 235 | struct xc6_routing_bitpos | ^~~~~~~~~~~~~~~~~~ /usr/include/parts.h:235:8: note: previous definition of ‘struct xc6_routing_bitpos’ 235 | struct xc6_routing_bitpos | ^~~~~~~~~~~~~~~~~~ /tmp/4fQmnO2cDp/dump1.h:57:3: error: ‘xc6_pkg_info’ does not name a type 57 | xc6_pkg_info* tmp_add_class_35; | ^~~~~~~~~~~~