Temporary header file '/tmp/bMAWcVmRZC/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/rapidxml/rapidxml.hpp" #include "/usr/include/rapidxml/rapidxml_iterators.hpp" #include "/usr/include/rapidxml/rapidxml_print.hpp" #include "/usr/include/rapidxml/rapidxml_utils.hpp" // add namespaces namespace rapidxml{typedef int tmp_add_type_1;} rapidxml::tmp_add_type_1 tmp_add_func_1(){return 0;}; namespace rapidxml{namespace internal{typedef int tmp_add_type_2;}} rapidxml::internal::tmp_add_type_2 tmp_add_func_2(){return 0;}; // 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; The GCC parameters: gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/bMAWcVmRZC/dump1.h" In file included from /tmp/bMAWcVmRZC/dump1.h:13: /usr/include/rapidxml/rapidxml_iterators.hpp:25:22: error: ‘bidirectional_iterator_tag’ in namespace ‘std’ does not name a type 25 | typedef std::bidirectional_iterator_tag iterator_category; | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/rapidxml/rapidxml_iterators.hpp:104:22: error: ‘bidirectional_iterator_tag’ in namespace ‘std’ does not name a type 104 | typedef std::bidirectional_iterator_tag iterator_category; | ^~~~~~~~~~~~~~~~~~~~~~~~~~