Temporary header file '/tmp/oz4u4ZWxQ0/dump1.h' with the following content will be compiled to create GCC translation unit dump: // add defines #define __STDC_VERSION__ 201710L #define _TIME_BITS 64 #define _FILE_OFFSET_BITS 64 #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/dragonbox-1.1.3/dragonbox/dragonbox.h" #include "/usr/include/dragonbox-1.1.3/dragonbox/dragonbox_to_chars.h" // add namespaces namespace jkj{typedef int tmp_add_type_1;} jkj::tmp_add_type_1 tmp_add_func_1(){return 0;}; namespace jkj{namespace dragonbox{typedef int tmp_add_type_2;}} jkj::dragonbox::tmp_add_type_2 tmp_add_func_2(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{typedef int tmp_add_type_3;}}} jkj::dragonbox::detail::tmp_add_type_3 tmp_add_func_3(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace bits{typedef int tmp_add_type_4;}}}} jkj::dragonbox::detail::bits::tmp_add_type_4 tmp_add_func_4(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace div{typedef int tmp_add_type_5;}}}} jkj::dragonbox::detail::div::tmp_add_type_5 tmp_add_func_5(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace log{typedef int tmp_add_type_6;}}}} jkj::dragonbox::detail::log::tmp_add_type_6 tmp_add_func_6(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace wuint{typedef int tmp_add_type_7;}}}} jkj::dragonbox::detail::wuint::tmp_add_type_7 tmp_add_func_7(){return 0;}; namespace jkj{namespace dragonbox{namespace policy{typedef int tmp_add_type_8;}}} jkj::dragonbox::policy::tmp_add_type_8 tmp_add_func_8(){return 0;}; namespace jkj{namespace dragonbox{namespace policy{namespace cache{typedef int tmp_add_type_9;}}}} jkj::dragonbox::policy::cache::tmp_add_type_9 tmp_add_func_9(){return 0;}; namespace jkj{namespace dragonbox{namespace policy{namespace sign{typedef int tmp_add_type_10;}}}} jkj::dragonbox::policy::sign::tmp_add_type_10 tmp_add_func_10(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace policy_impl{typedef int tmp_add_type_11;}}}} jkj::dragonbox::detail::policy_impl::tmp_add_type_11 tmp_add_func_11(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace policy_impl{namespace binary_to_decimal_rounding{typedef int tmp_add_type_12;}}}}} jkj::dragonbox::detail::policy_impl::binary_to_decimal_rounding::tmp_add_type_12 tmp_add_func_12(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace policy_impl{namespace cache{typedef int tmp_add_type_13;}}}}} jkj::dragonbox::detail::policy_impl::cache::tmp_add_type_13 tmp_add_func_13(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace policy_impl{namespace decimal_to_binary_rounding{typedef int tmp_add_type_14;}}}}} jkj::dragonbox::detail::policy_impl::decimal_to_binary_rounding::tmp_add_type_14 tmp_add_func_14(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace policy_impl{namespace decimal_to_binary_rounding{namespace detail{typedef int tmp_add_type_15;}}}}}} jkj::dragonbox::detail::policy_impl::decimal_to_binary_rounding::detail::tmp_add_type_15 tmp_add_func_15(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace policy_impl{namespace decimal_to_binary_rounding{namespace interval_type{typedef int tmp_add_type_16;}}}}}} jkj::dragonbox::detail::policy_impl::decimal_to_binary_rounding::interval_type::tmp_add_type_16 tmp_add_func_16(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace policy_impl{namespace sign{typedef int tmp_add_type_17;}}}}} jkj::dragonbox::detail::policy_impl::sign::tmp_add_type_17 tmp_add_func_17(){return 0;}; namespace jkj{namespace dragonbox{namespace detail{namespace policy_impl{namespace trailing_zero{typedef int tmp_add_type_18;}}}}} jkj::dragonbox::detail::policy_impl::trailing_zero::tmp_add_type_18 tmp_add_func_18(){return 0;}; namespace jkj{namespace dragonbox{namespace policy{namespace binary_to_decimal_rounding{typedef int tmp_add_type_19;}}}} jkj::dragonbox::policy::binary_to_decimal_rounding::tmp_add_type_19 tmp_add_func_19(){return 0;}; namespace jkj{namespace dragonbox{namespace policy{namespace decimal_to_binary_rounding{typedef int tmp_add_type_20;}}}} jkj::dragonbox::policy::decimal_to_binary_rounding::tmp_add_type_20 tmp_add_func_20(){return 0;}; namespace jkj{namespace dragonbox{namespace policy{namespace trailing_zero{typedef int tmp_add_type_21;}}}} jkj::dragonbox::policy::trailing_zero::tmp_add_type_21 tmp_add_func_21(){return 0;}; namespace jkj{namespace dragonbox{namespace to_chars_detail{typedef int tmp_add_type_22;}}} jkj::dragonbox::to_chars_detail::tmp_add_type_22 tmp_add_func_22(){return 0;}; The GCC parameters: gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/oz4u4ZWxQ0/dump1.h" -I/usr/include/dragonbox-1.1.3