Temporary header file '/tmp/iQFcAxxz3J/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/pgtclId.h" // add classes Pg_ConnectionId_s* tmp_add_class_0; Pg_TclNotifies_s* tmp_add_class_1; Pg_resultid_s* tmp_add_class_2; The GCC parameters: gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/iQFcAxxz3J/dump1.h" In file included from /tmp/iQFcAxxz3J/dump1.h:12: /usr/include/pgtclId.h:46:9: error: ‘Tcl_Interp’ does not name a type 46 | Tcl_Interp *interp; /* This Tcl interpreter */ | ^~~~~~~~~~ /usr/include/pgtclId.h:52:9: error: ‘Tcl_HashTable’ does not name a type 52 | Tcl_HashTable notify_hash; /* Active pg_listen requests */ | ^~~~~~~~~~~~~ /usr/include/pgtclId.h:60:5: error: ‘Tcl_Obj’ does not name a type 60 | Tcl_Obj *str; | ^~~~~~~ /usr/include/pgtclId.h:61:5: error: ‘Tcl_Interp’ does not name a type 61 | Tcl_Interp *interp; | ^~~~~~~~~~ /usr/include/pgtclId.h:62:5: error: ‘Tcl_Command’ does not name a type 62 | Tcl_Command cmd_token; | ^~~~~~~~~~~ /usr/include/pgtclId.h:70:9: error: ‘PGconn’ does not name a type 70 | PGconn *conn; | ^~~~~~ /usr/include/pgtclId.h:77:9: error: ‘PGresult’ does not name a type; did you mean ‘Pg_resultid’? 77 | PGresult **results; /* The results */ | ^~~~~~~~ | Pg_resultid /usr/include/pgtclId.h:81:9: error: ‘Tcl_Channel’ does not name a type 81 | Tcl_Channel notifier_channel; /* Tcl_Channel on which notifier | ^~~~~~~~~~~ /usr/include/pgtclId.h:83:9: error: ‘Tcl_Command’ does not name a type 83 | Tcl_Command cmd_token; /* handle command token */ | ^~~~~~~~~~~ /usr/include/pgtclId.h:84:9: error: ‘Tcl_Interp’ does not name a type 84 | Tcl_Interp *interp; /* save Interp info */ | ^~~~~~~~~~ /usr/include/pgtclId.h:88:9: error: ‘Tcl_Obj’ does not name a type 88 | Tcl_Obj *callbackPtr; /* callback for async queries */ | ^~~~~~~ /usr/include/pgtclId.h:89:9: error: ‘Tcl_Interp’ does not name a type 89 | Tcl_Interp *callbackInterp; /* interp where the callback should run */ | ^~~~~~~~~~ /usr/include/pgtclId.h:100:30: error: ‘Tcl_Interp’ was not declared in this scope 100 | extern int PgSetConnectionId(Tcl_Interp *interp, PGconn *conn, char *connhandle); | ^~~~~~~~~~ /usr/include/pgtclId.h:100:42: error: ‘interp’ was not declared in this scope 100 | extern int PgSetConnectionId(Tcl_Interp *interp, PGconn *conn, char *connhandle); | ^~~~~~ /usr/include/pgtclId.h:100:50: error: ‘PGconn’ was not declared in this scope 100 | extern int PgSetConnectionId(Tcl_Interp *interp, PGconn *conn, char *connhandle); | ^~~~~~ /usr/include/pgtclId.h:100:58: error: ‘conn’ was not declared in this scope 100 | extern int PgSetConnectionId(Tcl_Interp *interp, PGconn *conn, char *connhandle); | ^~~~ /usr/include/pgtclId.h:100:64: error: expected primary-expression before ‘char’ 100 | extern int PgSetConnectionId(Tcl_Interp *interp, PGconn *conn, char *connhandle); | ^~~~ /usr/include/pgtclId.h:108:8: error: ‘PGconn’ does not name a type 108 | extern PGconn *PgGetConnectionId(Tcl_Interp *interp, const char *id, | ^~~~~~ /usr/include/pgtclId.h:106:26: error: ‘ClientData’ was not declared in this scope 106 | #define DRIVER_DEL_PROTO ClientData cData, Tcl_Interp *interp | ^~~~~~~~~~ /usr/include/pgtclId.h:110:35: note: in expansion of macro ‘DRIVER_DEL_PROTO’ 110 | extern int PgDelConnectionId(DRIVER_DEL_PROTO); | ^~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:106:44: error: ‘Tcl_Interp’ was not declared in this scope 106 | #define DRIVER_DEL_PROTO ClientData cData, Tcl_Interp *interp | ^~~~~~~~~~ /usr/include/pgtclId.h:110:35: note: in expansion of macro ‘DRIVER_DEL_PROTO’ 110 | extern int PgDelConnectionId(DRIVER_DEL_PROTO); | ^~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:106:56: error: ‘interp’ was not declared in this scope 106 | #define DRIVER_DEL_PROTO ClientData cData, Tcl_Interp *interp | ^~~~~~ /usr/include/pgtclId.h:110:35: note: in expansion of macro ‘DRIVER_DEL_PROTO’ 110 | extern int PgDelConnectionId(DRIVER_DEL_PROTO); | ^~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:102:29: error: ‘ClientData’ was not declared in this scope 102 | #define DRIVER_OUTPUT_PROTO ClientData cData, const char *buf, int bufSize, \ | ^~~~~~~~~~ /usr/include/pgtclId.h:111:30: note: in expansion of macro ‘DRIVER_OUTPUT_PROTO’ 111 | extern int PgOutputProc(DRIVER_OUTPUT_PROTO); | ^~~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:102:47: error: expected primary-expression before ‘const’ 102 | #define DRIVER_OUTPUT_PROTO ClientData cData, const char *buf, int bufSize, \ | ^~~~~ /usr/include/pgtclId.h:111:30: note: in expansion of macro ‘DRIVER_OUTPUT_PROTO’ 111 | extern int PgOutputProc(DRIVER_OUTPUT_PROTO); | ^~~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:102:64: error: expected primary-expression before ‘int’ 102 | #define DRIVER_OUTPUT_PROTO ClientData cData, const char *buf, int bufSize, \ | ^~~ /usr/include/pgtclId.h:111:30: note: in expansion of macro ‘DRIVER_OUTPUT_PROTO’ 111 | extern int PgOutputProc(DRIVER_OUTPUT_PROTO); | ^~~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:103:9: error: expected primary-expression before ‘int’ 103 | int *errorCodePtr | ^~~ /usr/include/pgtclId.h:111:30: note: in expansion of macro ‘DRIVER_OUTPUT_PROTO’ 111 | extern int PgOutputProc(DRIVER_OUTPUT_PROTO); | ^~~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:104:28: error: ‘ClientData’ was not declared in this scope 104 | #define DRIVER_INPUT_PROTO ClientData cData, char *buf, int bufSize, \ | ^~~~~~~~~~ /usr/include/pgtclId.h:112:29: note: in expansion of macro ‘DRIVER_INPUT_PROTO’ 112 | extern int PgInputProc(DRIVER_INPUT_PROTO); | ^~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:104:46: error: expected primary-expression before ‘char’ 104 | #define DRIVER_INPUT_PROTO ClientData cData, char *buf, int bufSize, \ | ^~~~ /usr/include/pgtclId.h:112:29: note: in expansion of macro ‘DRIVER_INPUT_PROTO’ 112 | extern int PgInputProc(DRIVER_INPUT_PROTO); | ^~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:104:57: error: expected primary-expression before ‘int’ 104 | #define DRIVER_INPUT_PROTO ClientData cData, char *buf, int bufSize, \ | ^~~ /usr/include/pgtclId.h:112:29: note: in expansion of macro ‘DRIVER_INPUT_PROTO’ 112 | extern int PgInputProc(DRIVER_INPUT_PROTO); | ^~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:105:9: error: expected primary-expression before ‘int’ 105 | int *errorCodePtr | ^~~ /usr/include/pgtclId.h:112:29: note: in expansion of macro ‘DRIVER_INPUT_PROTO’ 112 | extern int PgInputProc(DRIVER_INPUT_PROTO); | ^~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:113:31: error: ‘Tcl_Interp’ was not declared in this scope 113 | extern int PgSetResultId(Tcl_Interp *interp, const char *connid, PGresult *res, int *idPtr); | ^~~~~~~~~~ /usr/include/pgtclId.h:113:43: error: ‘interp’ was not declared in this scope 113 | extern int PgSetResultId(Tcl_Interp *interp, const char *connid, PGresult *res, int *idPtr); | ^~~~~~ /usr/include/pgtclId.h:113:51: error: expected primary-expression before ‘const’ 113 | extern int PgSetResultId(Tcl_Interp *interp, const char *connid, PGresult *res, int *idPtr); | ^~~~~ /usr/include/pgtclId.h:113:71: error: ‘PGresult’ was not declared in this scope; did you mean ‘Pg_resultid’? 113 | extern int PgSetResultId(Tcl_Interp *interp, const char *connid, PGresult *res, int *idPtr); | ^~~~~~~~ | Pg_resultid /usr/include/pgtclId.h:113:81: error: ‘res’ was not declared in this scope 113 | extern int PgSetResultId(Tcl_Interp *interp, const char *connid, PGresult *res, int *idPtr); | ^~~ /usr/include/pgtclId.h:113:86: error: expected primary-expression before ‘int’ 113 | extern int PgSetResultId(Tcl_Interp *interp, const char *connid, PGresult *res, int *idPtr); | ^~~ /usr/include/pgtclId.h:114:8: error: ‘PGresult’ does not name a type; did you mean ‘Pg_resultid’? 114 | extern PGresult *PgGetResultId(Tcl_Interp *interp, const char *id, Pg_resultid **resultidPtr); | ^~~~~~~~ | Pg_resultid /usr/include/pgtclId.h:115:13: error: variable or field ‘PgDelResultId’ declared void 115 | extern void PgDelResultId(Tcl_Interp *interp, const char *id); | ^~~~~~~~~~~~~ /usr/include/pgtclId.h:115:27: error: ‘Tcl_Interp’ was not declared in this scope 115 | extern void PgDelResultId(Tcl_Interp *interp, const char *id); | ^~~~~~~~~~ /usr/include/pgtclId.h:115:39: error: ‘interp’ was not declared in this scope 115 | extern void PgDelResultId(Tcl_Interp *interp, const char *id); | ^~~~~~ /usr/include/pgtclId.h:115:47: error: expected primary-expression before ‘const’ 115 | extern void PgDelResultId(Tcl_Interp *interp, const char *id); | ^~~~~ /usr/include/pgtclId.h:116:37: error: ‘Tcl_Interp’ was not declared in this scope 116 | extern int PgGetConnByResultId(Tcl_Interp *interp, const char *resid); | ^~~~~~~~~~ /usr/include/pgtclId.h:116:49: error: ‘interp’ was not declared in this scope 116 | extern int PgGetConnByResultId(Tcl_Interp *interp, const char *resid); | ^~~~~~ /usr/include/pgtclId.h:116:57: error: expected primary-expression before ‘const’ 116 | extern int PgGetConnByResultId(Tcl_Interp *interp, const char *resid); | ^~~~~ /usr/include/pgtclId.h:118:63: error: ‘pqbool’ has not been declared 118 | extern void PgStopNotifyEventSource(Pg_ConnectionId * connid, pqbool allevents); | ^~~~~~ /usr/include/pgtclId.h:121:13: error: variable or field ‘PgNotifyInterpDelete’ declared void 121 | extern void PgNotifyInterpDelete(ClientData clientData, Tcl_Interp *interp); | ^~~~~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:121:34: error: ‘ClientData’ was not declared in this scope 121 | extern void PgNotifyInterpDelete(ClientData clientData, Tcl_Interp *interp); | ^~~~~~~~~~ /usr/include/pgtclId.h:121:57: error: ‘Tcl_Interp’ was not declared in this scope 121 | extern void PgNotifyInterpDelete(ClientData clientData, Tcl_Interp *interp); | ^~~~~~~~~~ /usr/include/pgtclId.h:121:69: error: ‘interp’ was not declared in this scope 121 | extern void PgNotifyInterpDelete(ClientData clientData, Tcl_Interp *interp); | ^~~~~~ /usr/include/pgtclId.h:123:22: error: ‘ClientData’ was not declared in this scope 123 | extern int PgConnCmd(ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~~~~~~ /usr/include/pgtclId.h:123:40: error: ‘Tcl_Interp’ was not declared in this scope 123 | extern int PgConnCmd(ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~~~~~~ /usr/include/pgtclId.h:123:52: error: ‘interp’ was not declared in this scope 123 | extern int PgConnCmd(ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~~ /usr/include/pgtclId.h:123:60: error: expected primary-expression before ‘int’ 123 | extern int PgConnCmd(ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~ /usr/include/pgtclId.h:123:70: error: ‘Tcl_Obj’ was not declared in this scope 123 | extern int PgConnCmd(ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~~~ /usr/include/pgtclId.h:123:79: error: ‘CONST’ was not declared in this scope 123 | extern int PgConnCmd(ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~ /usr/include/pgtclId.h:124:13: error: variable or field ‘PgDelCmdHandle’ declared void 124 | extern void PgDelCmdHandle(ClientData cData); | ^~~~~~~~~~~~~~ /usr/include/pgtclId.h:124:28: error: ‘ClientData’ was not declared in this scope 124 | extern void PgDelCmdHandle(ClientData cData); | ^~~~~~~~~~ /usr/include/pgtclId.h:125:13: error: variable or field ‘PgDelResultHandle’ declared void 125 | extern void PgDelResultHandle(ClientData cData); | ^~~~~~~~~~~~~~~~~ /usr/include/pgtclId.h:125:31: error: ‘ClientData’ was not declared in this scope 125 | extern void PgDelResultHandle(ClientData cData); | ^~~~~~~~~~ /usr/include/pgtclId.h:127:8: error: ‘Tcl_ChannelType’ does not name a type 127 | extern Tcl_ChannelType Pg_ConnType; | ^~~~~~~~~~~~~~~ /usr/include/pgtclId.h:130:3: error: ‘ClientData’ was not declared in this scope 130 | ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~~~~~~ /usr/include/pgtclId.h:130:21: error: ‘Tcl_Interp’ was not declared in this scope 130 | ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~~~~~~ /usr/include/pgtclId.h:130:33: error: ‘interp’ was not declared in this scope 130 | ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~~ /usr/include/pgtclId.h:130:41: error: expected primary-expression before ‘int’ 130 | ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~ /usr/include/pgtclId.h:130:51: error: ‘Tcl_Obj’ was not declared in this scope 130 | ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~~~ /usr/include/pgtclId.h:130:60: error: ‘CONST’ was not declared in this scope 130 | ClientData cData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]); | ^~~~~