Temporary header file '/tmp/P_UJ1_P42X/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/wibble/amorph.h"
  #include "/usr/include/wibble/amorph.test.h"
  #include "/usr/include/wibble/cast.h"
  #include "/usr/include/wibble/commandline/core.h"
  #include "/usr/include/wibble/commandline/core.test.h"
  #include "/usr/include/wibble/commandline/doc.h"
  #include "/usr/include/wibble/commandline/doc.test.h"
  #include "/usr/include/wibble/commandline/engine.h"
  #include "/usr/include/wibble/commandline/engine.test.h"
  #include "/usr/include/wibble/commandline/options.h"
  #include "/usr/include/wibble/commandline/options.test.h"
  #include "/usr/include/wibble/commandline/parser.h"
  #include "/usr/include/wibble/consumer.h"
  #include "/usr/include/wibble/consumer.test.h"
  #include "/usr/include/wibble/empty.h"
  #include "/usr/include/wibble/empty.test.h"
  #include "/usr/include/wibble/exception.h"
  #include "/usr/include/wibble/exception.test.h"
  #include "/usr/include/wibble/fallback.h"
  #include "/usr/include/wibble/grcal/grcal.h"
  #include "/usr/include/wibble/grcal/grcal.test.h"
  #include "/usr/include/wibble/iterator.h"
  #include "/usr/include/wibble/list.h"
  #include "/usr/include/wibble/list.test.h"
  #include "/usr/include/wibble/log/file.h"
  #include "/usr/include/wibble/log/filters.h"
  #include "/usr/include/wibble/log/null.h"
  #include "/usr/include/wibble/log/ostream.h"
  #include "/usr/include/wibble/log/stream.h"
  #include "/usr/include/wibble/log/syslog.h"
  #include "/usr/include/wibble/log.test.h"
  #include "/usr/include/wibble/maybe.h"
  #include "/usr/include/wibble/mixin.h"
  #include "/usr/include/wibble/mixin.test.h"
  #include "/usr/include/wibble/net/http.h"
  #include "/usr/include/wibble/net/http.test.h"
  #include "/usr/include/wibble/net/mime.h"
  #include "/usr/include/wibble/net/mime.test.h"
  #include "/usr/include/wibble/net/server.h"
  #include "/usr/include/wibble/net/server.test.h"
  #include "/usr/include/wibble/operators.h"
  #include "/usr/include/wibble/operators.test.h"
  #include "/usr/include/wibble/param.h"
  #include "/usr/include/wibble/parse.h"
  #include "/usr/include/wibble/parse.test.h"
  #include "/usr/include/wibble/raii.h"
  #include "/usr/include/wibble/raii.test.h"
  #include "/usr/include/wibble/range.h"
  #include "/usr/include/wibble/range.test.h"
  #include "/usr/include/wibble/regexp.h"
  #include "/usr/include/wibble/regexp.test.h"
  #include "/usr/include/wibble/sfinae.h"
  #include "/usr/include/wibble/singleton.h"
  #include "/usr/include/wibble/singleton.test.h"
  #include "/usr/include/wibble/stream/posix.h"
  #include "/usr/include/wibble/stream/posix.test.h"
  #include "/usr/include/wibble/string.h"
  #include "/usr/include/wibble/string.test.h"
  #include "/usr/include/wibble/strongenumflags.h"
  #include "/usr/include/wibble/strongenumflags.test.h"
  #include "/usr/include/wibble/sys/buffer.h"
  #include "/usr/include/wibble/sys/buffer.test.h"
  #include "/usr/include/wibble/sys/childprocess.h"
  #include "/usr/include/wibble/sys/childprocess.test.h"
  #include "/usr/include/wibble/sys/exec.h"
  #include "/usr/include/wibble/sys/filelock.h"
  #include "/usr/include/wibble/sys/fs.h"
  #include "/usr/include/wibble/sys/fs.test.h"
  #include "/usr/include/wibble/sys/lockfile.h"
  #include "/usr/include/wibble/sys/lockfile.test.h"
  #include "/usr/include/wibble/sys/macros.h"
  #include "/usr/include/wibble/sys/mmap.h"
  #include "/usr/include/wibble/sys/mmap.test.h"
  #include "/usr/include/wibble/sys/mmap_v2.h"
  #include "/usr/include/wibble/sys/mmap_v2.test.h"
  #include "/usr/include/wibble/sys/mutex.h"
  #include "/usr/include/wibble/sys/netbuffer.h"
  #include "/usr/include/wibble/sys/netbuffer.test.h"
  #include "/usr/include/wibble/sys/pipe.h"
  #include "/usr/include/wibble/sys/process.h"
  #include "/usr/include/wibble/sys/process.test.h"
  #include "/usr/include/wibble/sys/signal.h"
  #include "/usr/include/wibble/sys/signal.test.h"
  #include "/usr/include/wibble/sys/thread.h"
  #include "/usr/include/wibble/sys/thread.test.h"
  #include "/usr/include/wibble/test-main.h"
  #include "/usr/include/wibble/test-runner.h"
  #include "/usr/include/wibble/test.h"
  #include "/usr/include/wibble/test.test.h"
  #include "/usr/include/wibble/tests/tut-prereq.h"
  #include "/usr/include/wibble/tests/tut-wibble.h"
  #include "/usr/include/wibble/tests/tut.h"
  #include "/usr/include/wibble/tests/tut_reporter.h"
  #include "/usr/include/wibble/tests/tut_restartable.h"
  #include "/usr/include/wibble/tests.h"
  #include "/usr/include/wibble/text/wordwrap.h"

  // add namespaces
  namespace TestLog{typedef int tmp_add_type_1;}
  TestLog::tmp_add_type_1 tmp_add_func_1(){return 0;};
  namespace tut{typedef int tmp_add_type_2;}
  tut::tmp_add_type_2 tmp_add_func_2(){return 0;};
  namespace tut{namespace util{typedef int tmp_add_type_3;}}
  tut::util::tmp_add_type_3 tmp_add_func_3(){return 0;};
  namespace wibble{typedef int tmp_add_type_4;}
  wibble::tmp_add_type_4 tmp_add_func_4(){return 0;};
  namespace wibble{namespace commandline{typedef int tmp_add_type_5;}}
  wibble::commandline::tmp_add_type_5 tmp_add_func_5(){return 0;};
  namespace wibble{namespace exception{typedef int tmp_add_type_6;}}
  wibble::exception::tmp_add_type_6 tmp_add_func_6(){return 0;};
  namespace wibble{namespace grcal{typedef int tmp_add_type_7;}}
  wibble::grcal::tmp_add_type_7 tmp_add_func_7(){return 0;};
  namespace wibble{namespace grcal{namespace date{typedef int tmp_add_type_8;}}}
  wibble::grcal::date::tmp_add_type_8 tmp_add_func_8(){return 0;};
  namespace wibble{namespace grcal{namespace dtime{typedef int tmp_add_type_9;}}}
  wibble::grcal::dtime::tmp_add_type_9 tmp_add_func_9(){return 0;};
  namespace wibble{namespace list{typedef int tmp_add_type_10;}}
  wibble::list::tmp_add_type_10 tmp_add_func_10(){return 0;};
  namespace wibble{namespace log{typedef int tmp_add_type_11;}}
  wibble::log::tmp_add_type_11 tmp_add_func_11(){return 0;};
  namespace wibble{namespace mixin{typedef int tmp_add_type_12;}}
  wibble::mixin::tmp_add_type_12 tmp_add_func_12(){return 0;};
  namespace wibble{namespace net{typedef int tmp_add_type_13;}}
  wibble::net::tmp_add_type_13 tmp_add_func_13(){return 0;};
  namespace wibble{namespace net{namespace http{typedef int tmp_add_type_14;}}}
  wibble::net::http::tmp_add_type_14 tmp_add_func_14(){return 0;};
  namespace wibble{namespace net{namespace mime{typedef int tmp_add_type_15;}}}
  wibble::net::mime::tmp_add_type_15 tmp_add_func_15(){return 0;};
  namespace wibble{namespace operators{typedef int tmp_add_type_16;}}
  wibble::operators::tmp_add_type_16 tmp_add_func_16(){return 0;};
  namespace wibble{namespace param{typedef int tmp_add_type_17;}}
  wibble::param::tmp_add_type_17 tmp_add_func_17(){return 0;};
  namespace wibble{namespace raii{typedef int tmp_add_type_18;}}
  wibble::raii::tmp_add_type_18 tmp_add_func_18(){return 0;};
  namespace wibble{namespace str{typedef int tmp_add_type_19;}}
  wibble::str::tmp_add_type_19 tmp_add_func_19(){return 0;};
  namespace wibble{namespace stream{typedef int tmp_add_type_20;}}
  wibble::stream::tmp_add_type_20 tmp_add_func_20(){return 0;};
  namespace wibble{namespace sys{typedef int tmp_add_type_21;}}
  wibble::sys::tmp_add_type_21 tmp_add_func_21(){return 0;};
  namespace wibble{namespace sys{namespace fs{typedef int tmp_add_type_22;}}}
  wibble::sys::fs::tmp_add_type_22 tmp_add_func_22(){return 0;};
  namespace wibble{namespace sys{namespace process{typedef int tmp_add_type_23;}}}
  wibble::sys::process::tmp_add_type_23 tmp_add_func_23(){return 0;};
  namespace wibble{namespace sys{namespace sig{typedef int tmp_add_type_24;}}}
  wibble::sys::sig::tmp_add_type_24 tmp_add_func_24(){return 0;};
  namespace wibble{namespace sys{namespace v1{typedef int tmp_add_type_25;}}}
  wibble::sys::v1::tmp_add_type_25 tmp_add_func_25(){return 0;};
  namespace wibble{namespace sys{namespace v2{typedef int tmp_add_type_26;}}}
  wibble::sys::v2::tmp_add_type_26 tmp_add_func_26(){return 0;};
  namespace wibble{namespace tests{typedef int tmp_add_type_27;}}
  wibble::tests::tmp_add_type_27 tmp_add_func_27(){return 0;};
  namespace wibble{namespace text{typedef int tmp_add_type_28;}}
  wibble::text::tmp_add_type_28 tmp_add_func_28(){return 0;};
  namespace tut{namespace __anon2376bfd48a11{typedef int tmp_add_type_29;}}
  tut::__anon2376bfd48a11::tmp_add_type_29 tmp_add_func_29(){return 0;};

  // add classes
  EndlessChild* tmp_add_class_0;
  Engine1* tmp_add_class_1;
  Engine2* tmp_add_class_2;
  Main* tmp_add_class_3;
  RunAll* tmp_add_class_4;
  RunFeedback* tmp_add_class_5;
  RunSuite* tmp_add_class_6;
  RunTest* tmp_add_class_7;
  TestBuffer* tmp_add_class_8;
  TestChild* tmp_add_class_9;
  TestChildprocess* tmp_add_class_10;
  TestCommandlineCore* tmp_add_class_11;
  TestCommandlineDoc* tmp_add_class_12;
  TestCommandlineEngine* tmp_add_class_13;
  TestCommandlineOptions* tmp_add_class_14;
  TestEmpty* tmp_add_class_15;
  TestException* tmp_add_class_16;
  TestFs* tmp_add_class_17;
  TestList* tmp_add_class_18;
  TestLockfile* tmp_add_class_19;
  TestMMap* tmp_add_class_20;
  TestMMapV2* tmp_add_class_21;
  TestNetBuffer* tmp_add_class_22;
  TestParse* tmp_add_class_23;
  TestProcess* tmp_add_class_24;
  TestRAII* tmp_add_class_25;
  TestSignal* tmp_add_class_26;
  TestStrongEnumFlags* tmp_add_class_27;
  TestThread* tmp_add_class_28;
  _G_fpos64_t* tmp_add_class_29;
  _G_fpos_t* tmp_add_class_30;
  _IO_cookie_io_functions_t* tmp_add_class_31;
  cmsghdr* tmp_add_class_32;
  f_owner_ex* tmp_add_class_33;
  file_handle* tmp_add_class_34;
  flock64* tmp_add_class_35;
  iovec* tmp_add_class_36;
  linger* tmp_add_class_37;
  mmsghdr* tmp_add_class_38;
  msghdr* tmp_add_class_39;
  osockaddr* tmp_add_class_40;
  re_pattern_buffer* tmp_add_class_41;
  re_registers* tmp_add_class_42;
  sockaddr* tmp_add_class_43;
  sockaddr_storage* tmp_add_class_44;
  statx_timestamp* tmp_add_class_45;
  ucred* tmp_add_class_46;

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

