Temporary header file '/tmp/r5wwYQtxT9/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/I2util/Pthread.h" #include "/usr/include/I2util/addr.h" #include "/usr/include/I2util/conf.h" #include "/usr/include/I2util/errlog.h" #include "/usr/include/I2util/errlogimmediate.h" #include "/usr/include/I2util/errlogsyslog.h" #include "/usr/include/I2util/hex.h" #include "/usr/include/I2util/hmac-sha1.h" #include "/usr/include/I2util/io.h" #include "/usr/include/I2util/mach_dep.h" #include "/usr/include/I2util/md5.h" #include "/usr/include/I2util/pbkdf2.h" #include "/usr/include/I2util/random.h" #include "/usr/include/I2util/readpassphrase.h" #include "/usr/include/I2util/saddr.h" #include "/usr/include/I2util/sha1.h" #include "/usr/include/I2util/sha1P.h" #include "/usr/include/I2util/table.h" #include "/usr/include/I2util/util.h" // add classes I2ErrLogEvent* tmp_add_class_0; I2ErrLogSyslogAttr_* tmp_add_class_1; I2LogImmediateAttr_* tmp_add_class_2; I2Sha1ContextRec* tmp_add_class_3; _G_fpos64_t* tmp_add_class_4; _G_fpos_t* tmp_add_class_5; _I2SockUnion* tmp_add_class_6; _IO_cookie_io_functions_t* tmp_add_class_7; addrinfo* tmp_add_class_8; cmsghdr* tmp_add_class_9; f_owner_ex* tmp_add_class_10; file_handle* tmp_add_class_11; flock64* tmp_add_class_12; gaicb* tmp_add_class_13; group_filter* tmp_add_class_14; group_req* tmp_add_class_15; group_source_req* tmp_add_class_16; hostent* tmp_add_class_17; in6_addr* tmp_add_class_18; in6_pktinfo* tmp_add_class_19; in_addr* tmp_add_class_20; in_pktinfo* tmp_add_class_21; iovec* tmp_add_class_22; ip6_mtuinfo* tmp_add_class_23; ip_mreq* tmp_add_class_24; ip_mreq_source* tmp_add_class_25; ip_mreqn* tmp_add_class_26; ip_msfilter* tmp_add_class_27; ip_opts* tmp_add_class_28; ipv6_mreq* tmp_add_class_29; linger* tmp_add_class_30; mmsghdr* tmp_add_class_31; msghdr* tmp_add_class_32; netent* tmp_add_class_33; osockaddr* tmp_add_class_34; protoent* tmp_add_class_35; rpcent* tmp_add_class_36; servent* tmp_add_class_37; sockaddr* tmp_add_class_38; sockaddr_in* tmp_add_class_39; sockaddr_in6* tmp_add_class_40; sockaddr_storage* tmp_add_class_41; ucred* tmp_add_class_42; The GCC parameters: gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/r5wwYQtxT9/dump1.h" In file included from /usr/include/I2util/util.h:70, from /usr/include/I2util/Pthread.h:36, from /tmp/r5wwYQtxT9/dump1.h:12: /usr/include/I2util/table.h:39:25: error: conflicting declaration ‘typedef struct I2Table* I2Table’ 39 | typedef struct I2Table *I2Table; | ^~~~~~~ /usr/include/I2util/table.h:39:16: note: previous declaration as ‘struct I2Table’ 39 | typedef struct I2Table *I2Table; | ^~~~~~~