Temporary header file '/tmp/97SUOHhQ6M/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
#ifdef __cplusplus
// C17 compat layer
#define _Alignof(type) alignof(type)
#endif
#define getaddrinfo_a(a,b,c,d)

  // add includes
  #include "/usr/include/hfst/HfstTransducer.h"
  #include "/usr/include/hfst/ComposeIntersectFst.h"
  #include "/usr/include/hfst/ComposeIntersectLexicon.h"
  #include "/usr/include/hfst/ComposeIntersectRule.h"
  #include "/usr/include/hfst/ComposeIntersectRulePair.h"
  #include "/usr/include/hfst/ConvertTransducerFormat.h"
  #include "/usr/include/hfst/FomaTransducer.h"
  #include "/usr/include/hfst/FormatSpecifiers.h"
  #include "/usr/include/hfst/HarmonizeUnknownAndIdentitySymbols.h"
  #include "/usr/include/hfst/HfstBasicTransducer.h"
  #include "/usr/include/hfst/HfstBasicTransition.h"
  #include "/usr/include/hfst/HfstDataTypes.h"
  #include "/usr/include/hfst/HfstEpsilonHandler.h"
  #include "/usr/include/hfst/HfstExceptionDefs.h"
  #include "/usr/include/hfst/HfstExtractStrings.h"
  #include "/usr/include/hfst/HfstFlagDiacritics.h"
  #include "/usr/include/hfst/HfstInputStream.h"
  #include "/usr/include/hfst/HfstLookupFlagDiacritics.h"
  #include "/usr/include/hfst/HfstOlTransducer.h"
  #include "/usr/include/hfst/HfstOutputStream.h"
  #include "/usr/include/hfst/HfstPrintDot.h"
  #include "/usr/include/hfst/HfstPrintPCKimmo.h"
  #include "/usr/include/hfst/HfstSymbolDefs.h"
  #include "/usr/include/hfst/HfstTokenizer.h"
  #include "/usr/include/hfst/HfstTropicalTransducerTransitionData.h"
  #include "/usr/include/hfst/HfstXeroxRules.h"
  #include "/usr/include/hfst/LexcCompiler.h"
  #include "/usr/include/hfst/LogWeightTransducer.h"
  #include "/usr/include/hfst/PmatchCompiler.h"
  #include "/usr/include/hfst/SfstTransducer.h"
  #include "/usr/include/hfst/TropicalWeightTransducer.h"
  #include "/usr/include/hfst/XreCompiler.h"
  #include "/usr/include/hfst/hfst-string-conversions.h"
  #include "/usr/include/hfst/hfst.h"
  #include "/usr/include/hfst/hfstdll.h"
  #include "/usr/include/hfst/implementations/ComposeIntersectFst.h"
  #include "/usr/include/hfst/implementations/ComposeIntersectLexicon.h"
  #include "/usr/include/hfst/implementations/ComposeIntersectRule.h"
  #include "/usr/include/hfst/implementations/ComposeIntersectRulePair.h"
  #include "/usr/include/hfst/implementations/ComposeIntersectUtilities.h"
  #include "/usr/include/hfst/implementations/ConvertTransducerFormat.h"
  #include "/usr/include/hfst/implementations/FomaTransducer.h"
  #include "/usr/include/hfst/implementations/HfstBasicTransducer.h"
  #include "/usr/include/hfst/implementations/HfstBasicTransition.h"
  #include "/usr/include/hfst/implementations/HfstOlTransducer.h"
  #include "/usr/include/hfst/implementations/HfstTropicalTransducerTransitionData.h"
  #include "/usr/include/hfst/implementations/LogWeightTransducer.h"
  #include "/usr/include/hfst/implementations/SfstTransducer.h"
  #include "/usr/include/hfst/implementations/TropicalWeightTransducer.h"
  #include "/usr/include/hfst/implementations/compose_intersect/ComposeIntersectFst.h"
  #include "/usr/include/hfst/implementations/compose_intersect/ComposeIntersectLexicon.h"
  #include "/usr/include/hfst/implementations/compose_intersect/ComposeIntersectRule.h"
  #include "/usr/include/hfst/implementations/compose_intersect/ComposeIntersectRulePair.h"
  #include "/usr/include/hfst/implementations/compose_intersect/ComposeIntersectUtilities.h"
  #include "/usr/include/hfst/implementations/optimized-lookup/convert.h"
  #include "/usr/include/hfst/implementations/optimized-lookup/pmatch.h"
  #include "/usr/include/hfst/implementations/optimized-lookup/pmatch_tokenize.h"
  #include "/usr/include/hfst/implementations/optimized-lookup/transducer.h"
  #include "/usr/include/hfst/parsers/CommandLine.h"
  #include "/usr/include/hfst/parsers/ConstContainerIterator.h"
  #include "/usr/include/hfst/parsers/HfstTwolcDefs.h"
  #include "/usr/include/hfst/parsers/InputReader.h"
  #include "/usr/include/hfst/parsers/LexcCompiler.h"
  #include "/usr/include/hfst/parsers/MatchedConstContainerIterator.h"
  #include "/usr/include/hfst/parsers/MixedConstContainerIterator.h"
  #include "/usr/include/hfst/parsers/PmatchCompiler.h"
  #include "/usr/include/hfst/parsers/RuleSymbolVector.h"
  #include "/usr/include/hfst/parsers/RuleVariables.h"
  #include "/usr/include/hfst/parsers/RuleVariablesConstIterator.h"
  #include "/usr/include/hfst/parsers/SfstAlphabet.h"
  #include "/usr/include/hfst/parsers/SfstBasic.h"
  #include "/usr/include/hfst/parsers/SfstCompiler.h"
  #include "/usr/include/hfst/parsers/SfstUtf8.h"
  #include "/usr/include/hfst/parsers/TwolcCompiler.h"
  #include "/usr/include/hfst/parsers/VariableBlock.h"
  #include "/usr/include/hfst/parsers/VariableBlockContainer.h"
  #include "/usr/include/hfst/parsers/VariableContainer.h"
  #include "/usr/include/hfst/parsers/VariableContainerBase.h"
  #include "/usr/include/hfst/parsers/VariableDefs.h"
  #include "/usr/include/hfst/parsers/VariableValueIterator.h"
  #include "/usr/include/hfst/parsers/VariableValues.h"
  #include "/usr/include/hfst/parsers/XfstCompiler.h"
  #include "/usr/include/hfst/parsers/XreCompiler.h"
  #include "/usr/include/hfst/parsers/grammar_defs.h"
  #include "/usr/include/hfst/parsers/lexc-utils.h"
  #include "/usr/include/hfst/parsers/pmatch_utils.h"
  #include "/usr/include/hfst/parsers/string_manipulation.h"
  #include "/usr/include/hfst/parsers/xfst-utils.h"
  #include "/usr/include/hfst/parsers/xfst_help_message.h"
  #include "/usr/include/hfst/parsers/xre_utils.h"
  #include "/usr/include/hfst/string-utils.h"

  // add namespaces
  namespace fst{typedef int tmp_add_type_1;}
  fst::tmp_add_type_1 tmp_add_func_1(){return 0;};
  namespace hfst{typedef int tmp_add_type_2;}
  hfst::tmp_add_type_2 tmp_add_func_2(){return 0;};
  namespace hfst{namespace implementations{typedef int tmp_add_type_3;}}
  hfst::implementations::tmp_add_type_3 tmp_add_func_3(){return 0;};
  namespace hfst{namespace lexc{typedef int tmp_add_type_4;}}
  hfst::lexc::tmp_add_type_4 tmp_add_func_4(){return 0;};
  namespace hfst{namespace pmatch{typedef int tmp_add_type_5;}}
  hfst::pmatch::tmp_add_type_5 tmp_add_func_5(){return 0;};
  namespace hfst{namespace rules{typedef int tmp_add_type_6;}}
  hfst::rules::tmp_add_type_6 tmp_add_func_6(){return 0;};
  namespace hfst{namespace symbols{typedef int tmp_add_type_7;}}
  hfst::symbols::tmp_add_type_7 tmp_add_func_7(){return 0;};
  namespace hfst{namespace twolc{typedef int tmp_add_type_8;}}
  hfst::twolc::tmp_add_type_8 tmp_add_func_8(){return 0;};
  namespace hfst{namespace xeroxRules{typedef int tmp_add_type_9;}}
  hfst::xeroxRules::tmp_add_type_9 tmp_add_func_9(){return 0;};
  namespace hfst{namespace xfst{typedef int tmp_add_type_10;}}
  hfst::xfst::tmp_add_type_10 tmp_add_func_10(){return 0;};
  namespace hfst{namespace xre{typedef int tmp_add_type_11;}}
  hfst::xre::tmp_add_type_11 tmp_add_func_11(){return 0;};
  namespace SFST{typedef int tmp_add_type_12;}
  SFST::tmp_add_type_12 tmp_add_func_12(){return 0;};
  namespace hfst{namespace implementations{namespace compose_intersect_utilities{typedef int tmp_add_type_13;}}}
  hfst::implementations::compose_intersect_utilities::tmp_add_type_13 tmp_add_func_13(){return 0;};
  namespace hfst_ol{typedef int tmp_add_type_14;}
  hfst_ol::tmp_add_type_14 tmp_add_func_14(){return 0;};
  namespace hfst_ol_tokenize{typedef int tmp_add_type_15;}
  hfst_ol_tokenize::tmp_add_type_15 tmp_add_func_15(){return 0;};
  namespace icu_72{typedef int tmp_add_type_16;}
  icu_72::tmp_add_type_16 tmp_add_func_16(){return 0;};
  namespace sfst_basic{typedef int tmp_add_type_17;}
  sfst_basic::tmp_add_type_17 tmp_add_func_17(){return 0;};
  namespace sfst_utf8{typedef int tmp_add_type_18;}
  sfst_utf8::tmp_add_type_18 tmp_add_func_18(){return 0;};

  // add classes
  CommandLine* tmp_add_class_0;
  ContextTransducersAreNotAutomataException* tmp_add_class_1;
  EmptyContainer* tmp_add_class_2;
  EmptySetOfContextsException* tmp_add_class_3;
  EmptyStringException* tmp_add_class_4;
  EndOfStreamException* tmp_add_class_5;
  FaultyStringInput* tmp_add_class_6;
  FileIsInGZFormatException* tmp_add_class_7;
  FlagDiacriticTable* tmp_add_class_8;
  FlagDiacriticsAreNotIdentitiesException* tmp_add_class_9;
  FunctionNotImplementedException* tmp_add_class_10;
  HfstException* tmp_add_class_11;
  HfstFatalException* tmp_add_class_12;
  HfstTransducerTypeMismatchException* tmp_add_class_13;
  ImplementationTypeNotAvailableException* tmp_add_class_14;
  IncorrectUtf8CodingException* tmp_add_class_15;
  InputNotSet* tmp_add_class_16;
  InputReader* tmp_add_class_17;
  MetadataException* tmp_add_class_18;
  MissingOpenFstInputSymbolTableException* tmp_add_class_19;
  NotTransducerStreamException* tmp_add_class_20;
  NotValidAttFormatException* tmp_add_class_21;
  NotValidLexcFormatException* tmp_add_class_22;
  NotValidPrologFormatException* tmp_add_class_23;
  RuleSymbolVector* tmp_add_class_24;
  RuleVariables* tmp_add_class_25;
  RuleVariablesConstIterator* tmp_add_class_26;
  SpecifiedTypeRequiredException* tmp_add_class_27;
  StateIndexOutOfBoundsException* tmp_add_class_28;
  StateIsNotFinalException* tmp_add_class_29;
  StateNotDefined* tmp_add_class_30;
  StreamCannotBeWrittenException* tmp_add_class_31;
  StreamIsClosedException* tmp_add_class_32;
  StreamNotReadableException* tmp_add_class_33;
  StringVector* tmp_add_class_34;
  SymbolNotFoundException* tmp_add_class_35;
  TransducerHasWrongTypeException* tmp_add_class_36;
  TransducerHeaderException* tmp_add_class_37;
  TransducerIsCyclicException* tmp_add_class_38;
  TransducerIsNotAutomatonException* tmp_add_class_39;
  TransducerTypeMismatchException* tmp_add_class_40;
  TransducersAreNotAutomataException* tmp_add_class_41;
  UnequalSetSize* tmp_add_class_42;
  VariableValues* tmp_add_class_43;
  _G_fpos64_t* tmp_add_class_44;
  _G_fpos_t* tmp_add_class_45;
  _IO_cookie_io_functions_t* tmp_add_class_46;
  relaxed_str_cmp* tmp_add_class_47;
  str_cmp* tmp_add_class_48;

The GCC parameters:
  gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/97SUOHhQ6M/dump1.h"  -I/usr/include/hfst -I/usr/include/hfst/implementations -I/usr/include/hfst/implementations/compose_intersect