In file included from /usr/include/wibble/exception.h:25,
                 from /usr/include/wibble/cast.h:2,
                 from /usr/include/wibble/amorph.h:9,
                 from /tmp/P_UJ1_P42X/dump1.h:12:
/usr/include/wibble/list.test.h: In member function ‘Test TestList::count()’:
/usr/include/wibble/list.test.h:83:20: error: ‘list’ is not a class, namespace, or enumeration
   83 |         assert_eq( list::count( list ), 512u );
      |                    ^~~~
/usr/include/wibble/list.test.h:85:20: error: ‘list’ is not a class, namespace, or enumeration
   85 |         assert_eq( list::count( list ), 1024u );
      |                    ^~~~
In file included from /tmp/P_UJ1_P42X/dump1.h:35:
/usr/include/wibble/list.test.h: In member function ‘Test TestList::filtered()’:
/usr/include/wibble/list.test.h:90:23: error: ‘list’ is not a class, namespace, or enumeration
   90 |         checkOddList( list::filter( list, odd ) );
      |                       ^~~~
/usr/include/wibble/list.test.h:91:20: error: ‘list’ is not a class, namespace, or enumeration
   91 |         assert_eq( list::count( list::filter( list, odd ) ), 512 );
      |                    ^~~~
/usr/include/wibble/list.test.h:91:33: error: ‘list’ is not a class, namespace, or enumeration
   91 |         assert_eq( list::count( list::filter( list, odd ) ), 512 );
      |                                 ^~~~
