Temporary header file '/tmp/b_SpMmPv5_/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/stdlib.h"
  #include "/usr/include/stdio.h"
  #include "/usr/include/lowdown.h"

  // 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;
  lowdown_buf* tmp_add_class_3;
  lowdown_meta* tmp_add_class_4;
  lowdown_node* tmp_add_class_5;
  lowdown_opts* tmp_add_class_6;
  lowdown_opts_odt* tmp_add_class_7;
  rndr_autolink* tmp_add_class_8;
  rndr_blockcode* tmp_add_class_9;
  rndr_blockhtml* tmp_add_class_10;
  rndr_codespan* tmp_add_class_11;
  rndr_definition* tmp_add_class_12;
  rndr_entity* tmp_add_class_13;
  rndr_header* tmp_add_class_14;
  rndr_image* tmp_add_class_15;
  rndr_link* tmp_add_class_16;
  rndr_list* tmp_add_class_17;
  rndr_listitem* tmp_add_class_18;
  rndr_math* tmp_add_class_19;
  rndr_meta* tmp_add_class_20;
  rndr_normal_text* tmp_add_class_21;
  rndr_paragraph* tmp_add_class_22;
  rndr_raw_html* tmp_add_class_23;
  rndr_table* tmp_add_class_24;
  rndr_table_cell* tmp_add_class_25;
  rndr_table_header* tmp_add_class_26;

The GCC parameters:
  gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/b_SpMmPv5_/dump1.h"

In file included from /tmp/b_SpMmPv5_/dump1.h:14:
/usr/include/lowdown.h:105:11: error: expected constructor, destructor, or type conversion before ‘(’ token
  105 | TAILQ_HEAD(lowdown_nodeq, lowdown_node);
      |           ^
/usr/include/lowdown.h:137:33: error: expected ‘;’ at end of member declaration
  137 |         TAILQ_ENTRY(lowdown_meta) entries;
      |                                 ^
      |                                  ;
/usr/include/lowdown.h:137:35: error: ‘entries’ does not name a type
  137 |         TAILQ_ENTRY(lowdown_meta) entries;
      |                                   ^~~~~~~
/usr/include/lowdown.h:140:11: error: expected constructor, destructor, or type conversion before ‘(’ token
  140 | TAILQ_HEAD(lowdown_metaq, lowdown_meta);
      |           ^
/usr/include/lowdown.h:275:30: error: field ‘children’ has incomplete type ‘lowdown_nodeq’
  275 |         struct lowdown_nodeq children;
      |                              ^~~~~~~~
/usr/include/lowdown.h:275:16: note: forward declaration of ‘struct lowdown_nodeq’
  275 |         struct lowdown_nodeq children;
      |                ^~~~~~~~~~~~~
/usr/include/lowdown.h:276:33: error: expected ‘;’ at end of member declaration
  276 |         TAILQ_ENTRY(lowdown_node) entries;
      |                                 ^
      |                                  ;
/usr/include/lowdown.h:276:35: error: ‘entries’ does not name a type
  276 |         TAILQ_ENTRY(lowdown_node) entries;
      |                                   ^~~~~~~
/tmp/b_SpMmPv5_/dump1.h:20:3: error: ‘lowdown_buf’ does not name a type
   20 |   lowdown_buf* tmp_add_class_3;
      |   ^~~~~~~~~~~

