Temporary header file '/tmp/zPJUwKfOf_/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

  // add includes
  #include "/usr/include/libunwind/__libunwind_config.h"
  #include "/usr/include/libunwind/libunwind.h"
  #include "/usr/include/libunwind/mach-o/compact_unwind_encoding.h"
  #include "/usr/include/libunwind/unwind.h"
  #include "/usr/include/libunwind/unwind_arm_ehabi.h"
  #include "/usr/include/libunwind/unwind_itanium.h"

  // add classes
  _Unwind_Control_Block* tmp_add_class_0;
  dwarf_eh_bases* tmp_add_class_1;
  unw_context_t* tmp_add_class_2;
  unw_cursor_t* tmp_add_class_3;
  unw_proc_info_t* tmp_add_class_4;
  unwind_info_compressed_second_level_page_header* tmp_add_class_5;
  unwind_info_regular_second_level_entry* tmp_add_class_6;
  unwind_info_regular_second_level_page_header* tmp_add_class_7;
  unwind_info_section_header* tmp_add_class_8;
  unwind_info_section_header_index_entry* tmp_add_class_9;
  unwind_info_section_header_lsda_index_entry* tmp_add_class_10;

The GCC parameters:
  gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/zPJUwKfOf_/dump1.h"  -I/usr/include/libunwind

In file included from /tmp/zPJUwKfOf_/dump1.h:16:
/usr/include/libunwind/unwind_itanium.h:19:18: error: conflicting declaration ‘typedef uint64_t _Unwind_Exception_Class’
   19 | typedef uint64_t _Unwind_Exception_Class;
      |                  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/libunwind/unwind.h:59,
                 from /tmp/zPJUwKfOf_/dump1.h:14:
/usr/include/libunwind/unwind_arm_ehabi.h:30:17: note: previous declaration as ‘typedef uint8_t _Unwind_Exception_Class [8]’
   30 | typedef uint8_t _Unwind_Exception_Class[8];
      |                 ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/libunwind/unwind_arm_ehabi.h:29:27: error: redefinition of ‘struct _Unwind_Control_Block’
   29 | #define _Unwind_Exception _Unwind_Control_Block /* Alias */
      |                           ^~~~~~~~~~~~~~~~~~~~~
/usr/include/libunwind/unwind_itanium.h:21:8: note: in expansion of macro ‘_Unwind_Exception’
   21 | struct _Unwind_Exception {
      |        ^~~~~~~~~~~~~~~~~
/usr/include/libunwind/unwind_arm_ehabi.h:32:8: note: previous definition of ‘struct _Unwind_Control_Block’
   32 | struct _Unwind_Control_Block {
      |        ^~~~~~~~~~~~~~~~~~~~~
/usr/include/libunwind/unwind_itanium.h:43:31: error: conflicting declaration ‘typedef enum _Unwind_Reason_Code (* _Unwind_Personality_Fn)(int, enum _Unwind_Action, uint64_t, _Unwind_Control_Block*, struct _Unwind_Context*)’
   43 | typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
      |                               ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/libunwind/unwind_arm_ehabi.h:67:31: note: previous declaration as ‘typedef enum _Unwind_Reason_Code (* _Unwind_Personality_Fn)(_Unwind_State, _Unwind_Control_Block*, struct _Unwind_Context*)’
   67 | typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
      |                               ^~~~~~~~~~~~~~~~~~~~~~