/usr/include/wibble/list.test.h: In member function ‘Test TestList::sorted()’:
/usr/include/wibble/list.test.h:96:20: error: ‘list’ is not a class, namespace, or enumeration
   96 |         assert_eq( list::count( list ), list::count( list::sort( list ) ) );
      |                    ^~~~
/usr/include/wibble/list.test.h:96:41: error: ‘list’ is not a class, namespace, or enumeration
   96 |         assert_eq( list::count( list ), list::count( list::sort( list ) ) );
      |                                         ^~~~
/usr/include/wibble/list.test.h:96:54: error: ‘list’ is not a class, namespace, or enumeration
   96 |         assert_eq( list::count( list ), list::count( list::sort( list ) ) );
      |                                                      ^~~~
/usr/include/wibble/list.test.h:98:26: error: ‘list’ is not a class, namespace, or enumeration
   98 |         checkListSorted( list::sort( list ) );
      |                          ^~~~
/usr/include/wibble/list.test.h:103:26: error: ‘list’ is not a class, namespace, or enumeration
  103 |         checkListSorted( list::sort( My( 100, 0 ) ) );
      |                          ^~~~
/usr/include/wibble/list.test.h: In member function ‘Test TestList::unique()’:
/usr/include/wibble/list.test.h:117:20: error: ‘list’ is not a class, namespace, or enumeration
  117 |         assert_eq( list::count( list ), 80 );
      |                    ^~~~
/usr/include/wibble/list.test.h:118:20: error: ‘list’ is not a class, namespace, or enumeration
  118 |         assert_eq( list::count( list::unique( list ) ), 20 );
      |                    ^~~~
/usr/include/wibble/list.test.h:118:33: error: ‘list’ is not a class, namespace, or enumeration
  118 |         assert_eq( list::count( list::unique( list ) ), 20 );
      |                                 ^~~~
/usr/include/wibble/list.test.h:119:20: error: ‘list’ is not a class, namespace, or enumeration
  119 |         assert_eq( list::unique( list ).head(), 0 );
      |                    ^~~~
/usr/include/wibble/list.test.h:120:20: error: ‘list’ is not a class, namespace, or enumeration
  120 |         assert_eq( list::unique( list ).tail().head(), 1 );
      |                    ^~~~
/usr/include/wibble/list.test.h: In member function ‘Test TestList::stl()’:
/usr/include/wibble/list.test.h:126:20: error: ‘list’ is not a class, namespace, or enumeration
  126 |         std::copy( list::begin( list ), list::end( list ),
      |                    ^~~~
/usr/include/wibble/list.test.h:126:41: error: ‘list’ is not a class, namespace, or enumeration
  126 |         std::copy( list::begin( list ), list::end( list ),
      |                                         ^~~~
/usr/include/wibble/list.test.h: In member function ‘Test TestList::empty()’:
/usr/include/wibble/list.test.h:146:17: error: reference to ‘list’ is ambiguous
  146 |         assert( list::Empty< int >().empty() );
      |                 ^~~~
In file included from /tmp/P_UJ1_P42X/dump1.h:34:
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
In file included from /usr/include/c++/12/list:63,
                 from /usr/include/wibble/commandline/core.h:6,
                 from /tmp/P_UJ1_P42X/dump1.h:15:
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:146:30: error: expected primary-expression before ‘int’
  146 |         assert( list::Empty< int >().empty() );
      |                              ^~~
/usr/include/wibble/list.test.h: In member function ‘Test TestList::single()’:
/usr/include/wibble/list.test.h:150:20: error: reference to ‘list’ is ambiguous
  150 |         assert_eq( list::singular( 0 ).head(), 0 );
      |                    ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:151:17: error: reference to ‘list’ is ambiguous
  151 |         assert( list::singular( 0 ).tail().empty() );
      |                 ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h: In member function ‘Test TestList::append()’:
/usr/include/wibble/list.test.h:155:20: error: reference to ‘list’ is ambiguous
  155 |         assert_eq( list::append( list::singular( 0 ),
      |                    ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:155:34: error: reference to ‘list’ is ambiguous
  155 |         assert_eq( list::append( list::singular( 0 ),
      |                                  ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:156:34: error: reference to ‘list’ is ambiguous
  156 |                                  list::singular( 1 ) ).head(), 0 );
      |                                  ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:157:20: error: reference to ‘list’ is ambiguous
  157 |         assert_eq( list::append( list::singular( 0 ),
      |                    ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:157:34: error: reference to ‘list’ is ambiguous
  157 |         assert_eq( list::append( list::singular( 0 ),
      |                                  ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:158:34: error: reference to ‘list’ is ambiguous
  158 |                                  list::singular( 1 ) ).tail().head(), 1 );
      |                                  ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:159:17: error: reference to ‘list’ is ambiguous
  159 |         assert( list::append( list::singular( 0 ),
      |                 ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:159:31: error: reference to ‘list’ is ambiguous
  159 |         assert( list::append( list::singular( 0 ),
      |                               ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:160:31: error: reference to ‘list’ is ambiguous
  160 |                               list::singular( 1 ) ).tail().tail().empty() );
      |                               ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h: In member function ‘Test TestList::appendCount()’:
/usr/include/wibble/list.test.h:164:20: error: reference to ‘list’ is ambiguous
  164 |         assert_eq( list::count( list::append( My( 0, 10 ),
      |                    ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.test.h:164:33: error: reference to ‘list’ is ambiguous
  164 |         assert_eq( list::count( list::append( My( 0, 10 ),
      |                                 ^~~~
/usr/include/wibble/list.h:12:11: note: candidates are: ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note:                 ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
In file included from /usr/include/wibble/net/server.h:26,
                 from /tmp/P_UJ1_P42X/dump1.h:50:
/usr/include/wibble/sys/signal.h: At global scope:
/usr/include/wibble/sys/signal.h:21:52: error: ‘SIG_BLOCK’ was not declared in this scope
   21 |         ProcMask(const sigset_t& newset, int how = SIG_BLOCK)
      |                                                    ^~~~~~~~~
/usr/include/wibble/sys/signal.h: In constructor ‘wibble::sys::sig::ProcMask::ProcMask(const sigset_t&, int)’:
/usr/include/wibble/sys/signal.h:23:21: error: ‘sigprocmask’ was not declared in this scope; did you mean ‘ProcMask’?
   23 |                 if (sigprocmask(how, &newset, &oldset) < 0)
      |                     ^~~~~~~~~~~
      |                     ProcMask
/usr/include/wibble/sys/signal.h: In destructor ‘wibble::sys::sig::ProcMask::~ProcMask()’:
/usr/include/wibble/sys/signal.h:29:33: error: ‘SIG_SETMASK’ was not declared in this scope
   29 |                 if (sigprocmask(SIG_SETMASK, &oldset, NULL) < 0)
      |                                 ^~~~~~~~~~~
/usr/include/wibble/sys/signal.h:29:21: error: ‘sigprocmask’ was not declared in this scope; did you mean ‘ProcMask’?
   29 |                 if (sigprocmask(SIG_SETMASK, &oldset, NULL) < 0)
      |                     ^~~~~~~~~~~
      |                     ProcMask
/usr/include/wibble/sys/signal.h: At global scope:
/usr/include/wibble/sys/signal.h:37:26: error: field ‘oldact’ has incomplete type ‘wibble::sys::sig::sigaction’
   37 |         struct sigaction oldact;
      |                          ^~~~~~
/usr/include/wibble/sys/signal.h:37:16: note: forward declaration of ‘struct wibble::sys::sig::sigaction’
   37 |         struct sigaction oldact;
      |                ^~~~~~~~~
/usr/include/wibble/sys/signal.h: In constructor ‘wibble::sys::sig::Action::Action(int, const wibble::sys::sig::sigaction&)’:
/usr/include/wibble/sys/signal.h:41:52: error: invalid use of incomplete type ‘struct wibble::sys::sig::sigaction’
   41 |                 if (sigaction(signum, &act, &oldact) < 0)
      |                                                    ^
/usr/include/wibble/sys/signal.h:37:16: note: forward declaration of ‘struct wibble::sys::sig::sigaction’
   37 |         struct sigaction oldact;
      |                ^~~~~~~~~
/usr/include/wibble/sys/signal.h: In destructor ‘wibble::sys::sig::Action::~Action()’:
/usr/include/wibble/sys/signal.h:46:52: error: invalid use of incomplete type ‘struct wibble::sys::sig::sigaction’
   46 |                 if (sigaction(signum, &oldact, NULL) < 0)
      |                                                    ^
/usr/include/wibble/sys/signal.h:37:16: note: forward declaration of ‘struct wibble::sys::sig::sigaction’
   37 |         struct sigaction oldact;
      |                ^~~~~~~~~
/usr/include/wibble/string.test.h: In member function ‘Test {anonymous}::TestString::fmtList()’:
/usr/include/wibble/string.test.h:48:30: error: reference to ‘list’ is ambiguous
   48 |         assert_eq( str::fmt( list::Empty< int >() ), "[]" );
      |                              ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note: candidates are: ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.h:12:11: note:                 ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/wibble/string.test.h:48:43: error: expected primary-expression before ‘int’
   48 |         assert_eq( str::fmt( list::Empty< int >() ), "[]" );
      |                                           ^~~
/usr/include/wibble/string.test.h:49:30: error: reference to ‘list’ is ambiguous
   49 |         assert_eq( str::fmt( list::singular( 0 ) ), "[ 0 ]" );
      |                              ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note: candidates are: ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.h:12:11: note:                 ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/wibble/string.test.h:50:30: error: reference to ‘list’ is ambiguous
   50 |         assert_eq( str::fmt( list::append(
      |                              ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note: candidates are: ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.h:12:11: note:                 ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/wibble/string.test.h:51:34: error: reference to ‘list’ is ambiguous
   51 |                                  list::singular( 0 ),
      |                                  ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note: candidates are: ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.h:12:11: note:                 ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
/usr/include/wibble/string.test.h:52:34: error: reference to ‘list’ is ambiguous
   52 |                                  list::singular( 2 ) ) ), "[ 0, 2 ]" );
      |                                  ^~~~
/usr/include/c++/12/bits/stl_list.h:632:11: note: candidates are: ‘template<class _Tp, class _Alloc> class std::__cxx11::list’
  632 |     class list : protected _List_base<_Tp, _Alloc>
      |           ^~~~
/usr/include/wibble/list.h:12:11: note:                 ‘namespace wibble::list { }’
   12 | namespace list {
      |           ^~~~
In file included from /tmp/P_UJ1_P42X/dump1.h:86:
/usr/include/wibble/sys/mmap_v2.test.h: In member function ‘Test TestMMapV2::read()’:
/usr/include/wibble/sys/mmap_v2.test.h:16:9: error: reference to ‘MMap’ is ambiguous
   16 |         MMap map;
      |         ^~~~
In file included from /tmp/P_UJ1_P42X/dump1.h:85:
/usr/include/wibble/sys/mmap_v2.h:26:8: note: candidates are: ‘struct wibble::sys::v2::MMap’
   26 | struct MMap
      |        ^~~~
In file included from /tmp/P_UJ1_P42X/dump1.h:83:
/usr/include/wibble/sys/mmap.h:44:8: note:                 ‘struct wibble::sys::v1::MMap’
   44 | struct MMap
      |        ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:17:23: error: missing template arguments before ‘.’ token
   17 |         assert_eq( map.size(), 0U );
      |                       ^
In file included from /usr/include/c++/12/cassert:44,
                 from /usr/include/wibble/parse.h:5,
                 from /usr/include/wibble/parse.test.h:3,
                 from /tmp/P_UJ1_P42X/dump1.h:56:
/usr/include/wibble/sys/mmap_v2.test.h:18:9: error: missing template arguments before ‘)’ token
   18 |         assert( !map );
      |         ^~~~~~
/usr/include/wibble/sys/mmap_v2.test.h:19:21: error: missing template arguments before ‘.’ token
   19 |         assert( !map.valid() );
      |                     ^
/usr/include/wibble/sys/mmap_v2.test.h:20:21: error: missing template arguments before ‘.’ token
   20 |         assert( !map.mode() );
      |                     ^
/usr/include/wibble/sys/mmap_v2.test.h:22:12: error: expected unqualified-id before ‘.’ token
   22 |         map.map( "/bin/sh" );
      |            ^
/usr/include/wibble/sys/mmap_v2.test.h:23:24: error: missing template arguments before ‘.’ token
   23 |         assert_neq( map.size(), 0U );
      |                        ^
/usr/include/wibble/sys/mmap_v2.test.h:24:23: error: missing template arguments before ‘.’ token
   24 |         assert_eq( map.mode(), MMap::ProtectMode::Read | MMap::ProtectMode::Shared );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:24:32: error: reference to ‘MMap’ is ambiguous
   24 |         assert_eq( map.mode(), MMap::ProtectMode::Read | MMap::ProtectMode::Shared );
      |                                ^~~~
/usr/include/wibble/sys/mmap_v2.h:26:8: note: candidates are: ‘struct wibble::sys::v2::MMap’
   26 | struct MMap
      |        ^~~~
/usr/include/wibble/sys/mmap.h:44:8: note:                 ‘struct wibble::sys::v1::MMap’
   44 | struct MMap
      |        ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:24:58: error: reference to ‘MMap’ is ambiguous
   24 |         assert_eq( map.mode(), MMap::ProtectMode::Read | MMap::ProtectMode::Shared );
      |                                                          ^~~~
/usr/include/wibble/sys/mmap_v2.h:26:8: note: candidates are: ‘struct wibble::sys::v2::MMap’
   26 | struct MMap
      |        ^~~~
/usr/include/wibble/sys/mmap.h:44:8: note:                 ‘struct wibble::sys::v1::MMap’
   44 | struct MMap
      |        ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:25:20: error: missing template arguments before ‘.’ token
   25 |         assert( map.valid() );
      |                    ^
/usr/include/wibble/sys/mmap_v2.test.h:26:23: error: missing template arguments before ‘[’ token
   26 |         assert_eq( map[ 1 ], 'E' );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:27:23: error: missing template arguments before ‘[’ token
   27 |         assert_eq( map[ 2 ], 'L' );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:28:23: error: missing template arguments before ‘[’ token
   28 |         assert_eq( map[ 3 ], 'F' );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:30:9: error: reference to ‘MMap’ is ambiguous
   30 |         MMap map1 = map; // shared_ptr semantics
      |         ^~~~
/usr/include/wibble/sys/mmap_v2.h:26:8: note: candidates are: ‘struct wibble::sys::v2::MMap’
   26 | struct MMap
      |        ^~~~
/usr/include/wibble/sys/mmap.h:44:8: note:                 ‘struct wibble::sys::v1::MMap’
   44 | struct MMap
      |        ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:31:23: error: missing template arguments before ‘.’ token
   31 |         assert_eq( map.size(), map.size() );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:31:35: error: missing template arguments before ‘.’ token
   31 |         assert_eq( map.size(), map.size() );
      |                                   ^
/usr/include/wibble/sys/mmap_v2.test.h:32:23: error: missing template arguments before ‘.’ token
   32 |         assert_eq( map.asArrayOf< char >(), map1.asArrayOf< char >() );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:32:35: error: expected primary-expression before ‘char’
   32 |         assert_eq( map.asArrayOf< char >(), map1.asArrayOf< char >() );
      |                                   ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:32:45: error: ‘map1’ was not declared in this scope
   32 |         assert_eq( map.asArrayOf< char >(), map1.asArrayOf< char >() );
      |                                             ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:32:61: error: expected primary-expression before ‘char’
   32 |         assert_eq( map.asArrayOf< char >(), map1.asArrayOf< char >() );
      |                                                             ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:33:23: error: missing template arguments before ‘.’ token
   33 |         assert_eq( map.mode(), map1.mode() );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:35:30: error: expected primary-expression before ‘char’
   35 |         assert_eq( map1.get< char >( 1 ), 'E' );
      |                              ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:36:30: error: expected primary-expression before ‘char’
   36 |         assert_eq( map1.get< char >( 2 ), 'L' );
      |                              ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:37:30: error: expected primary-expression before ‘char’
   37 |         assert_eq( map1.get< char >( 3 ), 'F' );
      |                              ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:42:23: error: missing template arguments before ‘.’ token
   42 |         assert_eq( map.cget< char >( 1 ), 'E' );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:42:30: error: expected primary-expression before ‘char’
   42 |         assert_eq( map.cget< char >( 1 ), 'E' );
      |                              ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:43:23: error: missing template arguments before ‘.’ token
   43 |         assert_eq( map.cget< char >( 2 ), 'L' );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:43:30: error: expected primary-expression before ‘char’
   43 |         assert_eq( map.cget< char >( 2 ), 'L' );
      |                              ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:44:23: error: missing template arguments before ‘.’ token
   44 |         assert_eq( map.cget< char >( 3 ), 'F' );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:44:30: error: expected primary-expression before ‘char’
   44 |         assert_eq( map.cget< char >( 3 ), 'F' );
      |                              ^~~~
/usr/include/wibble/sys/mmap_v2.test.h:46:20: error: missing template arguments before ‘.’ token
   46 |         assert( map.valid() );
      |                    ^
/usr/include/wibble/sys/mmap_v2.test.h:48:12: error: expected unqualified-id before ‘.’ token
   48 |         map.unmap();
      |            ^
/usr/include/wibble/sys/mmap_v2.test.h:49:23: error: missing template arguments before ‘.’ token
   49 |         assert_eq( map.size(), 0U );
      |                       ^
/usr/include/wibble/sys/mmap_v2.test.h:50:9: error: missing template arguments before ‘)’ token
   50 |         assert( !map );
      |         ^~~~~~
In file included from /tmp/P_UJ1_P42X/dump1.h:94:
/usr/include/wibble/sys/signal.test.h: In member function ‘Test TestSignal::sigAction()’:
/usr/include/wibble/sys/signal.test.h:21:30: error: aggregate ‘TestSignal::sigAction()::sigaction a’ has incomplete type and cannot be defined
   21 |             struct sigaction a;
      |                              ^
/usr/include/wibble/sys/signal.test.h:23:13: error: ‘sigemptyset’ was not declared in this scope
   23 |             sigemptyset(&a.sa_mask);
      |             ^~~~~~~~~~~
/usr/include/wibble/sys/signal.test.h:28:29: error: ‘SIGUSR1’ was not declared in this scope
   28 |             sig::Action act(SIGUSR1, a);
      |                             ^~~~~~~
/usr/include/wibble/sys/signal.test.h:29:13: error: ‘kill’ was not declared in this scope
   29 |             kill(getpid(), SIGUSR1);
      |             ^~~~
/usr/include/wibble/sys/signal.test.h: In member function ‘Test TestSignal::sigProcMask()’:
/usr/include/wibble/sys/signal.test.h:37:30: error: aggregate ‘TestSignal::sigProcMask()::sigaction a’ has incomplete type and cannot be defined
   37 |             struct sigaction a;
      |                              ^
/usr/include/wibble/sys/signal.test.h:39:13: error: ‘sigemptyset’ was not declared in this scope
   39 |             sigemptyset(&a.sa_mask);
      |             ^~~~~~~~~~~
/usr/include/wibble/sys/signal.test.h:43:33: error: ‘SIGUSR1’ was not declared in this scope
   43 |             sigaddset(&blocked, SIGUSR1);
      |                                 ^~~~~~~
/usr/include/wibble/sys/signal.test.h:43:13: error: ‘sigaddset’ was not declared in this scope
   43 |             sigaddset(&blocked, SIGUSR1);
      |             ^~~~~~~~~
/usr/include/wibble/sys/signal.test.h:50:21: error: ‘kill’ was not declared in this scope
   50 |                     kill(getpid(), SIGUSR1);
      |                     ^~~~
In file included from /tmp/P_UJ1_P42X/dump1.h:97:
/usr/include/wibble/test-main.h: At global scope:
/usr/include/wibble/test-main.h:16:27: error: expected class-name before ‘{’ token
   16 | struct Main : RunFeedback {
      |                           ^
/usr/include/wibble/test-main.h:37:5: error: ‘RunAll’ does not name a type
   37 |     RunAll all;
      |     ^~~~~~
/usr/include/wibble/test-main.h: In member function ‘void Main::child()’:
/usr/include/wibble/test-main.h:53:13: error: ‘RunSuite’ was not declared in this scope
   53 |             RunSuite *s = all.findSuite( argv[1] );
      |             ^~~~~~~~
/usr/include/wibble/test-main.h:53:23: error: ‘s’ was not declared in this scope
   53 |             RunSuite *s = all.findSuite( argv[1] );
      |                       ^
/usr/include/wibble/test-main.h:53:27: error: ‘all’ was not declared in this scope; did you mean ‘atoll’?
   53 |             RunSuite *s = all.findSuite( argv[1] );
      |                           ^~~
      |                           atoll
/usr/include/wibble/test-main.h:78:13: error: ‘all’ was not declared in this scope; did you mean ‘atoll’?
   78 |             all.runFrom( suite, test );
      |             ^~~
      |             atoll
/usr/include/wibble/test-main.h: In member function ‘int Main::main(int, char**)’:
/usr/include/wibble/test-main.h:225:9: error: ‘all’ was not declared in this scope; did you mean ‘atoll’?
  225 |         all.suiteCount = sizeof(suites)/sizeof(RunSuite);
      |         ^~~
      |         atoll
/usr/include/wibble/test-main.h:225:33: error: ‘suites’ was not declared in this scope; did you mean ‘suite’?
  225 |         all.suiteCount = sizeof(suites)/sizeof(RunSuite);
      |                                 ^~~~~~
      |                                 suite
/usr/include/wibble/test-main.h:225:48: error: ‘RunSuite’ was not declared in this scope
  225 |         all.suiteCount = sizeof(suites)/sizeof(RunSuite);
      |                                                ^~~~~~~~

