Compile Error

foo.cc:2:7: error: stray '\347' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
       ^
foo.cc:2:8: error: stray '\216' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
        ^
foo.cc:2:9: error: stray '\213' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
         ^
foo.cc:2:10: error: stray '\350' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
          ^
foo.cc:2:11: error: stray '\257' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
           ^
foo.cc:2:12: error: stray '\272' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
            ^
foo.cc:2:13: error: stray '\346' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
             ^
foo.cc:2:14: error: stray '\200' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
              ^
foo.cc:2:15: error: stray '\241' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
               ^
foo.cc:2:23: error: stray '\347' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                       ^
foo.cc:2:24: error: stray '\216' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                        ^
foo.cc:2:25: error: stray '\213' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                         ^
foo.cc:2:26: error: stray '\350' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                          ^
foo.cc:2:27: error: stray '\257' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                           ^
foo.cc:2:28: error: stray '\272' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                            ^
foo.cc:2:29: error: stray '\346' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                             ^
foo.cc:2:30: error: stray '\200' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                              ^
foo.cc:2:31: error: stray '\241' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                               ^
foo.cc:2:39: error: stray '@' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                                       ^
foo.cc:2:43: error: stray '\345' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                                           ^
foo.cc:2:44: error: stray '\244' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                                            ^
foo.cc:2:45: error: stray '\251' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                                             ^
foo.cc:2:46: error: stray '\345' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                                              ^
foo.cc:2:47: error: stray '\211' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                                               ^
foo.cc:2:48: error: stray '\215' in program
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
                                                ^
foo.cc:2:2: error: expected unqualified-id before numeric constant
  12312王诺怡 (12312王诺怡) LV 8 @ 3 天前
  ^~~~~
In file included from /usr/include/c++/7/iosfwd:40:0,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/postypes.h:98:11: error: 'ptrdiff_t' does not name a type
   typedef ptrdiff_t streamsize; // Signed integral type
           ^~~~~~~~~
In file included from /usr/include/c++/7/bits/exception_ptr.h:40:0,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/new:120:31: error: declaration of 'operator new' as non-function
 void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
                               ^
/usr/include/c++/7/new:120:25: error: 'size_t' is not a member of 'std'
 void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
                         ^~~~~~
/usr/include/c++/7/new:120:25: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/exception_ptr.h:40:0,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/new:122:33: error: declaration of 'operator new []' as non-function
 void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
                                 ^
/usr/include/c++/7/new:122:27: error: 'size_t' is not a member of 'std'
 void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
                           ^~~~~~
/usr/include/c++/7/new:122:27: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/exception_ptr.h:40:0,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/new:134:25: error: declaration of 'operator new' as non-function
 void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
                         ^~~~~~
/usr/include/c++/7/new:134:25: error: 'size_t' is not a member of 'std'
/usr/include/c++/7/new:134:25: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/exception_ptr.h:40:0,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/new:134:33: error: expected primary-expression before 'const'
 void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
                                 ^~~~~
/usr/include/c++/7/new:136:27: error: declaration of 'operator new []' as non-function
 void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
                           ^~~~~~
/usr/include/c++/7/new:136:27: error: 'size_t' is not a member of 'std'
/usr/include/c++/7/new:136:27: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/exception_ptr.h:40:0,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/new:136:35: error: expected primary-expression before 'const'
 void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
                                   ^~~~~
/usr/include/c++/7/new:168:32: error: declaration of 'operator new' as non-function
 inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
                                ^~~~~~
/usr/include/c++/7/new:168:32: error: 'size_t' is not a member of 'std'
/usr/include/c++/7/new:168:32: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/exception_ptr.h:40:0,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/new:168:40: error: expected primary-expression before 'void'
 inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
                                        ^~~~
/usr/include/c++/7/new:170:34: error: declaration of 'operator new []' as non-function
 inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
                                  ^~~~~~
/usr/include/c++/7/new:170:34: error: 'size_t' is not a member of 'std'
/usr/include/c++/7/new:170:34: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/exception_ptr.h:40:0,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/new:170:42: error: expected primary-expression before 'void'
 inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
                                          ^~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:362:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Size>
                               ^~~~~~
/usr/include/c++/7/type_traits:363:25: error: '_Size' was not declared in this scope
     struct is_array<_Tp[_Size]>
                         ^~~~~
/usr/include/c++/7/type_traits:363:31: error: template argument 1 is invalid
     struct is_array<_Tp[_Size]>
                               ^
/usr/include/c++/7/type_traits:561:42: error: 'nullptr_t' is not a member of 'std'
     struct __is_null_pointer_helper<std::nullptr_t>
                                          ^~~~~~~~~
/usr/include/c++/7/type_traits:561:42: note: suggested alternative:
In file included from /usr/include/c++/7/bits/cxxabi_init_exception.h:38:0,
                 from /usr/include/c++/7/bits/exception_ptr.h:38,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:444:29: note:   'nullptr_t'
   typedef decltype(nullptr) nullptr_t;
                             ^~~~~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:561:42: error: 'nullptr_t' is not a member of 'std'
     struct __is_null_pointer_helper<std::nullptr_t>
                                          ^~~~~~~~~
/usr/include/c++/7/type_traits:561:42: note: suggested alternative:
In file included from /usr/include/c++/7/bits/cxxabi_init_exception.h:38:0,
                 from /usr/include/c++/7/bits/exception_ptr.h:38,
                 from /usr/include/c++/7/exception:142,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:444:29: note:   'nullptr_t'
   typedef decltype(nullptr) nullptr_t;
                             ^~~~~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:561:51: error: template argument 1 is invalid
     struct __is_null_pointer_helper<std::nullptr_t>
                                                   ^
/usr/include/c++/7/type_traits:1464:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, __alignof__(_Tp)> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1464:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1464:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, __alignof__(_Tp)> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1464:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1464:61: error: template argument 1 is invalid
     : public integral_constant<std::size_t, __alignof__(_Tp)> { };
                                                             ^
/usr/include/c++/7/type_traits:1464:61: note: invalid template non-type parameter
/usr/include/c++/7/type_traits:1469:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 0> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1469:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1469:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 0> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1469:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1469:46: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 0> { };
                                              ^
/usr/include/c++/7/type_traits:1469:46: note: invalid template non-type parameter
/usr/include/c++/7/type_traits:1471:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Size>
                               ^~~~~~
/usr/include/c++/7/type_traits:1472:21: error: '_Size' was not declared in this scope
     struct rank<_Tp[_Size]>
                     ^~~~~
/usr/include/c++/7/type_traits:1472:27: error: template argument 1 is invalid
     struct rank<_Tp[_Size]>
                           ^
/usr/include/c++/7/type_traits:1473:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1473:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1473:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1473:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1473:65: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                                                 ^
/usr/include/c++/7/type_traits:1473:65: note: invalid template non-type parameter
/usr/include/c++/7/type_traits:1477:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1477:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1477:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1477:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1477:65: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                                                 ^
/usr/include/c++/7/type_traits:1477:65: note: invalid template non-type parameter
/usr/include/c++/7/type_traits:1482:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 0> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1482:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1482:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 0> { };
                                     ^~~~~~
/usr/include/c++/7/type_traits:1482:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1482:46: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 0> { };
                                              ^
/usr/include/c++/7/type_traits:1482:46: note: invalid template non-type parameter
/usr/include/c++/7/type_traits:1484:47: error: 'std::size_t' has not been declared
   template<typename _Tp, unsigned _Uint, std::size_t _Size>
                                               ^~~~~~
/usr/include/c++/7/type_traits:1485:23: error: '_Size' was not declared in this scope
     struct extent<_Tp[_Size], _Uint>
                       ^~~~~
/usr/include/c++/7/type_traits:1485:36: error: template argument 1 is invalid
     struct extent<_Tp[_Size], _Uint>
                                    ^
/usr/include/c++/7/type_traits:1486:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t,
                                     ^~~~~~
/usr/include/c++/7/type_traits:1486:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1486:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t,
                                     ^~~~~~
/usr/include/c++/7/type_traits:1486:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1487:24: error: '_Size' was not declared in this scope
           _Uint == 0 ? _Size : extent<_Tp,
                        ^~~~~
/usr/include/c++/7/type_traits:1488:28: error: template argument 1 is invalid
           _Uint - 1>::value>
                            ^
/usr/include/c++/7/type_traits:1488:28: note: invalid template non-type parameter
/usr/include/c++/7/type_traits:1493:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t,
                                     ^~~~~~
/usr/include/c++/7/type_traits:1493:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1493:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t,
                                     ^~~~~~
/usr/include/c++/7/type_traits:1493:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/move.h:54:0,
                 from /usr/include/c++/7/bits/nested_exception.h:40,
                 from /usr/include/c++/7/exception:143,
                 from /usr/include/c++/7/ios:39,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/type_traits:1495:31: error: template argument 1 is invalid
              _Uint - 1>::value>
                               ^
/usr/include/c++/7/type_traits:1495:31: note: invalid template non-type parameter
/usr/include/c++/7/type_traits:1944:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Size>
                               ^~~~~~
/usr/include/c++/7/type_traits:1945:30: error: '_Size' was not declared in this scope
     struct remove_extent<_Tp[_Size]>
                              ^~~~~
/usr/include/c++/7/type_traits:1945:36: error: template argument 1 is invalid
     struct remove_extent<_Tp[_Size]>
                                    ^
/usr/include/c++/7/type_traits:1957:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Size>
                               ^~~~~~
/usr/include/c++/7/type_traits:1958:35: error: '_Size' was not declared in this scope
     struct remove_all_extents<_Tp[_Size]>
                                   ^~~~~
/usr/include/c++/7/type_traits:1958:41: error: template argument 1 is invalid
     struct remove_all_extents<_Tp[_Size]>
                                         ^
/usr/include/c++/7/type_traits:2016:17: error: 'std::size_t' has not been declared
   template<std::size_t _Len>
                 ^~~~~~
/usr/include/c++/7/type_traits:2021:23: error: '_Len' was not declared in this scope
  unsigned char __data[_Len];
                       ^~~~
/usr/include/c++/7/type_traits:2036:17: error: 'std::size_t' has not been declared
   template<std::size_t _Len, std::size_t _Align =
                 ^~~~~~
/usr/include/c++/7/type_traits:2036:35: error: 'std::size_t' has not been declared
   template<std::size_t _Len, std::size_t _Align =
                                   ^~~~~~
/usr/include/c++/7/type_traits:2037:48: error: '_Len' was not declared in this scope
     __alignof__(typename __aligned_storage_msa<_Len>::__type)>
                                                ^~~~
/usr/include/c++/7/type_traits:2037:52: error: template argument 1 is invalid
     __alignof__(typename __aligned_storage_msa<_Len>::__type)>
                                                    ^
/usr/include/c++/7/type_traits:2042:23: error: '_Len' was not declared in this scope
  unsigned char __data[_Len];
                       ^~~~
/usr/include/c++/7/type_traits:2043:37: error: '_Align' was not declared in this scope
  struct __attribute__((__aligned__((_Align)))) { } __align;
                                     ^~~~~~
In file included from /usr/include/c++/7/bits/stl_algobase.h:62:0,
                 from /usr/include/c++/7/bits/char_traits.h:39,
                 from /usr/include/c++/7/ios:40,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/type_traits.h:162:35: error: 'bool __gnu_cxx::__is_null_pointer' redeclared as different kind of symbol
   __is_null_pointer(std::nullptr_t)
                                   ^
/usr/include/c++/7/ext/type_traits.h:157:5: note: previous declaration 'template<class _Type> bool __gnu_cxx::__is_null_pointer(_Type)'
     __is_null_pointer(_Type)
     ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/ext/type_traits.h:162:26: error: 'nullptr_t' is not a member of 'std'
   __is_null_pointer(std::nullptr_t)
                          ^~~~~~~~~
/usr/include/c++/7/ext/type_traits.h:162:26: note: suggested alternative: '__is_nullptr_t'
   __is_null_pointer(std::nullptr_t)
                          ^~~~~~~~~
                          __is_nullptr_t
In file included from /usr/include/c++/7/bits/stl_algobase.h:64:0,
                 from /usr/include/c++/7/bits/char_traits.h:39,
                 from /usr/include/c++/7/ios:40,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/stl_pair.h:86:17: error: 'std::size_t' has not been declared
   template<std::size_t...>
                 ^~~~~~
/usr/include/c++/7/bits/stl_pair.h:434:41: error: 'std::size_t' has not been declared
       template<typename... _Args1, std::size_t... _Indexes1,
                                         ^~~~~~
/usr/include/c++/7/bits/stl_pair.h:435:41: error: 'std::size_t' has not been declared
                typename... _Args2, std::size_t... _Indexes2>
                                         ^~~~~~
/usr/include/c++/7/bits/stl_pair.h:437:27: error: '_Indexes1' was not declared in this scope
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                           ^~~~~~~~~
/usr/include/c++/7/bits/stl_pair.h:437:27: note: suggested alternative: '_Index_tuple'
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                           ^~~~~~~~~
                           _Index_tuple
/usr/include/c++/7/bits/stl_pair.h:437:36: error: expected parameter pack before '...'
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                    ^~~
/usr/include/c++/7/bits/stl_pair.h:437:39: error: template argument 1 is invalid
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                       ^
/usr/include/c++/7/bits/stl_pair.h:437:55: error: '_Indexes2' was not declared in this scope
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                                       ^~~~~~~~~
/usr/include/c++/7/bits/stl_pair.h:437:55: note: suggested alternative: '_Index_tuple'
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                                       ^~~~~~~~~
                                                       _Index_tuple
/usr/include/c++/7/bits/stl_pair.h:437:64: error: expected parameter pack before '...'
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                                                ^~~
/usr/include/c++/7/bits/stl_pair.h:437:67: error: template argument 1 is invalid
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                                                   ^
In file included from /usr/include/c++/7/ios:40:0,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/char_traits.h:108:66: error: 'std::size_t' has not been declared
       compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
                                                                  ^~~~~~
/usr/include/c++/7/bits/char_traits.h:110:40: error: 'size_t' in namespace 'std' does not name a type
       static _GLIBCXX14_CONSTEXPR std::size_t
                                        ^~~~~~
/usr/include/c++/7/bits/char_traits.h:114:39: error: 'std::size_t' has not been declared
       find(const char_type* __s, std::size_t __n, const char_type& __a);
                                       ^~~~~~
/usr/include/c++/7/bits/char_traits.h:117:57: error: 'std::size_t' has not been declared
       move(char_type* __s1, const char_type* __s2, std::size_t __n);
                                                         ^~~~~~
/usr/include/c++/7/bits/char_traits.h:120:57: error: 'std::size_t' has not been declared
       copy(char_type* __s1, const char_type* __s2, std::size_t __n);
                                                         ^~~~~~
/usr/include/c++/7/bits/char_traits.h:123:35: error: 'std::size_t' has not been declared
       assign(char_type* __s, std::size_t __n, char_type __a);
                                   ^~~~~~
/usr/include/c++/7/bits/char_traits.h:149:64: error: 'std::size_t' has not been declared
     compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
                                                                ^~~~~~
/usr/include/c++/7/bits/char_traits.h: In static member function 'static int __gnu_cxx::char_traits<_CharT>::compare(const char_type*, const char_type*, int)':
/usr/include/c++/7/bits/char_traits.h:151:17: error: 'size_t' is not a member of 'std'
       for (std::size_t __i = 0; __i < __n; ++__i)
                 ^~~~~~
/usr/include/c++/7/bits/char_traits.h:151:17: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/ios:40:0,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/char_traits.h:151:33: error: '__i' was not declared in this scope
       for (std::size_t __i = 0; __i < __n; ++__i)
                                 ^~~
/usr/include/c++/7/bits/char_traits.h:151:33: note: suggested alternative: '__n'
       for (std::size_t __i = 0; __i < __n; ++__i)
                                 ^~~
                                 __n
/usr/include/c++/7/bits/char_traits.h: At global scope:
/usr/include/c++/7/bits/char_traits.h:160:31: error: 'size_t' in namespace 'std' does not name a type
     _GLIBCXX14_CONSTEXPR std::size_t
                               ^~~~~~
/usr/include/c++/7/bits/char_traits.h:173:37: error: 'std::size_t' has not been declared
     find(const char_type* __s, std::size_t __n, const char_type& __a)
                                     ^~~~~~
/usr/include/c++/7/bits/char_traits.h: In static member function 'static const char_type* __gnu_cxx::char_traits<_CharT>::find(const char_type*, int, const char_type&)':
/usr/include/c++/7/bits/char_traits.h:175:17: error: 'size_t' is not a member of 'std'
       for (std::size_t __i = 0; __i < __n; ++__i)
                 ^~~~~~
/usr/include/c++/7/bits/char_traits.h:175:17: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/ios:40:0,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/char_traits.h:175:33: error: '__i' was not declared in this scope
       for (std::size_t __i = 0; __i < __n; ++__i)
                                 ^~~
/usr/include/c++/7/bits/char_traits.h:175:33: note: suggested alternative: '__s'
       for (std::size_t __i = 0; __i < __n; ++__i)
                                 ^~~
                                 __s
/usr/include/c++/7/bits/char_traits.h: At global scope:
/usr/include/c++/7/bits/char_traits.h:184:55: error: 'std::size_t' has not been declared
     move(char_type* __s1, const char_type* __s2, std::size_t __n)
                                                       ^~~~~~
/usr/include/c++/7/bits/char_traits.h:193:55: error: 'std::size_t' has not been declared
     copy(char_type* __s1, const char_type* __s2, std::size_t __n)
                                                       ^~~~~~
/usr/include/c++/7/bits/char_traits.h:203:33: error: 'std::size_t' has not been declared
     assign(char_type* __s, std::size_t __n, char_type __a)
                                 ^~~~~~
In file included from /usr/include/x86_64-linux-gnu/c++/7/bits/c++allocator.h:33:0,
                 from /usr/include/c++/7/bits/allocator.h:46,
                 from /usr/include/c++/7/string:41,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/new_allocator.h:44:14: error: 'std::size_t' has not been declared
   using std::size_t;
              ^~~~~~
/usr/include/c++/7/ext/new_allocator.h:45:14: error: 'std::ptrdiff_t' has not been declared
   using std::ptrdiff_t;
              ^~~~~~~~~
In file included from /usr/include/c++/7/string:44:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/ostream_insert.h:45:26: error: 'streamsize' has not been declared
       const _CharT* __s, streamsize __n)
                          ^~~~~~~~~~
/usr/include/c++/7/bits/ostream_insert.h: In function 'void std::__ostream_write(std::basic_ostream<_CharT, _Traits>&, const _CharT*, int)':
/usr/include/c++/7/bits/ostream_insert.h:50:13: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       const streamsize __put = __out.rdbuf()->sputn(__s, __n);
             ^~~~~~~~~~
             streambuf
/usr/include/c++/7/bits/ostream_insert.h:51:11: error: '__put' was not declared in this scope
       if (__put != __n)
           ^~~~~
/usr/include/c++/7/bits/ostream_insert.h:51:11: note: suggested alternative: '__out'
       if (__put != __n)
           ^~~~~
           __out
/usr/include/c++/7/bits/ostream_insert.h: At global scope:
/usr/include/c++/7/bits/ostream_insert.h:57:59: error: 'streamsize' has not been declared
     __ostream_fill(basic_ostream<_CharT, _Traits>& __out, streamsize __n)
                                                           ^~~~~~~~~~
/usr/include/c++/7/bits/ostream_insert.h:77:27: error: 'streamsize' has not been declared
        const _CharT* __s, streamsize __n)
                           ^~~~~~~~~~
/usr/include/c++/7/bits/ostream_insert.h: In function 'std::basic_ostream<_CharT, _Traits>& std::__ostream_insert(std::basic_ostream<_CharT, _Traits>&, const _CharT*, int)':
/usr/include/c++/7/bits/ostream_insert.h:87:14: error: 'streamsize' does not name a type; did you mean 'streambuf'?
        const streamsize __w = __out.width();
              ^~~~~~~~~~
              streambuf
/usr/include/c++/7/bits/ostream_insert.h:88:12: error: '__w' was not declared in this scope
        if (__w > __n)
            ^~~
/usr/include/c++/7/bits/ostream_insert.h:88:12: note: suggested alternative: '__s'
        if (__w > __n)
            ^~~
            __s
/usr/include/c++/7/bits/ostream_insert.h: At global scope:
/usr/include/c++/7/bits/ostream_insert.h:118:68: error: 'streamsize' has not been declared
   extern template ostream& __ostream_insert(ostream&, const char*, streamsize);
                                                                    ^~~~~~~~~~
/usr/include/c++/7/bits/ostream_insert.h:122:11: error: 'streamsize' has not been declared
           streamsize);
           ^~~~~~~~~~
In file included from /usr/include/c++/7/ext/alloc_traits.h:36:0,
                 from /usr/include/c++/7/bits/basic_string.h:40,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/alloc_traits.h:404:36: error: 'ptrdiff_t' in namespace 'std' does not name a type
       using difference_type = std::ptrdiff_t;
                                    ^~~~~~~~~
/usr/include/c++/7/bits/alloc_traits.h:407:30: error: 'size_t' in namespace 'std' does not name a type
       using size_type = std::size_t;
                              ^~~~~~
/usr/include/c++/7/bits/alloc_traits.h:435:37: error: 'size_type' has not been declared
       allocate(allocator_type& __a, size_type __n)
                                     ^~~~~~~~~
/usr/include/c++/7/bits/alloc_traits.h:449:37: error: 'size_type' has not been declared
       allocate(allocator_type& __a, size_type __n, const_void_pointer __hint)
                                     ^~~~~~~~~
/usr/include/c++/7/bits/alloc_traits.h:461:52: error: 'size_type' has not been declared
       deallocate(allocator_type& __a, pointer __p, size_type __n)
                                                    ^~~~~~~~~
/usr/include/c++/7/bits/alloc_traits.h:494:14: error: 'size_type' does not name a type; did you mean 'true_type'?
       static size_type
              ^~~~~~~~~
              true_type
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:55:51: error: 'std::size_t' has not been declared
     const char* __name, const _CharT* __str, std::size_t* __idx,
                                                   ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:48: error: 'std::size_t' has not been declared
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
                                                ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:100:31: error: 'std::size_t' has not been declared
      __builtin_va_list), std::size_t __n,
                               ^~~~~~
In file included from /usr/include/c++/7/bits/basic_string.h:40:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/alloc_traits.h: In instantiation of 'struct __gnu_cxx::__alloc_traits<std::allocator<char> >':
/usr/include/c++/7/bits/basic_string.h:80:24:   required from 'class std::__cxx11::basic_string<char>'
/usr/include/c++/7/bits/basic_string.h:6372:68:   required from here
/usr/include/c++/7/ext/alloc_traits.h:61:53: error: no type named 'size_type' in 'struct std::allocator_traits<std::allocator<char> >'
     typedef typename _Base_type::size_type          size_type;
                                                     ^~~~~~~~~
/usr/include/c++/7/ext/alloc_traits.h:62:53: error: no type named 'difference_type' in 'struct std::allocator_traits<std::allocator<char> >'
     typedef typename _Base_type::difference_type    difference_type;
                                                     ^~~~~~~~~~~~~~~
/usr/include/c++/7/ext/alloc_traits.h:70:23: error: no members matching '__gnu_cxx::__alloc_traits<std::allocator<char> >::_Base_type {aka std::allocator_traits<std::allocator<char> >}::max_size' in '__gnu_cxx::__alloc_traits<std::allocator<char> >::_Base_type {aka struct std::allocator_traits<std::allocator<char> >}'
     using _Base_type::max_size;
                       ^~~~~~~~
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h: In function 'int std::__cxx11::stoi(const string&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6373:19: error: no matching function for call to '__stoa<long int, int>(long int (*)(const char*, char**, int) throw (), const char [5], const char*, size_t*&, int&)'
      __idx, __base); }
                   ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6373:19: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
      __idx, __base); }
                   ^
/usr/include/c++/7/bits/basic_string.h: In function 'long int std::__cxx11::stol(const string&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6378:22: error: no matching function for call to '__stoa(long int (*)(const char*, char**, int) throw (), const char [5], const char*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6378:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
         __idx, __base); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'long unsigned int std::__cxx11::stoul(const string&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6383:22: error: no matching function for call to '__stoa(long unsigned int (*)(const char*, char**, int) throw (), const char [6], const char*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6383:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
         __idx, __base); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'long long int std::__cxx11::stoll(const string&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6388:22: error: no matching function for call to '__stoa(long long int (*)(const char*, char**, int) throw (), const char [6], const char*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6388:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
         __idx, __base); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'long long unsigned int std::__cxx11::stoull(const string&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6393:22: error: no matching function for call to '__stoa(long long unsigned int (*)(const char*, char**, int) throw (), const char [7], const char*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6393:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
         __idx, __base); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'float std::__cxx11::stof(const string&, size_t*)':
/usr/include/c++/7/bits/basic_string.h:6398:72: error: no matching function for call to '__stoa(float (*)(const char*, char**) throw (), const char [5], const char*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::strtof, "stof", __str.c_str(), __idx); }
                                                                        ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6398:72: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
   { return __gnu_cxx::__stoa(&std::strtof, "stof", __str.c_str(), __idx); }
                                                                        ^
/usr/include/c++/7/bits/basic_string.h: In function 'double std::__cxx11::stod(const string&, size_t*)':
/usr/include/c++/7/bits/basic_string.h:6402:72: error: no matching function for call to '__stoa(double (*)(const char*, char**) throw (), const char [5], const char*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::strtod, "stod", __str.c_str(), __idx); }
                                                                        ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6402:72: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
   { return __gnu_cxx::__stoa(&std::strtod, "stod", __str.c_str(), __idx); }
                                                                        ^
/usr/include/c++/7/bits/basic_string.h: In function 'long double std::__cxx11::stold(const string&, size_t*)':
/usr/include/c++/7/bits/basic_string.h:6406:74: error: no matching function for call to '__stoa(long double (*)(const char*, char**) throw (), const char [6], const char*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::strtold, "stold", __str.c_str(), __idx); }
                                                                          ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6406:74: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
   { return __gnu_cxx::__stoa(&std::strtold, "stold", __str.c_str(), __idx); }
                                                                          ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(int)':
/usr/include/c++/7/bits/basic_string.h:6416:20: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [3], int&)'
         "%d", __val); }
                    ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6416:20: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%d", __val); }
                    ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(unsigned int)':
/usr/include/c++/7/bits/basic_string.h:6422:20: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [3], unsigned int&)'
         "%u", __val); }
                    ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6422:20: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%u", __val); }
                    ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long int)':
/usr/include/c++/7/bits/basic_string.h:6427:21: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [4], long int&)'
         "%ld", __val); }
                     ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6427:21: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%ld", __val); }
                     ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long unsigned int)':
/usr/include/c++/7/bits/basic_string.h:6433:21: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [4], long unsigned int&)'
         "%lu", __val); }
                     ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6433:21: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%lu", __val); }
                     ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long long int)':
/usr/include/c++/7/bits/basic_string.h:6439:22: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [5], long long int&)'
         "%lld", __val); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6439:22: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%lld", __val); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long long unsigned int)':
/usr/include/c++/7/bits/basic_string.h:6445:22: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), long unsigned int, const char [5], long long unsigned int&)'
         "%llu", __val); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6445:22: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%llu", __val); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(float)':
/usr/include/c++/7/bits/basic_string.h:6453:20: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), const int&, const char [3], float&)'
         "%f", __val);
                    ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6453:20: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%f", __val);
                    ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(double)':
/usr/include/c++/7/bits/basic_string.h:6462:20: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), const int&, const char [3], double&)'
         "%f", __val);
                    ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6462:20: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%f", __val);
                    ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long double)':
/usr/include/c++/7/bits/basic_string.h:6471:21: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*) throw (), const int&, const char [4], long double&)'
         "%Lf", __val);
                     ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6471:21: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%Lf", __val);
                     ^
In file included from /usr/include/c++/7/bits/basic_string.h:40:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/alloc_traits.h: In instantiation of 'struct __gnu_cxx::__alloc_traits<std::allocator<wchar_t> >':
/usr/include/c++/7/bits/basic_string.h:80:24:   required from 'class std::__cxx11::basic_string<wchar_t>'
/usr/include/c++/7/bits/basic_string.h:6478:68:   required from here
/usr/include/c++/7/ext/alloc_traits.h:61:53: error: no type named 'size_type' in 'struct std::allocator_traits<std::allocator<wchar_t> >'
     typedef typename _Base_type::size_type          size_type;
                                                     ^~~~~~~~~
/usr/include/c++/7/ext/alloc_traits.h:62:53: error: no type named 'difference_type' in 'struct std::allocator_traits<std::allocator<wchar_t> >'
     typedef typename _Base_type::difference_type    difference_type;
                                                     ^~~~~~~~~~~~~~~
/usr/include/c++/7/ext/alloc_traits.h:70:23: error: no members matching '__gnu_cxx::__alloc_traits<std::allocator<wchar_t> >::_Base_type {aka std::allocator_traits<std::allocator<wchar_t> >}::max_size' in '__gnu_cxx::__alloc_traits<std::allocator<wchar_t> >::_Base_type {aka struct std::allocator_traits<std::allocator<wchar_t> >}'
     using _Base_type::max_size;
                       ^~~~~~~~
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h: In function 'int std::__cxx11::stoi(const wstring&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6479:19: error: no matching function for call to '__stoa<long int, int>(long int (*)(const wchar_t*, wchar_t**, int) throw (), const char [5], const wchar_t*, size_t*&, int&)'
      __idx, __base); }
                   ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6479:19: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
      __idx, __base); }
                   ^
/usr/include/c++/7/bits/basic_string.h: In function 'long int std::__cxx11::stol(const wstring&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6484:22: error: no matching function for call to '__stoa(long int (*)(const wchar_t*, wchar_t**, int) throw (), const char [5], const wchar_t*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6484:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
         __idx, __base); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'long unsigned int std::__cxx11::stoul(const wstring&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6489:22: error: no matching function for call to '__stoa(long unsigned int (*)(const wchar_t*, wchar_t**, int) throw (), const char [6], const wchar_t*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6489:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
         __idx, __base); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'long long int std::__cxx11::stoll(const wstring&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6494:22: error: no matching function for call to '__stoa(long long int (*)(const wchar_t*, wchar_t**, int) throw (), const char [6], const wchar_t*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6494:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
         __idx, __base); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'long long unsigned int std::__cxx11::stoull(const wstring&, size_t*, int)':
/usr/include/c++/7/bits/basic_string.h:6499:22: error: no matching function for call to '__stoa(long long unsigned int (*)(const wchar_t*, wchar_t**, int) throw (), const char [7], const wchar_t*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6499:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
         __idx, __base); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'float std::__cxx11::stof(const wstring&, size_t*)':
/usr/include/c++/7/bits/basic_string.h:6504:72: error: no matching function for call to '__stoa(float (*)(const wchar_t*, wchar_t**) throw (), const char [5], const wchar_t*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::wcstof, "stof", __str.c_str(), __idx); }
                                                                        ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6504:72: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
   { return __gnu_cxx::__stoa(&std::wcstof, "stof", __str.c_str(), __idx); }
                                                                        ^
/usr/include/c++/7/bits/basic_string.h: In function 'double std::__cxx11::stod(const wstring&, size_t*)':
/usr/include/c++/7/bits/basic_string.h:6508:72: error: no matching function for call to '__stoa(double (*)(const wchar_t*, wchar_t**) throw (), const char [5], const wchar_t*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::wcstod, "stod", __str.c_str(), __idx); }
                                                                        ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6508:72: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
   { return __gnu_cxx::__stoa(&std::wcstod, "stod", __str.c_str(), __idx); }
                                                                        ^
/usr/include/c++/7/bits/basic_string.h: In function 'long double std::__cxx11::stold(const wstring&, size_t*)':
/usr/include/c++/7/bits/basic_string.h:6512:74: error: no matching function for call to '__stoa(long double (*)(const wchar_t*, wchar_t**) throw (), const char [6], const wchar_t*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::wcstold, "stold", __str.c_str(), __idx); }
                                                                          ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:54:5: note: candidate: template<class _TRet, class _Ret, class _CharT, class ... _Base> _Ret __gnu_cxx::__stoa(_TRet (*)(const _CharT*, _CharT**, _Base ...), const char*, const _CharT*, int*, _Base ...)
     __stoa(_TRet (*__convf) (const _CharT*, _CharT**, _Base...),
     ^~~~~~
/usr/include/c++/7/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6512:74: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*}') to type 'int*'
   { return __gnu_cxx::__stoa(&std::wcstold, "stold", __str.c_str(), __idx); }
                                                                          ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(int)':
/usr/include/c++/7/bits/basic_string.h:6519:22: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [3], int&)'
          L"%d", __val); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6519:22: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%d", __val); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(unsigned int)':
/usr/include/c++/7/bits/basic_string.h:6525:22: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [3], unsigned int&)'
          L"%u", __val); }
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6525:22: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%u", __val); }
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(long int)':
/usr/include/c++/7/bits/basic_string.h:6530:23: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [4], long int&)'
          L"%ld", __val); }
                       ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6530:23: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%ld", __val); }
                       ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(long unsigned int)':
/usr/include/c++/7/bits/basic_string.h:6536:23: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [4], long unsigned int&)'
          L"%lu", __val); }
                       ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6536:23: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%lu", __val); }
                       ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(long long int)':
/usr/include/c++/7/bits/basic_string.h:6542:24: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [5], long long int&)'
          L"%lld", __val); }
                        ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6542:24: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%lld", __val); }
                        ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(long long unsigned int)':
/usr/include/c++/7/bits/basic_string.h:6548:24: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), long unsigned int, const wchar_t [5], long long unsigned int&)'
          L"%llu", __val); }
                        ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6548:24: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%llu", __val); }
                        ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(float)':
/usr/include/c++/7/bits/basic_string.h:6556:22: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), const int&, const wchar_t [3], float&)'
          L"%f", __val);
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6556:22: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%f", __val);
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(double)':
/usr/include/c++/7/bits/basic_string.h:6565:22: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), const int&, const wchar_t [3], double&)'
          L"%f", __val);
                      ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6565:22: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%f", __val);
                      ^
/usr/include/c++/7/bits/basic_string.h: In function 'std::__cxx11::wstring std::__cxx11::to_wstring(long double)':
/usr/include/c++/7/bits/basic_string.h:6574:23: error: no matching function for call to '__to_xstring<std::__cxx11::wstring>(int (*)(wchar_t*, size_t, const wchar_t*, __va_list_tag*) throw (), const int&, const wchar_t [4], long double&)'
          L"%Lf", __val);
                       ^
In file included from /usr/include/c++/7/bits/basic_string.h:6361:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/string_conversions.h:99:5: note: candidate: template<class _String, class _CharT> _String __gnu_cxx::__to_xstring(int (*)(_CharT*, int, const _CharT*, __va_list_tag*), int, const _CharT*, ...)
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
     ^~~~~~~~~~~~
/usr/include/c++/7/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h:6574:23: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
          L"%Lf", __val);
                       ^
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h: In member function 'size_t std::hash<std::__cxx11::basic_string<char> >::operator()(const string&) const':
/usr/include/c++/7/bits/basic_string.h:6603:54: error: 'const string {aka const class std::__cxx11::basic_string<char>}' has no member named 'length'
       { return std::_Hash_impl::hash(__s.data(), __s.length()); }
                                                      ^~~~~~
/usr/include/c++/7/bits/basic_string.h: In member function 'size_t std::hash<std::__cxx11::basic_string<wchar_t> >::operator()(const wstring&) const':
/usr/include/c++/7/bits/basic_string.h:6619:42: error: 'const wstring {aka const class std::__cxx11::basic_string<wchar_t>}' has no member named 'length'
                                      __s.length() * sizeof(wchar_t)); }
                                          ^~~~~~
In file included from /usr/include/c++/7/bits/basic_string.h:40:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/alloc_traits.h: In instantiation of 'struct __gnu_cxx::__alloc_traits<std::allocator<char16_t> >':
/usr/include/c++/7/bits/basic_string.h:80:24:   required from 'class std::__cxx11::basic_string<char16_t>'
/usr/include/c++/7/bits/basic_string.h:6636:41:   required from here
/usr/include/c++/7/ext/alloc_traits.h:61:53: error: no type named 'size_type' in 'struct std::allocator_traits<std::allocator<char16_t> >'
     typedef typename _Base_type::size_type          size_type;
                                                     ^~~~~~~~~
/usr/include/c++/7/ext/alloc_traits.h:62:53: error: no type named 'difference_type' in 'struct std::allocator_traits<std::allocator<char16_t> >'
     typedef typename _Base_type::difference_type    difference_type;
                                                     ^~~~~~~~~~~~~~~
/usr/include/c++/7/ext/alloc_traits.h:70:23: error: no members matching '__gnu_cxx::__alloc_traits<std::allocator<char16_t> >::_Base_type {aka std::allocator_traits<std::allocator<char16_t> >}::max_size' in '__gnu_cxx::__alloc_traits<std::allocator<char16_t> >::_Base_type {aka struct std::allocator_traits<std::allocator<char16_t> >}'
     using _Base_type::max_size;
                       ^~~~~~~~
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h: In member function 'size_t std::hash<std::__cxx11::basic_string<char16_t> >::operator()(const u16string&) const':
/usr/include/c++/7/bits/basic_string.h:6637:42: error: 'const u16string {aka const class std::__cxx11::basic_string<char16_t>}' has no member named 'length'
                                      __s.length() * sizeof(char16_t)); }
                                          ^~~~~~
In file included from /usr/include/c++/7/bits/basic_string.h:40:0,
                 from /usr/include/c++/7/string:52,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/ext/alloc_traits.h: In instantiation of 'struct __gnu_cxx::__alloc_traits<std::allocator<char32_t> >':
/usr/include/c++/7/bits/basic_string.h:80:24:   required from 'class std::__cxx11::basic_string<char32_t>'
/usr/include/c++/7/bits/basic_string.h:6651:41:   required from here
/usr/include/c++/7/ext/alloc_traits.h:61:53: error: no type named 'size_type' in 'struct std::allocator_traits<std::allocator<char32_t> >'
     typedef typename _Base_type::size_type          size_type;
                                                     ^~~~~~~~~
/usr/include/c++/7/ext/alloc_traits.h:62:53: error: no type named 'difference_type' in 'struct std::allocator_traits<std::allocator<char32_t> >'
     typedef typename _Base_type::difference_type    difference_type;
                                                     ^~~~~~~~~~~~~~~
/usr/include/c++/7/ext/alloc_traits.h:70:23: error: no members matching '__gnu_cxx::__alloc_traits<std::allocator<char32_t> >::_Base_type {aka std::allocator_traits<std::allocator<char32_t> >}::max_size' in '__gnu_cxx::__alloc_traits<std::allocator<char32_t> >::_Base_type {aka struct std::allocator_traits<std::allocator<char32_t> >}'
     using _Base_type::max_size;
                       ^~~~~~~~
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h: In member function 'size_t std::hash<std::__cxx11::basic_string<char32_t> >::operator()(const u32string&) const':
/usr/include/c++/7/bits/basic_string.h:6652:42: error: 'const u32string {aka const class std::__cxx11::basic_string<char32_t>}' has no member named 'length'
                                      __s.length() * sizeof(char32_t)); }
                                          ^~~~~~
In file included from /usr/include/c++/7/string:53:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.tcc: In function 'std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)':
/usr/include/c++/7/bits/basic_string.tcc:1487:14: error: 'streamsize' does not name a type; did you mean 'streambuf'?
        const streamsize __w = __in.width();
              ^~~~~~~~~~
              streambuf
/usr/include/c++/7/bits/basic_string.tcc:1488:32: error: '__w' was not declared in this scope
        const __size_type __n = __w > 0 ? static_cast<__size_type>(__w)
                                ^~~
/usr/include/c++/7/bits/basic_string.tcc:1488:32: note: suggested alternative: '__n'
        const __size_type __n = __w > 0 ? static_cast<__size_type>(__w)
                                ^~~
                                __n
In file included from /usr/include/c++/7/ios:42:0,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/ios_base.h: At global scope:
/usr/include/c++/7/bits/ios_base.h:520:5: error: 'streamsize' does not name a type; did you mean 'streampos'?
     streamsize  _M_precision;
     ^~~~~~~~~~
     streampos
/usr/include/c++/7/bits/ios_base.h:521:5: error: 'streamsize' does not name a type; did you mean 'streampos'?
     streamsize  _M_width;
     ^~~~~~~~~~
     streampos
/usr/include/c++/7/bits/ios_base.h:688:5: error: 'streamsize' does not name a type; did you mean 'streampos'?
     streamsize
     ^~~~~~~~~~
     streampos
/usr/include/c++/7/bits/ios_base.h:697:5: error: 'streamsize' does not name a type; did you mean 'streampos'?
     streamsize
     ^~~~~~~~~~
     streampos
/usr/include/c++/7/bits/ios_base.h:711:5: error: 'streamsize' does not name a type; did you mean 'streampos'?
     streamsize
     ^~~~~~~~~~
     streampos
/usr/include/c++/7/bits/ios_base.h:720:5: error: 'streamsize' does not name a type; did you mean 'streampos'?
     streamsize
     ^~~~~~~~~~
     streampos
In file included from /usr/include/c++/7/ios:43:0,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/streambuf:50:5: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     streamsize
     ^~~~~~~~~~
     streambuf
/usr/include/c++/7/streambuf:147:14: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       friend streamsize
              ^~~~~~~~~~
              streambuf
/usr/include/c++/7/streambuf:239:33: error: 'streamsize' has not been declared
       pubsetbuf(char_type* __s, streamsize __n)
                                 ^~~~~~~~~~
/usr/include/c++/7/streambuf:283:7: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       streamsize
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/streambuf:356:7: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       streamsize
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/streambuf:449:7: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       streamsize
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/streambuf:591:26: error: 'streamsize' has not been declared
       setbuf(char_type*, streamsize)
                          ^~~~~~~~~~
/usr/include/c++/7/streambuf:648:15: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       virtual streamsize
               ^~~~~~~~~~
               streambuf
/usr/include/c++/7/streambuf:664:15: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       virtual streamsize
               ^~~~~~~~~~
               streambuf
/usr/include/c++/7/streambuf:741:15: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       virtual streamsize
               ^~~~~~~~~~
               streambuf
/usr/include/c++/7/streambuf:794:20: error: 'streamsize' has not been declared
       __safe_gbump(streamsize __n) { _M_in_cur += __n; }
                    ^~~~~~~~~~
/usr/include/c++/7/streambuf:797:20: error: 'streamsize' has not been declared
       __safe_pbump(streamsize __n) { _M_out_cur += __n; }
                    ^~~~~~~~~~
/usr/include/c++/7/streambuf:837:5: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     streamsize
     ^~~~~~~~~~
     streambuf
/usr/include/c++/7/streambuf:842:5: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     streamsize
     ^~~~~~~~~~
     streambuf
In file included from /usr/include/c++/7/streambuf:850:0,
                 from /usr/include/c++/7/ios:43,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/streambuf.tcc:44:5: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     streamsize
     ^~~~~~~~~~
     streambuf
/usr/include/c++/7/bits/streambuf.tcc:78:5: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     streamsize
     ^~~~~~~~~~
     streambuf
/usr/include/c++/7/bits/streambuf.tcc:115:5: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     streamsize
     ^~~~~~~~~~
     streambuf
/usr/include/c++/7/bits/streambuf.tcc:138:12: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     inline streamsize
            ^~~~~~~~~~
            streambuf
/usr/include/c++/7/bits/streambuf.tcc:151:5: error: 'streamsize' is not a template function
     streamsize
     ^~~~~~~~~~
/usr/include/c++/7/bits/streambuf.tcc:152:5: error: expected ';' before '__copy_streambufs'
     __copy_streambufs(basic_streambuf<char>*,
     ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/streambuf.tcc:155:5: error: 'streamsize' is not a template function
     streamsize
     ^~~~~~~~~~
/usr/include/c++/7/bits/streambuf.tcc:156:5: error: expected ';' before '__copy_streambufs_eof'
     __copy_streambufs_eof(basic_streambuf<char>*,
     ^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/streambuf.tcc:162:5: error: 'streamsize' is not a template function
     streamsize
     ^~~~~~~~~~
/usr/include/c++/7/bits/streambuf.tcc:163:5: error: expected ';' before '__copy_streambufs'
     __copy_streambufs(basic_streambuf<wchar_t>*,
     ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/streambuf.tcc:166:5: error: 'streamsize' is not a template function
     streamsize
     ^~~~~~~~~~
/usr/include/c++/7/bits/streambuf.tcc:167:5: error: expected ';' before '__copy_streambufs_eof'
     __copy_streambufs_eof(basic_streambuf<wchar_t>*,
     ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/7/bits/locale_facets.h:48:0,
                 from /usr/include/c++/7/bits/basic_ios.h:37,
                 from /usr/include/c++/7/ios:44,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/streambuf_iterator.h:279:34: error: 'streamsize' has not been declared
       _M_put(const _CharT* __ws, streamsize __len)
                                  ^~~~~~~~~~
/usr/include/c++/7/bits/streambuf_iterator.h: In function 'typename __gnu_cxx::__enable_if<std::__is_char<_CharT>::__value, std::ostreambuf_iterator<_CharT, std::char_traits<_CharT> > >::__type std::__copy_move_a2(_CharT*, _CharT*, std::ostreambuf_iterator<_CharT, std::char_traits<_CharT> >)':
/usr/include/c++/7/bits/streambuf_iterator.h:313:13: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       const streamsize __num = __last - __first;
             ^~~~~~~~~~
             streambuf
/usr/include/c++/7/bits/streambuf_iterator.h:314:11: error: '__num' was not declared in this scope
       if (__num > 0)
           ^~~~~
/usr/include/c++/7/bits/streambuf_iterator.h:314:11: note: suggested alternative: '__wur'
       if (__num > 0)
           ^~~~~
           __wur
/usr/include/c++/7/bits/streambuf_iterator.h: In function 'typename __gnu_cxx::__enable_if<std::__is_char<_CharT>::__value, std::ostreambuf_iterator<_CharT, std::char_traits<_CharT> > >::__type std::__copy_move_a2(const _CharT*, const _CharT*, std::ostreambuf_iterator<_CharT, std::char_traits<_CharT> >)':
/usr/include/c++/7/bits/streambuf_iterator.h:325:13: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       const streamsize __num = __last - __first;
             ^~~~~~~~~~
             streambuf
/usr/include/c++/7/bits/streambuf_iterator.h:326:11: error: '__num' was not declared in this scope
       if (__num > 0)
           ^~~~~
/usr/include/c++/7/bits/streambuf_iterator.h:326:11: note: suggested alternative: '__wur'
       if (__num > 0)
           ^~~~~
           __wur
/usr/include/c++/7/bits/streambuf_iterator.h: In function 'typename __gnu_cxx::__enable_if<std::__is_char<_CharT>::__value, _CharT*>::__type std::__copy_move_a2(std::istreambuf_iterator<_CharT, std::char_traits<_CharT> >, std::istreambuf_iterator<_CharT, std::char_traits<_CharT> >, _CharT*)':
/usr/include/c++/7/bits/streambuf_iterator.h:348:14: error: 'streamsize' does not name a type; did you mean 'streambuf'?
        const streamsize __n = __sb->egptr() - __sb->gptr();
              ^~~~~~~~~~
              streambuf
/usr/include/c++/7/bits/streambuf_iterator.h:349:12: error: '__n' was not declared in this scope
        if (__n > 1)
            ^~~
/usr/include/c++/7/bits/streambuf_iterator.h:349:12: note: suggested alternative: '__c'
        if (__n > 1)
            ^~~
            __c
/usr/include/c++/7/bits/streambuf_iterator.h: In function 'typename __gnu_cxx::__enable_if<std::__is_char<_CharT2>::__value, std::istreambuf_iterator<_CharT> >::__type std::find(std::istreambuf_iterator<_CharT>, std::istreambuf_iterator<_CharT>, const _CharT2&)':
/usr/include/c++/7/bits/streambuf_iterator.h:385:8: error: 'streamsize' was not declared in this scope
        streamsize __n = __sb->egptr() - __sb->gptr();
        ^~~~~~~~~~
/usr/include/c++/7/bits/streambuf_iterator.h:385:8: note: suggested alternative: 'streambuf'
        streamsize __n = __sb->egptr() - __sb->gptr();
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/bits/streambuf_iterator.h:386:12: error: '__n' was not declared in this scope
        if (__n > 1)
            ^~~
/usr/include/c++/7/bits/streambuf_iterator.h:386:12: note: suggested alternative: '__c'
        if (__n > 1)
            ^~~
            __c
In file included from /usr/include/c++/7/bits/basic_ios.h:37:0,
                 from /usr/include/c++/7/ios:44,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/locale_facets.h: At global scope:
/usr/include/c++/7/bits/locale_facets.h:99:29: error: 'streamsize' has not been declared
       const _CharT* __olds, streamsize __newlen, streamsize __oldlen);
                             ^~~~~~~~~~
/usr/include/c++/7/bits/locale_facets.h:99:50: error: 'streamsize' has not been declared
       const _CharT* __olds, streamsize __newlen, streamsize __oldlen);
                                                  ^~~~~~~~~~
In file included from /usr/include/c++/7/bits/basic_ios.h:37:0,
                 from /usr/include/c++/7/ios:44,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/locale_facets.h:2484:32: error: 'streamsize' has not been declared
       _M_pad(char_type __fill, streamsize __w, ios_base& __io,
                                ^~~~~~~~~~
In file included from /usr/include/c++/7/bits/locale_facets.h:2651:0,
                 from /usr/include/c++/7/bits/basic_ios.h:37,
                 from /usr/include/c++/7/ios:44,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/locale_facets.tcc: In member function 'void std::__numpunct_cache<_CharT>::_M_cache(const std::locale&)':
/usr/include/c++/7/bits/locale_facets.tcc:88:27: error: 'const string {aka const class std::__cxx11::basic_string<char>}' has no member named 'size'
    _M_grouping_size = __g.size();
                           ^~~~
/usr/include/c++/7/bits/locale_facets.tcc:90:8: error: 'const string {aka const class std::__cxx11::basic_string<char>}' has no member named 'copy'
    __g.copy(__grouping, _M_grouping_size);
        ^~~~
/usr/include/c++/7/bits/locale_facets.tcc: In member function '_InIter std::num_get<_CharT, _InIter>::_M_extract_float(_InIter, _InIter, std::ios_base&, std::ios_base::iostate&, std::__cxx11::string&) const':
/usr/include/c++/7/bits/locale_facets.tcc:211:19: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'reserve'
  __found_grouping.reserve(32);
                   ^~~~~~~
/usr/include/c++/7/bits/locale_facets.tcc:296:28: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
       if (__found_grouping.size())
                            ^~~~
/usr/include/c++/7/bits/locale_facets.tcc:319:28: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
       if (__found_grouping.size() && !__found_dec)
                            ^~~~
/usr/include/c++/7/bits/locale_facets.tcc:355:28: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
       if (__found_grouping.size())
                            ^~~~
/usr/include/c++/7/bits/locale_facets.tcc: In member function '_InIter std::num_get<_CharT, _InIter>::_M_extract_int(_InIter, _InIter, std::ios_base&, std::ios_base::iostate&, _ValueT&) const':
/usr/include/c++/7/bits/locale_facets.tcc:468:21: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'reserve'
    __found_grouping.reserve(32);
                     ^~~~~~~
/usr/include/c++/7/bits/locale_facets.tcc:554:23: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
  if (__found_grouping.size())
                       ^~~~
/usr/include/c++/7/bits/locale_facets.tcc:567:56: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
  if ((!__sep_pos && !__found_zero && !__found_grouping.size())
                                                        ^~~~
/usr/include/c++/7/bits/locale_facets.tcc: In member function 'virtual _InIter std::num_get<_CharT, _InIter>::do_get(std::num_get<_CharT, _InIter>::iter_type, std::num_get<_CharT, _InIter>::iter_type, std::ios_base&, std::ios_base::iostate&, float&) const':
/usr/include/c++/7/bits/locale_facets.tcc:695:14: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'reserve'
       __xtrc.reserve(32);
              ^~~~~~~
/usr/include/c++/7/bits/locale_facets.tcc: In member function 'virtual _InIter std::num_get<_CharT, _InIter>::do_get(std::num_get<_CharT, _InIter>::iter_type, std::num_get<_CharT, _InIter>::iter_type, std::ios_base&, std::ios_base::iostate&, double&) const':
/usr/include/c++/7/bits/locale_facets.tcc:710:14: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'reserve'
       __xtrc.reserve(32);
              ^~~~~~~
/usr/include/c++/7/bits/locale_facets.tcc: In member function 'virtual _InIter std::num_get<_CharT, _InIter>::do_get(std::num_get<_CharT, _InIter>::iter_type, std::num_get<_CharT, _InIter>::iter_type, std::ios_base&, std::ios_base::iostate&, long double&) const':
/usr/include/c++/7/bits/locale_facets.tcc:742:14: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'reserve'
       __xtrc.reserve(32);
              ^~~~~~~
/usr/include/c++/7/bits/locale_facets.tcc: At global scope:
/usr/include/c++/7/bits/locale_facets.tcc:780:27: error: 'streamsize' has not been declared
     _M_pad(_CharT __fill, streamsize __w, ios_base& __io,
                           ^~~~~~~~~~
/usr/include/c++/7/bits/locale_facets.tcc: In member function '_OutIter std::num_put<_CharT, _OutIter>::_M_insert_int(_OutIter, std::ios_base&, _CharT, _ValueT) const':
/usr/include/c++/7/bits/locale_facets.tcc:921:8: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  const streamsize __w = __io.width();
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/bits/locale_facets.tcc:922:6: error: '__w' was not declared in this scope
  if (__w > static_cast<streamsize>(__len))
      ^~~
/usr/include/c++/7/bits/locale_facets.tcc:922:6: note: suggested alternative: '__u'
  if (__w > static_cast<streamsize>(__len))
      ^~~
      __u
/usr/include/c++/7/bits/locale_facets.tcc:922:24: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  if (__w > static_cast<streamsize>(__len))
                        ^~~~~~~~~~
                        streambuf
/usr/include/c++/7/bits/locale_facets.tcc:929:7: error: 'class std::ios_base' has no member named 'width'
  __io.width(0);
       ^~~~~
/usr/include/c++/7/bits/locale_facets.tcc: In member function '_OutIter std::num_put<_CharT, _OutIter>::_M_insert_float(_OutIter, std::ios_base&, _CharT, char, _ValueT) const':
/usr/include/c++/7/bits/locale_facets.tcc:984:8: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  const streamsize __prec = __io.precision() < 0 ? 6 : __io.precision();
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/bits/locale_facets.tcc:1006:14: error: '__prec' was not declared in this scope
      __fbuf, __prec, __v);
              ^~~~~~
/usr/include/c++/7/bits/locale_facets.tcc:1006:14: note: suggested alternative: '__pad'
      __fbuf, __prec, __v);
              ^~~~~~
              __pad
/usr/include/c++/7/bits/locale_facets.tcc:1018:18: error: '__prec' was not declared in this scope
          __fbuf, __prec, __v);
                  ^~~~~~
/usr/include/c++/7/bits/locale_facets.tcc:1018:18: note: suggested alternative: '__pad'
          __fbuf, __prec, __v);
                  ^~~~~~
                  __pad
/usr/include/c++/7/bits/locale_facets.tcc:1071:6: error: 'streamsize' was not declared in this scope
      streamsize __off = 0;
      ^~~~~~~~~~
/usr/include/c++/7/bits/locale_facets.tcc:1071:6: note: suggested alternative: 'streambuf'
      streamsize __off = 0;
      ^~~~~~~~~~
      streambuf
/usr/include/c++/7/bits/locale_facets.tcc:1074:3: error: '__off' was not declared in this scope
   __off = 1;
   ^~~~~
/usr/include/c++/7/bits/locale_facets.tcc:1074:3: note: suggested alternative: '__or_'
   __off = 1;
   ^~~~~
   __or_
/usr/include/c++/7/bits/locale_facets.tcc:1080:45: error: '__off' was not declared in this scope
       __lc->_M_thousands_sep, __wp, __ws2 + __off,
                                             ^~~~~
/usr/include/c++/7/bits/locale_facets.tcc:1080:45: note: suggested alternative: '__or_'
       __lc->_M_thousands_sep, __wp, __ws2 + __off,
                                             ^~~~~
                                             __or_
/usr/include/c++/7/bits/locale_facets.tcc:1088:8: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  const streamsize __w = __io.width();
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/bits/locale_facets.tcc:1089:6: error: '__w' was not declared in this scope
  if (__w > static_cast<streamsize>(__len))
      ^~~
/usr/include/c++/7/bits/locale_facets.tcc:1089:6: note: suggested alternative: '__p'
  if (__w > static_cast<streamsize>(__len))
      ^~~
      __p
/usr/include/c++/7/bits/locale_facets.tcc:1089:24: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  if (__w > static_cast<streamsize>(__len))
                        ^~~~~~~~~~
                        streambuf
/usr/include/c++/7/bits/locale_facets.tcc:1096:7: error: 'class std::ios_base' has no member named 'width'
  __io.width(0);
       ^~~~~
/usr/include/c++/7/bits/locale_facets.tcc: In member function 'virtual _OutIter std::num_put<_CharT, _OutIter>::do_put(std::num_put<_CharT, _OutIter>::iter_type, std::ios_base&, std::num_put<_CharT, _OutIter>::char_type, bool) const':
/usr/include/c++/7/bits/locale_facets.tcc:1126:10: error: 'streamsize' does not name a type; did you mean 'streambuf'?
    const streamsize __w = __io.width();
          ^~~~~~~~~~
          streambuf
/usr/include/c++/7/bits/locale_facets.tcc:1127:8: error: '__w' was not declared in this scope
    if (__w > static_cast<streamsize>(__len))
        ^~~
/usr/include/c++/7/bits/locale_facets.tcc:1127:8: note: suggested alternative: '__s'
    if (__w > static_cast<streamsize>(__len))
        ^~~
        __s
/usr/include/c++/7/bits/locale_facets.tcc:1127:26: error: 'streamsize' does not name a type; did you mean 'streambuf'?
    if (__w > static_cast<streamsize>(__len))
                          ^~~~~~~~~~
                          streambuf
/usr/include/c++/7/bits/locale_facets.tcc:1129:14: error: 'streamsize' does not name a type; did you mean 'streambuf'?
        const streamsize __plen = __w - __len;
              ^~~~~~~~~~
              streambuf
/usr/include/c++/7/bits/locale_facets.tcc:1132:10: error: '__plen' was not declared in this scope
        * __plen));
          ^~~~~~
/usr/include/c++/7/bits/locale_facets.tcc:1132:10: note: suggested alternative: '__len'
        * __plen));
          ^~~~~~
          __len
/usr/include/c++/7/bits/locale_facets.tcc:1135:13: error: 'class std::ios_base' has no member named 'width'
        __io.width(0);
             ^~~~~
/usr/include/c++/7/bits/locale_facets.tcc:1149:9: error: 'class std::ios_base' has no member named 'width'
    __io.width(0);
         ^~~~~
/usr/include/c++/7/bits/locale_facets.tcc: At global scope:
/usr/include/c++/7/bits/locale_facets.tcc:1210:8: error: 'streamsize' has not been declared
        streamsize __newlen, streamsize __oldlen)
        ^~~~~~~~~~
/usr/include/c++/7/bits/locale_facets.tcc:1210:29: error: 'streamsize' has not been declared
        streamsize __newlen, streamsize __oldlen)
                             ^~~~~~~~~~
In file included from /usr/include/c++/7/iostream:39:0,
                 from foo.cc:3:
/usr/include/c++/7/ostream:311:38: error: 'streamsize' has not been declared
       _M_write(const char_type* __s, streamsize __n)
                                      ^~~~~~~~~~
/usr/include/c++/7/ostream:335:35: error: 'streamsize' has not been declared
       write(const char_type* __s, streamsize __n);
                                   ^~~~~~~~~~
/usr/include/c++/7/ostream: In member function 'void std::basic_ostream<_CharT, _Traits>::_M_write(const char_type*, int)':
/usr/include/c++/7/ostream:313:8: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  const streamsize __put = this->rdbuf()->sputn(__s, __n);
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/ostream:314:6: error: '__put' was not declared in this scope
  if (__put != __n)
      ^~~~~
/usr/include/c++/7/ostream:314:6: note: suggested alternative: 'put'
  if (__put != __n)
      ^~~~~
      put
/usr/include/c++/7/ostream: In function 'std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, const _CharT*)':
/usr/include/c++/7/ostream:545:17: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     static_cast<streamsize>(_Traits::length(__s)));
                 ^~~~~~~~~~
                 streambuf
/usr/include/c++/7/ostream: In function 'std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const char*)':
/usr/include/c++/7/ostream:562:17: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     static_cast<streamsize>(_Traits::length(__s)));
                 ^~~~~~~~~~
                 streambuf
In file included from /usr/include/c++/7/ostream:693:0,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/ostream.tcc: At global scope:
/usr/include/c++/7/bits/ostream.tcc:183:30: error: 'streamsize' has not been declared
     write(const _CharT* __s, streamsize __n)
                              ^~~~~~~~~~
In file included from /usr/include/c++/7/iostream:40:0,
                 from foo.cc:3:
/usr/include/c++/7/istream:82:7: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       streamsize   _M_gcount;
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/istream:268:7: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       streamsize
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/istream:343:27: error: 'streamsize' has not been declared
       get(char_type* __s, streamsize __n, char_type __delim);
                           ^~~~~~~~~~
/usr/include/c++/7/istream:354:27: error: 'streamsize' has not been declared
       get(char_type* __s, streamsize __n)
                           ^~~~~~~~~~
/usr/include/c++/7/istream:416:31: error: 'streamsize' has not been declared
       getline(char_type* __s, streamsize __n, char_type __delim);
                               ^~~~~~~~~~
/usr/include/c++/7/istream:427:31: error: 'streamsize' has not been declared
       getline(char_type* __s, streamsize __n)
                               ^~~~~~~~~~
/usr/include/c++/7/istream:451:7: error: expected ';' at end of member declaration
       ignore(streamsize __n, int_type __delim);
       ^~~~~~
/usr/include/c++/7/istream:451:25: error: expected ')' before '__n'
       ignore(streamsize __n, int_type __delim);
                         ^~~
/usr/include/c++/7/istream:454:7: error: expected ';' at end of member declaration
       ignore(streamsize __n);
       ^~~~~~
/usr/include/c++/7/istream:454:14: error: redeclaration of 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore'
       ignore(streamsize __n);
              ^~~~~~~~~~
/usr/include/c++/7/istream:451:14: note: previous declaration 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore'
       ignore(streamsize __n, int_type __delim);
              ^~~~~~~~~~
/usr/include/c++/7/istream:454:25: error: expected ')' before '__n'
       ignore(streamsize __n);
                         ^~~
/usr/include/c++/7/istream:457:14: error: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore()' conflicts with a previous declaration
       ignore();
              ^
/usr/include/c++/7/istream:451:14: note: previous declaration 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore'
       ignore(streamsize __n, int_type __delim);
              ^~~~~~~~~~
/usr/include/c++/7/istream:486:28: error: 'streamsize' has not been declared
       read(char_type* __s, streamsize __n);
                            ^~~~~~~~~~
/usr/include/c++/7/istream:504:7: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       streamsize
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/istream: In constructor 'std::basic_istream<_CharT, _Traits>::basic_istream(std::basic_istream<_CharT, _Traits>::__streambuf_type*)':
/usr/include/c++/7/istream:94:9: error: class 'std::basic_istream<_CharT, _Traits>' does not have any field named '_M_gcount'
       : _M_gcount(streamsize(0))
         ^~~~~~~~~
/usr/include/c++/7/istream:94:19: error: there are no arguments to 'streamsize' that depend on a template parameter, so a declaration of 'streamsize' must be available [-fpermissive]
       : _M_gcount(streamsize(0))
                   ^~~~~~~~~~
/usr/include/c++/7/istream:94:19: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/usr/include/c++/7/istream: In destructor 'virtual std::basic_istream<_CharT, _Traits>::~basic_istream()':
/usr/include/c++/7/istream:104:9: error: '_M_gcount' was not declared in this scope
       { _M_gcount = streamsize(0); }
         ^~~~~~~~~
/usr/include/c++/7/istream:104:9: note: suggested alternative: '_S_out'
       { _M_gcount = streamsize(0); }
         ^~~~~~~~~
         _S_out
/usr/include/c++/7/istream:104:21: error: there are no arguments to 'streamsize' that depend on a template parameter, so a declaration of 'streamsize' must be available [-fpermissive]
       { _M_gcount = streamsize(0); }
                     ^~~~~~~~~~
/usr/include/c++/7/istream: In constructor 'std::basic_istream<_CharT, _Traits>::basic_istream()':
/usr/include/c++/7/istream:607:9: error: class 'std::basic_istream<_CharT, _Traits>' does not have any field named '_M_gcount'
       : _M_gcount(streamsize(0))
         ^~~~~~~~~
/usr/include/c++/7/istream:607:19: error: there are no arguments to 'streamsize' that depend on a template parameter, so a declaration of 'streamsize' must be available [-fpermissive]
       : _M_gcount(streamsize(0))
                   ^~~~~~~~~~
/usr/include/c++/7/istream: In constructor 'std::basic_istream<_CharT, _Traits>::basic_istream(std::basic_istream<_CharT, _Traits>&&)':
/usr/include/c++/7/istream:614:23: error: class 'std::basic_istream<_CharT, _Traits>' does not have any field named '_M_gcount'
       : __ios_type(), _M_gcount(__rhs._M_gcount)
                       ^~~~~~~~~
/usr/include/c++/7/istream: In member function 'void std::basic_istream<_CharT, _Traits>::swap(std::basic_istream<_CharT, _Traits>&)':
/usr/include/c++/7/istream:635:12: error: '_M_gcount' was not declared in this scope
  std::swap(_M_gcount, __rhs._M_gcount);
            ^~~~~~~~~
/usr/include/c++/7/istream:635:12: note: suggested alternative: '_S_out'
  std::swap(_M_gcount, __rhs._M_gcount);
            ^~~~~~~~~
            _S_out
/usr/include/c++/7/istream: In instantiation of 'class std::basic_istream<char>':
/usr/include/c++/7/istream:647:24:   required from here
/usr/include/c++/7/istream:451:14: error: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore() [with _CharT = char; _Traits = std::char_traits<char>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<char>]' conflicts with a previous declaration
       ignore(streamsize __n, int_type __delim);
              ^~~~~~~~~~
/usr/include/c++/7/istream:451:14: note: previous declaration 'std::basic_istream<char>::__istream_type& std::basic_istream<char>::ignore'
/usr/include/c++/7/istream: At global scope:
/usr/include/c++/7/istream:648:29: error: 'streamsize' has not been declared
     getline(char_type* __s, streamsize __n, char_type __delim);
                             ^~~~~~~~~~
/usr/include/c++/7/istream:653:12: error: 'std::basic_istream<char>& std::basic_istream<char>::ignore' is not a static data member of 'class std::basic_istream<char>'
     ignore(streamsize __n);
            ^~~~~~~~~~
/usr/include/c++/7/istream:653:12: error: 'streamsize' was not declared in this scope
/usr/include/c++/7/istream:653:12: note: suggested alternative: 'streampos'
     ignore(streamsize __n);
            ^~~~~~~~~~
            streampos
/usr/include/c++/7/istream:658:12: error: 'std::basic_istream<char>& std::basic_istream<char>::ignore' is not a static data member of 'class std::basic_istream<char>'
     ignore(streamsize __n, int_type __delim);
            ^~~~~~~~~~
/usr/include/c++/7/istream:658:12: error: 'streamsize' was not declared in this scope
/usr/include/c++/7/istream:658:12: note: suggested alternative: 'streampos'
     ignore(streamsize __n, int_type __delim);
            ^~~~~~~~~~
            streampos
/usr/include/c++/7/istream:658:37: error: expected primary-expression before '__delim'
     ignore(streamsize __n, int_type __delim);
                                     ^~~~~~~
/usr/include/c++/7/istream:658:44: error: expression list treated as compound expression in initializer [-fpermissive]
     ignore(streamsize __n, int_type __delim);
                                            ^
/usr/include/c++/7/istream: In instantiation of 'class std::basic_istream<wchar_t>':
/usr/include/c++/7/istream:663:27:   required from here
/usr/include/c++/7/istream:451:14: error: 'std::basic_istream<_CharT, _Traits>::__istream_type& std::basic_istream<_CharT, _Traits>::ignore() [with _CharT = wchar_t; _Traits = std::char_traits<wchar_t>; std::basic_istream<_CharT, _Traits>::__istream_type = std::basic_istream<wchar_t>]' conflicts with a previous declaration
       ignore(streamsize __n, int_type __delim);
              ^~~~~~~~~~
/usr/include/c++/7/istream:451:14: note: previous declaration 'std::basic_istream<wchar_t>::__istream_type& std::basic_istream<wchar_t>::ignore'
/usr/include/c++/7/istream:664:29: error: 'streamsize' has not been declared
     getline(char_type* __s, streamsize __n, char_type __delim);
                             ^~~~~~~~~~
/usr/include/c++/7/istream:669:12: error: 'std::basic_istream<wchar_t>& std::basic_istream<wchar_t>::ignore' is not a static data member of 'class std::basic_istream<wchar_t>'
     ignore(streamsize __n);
            ^~~~~~~~~~
/usr/include/c++/7/istream:669:12: error: 'streamsize' was not declared in this scope
/usr/include/c++/7/istream:669:12: note: suggested alternative: 'streampos'
     ignore(streamsize __n);
            ^~~~~~~~~~
            streampos
/usr/include/c++/7/istream:674:12: error: 'std::basic_istream<wchar_t>& std::basic_istream<wchar_t>::ignore' is not a static data member of 'class std::basic_istream<wchar_t>'
     ignore(streamsize __n, int_type __delim);
            ^~~~~~~~~~
/usr/include/c++/7/istream:674:12: error: 'streamsize' was not declared in this scope
/usr/include/c++/7/istream:674:12: note: suggested alternative: 'streampos'
     ignore(streamsize __n, int_type __delim);
            ^~~~~~~~~~
            streampos
/usr/include/c++/7/istream:674:37: error: expected primary-expression before '__delim'
     ignore(streamsize __n, int_type __delim);
                                     ^~~~~~~
/usr/include/c++/7/istream:674:44: error: expression list treated as compound expression in initializer [-fpermissive]
     ignore(streamsize __n, int_type __delim);
                                            ^
In file included from /usr/include/c++/7/istream:991:0,
                 from /usr/include/c++/7/iostream:40,
                 from foo.cc:3:
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>::int_type std::basic_istream<_CharT, _Traits>::get()':
/usr/include/c++/7/bits/istream.tcc:248:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:248:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(std::basic_istream<_CharT, _Traits>::char_type&)':
/usr/include/c++/7/bits/istream.tcc:282:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:282:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: At global scope:
/usr/include/c++/7/bits/istream.tcc:317:25: error: 'streamsize' has not been declared
     get(char_type* __s, streamsize __n, char_type __delim)
                         ^~~~~~~~~~
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(std::basic_istream<_CharT, _Traits>::char_type*, int, std::basic_istream<_CharT, _Traits>::char_type)':
/usr/include/c++/7/bits/istream.tcc:319:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:319:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(std::basic_istream<_CharT, _Traits>::__streambuf_type&, std::basic_istream<_CharT, _Traits>::char_type)':
/usr/include/c++/7/bits/istream.tcc:366:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:366:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: At global scope:
/usr/include/c++/7/bits/istream.tcc:408:29: error: 'streamsize' has not been declared
     getline(char_type* __s, streamsize __n, char_type __delim)
                             ^~~~~~~~~~
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::getline(std::basic_istream<_CharT, _Traits>::char_type*, int, std::basic_istream<_CharT, _Traits>::char_type)':
/usr/include/c++/7/bits/istream.tcc:410:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:410:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore()':
/usr/include/c++/7/bits/istream.tcc:470:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:470:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: At global scope:
/usr/include/c++/7/bits/istream.tcc:501:12: error: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore' is not a static data member of 'class std::basic_istream<_CharT, _Traits>'
     ignore(streamsize __n)
            ^~~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:501:12: error: template definition of non-template 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore'
/usr/include/c++/7/bits/istream.tcc:501:12: error: 'streamsize' was not declared in this scope
/usr/include/c++/7/bits/istream.tcc:501:12: note: suggested alternative: 'streambuf'
     ignore(streamsize __n)
            ^~~~~~~~~~
            streambuf
/usr/include/c++/7/bits/istream.tcc:563:12: error: 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore' is not a static data member of 'class std::basic_istream<_CharT, _Traits>'
     ignore(streamsize __n, int_type __delim)
            ^~~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:563:12: error: template definition of non-template 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::ignore'
/usr/include/c++/7/bits/istream.tcc:563:12: error: 'streamsize' was not declared in this scope
/usr/include/c++/7/bits/istream.tcc:563:12: note: suggested alternative: 'streambuf'
     ignore(streamsize __n, int_type __delim)
            ^~~~~~~~~~
            streambuf
/usr/include/c++/7/bits/istream.tcc:563:37: error: expected primary-expression before '__delim'
     ignore(streamsize __n, int_type __delim)
                                     ^~~~~~~
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>::int_type std::basic_istream<_CharT, _Traits>::peek()':
/usr/include/c++/7/bits/istream.tcc:631:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:631:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: At global scope:
/usr/include/c++/7/bits/istream.tcc:658:26: error: 'streamsize' has not been declared
     read(char_type* __s, streamsize __n)
                          ^~~~~~~~~~
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::read(std::basic_istream<_CharT, _Traits>::char_type*, int)':
/usr/include/c++/7/bits/istream.tcc:660:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:660:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: At global scope:
/usr/include/c++/7/bits/istream.tcc:685:5: error: 'streamsize' does not name a type; did you mean 'streambuf'?
     streamsize
     ^~~~~~~~~~
     streambuf
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::putback(std::basic_istream<_CharT, _Traits>::char_type)':
/usr/include/c++/7/bits/istream.tcc:723:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:723:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: In member function 'std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::unget()':
/usr/include/c++/7/bits/istream.tcc:758:7: error: '_M_gcount' was not declared in this scope
       _M_gcount = 0;
       ^~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:758:7: note: suggested alternative: '_S_out'
       _M_gcount = 0;
       ^~~~~~~~~
       _S_out
/usr/include/c++/7/bits/istream.tcc: In function 'std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&, _CharT2*)':
/usr/include/c++/7/bits/istream.tcc:971:7: error: 'streamsize' was not declared in this scope
       streamsize __extracted = 0;
       ^~~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:971:7: note: suggested alternative: 'streambuf'
       streamsize __extracted = 0;
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/bits/istream.tcc:979:19: error: expected ';' before '__num'
        streamsize __num = __in.width();
                   ^~~~~
/usr/include/c++/7/bits/istream.tcc:980:12: error: '__num' was not declared in this scope
        if (__num <= 0)
            ^~~~~
/usr/include/c++/7/bits/istream.tcc:980:12: note: suggested alternative: '__wur'
        if (__num <= 0)
            ^~~~~
            __wur
/usr/include/c++/7/bits/istream.tcc:981:49: error: type/value mismatch at argument 1 in template parameter list for 'template<class _Value> struct __gnu_cxx::__numeric_traits'
   __num = __gnu_cxx::__numeric_traits<streamsize>::__max;
                                                 ^
/usr/include/c++/7/bits/istream.tcc:981:49: note:   expected a type, got 'streamsize'
/usr/include/c++/7/bits/istream.tcc:989:15: error: '__extracted' was not declared in this scope
        while (__extracted < __num - 1
               ^~~~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:989:15: note: suggested alternative: '__traitor'
        while (__extracted < __num - 1
               ^~~~~~~~~~~
               __traitor
/usr/include/c++/7/bits/istream.tcc:989:29: error: '__num' was not declared in this scope
        while (__extracted < __num - 1
                             ^~~~~
/usr/include/c++/7/bits/istream.tcc:989:29: note: suggested alternative: '__wur'
        while (__extracted < __num - 1
                             ^~~~~
                             __wur
/usr/include/c++/7/bits/istream.tcc:1014:12: error: '__extracted' was not declared in this scope
       if (!__extracted)
            ^~~~~~~~~~~
/usr/include/c++/7/bits/istream.tcc:1014:12: note: suggested alternative: '__traitor'
       if (!__extracted)
            ^~~~~~~~~~~
            __traitor
In file included from /usr/include/c++/7/bits/locale_facets_nonio.h:2013:0,
                 from /usr/include/c++/7/locale:41,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/bits/locale_facets_nonio.tcc: In member function 'void std::__moneypunct_cache<_CharT, _Intl>::_M_cache(const std::locale&)':
/usr/include/c++/7/bits/locale_facets_nonio.tcc:85:27: error: 'const string {aka const class std::__cxx11::basic_string<char>}' has no member named 'size'
    _M_grouping_size = __g.size();
                           ^~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:87:8: error: 'const string {aka const class std::__cxx11::basic_string<char>}' has no member named 'copy'
    __g.copy(__grouping, _M_grouping_size);
        ^~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc: In member function '_InIter std::__cxx11::money_get<_CharT, _InIter>::_M_extract(std::__cxx11::money_get<_CharT, _InIter>::iter_type, std::__cxx11::money_get<_CharT, _InIter>::iter_type, std::ios_base&, std::ios_base::iostate&, std::__cxx11::string&) const':
/usr/include/c++/7/bits/locale_facets_nonio.tcc:162:19: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'reserve'
    __grouping_tmp.reserve(32);
                   ^~~~~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:174:8: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'reserve'
  __res.reserve(32);
        ^~~~~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:310:16: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
      if (__res.size() > 1)
                ^~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:312:35: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'find_first_not_of'
   const size_type __first = __res.find_first_not_of('0');
                                   ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:313:48: error: 'npos' is not a member of 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}'
   const bool __only_zeros = __first == string::npos;
                                                ^~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:315:41: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
     __res.erase(0, __only_zeros ? __res.size() - 1 : __first);
                                         ^~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:319:29: error: no match for 'operator[]' (operand types are 'std::__cxx11::string {aka std::__cxx11::basic_string<char>}' and 'int')
      if (__negative && __res[0] != '0')
                             ^
/usr/include/c++/7/bits/locale_facets_nonio.tcc:323:25: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
      if (__grouping_tmp.size())
                         ^~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc: In member function 'virtual _InIter std::__cxx11::money_get<_CharT, _InIter>::do_get(std::__cxx11::money_get<_CharT, _InIter>::iter_type, std::__cxx11::money_get<_CharT, _InIter>::iter_type, bool, std::ios_base&, std::ios_base::iostate&, std::__cxx11::money_get<_CharT, _InIter>::string_type&) const':
/usr/include/c++/7/bits/locale_facets_nonio.tcc:386:32: error: invalid combination of multiple type-specifiers
       typedef typename string::size_type                  size_type;
                                ^~~~~~~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:394:37: error: 'std::__cxx11::string {aka class std::__cxx11::basic_string<char>}' has no member named 'size'
       const size_type __len = __str.size();
                                     ^~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc: In member function '_OutIter std::__cxx11::money_put<_CharT, _OutIter>::_M_insert(std::__cxx11::money_put<_CharT, _OutIter>::iter_type, std::ios_base&, std::__cxx11::money_put<_CharT, _OutIter>::char_type, const string_type&) const':
/usr/include/c++/7/bits/locale_facets_nonio.tcc:499:60: error: 'class std::ios_base' has no member named 'width'
      const size_type __width = static_cast<size_type>(__io.width());
                                                            ^~~~~
/usr/include/c++/7/bits/locale_facets_nonio.tcc:559:7: error: 'class std::ios_base' has no member named 'width'
  __io.width(0);
       ^~~~~
In file included from /usr/include/c++/7/bits/unique_ptr.h:36:0,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/utility: At global scope:
/usr/include/c++/7/utility:128:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename _Tp>
                 ^~~~~~
/usr/include/c++/7/utility:129:12: error: no default argument for '_Tp'
     struct tuple_element;
            ^~~~~~~~~~~~~
/usr/include/c++/7/utility:132:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename _Tp>
                 ^~~~~~
/usr/include/c++/7/utility:133:54: error: '__i' was not declared in this scope
     using __tuple_element_t = typename tuple_element<__i, _Tp>::type;
                                                      ^~~
/usr/include/c++/7/utility:133:54: note: suggested alternative: '__N'
     using __tuple_element_t = typename tuple_element<__i, _Tp>::type;
                                                      ^~~
                                                      __N
/usr/include/c++/7/utility:133:62: error: template argument 1 is invalid
     using __tuple_element_t = typename tuple_element<__i, _Tp>::type;
                                                              ^
/usr/include/c++/7/utility:135:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename _Tp>
                 ^~~~~~
/usr/include/c++/7/utility:136:26: error: '__i' was not declared in this scope
     struct tuple_element<__i, const _Tp>
                          ^~~
/usr/include/c++/7/utility:136:26: note: suggested alternative: '__N'
     struct tuple_element<__i, const _Tp>
                          ^~~
                          __N
/usr/include/c++/7/utility:136:40: error: template argument 1 is invalid
     struct tuple_element<__i, const _Tp>
                                        ^
/usr/include/c++/7/utility:141:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename _Tp>
                 ^~~~~~
/usr/include/c++/7/utility:142:26: error: '__i' was not declared in this scope
     struct tuple_element<__i, volatile _Tp>
                          ^~~
/usr/include/c++/7/utility:142:26: note: suggested alternative: '__N'
     struct tuple_element<__i, volatile _Tp>
                          ^~~
                          __N
/usr/include/c++/7/utility:142:43: error: template argument 1 is invalid
     struct tuple_element<__i, volatile _Tp>
                                           ^
/usr/include/c++/7/utility:147:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename _Tp>
                 ^~~~~~
/usr/include/c++/7/utility:148:26: error: '__i' was not declared in this scope
     struct tuple_element<__i, const volatile _Tp>
                          ^~~
/usr/include/c++/7/utility:148:26: note: suggested alternative: '__N'
     struct tuple_element<__i, const volatile _Tp>
                          ^~~
                          __N
/usr/include/c++/7/utility:148:49: error: template argument 1 is invalid
     struct tuple_element<__i, const volatile _Tp>
                                                 ^
/usr/include/c++/7/utility:170:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 2> { };
                                     ^~~~~~
/usr/include/c++/7/utility:170:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/unique_ptr.h:36:0,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/utility:170:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 2> { };
                                     ^~~~~~
/usr/include/c++/7/utility:170:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/unique_ptr.h:36:0,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/utility:170:46: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 2> { };
                                              ^
/usr/include/c++/7/utility:170:46: note: invalid template non-type parameter
/usr/include/c++/7/utility:182:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int>
                 ^~~~~~
/usr/include/c++/7/utility:223:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int, class _Tp1, class _Tp2>
                 ^~~~~~
/usr/include/c++/7/utility:224:38: error: '_Int' was not declared in this scope
     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
                                      ^~~~
/usr/include/c++/7/utility:224:38: note: suggested alternative: 'uint'
     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
                                      ^~~~
                                      uint
/usr/include/c++/7/utility:224:64: error: template argument 1 is invalid
     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
                                                                ^~
/usr/include/c++/7/utility: In function 'constexpr int& std::get(std::pair<_Tp1, _Tp2>&)':
/usr/include/c++/7/utility:226:25: error: '_Int' was not declared in this scope
     { return __pair_get<_Int>::__get(__in); }
                         ^~~~
/usr/include/c++/7/utility:226:25: note: suggested alternative: 'uint'
     { return __pair_get<_Int>::__get(__in); }
                         ^~~~
                         uint
/usr/include/c++/7/utility:226:29: error: template argument 1 is invalid
     { return __pair_get<_Int>::__get(__in); }
                             ^
/usr/include/c++/7/utility: At global scope:
/usr/include/c++/7/utility:228:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int, class _Tp1, class _Tp2>
                 ^~~~~~
/usr/include/c++/7/utility:229:38: error: '_Int' was not declared in this scope
     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
                                      ^~~~
/usr/include/c++/7/utility:229:38: note: suggested alternative: 'uint'
     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
                                      ^~~~
                                      uint
/usr/include/c++/7/utility:229:64: error: template argument 1 is invalid
     constexpr typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&&
                                                                ^~
/usr/include/c++/7/utility: In function 'constexpr int&& std::get(std::pair<_Tp1, _Tp2>&&)':
/usr/include/c++/7/utility:231:25: error: '_Int' was not declared in this scope
     { return __pair_get<_Int>::__move_get(std::move(__in)); }
                         ^~~~
/usr/include/c++/7/utility:231:25: note: suggested alternative: 'uint'
     { return __pair_get<_Int>::__move_get(std::move(__in)); }
                         ^~~~
                         uint
/usr/include/c++/7/utility:231:29: error: template argument 1 is invalid
     { return __pair_get<_Int>::__move_get(std::move(__in)); }
                             ^
/usr/include/c++/7/utility: At global scope:
/usr/include/c++/7/utility:233:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int, class _Tp1, class _Tp2>
                 ^~~~~~
/usr/include/c++/7/utility:234:44: error: '_Int' was not declared in this scope
     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
                                            ^~~~
/usr/include/c++/7/utility:234:44: note: suggested alternative: 'uint'
     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
                                            ^~~~
                                            uint
/usr/include/c++/7/utility:234:70: error: template argument 1 is invalid
     constexpr const typename tuple_element<_Int, std::pair<_Tp1, _Tp2>>::type&
                                                                      ^~
/usr/include/c++/7/utility: In function 'constexpr const int& std::get(const std::pair<_Tp1, _Tp2>&)':
/usr/include/c++/7/utility:236:25: error: '_Int' was not declared in this scope
     { return __pair_get<_Int>::__const_get(__in); }
                         ^~~~
/usr/include/c++/7/utility:236:25: note: suggested alternative: 'uint'
     { return __pair_get<_Int>::__const_get(__in); }
                         ^~~~
                         uint
/usr/include/c++/7/utility:236:29: error: template argument 1 is invalid
     { return __pair_get<_Int>::__const_get(__in); }
                             ^
/usr/include/c++/7/utility: At global scope:
/usr/include/c++/7/utility:289:43: note: invalid template non-type parameter
     struct _Itup_cat<_Index_tuple<_Ind1...>, _Index_tuple<_Ind2...>>
                                           ^
/usr/include/c++/7/utility:289:64: note: invalid template non-type parameter
     struct _Itup_cat<_Index_tuple<_Ind1...>, _Index_tuple<_Ind2...>>
                                                                ^~~
/usr/include/c++/7/utility:289:67: error: template argument 1 is invalid
     struct _Itup_cat<_Index_tuple<_Ind1...>, _Index_tuple<_Ind2...>>
                                                                   ^~
/usr/include/c++/7/utility:289:67: error: template argument 2 is invalid
/usr/include/c++/7/utility:304:29: note: invalid template non-type parameter
       typedef _Index_tuple<0> __type;
                             ^
In file included from /usr/include/c++/7/tuple:39:0,
                 from /usr/include/c++/7/bits/unique_ptr.h:37,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/array:47:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:50:25: error: '_Nm' was not declared in this scope
       typedef _Tp _Type[_Nm];
                         ^~~
/usr/include/c++/7/array:55:20: error: '_Type' does not name a type; did you mean '_Tp'?
       _S_ref(const _Type& __t, std::size_t __n) noexcept
                    ^~~~~
                    _Tp
/usr/include/c++/7/array:55:37: error: 'std::size_t' has not been declared
       _S_ref(const _Type& __t, std::size_t __n) noexcept
                                     ^~~~~~
/usr/include/c++/7/array:59:20: error: '_Type' does not name a type; did you mean '_Tp'?
       _S_ptr(const _Type& __t) noexcept
                    ^~~~~
                    _Tp
/usr/include/c++/7/array: In static member function 'static constexpr _Tp& std::__array_traits<_Tp, <declaration error> >::_S_ref(const int&, int)':
/usr/include/c++/7/array:56:40: error: invalid types 'const int[int]' for array subscript
       { return const_cast<_Tp&>(__t[__n]); }
                                        ^
/usr/include/c++/7/array: At global scope:
/usr/include/c++/7/array:93:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:103:20: error: 'size_t' in namespace 'std' does not name a type
       typedef std::size_t                           size_type;
                    ^~~~~~
/usr/include/c++/7/array:104:20: error: 'ptrdiff_t' in namespace 'std' does not name a type
       typedef std::ptrdiff_t                          difference_type;
                    ^~~~~~~~~
/usr/include/c++/7/array:109:51: error: '_Nm' was not declared in this scope
       typedef _GLIBCXX_STD_C::__array_traits<_Tp, _Nm> _AT_Type;
                                                   ^~~
/usr/include/c++/7/array:109:54: error: template argument 2 is invalid
       typedef _GLIBCXX_STD_C::__array_traits<_Tp, _Nm> _AT_Type;
                                                      ^
/usr/include/c++/7/array:110:16: error: '_AT_Type' is not a class, namespace, or enumeration
       typename _AT_Type::_Type                         _M_elems;
                ^~~~~~~~
/usr/include/c++/7/array:121:16: error: '_AT_Type' is not a class, namespace, or enumeration
       noexcept(_AT_Type::_Is_nothrow_swappable::value)
                ^~~~~~~~
/usr/include/c++/7/array:174:17: error: 'size_type' does not name a type; did you mean 'true_type'?
       constexpr size_type
                 ^~~~~~~~~
                 true_type
/usr/include/c++/7/array:177:17: error: 'size_type' does not name a type; did you mean 'true_type'?
       constexpr size_type
                 ^~~~~~~~~
                 true_type
/usr/include/c++/7/array:185:18: error: 'size_type' has not been declared
       operator[](size_type __n) noexcept
                  ^~~~~~~~~
/usr/include/c++/7/array:189:18: error: 'size_type' has not been declared
       operator[](size_type __n) const noexcept
                  ^~~~~~~~~
/usr/include/c++/7/array:193:10: error: 'size_type' has not been declared
       at(size_type __n)
          ^~~~~~~~~
/usr/include/c++/7/array:203:10: error: 'size_type' has not been declared
       at(size_type __n) const
          ^~~~~~~~~
/usr/include/c++/7/array: In member function 'void std::array<_Tp, <declaration error> >::fill(const value_type&)':
/usr/include/c++/7/array:117:30: error: there are no arguments to 'size' that depend on a template parameter, so a declaration of 'size' must be available [-fpermissive]
       { std::fill_n(begin(), size(), __u); }
                              ^~~~
/usr/include/c++/7/array: In member function 'std::array<_Tp, <declaration error> >::value_type* std::array<_Tp, <declaration error> >::end()':
/usr/include/c++/7/array:135:34: error: '_Nm' was not declared in this scope
       { return iterator(data() + _Nm); }
                                  ^~~
/usr/include/c++/7/array: In member function 'const value_type* std::array<_Tp, <declaration error> >::end() const':
/usr/include/c++/7/array:139:40: error: '_Nm' was not declared in this scope
       { return const_iterator(data() + _Nm); }
                                        ^~~
/usr/include/c++/7/array: In member function 'const value_type* std::array<_Tp, <declaration error> >::cend() const':
/usr/include/c++/7/array:163:40: error: '_Nm' was not declared in this scope
       { return const_iterator(data() + _Nm); }
                                        ^~~
/usr/include/c++/7/array: In member function 'constexpr bool std::array<_Tp, <declaration error> >::empty() const':
/usr/include/c++/7/array:181:39: error: there are no arguments to 'size' that depend on a template parameter, so a declaration of 'size' must be available [-fpermissive]
       empty() const noexcept { return size() == 0; }
                                       ^~~~
/usr/include/c++/7/array: In member function 'std::array<_Tp, <declaration error> >::value_type& std::array<_Tp, <declaration error> >::operator[](int)':
/usr/include/c++/7/array:186:16: error: '_AT_Type' is not a class, namespace, or enumeration
       { return _AT_Type::_S_ref(_M_elems, __n); }
                ^~~~~~~~
/usr/include/c++/7/array: In member function 'constexpr const value_type& std::array<_Tp, <declaration error> >::operator[](int) const':
/usr/include/c++/7/array:190:16: error: '_AT_Type' is not a class, namespace, or enumeration
       { return _AT_Type::_S_ref(_M_elems, __n); }
                ^~~~~~~~
/usr/include/c++/7/array: In member function 'std::array<_Tp, <declaration error> >::value_type& std::array<_Tp, <declaration error> >::at(int)':
/usr/include/c++/7/array:195:13: error: '_Nm' was not declared in this scope
  if (__n >= _Nm)
             ^~~
/usr/include/c++/7/array:199:9: error: '_AT_Type' is not a class, namespace, or enumeration
  return _AT_Type::_S_ref(_M_elems, __n);
         ^~~~~~~~
/usr/include/c++/7/array: In member function 'constexpr const value_type& std::array<_Tp, <declaration error> >::at(int) const':
/usr/include/c++/7/array:207:15: error: '_Nm' was not declared in this scope
  return __n < _Nm ? _AT_Type::_S_ref(_M_elems, __n)
               ^~~
/usr/include/c++/7/array:207:21: error: '_AT_Type' is not a class, namespace, or enumeration
  return __n < _Nm ? _AT_Type::_S_ref(_M_elems, __n)
                     ^~~~~~~~
/usr/include/c++/7/array:211:7: error: '_AT_Type' is not a class, namespace, or enumeration
       _AT_Type::_S_ref(_M_elems, 0));
       ^~~~~~~~
/usr/include/c++/7/array: In member function 'constexpr const value_type& std::array<_Tp, <declaration error> >::front() const':
/usr/include/c++/7/array:220:16: error: '_AT_Type' is not a class, namespace, or enumeration
       { return _AT_Type::_S_ref(_M_elems, 0); }
                ^~~~~~~~
/usr/include/c++/7/array: In member function 'std::array<_Tp, <declaration error> >::value_type& std::array<_Tp, <declaration error> >::back()':
/usr/include/c++/7/array:224:16: error: '_Nm' was not declared in this scope
       { return _Nm ? *(end() - 1) : *end(); }
                ^~~
/usr/include/c++/7/array: In member function 'constexpr const value_type& std::array<_Tp, <declaration error> >::back() const':
/usr/include/c++/7/array:229:9: error: '_Nm' was not declared in this scope
  return _Nm ? _AT_Type::_S_ref(_M_elems, _Nm - 1)
         ^~~
/usr/include/c++/7/array:229:15: error: '_AT_Type' is not a class, namespace, or enumeration
  return _Nm ? _AT_Type::_S_ref(_M_elems, _Nm - 1)
               ^~~~~~~~
/usr/include/c++/7/array:230:16: error: '_AT_Type' is not a class, namespace, or enumeration
              : _AT_Type::_S_ref(_M_elems, 0);
                ^~~~~~~~
/usr/include/c++/7/array: In member function 'std::array<_Tp, <declaration error> >::value_type* std::array<_Tp, <declaration error> >::data()':
/usr/include/c++/7/array:235:16: error: '_AT_Type' is not a class, namespace, or enumeration
       { return _AT_Type::_S_ptr(_M_elems); }
                ^~~~~~~~
/usr/include/c++/7/array: In member function 'const value_type* std::array<_Tp, <declaration error> >::data() const':
/usr/include/c++/7/array:239:16: error: '_AT_Type' is not a class, namespace, or enumeration
       { return _AT_Type::_S_ptr(_M_elems); }
                ^~~~~~~~
/usr/include/c++/7/array: At global scope:
/usr/include/c++/7/array:250:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:252:33: error: '_Nm' was not declared in this scope
     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                 ^~~
/usr/include/c++/7/array:252:36: error: template argument 2 is invalid
     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                    ^
/usr/include/c++/7/array:252:63: error: '_Nm' was not declared in this scope
     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                               ^~~
/usr/include/c++/7/array:252:66: error: template argument 2 is invalid
     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                  ^
/usr/include/c++/7/array:252:74: error: 'bool std::operator==(const int&, const int&)' must have an argument of class or enumerated type
     operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                          ^
/usr/include/c++/7/array:255:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:257:33: error: '_Nm' was not declared in this scope
     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                 ^~~
/usr/include/c++/7/array:257:36: error: template argument 2 is invalid
     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                    ^
/usr/include/c++/7/array:257:63: error: '_Nm' was not declared in this scope
     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                               ^~~
/usr/include/c++/7/array:257:66: error: template argument 2 is invalid
     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                  ^
/usr/include/c++/7/array:257:74: error: 'bool std::operator!=(const int&, const int&)' must have an argument of class or enumerated type
     operator!=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                          ^
/usr/include/c++/7/array:260:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:262:32: error: '_Nm' was not declared in this scope
     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
                                ^~~
/usr/include/c++/7/array:262:35: error: template argument 2 is invalid
     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
                                   ^
/usr/include/c++/7/array:262:60: error: '_Nm' was not declared in this scope
     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
                                                            ^~~
/usr/include/c++/7/array:262:63: error: template argument 2 is invalid
     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
                                                               ^
/usr/include/c++/7/array:262:69: error: 'bool std::operator<(const int&, const int&)' must have an argument of class or enumerated type
     operator<(const array<_Tp, _Nm>& __a, const array<_Tp, _Nm>& __b)
                                                                     ^
/usr/include/c++/7/array:268:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:270:32: error: '_Nm' was not declared in this scope
     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                ^~~
/usr/include/c++/7/array:270:35: error: template argument 2 is invalid
     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                   ^
/usr/include/c++/7/array:270:62: error: '_Nm' was not declared in this scope
     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                              ^~~
/usr/include/c++/7/array:270:65: error: template argument 2 is invalid
     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                 ^
/usr/include/c++/7/array:270:73: error: 'bool std::operator>(const int&, const int&)' must have an argument of class or enumerated type
     operator>(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                         ^
/usr/include/c++/7/array:273:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:275:33: error: '_Nm' was not declared in this scope
     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                 ^~~
/usr/include/c++/7/array:275:36: error: template argument 2 is invalid
     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                    ^
/usr/include/c++/7/array:275:63: error: '_Nm' was not declared in this scope
     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                               ^~~
/usr/include/c++/7/array:275:66: error: template argument 2 is invalid
     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                  ^
/usr/include/c++/7/array:275:74: error: 'bool std::operator<=(const int&, const int&)' must have an argument of class or enumerated type
     operator<=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                          ^
/usr/include/c++/7/array:278:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:280:33: error: '_Nm' was not declared in this scope
     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                 ^~~
/usr/include/c++/7/array:280:36: error: template argument 2 is invalid
     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                    ^
/usr/include/c++/7/array:280:63: error: '_Nm' was not declared in this scope
     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                               ^~~
/usr/include/c++/7/array:280:66: error: template argument 2 is invalid
     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                  ^
/usr/include/c++/7/array:280:74: error: 'bool std::operator>=(const int&, const int&)' must have an argument of class or enumerated type
     operator>=(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
                                                                          ^
/usr/include/c++/7/array:284:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:294:21: error: '_Nm' was not declared in this scope
     swap(array<_Tp, _Nm>& __one, array<_Tp, _Nm>& __two)
                     ^~~
/usr/include/c++/7/array:294:24: error: template argument 2 is invalid
     swap(array<_Tp, _Nm>& __one, array<_Tp, _Nm>& __two)
                        ^
/usr/include/c++/7/array:294:45: error: '_Nm' was not declared in this scope
     swap(array<_Tp, _Nm>& __one, array<_Tp, _Nm>& __two)
                                             ^~~
/usr/include/c++/7/array:294:48: error: template argument 2 is invalid
     swap(array<_Tp, _Nm>& __one, array<_Tp, _Nm>& __two)
                                                ^
/usr/include/c++/7/array:295:29: error: request for member 'swap' in '__one', which is of non-class type 'int'
     noexcept(noexcept(__one.swap(__two)))
                             ^~~~
/usr/include/c++/7/array: In function 'void std::swap(int&, int&)':
/usr/include/c++/7/array:296:13: error: request for member 'swap' in '__one', which is of non-class type 'int'
     { __one.swap(__two); }
             ^~~~
/usr/include/c++/7/array: At global scope:
/usr/include/c++/7/array:305:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
                 ^~~~~~
/usr/include/c++/7/array:305:49: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
                                                 ^~~~~~
/usr/include/c++/7/array:307:20: error: '_Nm' was not declared in this scope
     get(array<_Tp, _Nm>& __arr) noexcept
                    ^~~
/usr/include/c++/7/array:307:23: error: template argument 2 is invalid
     get(array<_Tp, _Nm>& __arr) noexcept
                       ^
/usr/include/c++/7/array: In function 'constexpr _Tp& std::get(int&)':
/usr/include/c++/7/array:309:21: error: '_Int' was not declared in this scope
       static_assert(_Int < _Nm, "array index is within bounds");
                     ^~~~
/usr/include/c++/7/array:309:21: note: suggested alternative: 'uint'
       static_assert(_Int < _Nm, "array index is within bounds");
                     ^~~~
                     uint
/usr/include/c++/7/array:309:28: error: '_Nm' was not declared in this scope
       static_assert(_Int < _Nm, "array index is within bounds");
                            ^~~
/usr/include/c++/7/array:311:15: error: request for member '_M_elems' in '__arr', which is of non-class type 'int'
  _S_ref(__arr._M_elems, _Int);
               ^~~~~~~~
/usr/include/c++/7/array: At global scope:
/usr/include/c++/7/array:314:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
                 ^~~~~~
/usr/include/c++/7/array:314:49: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
                                                 ^~~~~~
/usr/include/c++/7/array:316:20: error: '_Nm' was not declared in this scope
     get(array<_Tp, _Nm>&& __arr) noexcept
                    ^~~
/usr/include/c++/7/array:316:23: error: template argument 2 is invalid
     get(array<_Tp, _Nm>&& __arr) noexcept
                       ^
/usr/include/c++/7/array: In function 'constexpr _Tp&& std::get(int&&)':
/usr/include/c++/7/array:318:21: error: '_Int' was not declared in this scope
       static_assert(_Int < _Nm, "array index is within bounds");
                     ^~~~
/usr/include/c++/7/array:318:21: note: suggested alternative: 'uint'
       static_assert(_Int < _Nm, "array index is within bounds");
                     ^~~~
                     uint
/usr/include/c++/7/array:318:28: error: '_Nm' was not declared in this scope
       static_assert(_Int < _Nm, "array index is within bounds");
                            ^~~
/usr/include/c++/7/array:319:55: error: no matching function for call to 'get<_Int>(int&)'
       return std::move(_GLIBCXX_STD_C::get<_Int>(__arr));
                                                       ^
In file included from /usr/include/c++/7/bits/unique_ptr.h:36:0,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/utility:225:5: note: candidate: template<<declaration error>, class _Tp1, class _Tp2> constexpr int& std::get(std::pair<_Tp1, _Tp2>&)
     get(std::pair<_Tp1, _Tp2>& __in) noexcept
     ^~~
/usr/include/c++/7/utility:225:5: note:   template argument deduction/substitution failed:
/usr/include/c++/7/utility:230:5: note: candidate: template<<declaration error>, class _Tp1, class _Tp2> constexpr int&& std::get(std::pair<_Tp1, _Tp2>&&)
     get(std::pair<_Tp1, _Tp2>&& __in) noexcept
     ^~~
/usr/include/c++/7/utility:230:5: note:   template argument deduction/substitution failed:
/usr/include/c++/7/utility:235:5: note: candidate: template<<declaration error>, class _Tp1, class _Tp2> constexpr const int& std::get(const std::pair<_Tp1, _Tp2>&)
     get(const std::pair<_Tp1, _Tp2>& __in) noexcept
     ^~~
/usr/include/c++/7/utility:235:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/c++/7/tuple:39:0,
                 from /usr/include/c++/7/bits/unique_ptr.h:37,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/array:307:5: note: candidate: template<<declaration error>, class _Tp, <declaration error> > constexpr _Tp& std::get(int&)
     get(array<_Tp, _Nm>& __arr) noexcept
     ^~~
/usr/include/c++/7/array:307:5: note:   template argument deduction/substitution failed:
/usr/include/c++/7/array:316:5: note: candidate: template<<declaration error>, class _Tp, <declaration error> > constexpr _Tp&& std::get(int&&)
     get(array<_Tp, _Nm>&& __arr) noexcept
     ^~~
/usr/include/c++/7/array:316:5: note:   template argument deduction/substitution failed:
/usr/include/c++/7/array: At global scope:
/usr/include/c++/7/array:322:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
                 ^~~~~~
/usr/include/c++/7/array:322:49: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
                                                 ^~~~~~
/usr/include/c++/7/array:324:26: error: '_Nm' was not declared in this scope
     get(const array<_Tp, _Nm>& __arr) noexcept
                          ^~~
/usr/include/c++/7/array:324:29: error: template argument 2 is invalid
     get(const array<_Tp, _Nm>& __arr) noexcept
                             ^
/usr/include/c++/7/array: In function 'constexpr const _Tp& std::get(const int&)':
/usr/include/c++/7/array:326:21: error: '_Int' was not declared in this scope
       static_assert(_Int < _Nm, "array index is within bounds");
                     ^~~~
/usr/include/c++/7/array:326:21: note: suggested alternative: 'uint'
       static_assert(_Int < _Nm, "array index is within bounds");
                     ^~~~
                     uint
/usr/include/c++/7/array:326:28: error: '_Nm' was not declared in this scope
       static_assert(_Int < _Nm, "array index is within bounds");
                            ^~~
/usr/include/c++/7/array:328:15: error: request for member '_M_elems' in '__arr', which is of non-class type 'const int'
  _S_ref(__arr._M_elems, _Int);
               ^~~~~~~~
/usr/include/c++/7/array: At global scope:
/usr/include/c++/7/array:345:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:346:50: error: '_Nm' was not declared in this scope
     struct tuple_size<_GLIBCXX_STD_C::array<_Tp, _Nm>>
                                                  ^~~
/usr/include/c++/7/array:346:50: error: template argument 2 is invalid
/usr/include/c++/7/array:346:53: error: template argument 1 is invalid
     struct tuple_size<_GLIBCXX_STD_C::array<_Tp, _Nm>>
                                                     ^~
/usr/include/c++/7/array:347:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, _Nm> { };
                                     ^~~~~~
/usr/include/c++/7/array:347:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/tuple:39:0,
                 from /usr/include/c++/7/bits/unique_ptr.h:37,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/array:347:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, _Nm> { };
                                     ^~~~~~
/usr/include/c++/7/array:347:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/tuple:39:0,
                 from /usr/include/c++/7/bits/unique_ptr.h:37,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/array:347:45: error: '_Nm' was not declared in this scope
     : public integral_constant<std::size_t, _Nm> { };
                                             ^~~
/usr/include/c++/7/array:347:48: error: template argument 1 is invalid
     : public integral_constant<std::size_t, _Nm> { };
                                                ^
/usr/include/c++/7/array:347:48: error: template argument 2 is invalid
/usr/include/c++/7/array:350:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp>
                 ^~~~~~
/usr/include/c++/7/array:354:17: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
                 ^~~~~~
/usr/include/c++/7/array:354:49: error: 'std::size_t' has not been declared
   template<std::size_t _Int, typename _Tp, std::size_t _Nm>
                                                 ^~~~~~
/usr/include/c++/7/array:355:26: error: '_Int' was not declared in this scope
     struct tuple_element<_Int, _GLIBCXX_STD_C::array<_Tp, _Nm>>
                          ^~~~
/usr/include/c++/7/array:355:26: note: suggested alternative: 'uint'
     struct tuple_element<_Int, _GLIBCXX_STD_C::array<_Tp, _Nm>>
                          ^~~~
                          uint
/usr/include/c++/7/array:355:59: error: '_Nm' was not declared in this scope
     struct tuple_element<_Int, _GLIBCXX_STD_C::array<_Tp, _Nm>>
                                                           ^~~
/usr/include/c++/7/array:355:59: error: template argument 2 is invalid
/usr/include/c++/7/array:355:62: error: template argument 1 is invalid
     struct tuple_element<_Int, _GLIBCXX_STD_C::array<_Tp, _Nm>>
                                                              ^~
/usr/include/c++/7/array:355:62: error: template argument 2 is invalid
/usr/include/c++/7/array:361:31: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Nm>
                               ^~~~~~
/usr/include/c++/7/array:362:60: error: '_Nm' was not declared in this scope
     struct __is_tuple_like_impl<_GLIBCXX_STD_C::array<_Tp, _Nm>> : true_type
                                                            ^~~
/usr/include/c++/7/array:362:60: error: template argument 2 is invalid
/usr/include/c++/7/array:362:63: error: template argument 1 is invalid
     struct __is_tuple_like_impl<_GLIBCXX_STD_C::array<_Tp, _Nm>> : true_type
                                                               ^~
In file included from /usr/include/c++/7/bits/unique_ptr.h:37:0,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/tuple:68:17: error: 'std::size_t' has not been declared
   template<std::size_t _Idx, typename _Head,
                 ^~~~~~
/usr/include/c++/7/tuple:70:12: error: no default argument for '_Head'
     struct _Head_base;
            ^~~~~~~~~~
/usr/include/c++/7/tuple:72:17: error: 'std::size_t' has not been declared
   template<std::size_t _Idx, typename _Head>
                 ^~~~~~
/usr/include/c++/7/tuple:73:23: error: '_Idx' was not declared in this scope
     struct _Head_base<_Idx, _Head, true>
                       ^~~~
/usr/include/c++/7/tuple:73:40: error: template argument 1 is invalid
     struct _Head_base<_Idx, _Head, true>
                                        ^
/usr/include/c++/7/tuple:119:17: error: 'std::size_t' has not been declared
   template<std::size_t _Idx, typename _Head>
                 ^~~~~~
/usr/include/c++/7/tuple:120:23: error: '_Idx' was not declared in this scope
     struct _Head_base<_Idx, _Head, false>
                       ^~~~
/usr/include/c++/7/tuple:120:41: error: template argument 1 is invalid
     struct _Head_base<_Idx, _Head, false>
                                         ^
/usr/include/c++/7/tuple:176:17: error: 'std::size_t' has not been declared
   template<std::size_t _Idx, typename... _Elements>
                 ^~~~~~
/usr/include/c++/7/tuple:184:17: error: 'std::size_t' has not been declared
   template<std::size_t _Idx, typename _Head, typename... _Tail>
                 ^~~~~~
/usr/include/c++/7/tuple:185:24: error: '_Idx' was not declared in this scope
     struct _Tuple_impl<_Idx, _Head, _Tail...>
                        ^~~~
/usr/include/c++/7/tuple:185:45: error: template argument 1 is invalid
     struct _Tuple_impl<_Idx, _Head, _Tail...>
                                             ^
/usr/include/c++/7/tuple:186:26: error: '_Idx' was not declared in this scope
     : public _Tuple_impl<_Idx + 1, _Tail...>,
                          ^~~~
/usr/include/c++/7/tuple:186:44: error: template argument 1 is invalid
     : public _Tuple_impl<_Idx + 1, _Tail...>,
                                            ^
/usr/include/c++/7/tuple:187:26: error: '_Idx' was not declared in this scope
       private _Head_base<_Idx, _Head>
                          ^~~~
/usr/include/c++/7/tuple:187:37: error: template argument 1 is invalid
       private _Head_base<_Idx, _Head>
                                     ^
/usr/include/c++/7/tuple:342:17: error: 'std::size_t' has not been declared
   template<std::size_t _Idx, typename _Head>
                 ^~~~~~
/usr/include/c++/7/tuple:343:24: error: '_Idx' was not declared in this scope
     struct _Tuple_impl<_Idx, _Head>
                        ^~~~
/usr/include/c++/7/tuple:343:35: error: template argument 1 is invalid
     struct _Tuple_impl<_Idx, _Head>
                                   ^
/usr/include/c++/7/tuple:344:26: error: '_Idx' was not declared in this scope
     : private _Head_base<_Idx, _Head>
                          ^~~~
/usr/include/c++/7/tuple:344:37: error: template argument 1 is invalid
     : private _Head_base<_Idx, _Head>
                                     ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple()':
/usr/include/c++/7/tuple:582:9: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
       : _Inherited() { }
         ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple()':
/usr/include/c++/7/tuple:592:9: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
       : _Inherited() { }
         ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple(const _Elements& ...)':
/usr/include/c++/7/tuple:609:9: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
       : _Inherited(__elements...) { }
         ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple(const _Elements& ...)':
/usr/include/c++/7/tuple:620:9: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
       : _Inherited(__elements...) { }
         ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple(_UElements&& ...)':
/usr/include/c++/7/tuple:647:11: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
         : _Inherited(std::forward<_UElements>(__elements)...) { }
           ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple(_UElements&& ...)':
/usr/include/c++/7/tuple:658:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(std::forward<_UElements>(__elements)...) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple(const std::tuple<_Args1 ...>&)':
/usr/include/c++/7/tuple:679:11: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
           ^~~~~~~~~~
/usr/include/c++/7/tuple:679:69: error: expected '>' before '&' token
         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
                                                                     ^
/usr/include/c++/7/tuple:679:69: error: expected '(' before '&' token
/usr/include/c++/7/tuple:679:70: error: expected primary-expression before '>' token
         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
                                                                      ^
/usr/include/c++/7/tuple:680:11: error: expected '{' at end of input
         { }
           ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple(const std::tuple<_Args1 ...>&)':
/usr/include/c++/7/tuple:691:11: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
           ^~~~~~~~~~
/usr/include/c++/7/tuple:691:69: error: expected '>' before '&' token
         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
                                                                     ^
/usr/include/c++/7/tuple:691:69: error: expected '(' before '&' token
/usr/include/c++/7/tuple:691:70: error: expected primary-expression before '>' token
         : _Inherited(static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
                                                                      ^
/usr/include/c++/7/tuple:692:11: error: expected '{' at end of input
         { }
           ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple(std::tuple<_Args1 ...>&&)':
/usr/include/c++/7/tuple:703:11: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
           ^~~~~~~~~~
/usr/include/c++/7/tuple:703:63: error: expected '>' before '&&' token
         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
                                                               ^~
/usr/include/c++/7/tuple:703:63: error: expected '(' before '&&' token
/usr/include/c++/7/tuple:703:65: error: expected identifier before '>' token
         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
                                                                 ^
/usr/include/c++/7/tuple:703:76: error: expected '{' at end of input
         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
                                                                            ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_Elements>::tuple(std::tuple<_Args1 ...>&&)':
/usr/include/c++/7/tuple:714:11: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
           ^~~~~~~~~~
/usr/include/c++/7/tuple:714:63: error: expected '>' before '&&' token
         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
                                                               ^~
/usr/include/c++/7/tuple:714:63: error: expected '(' before '&&' token
/usr/include/c++/7/tuple:714:65: error: expected identifier before '>' token
         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
                                                                 ^
/usr/include/c++/7/tuple:714:76: error: expected '{' at end of input
         : _Inherited(static_cast<_Tuple_impl<0, _UElements...>&&>(__in)) { }
                                                                            ^
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&)':
/usr/include/c++/7/tuple:720:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const _Elements& ...)':
/usr/include/c++/7/tuple:731:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a, __elements...) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const _Elements& ...)':
/usr/include/c++/7/tuple:742:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a, __elements...) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, _UElements&& ...)':
/usr/include/c++/7/tuple:752:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a, std::forward<_UElements>(__elements)...)
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, _UElements&& ...)':
/usr/include/c++/7/tuple:763:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a, std::forward<_UElements>(__elements)...)
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_Elements>&)':
/usr/include/c++/7/tuple:768:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a, static_cast<const _Inherited&>(__in)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_Elements>&&)':
/usr/include/c++/7/tuple:772:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a, static_cast<_Inherited&&>(__in)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_UElements ...>&)':
/usr/include/c++/7/tuple:785:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a,
    ^~~~~~~~~~
/usr/include/c++/7/tuple:786:62: error: expected '>' before '&' token
               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
                                                              ^
/usr/include/c++/7/tuple:786:62: error: expected '(' before '&' token
/usr/include/c++/7/tuple:786:63: error: expected primary-expression before '>' token
               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
                                                               ^
/usr/include/c++/7/tuple:787:4: error: expected '{' at end of input
  { }
    ^
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_UElements ...>&)':
/usr/include/c++/7/tuple:800:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a,
    ^~~~~~~~~~
/usr/include/c++/7/tuple:801:62: error: expected '>' before '&' token
               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
                                                              ^
/usr/include/c++/7/tuple:801:62: error: expected '(' before '&' token
/usr/include/c++/7/tuple:801:63: error: expected primary-expression before '>' token
               static_cast<const _Tuple_impl<0, _UElements...>&>(__in))
                                                               ^
/usr/include/c++/7/tuple:802:4: error: expected '{' at end of input
  { }
    ^
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_UElements ...>&&)':
/usr/include/c++/7/tuple:815:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a,
    ^~~~~~~~~~
/usr/include/c++/7/tuple:816:56: error: expected '>' before '&&' token
               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
                                                        ^~
/usr/include/c++/7/tuple:816:56: error: expected '(' before '&&' token
/usr/include/c++/7/tuple:816:58: error: expected identifier before '>' token
               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
                                                          ^
/usr/include/c++/7/tuple:817:4: error: expected '{' at end of input
  { }
    ^
/usr/include/c++/7/tuple: In constructor 'std::tuple<_Elements>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_UElements ...>&&)':
/usr/include/c++/7/tuple:830:4: error: 'typedef int std::tuple<_Elements>::_Inherited' is not a non-static data member of 'std::tuple<_Elements>'
  : _Inherited(__tag, __a,
    ^~~~~~~~~~
/usr/include/c++/7/tuple:831:56: error: expected '>' before '&&' token
               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
                                                        ^~
/usr/include/c++/7/tuple:831:56: error: expected '(' before '&&' token
/usr/include/c++/7/tuple:831:58: error: expected identifier before '>' token
               static_cast<_Tuple_impl<0, _UElements...>&&>(__in))
                                                          ^
/usr/include/c++/7/tuple:832:4: error: expected '{' at end of input
  { }
    ^
/usr/include/c++/7/tuple: In member function 'void std::tuple<_Elements>::swap(std::tuple<_Elements>&)':
/usr/include/c++/7/tuple:872:28: error: qualified-id in declaration before '(' token
       { _Inherited::_M_swap(__in); }
                            ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple()':
/usr/include/c++/7/tuple:920:9: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
       : _Inherited() { }
         ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple()':
/usr/include/c++/7/tuple:934:9: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
       : _Inherited() { }
         ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(const _T1&, const _T2&)':
/usr/include/c++/7/tuple:948:11: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
         : _Inherited(__a1, __a2) { }
           ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(const _T1&, const _T2&)':
/usr/include/c++/7/tuple:957:11: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
         : _Inherited(__a1, __a2) { }
           ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(_U1&&, _U2&&)':
/usr/include/c++/7/tuple:972:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(std::forward<_U1>(__a1), std::forward<_U2>(__a2)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(_U1&&, _U2&&)':
/usr/include/c++/7/tuple:983:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(std::forward<_U1>(__a1), std::forward<_U2>(__a2)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(const std::tuple<_U1, _U2>&)':
/usr/include/c++/7/tuple:996:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple:996:57: error: expected '>' before '&' token
  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
                                                         ^
/usr/include/c++/7/tuple:996:57: error: expected '(' before '&' token
/usr/include/c++/7/tuple:996:58: error: expected primary-expression before '>' token
  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
                                                          ^
/usr/include/c++/7/tuple:996:69: error: expected '{' at end of input
  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
                                                                     ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(const std::tuple<_U1, _U2>&)':
/usr/include/c++/7/tuple:1005:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple:1005:57: error: expected '>' before '&' token
  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
                                                         ^
/usr/include/c++/7/tuple:1005:57: error: expected '(' before '&' token
/usr/include/c++/7/tuple:1005:58: error: expected primary-expression before '>' token
  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
                                                          ^
/usr/include/c++/7/tuple:1005:69: error: expected '{' at end of input
  : _Inherited(static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in)) { }
                                                                     ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(std::tuple<_U1, _U2>&&)':
/usr/include/c++/7/tuple:1014:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple:1014:51: error: expected '>' before '&&' token
  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
                                                   ^~
/usr/include/c++/7/tuple:1014:51: error: expected '(' before '&&' token
/usr/include/c++/7/tuple:1014:53: error: expected identifier before '>' token
  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
                                                     ^
/usr/include/c++/7/tuple:1014:64: error: expected '{' at end of input
  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
                                                                ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(std::tuple<_U1, _U2>&&)':
/usr/include/c++/7/tuple:1023:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple:1023:51: error: expected '>' before '&&' token
  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
                                                   ^~
/usr/include/c++/7/tuple:1023:51: error: expected '(' before '&&' token
/usr/include/c++/7/tuple:1023:53: error: expected identifier before '>' token
  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
                                                     ^
/usr/include/c++/7/tuple:1023:64: error: expected '{' at end of input
  : _Inherited(static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in)) { }
                                                                ^
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(const std::pair<_U1, _U2>&)':
/usr/include/c++/7/tuple:1032:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__in.first, __in.second) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(const std::pair<_U1, _U2>&)':
/usr/include/c++/7/tuple:1041:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__in.first, __in.second) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(std::pair<_U1, _U2>&&)':
/usr/include/c++/7/tuple:1050:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(std::forward<_U1>(__in.first),
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'constexpr std::tuple<_T1, _T2>::tuple(std::pair<_U1, _U2>&&)':
/usr/include/c++/7/tuple:1060:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(std::forward<_U1>(__in.first),
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&)':
/usr/include/c++/7/tuple:1067:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const _T1&, const _T2&)':
/usr/include/c++/7/tuple:1079:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, __a1, __a2) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const _T1&, const _T2&)':
/usr/include/c++/7/tuple:1091:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, __a1, __a2) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, _U1&&, _U2&&)':
/usr/include/c++/7/tuple:1100:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, std::forward<_U1>(__a1),
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, _U1&&, _U2&&)':
/usr/include/c++/7/tuple:1111:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, std::forward<_U1>(__a1),
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_T1, _T2>&)':
/usr/include/c++/7/tuple:1116:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, static_cast<const _Inherited&>(__in)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_T1, _T2>&&)':
/usr/include/c++/7/tuple:1120:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, static_cast<_Inherited&&>(__in)) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_U1, _U2>&)':
/usr/include/c++/7/tuple:1130:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a,
    ^~~~~~~~~~
/usr/include/c++/7/tuple:1131:57: error: expected '>' before '&' token
               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
                                                         ^
/usr/include/c++/7/tuple:1131:57: error: expected '(' before '&' token
/usr/include/c++/7/tuple:1131:58: error: expected primary-expression before '>' token
               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
                                                          ^
/usr/include/c++/7/tuple:1132:4: error: expected '{' at end of input
  { }
    ^
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::tuple<_U1, _U2>&)':
/usr/include/c++/7/tuple:1142:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a,
    ^~~~~~~~~~
/usr/include/c++/7/tuple:1143:57: error: expected '>' before '&' token
               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
                                                         ^
/usr/include/c++/7/tuple:1143:57: error: expected '(' before '&' token
/usr/include/c++/7/tuple:1143:58: error: expected primary-expression before '>' token
               static_cast<const _Tuple_impl<0, _U1, _U2>&>(__in))
                                                          ^
/usr/include/c++/7/tuple:1144:4: error: expected '{' at end of input
  { }
    ^
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_U1, _U2>&&)':
/usr/include/c++/7/tuple:1153:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
    ^~~~~~~~~~
/usr/include/c++/7/tuple:1153:63: error: expected '>' before '&&' token
  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
                                                               ^~
/usr/include/c++/7/tuple:1153:63: error: expected '(' before '&&' token
/usr/include/c++/7/tuple:1153:65: error: expected identifier before '>' token
  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
                                                                 ^
/usr/include/c++/7/tuple:1154:4: error: expected '{' at end of input
  { }
    ^
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::tuple<_U1, _U2>&&)':
/usr/include/c++/7/tuple:1164:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
    ^~~~~~~~~~
/usr/include/c++/7/tuple:1164:63: error: expected '>' before '&&' token
  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
                                                               ^~
/usr/include/c++/7/tuple:1164:63: error: expected '(' before '&&' token
/usr/include/c++/7/tuple:1164:65: error: expected identifier before '>' token
  : _Inherited(__tag, __a, static_cast<_Tuple_impl<0, _U1, _U2>&&>(__in))
                                                                 ^
/usr/include/c++/7/tuple:1165:4: error: expected '{' at end of input
  { }
    ^
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::pair<_U1, _U2>&)':
/usr/include/c++/7/tuple:1175:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, __in.first, __in.second) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, const std::pair<_U1, _U2>&)':
/usr/include/c++/7/tuple:1185:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, __in.first, __in.second) { }
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::pair<_U1, _U2>&&)':
/usr/include/c++/7/tuple:1194:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, std::forward<_U1>(__in.first),
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In constructor 'std::tuple<_T1, _T2>::tuple(std::allocator_arg_t, const _Alloc&, std::pair<_U1, _U2>&&)':
/usr/include/c++/7/tuple:1205:4: error: 'typedef int std::tuple<_T1, _T2>::_Inherited' is not a non-static data member of 'std::tuple<_T1, _T2>'
  : _Inherited(__tag, __a, std::forward<_U1>(__in.first),
    ^~~~~~~~~~
/usr/include/c++/7/tuple: In member function 'void std::tuple<_T1, _T2>::swap(std::tuple<_T1, _T2>&)':
/usr/include/c++/7/tuple:1260:28: error: qualified-id in declaration before '(' token
       { _Inherited::_M_swap(__in); }
                            ^
/usr/include/c++/7/tuple: At global scope:
/usr/include/c++/7/tuple:1267:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, sizeof...(_Elements)> { };
                                     ^~~~~~
/usr/include/c++/7/tuple:1267:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/unique_ptr.h:37:0,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/tuple:1267:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, sizeof...(_Elements)> { };
                                     ^~~~~~
/usr/include/c++/7/tuple:1267:37: note: suggested alternative:
In file included from /usr/include/wchar.h:35:0,
                 from /usr/include/c++/7/cwchar:44,
                 from /usr/include/c++/7/bits/postypes.h:40,
                 from /usr/include/c++/7/iosfwd:40,
                 from /usr/include/c++/7/ios:38,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/lib/gcc/x86_64-linux-gnu/7/include/stddef.h:216:23: note:   'size_t'
 typedef __SIZE_TYPE__ size_t;
                       ^~~~~~
In file included from /usr/include/c++/7/bits/unique_ptr.h:37:0,
                 from /usr/include/c++/7/bits/locale_conv.h:41,
                 from /usr/include/c++/7/locale:43,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/tuple:1267:65: error: template argument 1 is invalid
     : public integral_constant<std::size_t, sizeof...(_Elements)> { };
                                                                 ^
/usr/include/c++/7/tuple:1267:65: note: invalid template non-type parameter
/usr/include/c++/7/tuple:1278:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename _Head, typename... _Tail>
                 ^~~~~~
/usr/include/c++/7/tuple:1279:26: error: '__i' was not declared in this scope
     struct tuple_element<__i, tuple<_Head, _Tail...> >
                          ^~~
/usr/include/c++/7/tuple:1279:26: note: suggested alternative: '__N'
     struct tuple_element<__i, tuple<_Head, _Tail...> >
                          ^~~
                          __N
/usr/include/c++/7/tuple:1279:54: error: template argument 1 is invalid
     struct tuple_element<__i, tuple<_Head, _Tail...> >
                                                      ^
/usr/include/c++/7/tuple:1280:21: error: '__i' was not declared in this scope
     : tuple_element<__i - 1, tuple<_Tail...> > { };
                     ^~~
/usr/include/c++/7/tuple:1280:21: note: suggested alternative: '__N'
     : tuple_element<__i - 1, tuple<_Tail...> > { };
                     ^~~
                     __N
/usr/include/c++/7/tuple:1280:46: error: template argument 1 is invalid
     : tuple_element<__i - 1, tuple<_Tail...> > { };
                                              ^
/usr/include/c++/7/tuple:1301:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename _Head, typename... _Tail>
                 ^~~~~~
/usr/include/c++/7/tuple:1303:30: error: '__i' was not declared in this scope
     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
                              ^~~
/usr/include/c++/7/tuple:1303:30: note: suggested alternative: '__N'
     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
                              ^~~
                              __N
/usr/include/c++/7/tuple:1303:50: error: template argument 1 is invalid
     __get_helper(_Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
                                                  ^
/usr/include/c++/7/tuple: In function 'constexpr _Head& std::__get_helper(int&)':
/usr/include/c++/7/tuple:1304:26: error: '__i' was not declared in this scope
     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
                          ^~~
/usr/include/c++/7/tuple:1304:26: note: suggested alternative: '__t'
     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
                          ^~~
                          __t
/usr/include/c++/7/tuple:1304:46: error: template argument 1 is invalid
     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
                                              ^
/usr/include/c++/7/tuple: At global scope:
/usr/include/c++/7/tuple:1306:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename _Head, typename... _Tail>
                 ^~~~~~
/usr/include/c++/7/tuple:1308:36: error: '__i' was not declared in this scope
     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
                                    ^~~
/usr/include/c++/7/tuple:1308:36: note: suggested alternative: '__N'
     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
                                    ^~~
                                    __N
/usr/include/c++/7/tuple:1308:56: error: template argument 1 is invalid
     __get_helper(const _Tuple_impl<__i, _Head, _Tail...>& __t) noexcept
                                                        ^
/usr/include/c++/7/tuple: In function 'constexpr const _Head& std::__get_helper(const int&)':
/usr/include/c++/7/tuple:1309:26: error: '__i' was not declared in this scope
     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
                          ^~~
/usr/include/c++/7/tuple:1309:26: note: suggested alternative: '__t'
     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
                          ^~~
                          __t
/usr/include/c++/7/tuple:1309:46: error: template argument 1 is invalid
     { return _Tuple_impl<__i, _Head, _Tail...>::_M_head(__t); }
                                              ^
/usr/include/c++/7/tuple: At global scope:
/usr/include/c++/7/tuple:1312:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename... _Elements>
                 ^~~~~~
/usr/include/c++/7/tuple:1313:15: error: '__tuple_element_t' does not name a type; did you mean 'tuple_element'?
     constexpr __tuple_element_t<__i, tuple<_Elements...>>&
               ^~~~~~~~~~~~~~~~~
               tuple_element
/usr/include/c++/7/tuple:1318:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename... _Elements>
                 ^~~~~~
/usr/include/c++/7/tuple:1319:21: error: '__tuple_element_t' does not name a type; did you mean 'tuple_element'?
     constexpr const __tuple_element_t<__i, tuple<_Elements...>>&
                     ^~~~~~~~~~~~~~~~~
                     tuple_element
/usr/include/c++/7/tuple:1324:17: error: 'std::size_t' has not been declared
   template<std::size_t __i, typename... _Elements>
                 ^~~~~~
/usr/include/c++/7/tuple:1325:15: error: '__tuple_element_t' does not name a type; did you mean 'tuple_element'?
     constexpr __tuple_element_t<__i, tuple<_Elements...>>&&
               ^~~~~~~~~~~~~~~~~
               tuple_element
/usr/include/c++/7/tuple:1468:18: error: '__tuple_element_t' was not declared in this scope
    tuple<_Tp..., __tuple_element_t<_Idx, _Tuple>>,
                  ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/tuple:1468:18: note: suggested alternative: 'tuple_element'
    tuple<_Tp..., __tuple_element_t<_Idx, _Tuple>>,
                  ^~~~~~~~~~~~~~~~~
                  tuple_element
/usr/include/c++/7/tuple:1468:42: error: template argument 2 is invalid
    tuple<_Tp..., __tuple_element_t<_Idx, _Tuple>>,
                                          ^~~~~~
/usr/include/c++/7/tuple:1468:48: error: wrong number of template arguments (2, should be 4)
    tuple<_Tp..., __tuple_element_t<_Idx, _Tuple>>,
                                                ^~
/usr/include/c++/7/tuple:1463:12: note: provided for 'template<long unsigned int <anonymous>, class, class, long unsigned int <anonymous> > struct std::__make_tuple_impl'
     struct __make_tuple_impl;
            ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/tuple:1469:15: error: expected class-name before '>' token
    _Tuple, _Nm>
               ^
/usr/include/c++/7/tuple:1469:15: error: expected '{' before '>' token
/usr/include/c++/7/tuple:1472:17: error: 'std::size_t' has not been declared
   template<std::size_t _Nm, typename _Tuple, typename... _Tp>
                 ^~~~~~
/usr/include/c++/7/tuple:1473:30: error: '_Nm' was not declared in this scope
     struct __make_tuple_impl<_Nm, tuple<_Tp...>, _Tuple, _Nm>
                              ^~~
/usr/include/c++/7/tuple:1473:58: error: '_Nm' was not declared in this scope
     struct __make_tuple_impl<_Nm, tuple<_Tp...>, _Tuple, _Nm>
                                                          ^~~
/usr/include/c++/7/tuple:1473:61: error: template argument 1 is invalid
     struct __make_tuple_impl<_Nm, tuple<_Tp...>, _Tuple, _Nm>
                                                             ^
/usr/include/c++/7/tuple:1473:61: error: template argument 4 is invalid
/usr/include/c++/7/tuple:1545:32: error: 'std::size_t' has not been declared
   template<typename _Ret, std::size_t... _Is, typename _Tp, typename... _Tpls>
                                ^~~~~~
/usr/include/c++/7/tuple:1546:53: error: '_Is' was not declared in this scope
     struct __tuple_concater<_Ret, std::_Index_tuple<_Is...>, _Tp, _Tpls...>
                                                     ^~~
/usr/include/c++/7/tuple:1546:56: error: expected parameter pack before '...'
     struct __tuple_concater<_Ret, std::_Index_tuple<_Is...>, _Tp, _Tpls...>
                                                        ^~~
/usr/include/c++/7/tuple:1546:59: error: template argument 1 is invalid
     struct __tuple_concater<_Ret, std::_Index_tuple<_Is...>, _Tp, _Tpls...>
                                                           ^
/usr/include/c++/7/tuple:1546:75: error: template argument 2 is invalid
     struct __tuple_concater<_Ret, std::_Index_tuple<_Is...>, _Tp, _Tpls...>
                                                                           ^
/usr/include/c++/7/tuple:1645:39: error: 'std::size_t' has not been declared
     template<typename... _Args1, std::size_t... _Indexes1,
                                       ^~~~~~
/usr/include/c++/7/tuple:1646:39: error: 'std::size_t' has not been declared
              typename... _Args2, std::size_t... _Indexes2>
                                       ^~~~~~
/usr/include/c++/7/tuple:1650:18: error: '_Indexes1' was not declared in this scope
     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
                  ^~~~~~~~~
/usr/include/c++/7/tuple:1650:27: error: expected parameter pack before '...'
     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
                           ^~~
/usr/include/c++/7/tuple:1650:30: error: template argument 1 is invalid
     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
                              ^
/usr/include/c++/7/tuple:1650:46: error: '_Indexes2' was not declared in this scope
     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
                                              ^~~~~~~~~
/usr/include/c++/7/tuple:1650:55: error: expected parameter pack before '...'
     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
                                                       ^~~
/usr/include/c++/7/tuple:1650:58: error: template argument 1 is invalid
     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
                                                          ^
/usr/include/c++/7/tuple:1650:59: error: default argument for template parameter for class enclosing 'std::pair<_T1, _T2>::pair(std::tuple<_Args1 ...>&, std::tuple<_Args2 ...>&, int, int)'
     _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>)
                                                           ^
/usr/include/c++/7/tuple: In constructor 'std::pair<_T1, _T2>::pair(std::tuple<_Args1 ...>&, std::tuple<_Args2 ...>&, int, int)':
/usr/include/c++/7/tuple:1651:45: error: '_Indexes1' was not declared in this scope
       : first(std::forward<_Args1>(std::get<_Indexes1>(__tuple1))...),
                                             ^~~~~~~~~
/usr/include/c++/7/tuple:1652:46: error: '_Indexes2' was not declared in this scope
         second(std::forward<_Args2>(std::get<_Indexes2>(__tuple2))...)
                                              ^~~~~~~~~
In file included from /usr/include/c++/7/locale:43:0,
                 from /usr/include/c++/7/iomanip:43,
                 from foo.cc:4:
/usr/include/c++/7/bits/locale_conv.h: At global scope:
/usr/include/c++/7/bits/locale_conv.h:402:7: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       streamsize
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/bits/locale_conv.h:481:31: error: 'streamsize' has not been declared
       _M_put(const char* __p, streamsize __n)
                               ^~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:531:20: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       static const streamsize _S_buffer_length = 32;
                    ^~~~~~~~~~
                    streambuf
/usr/include/c++/7/bits/locale_conv.h:532:20: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       static const streamsize _S_putback_length = 3;
                    ^~~~~~~~~~
                    streambuf
/usr/include/c++/7/bits/locale_conv.h:533:45: error: '_S_buffer_length' was not declared in this scope
       _Elem                     _M_put_area[_S_buffer_length];
                                             ^~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:534:45: error: '_S_buffer_length' was not declared in this scope
       _Elem                     _M_get_area[_S_buffer_length];
                                             ^~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:535:7: error: 'streamsize' does not name a type; did you mean 'streambuf'?
       streamsize  _M_unconv = 0;
       ^~~~~~~~~~
       streambuf
/usr/include/c++/7/bits/locale_conv.h:536:25: error: '_S_buffer_length' was not declared in this scope
       char   _M_get_buf[_S_buffer_length-_S_putback_length];
                         ^~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:536:42: error: '_S_putback_length' was not declared in this scope
       char   _M_get_buf[_S_buffer_length-_S_putback_length];
                                          ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h: In constructor 'std::wbuffer_convert<_Codecvt, _Elem, _Tr>::wbuffer_convert(std::streambuf*, _Codecvt*, std::wbuffer_convert<_Codecvt, _Elem, _Tr>::state_type)':
/usr/include/c++/7/bits/locale_conv.h:348:17: error: '_M_put_area' was not declared in this scope
      this->setp(_M_put_area, _M_put_area + _S_buffer_length);
                 ^~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:348:17: note: suggested alternative: '_M_put'
      this->setp(_M_put_area, _M_put_area + _S_buffer_length);
                 ^~~~~~~~~~~
                 _M_put
/usr/include/c++/7/bits/locale_conv.h:348:44: error: '_S_buffer_length' was not declared in this scope
      this->setp(_M_put_area, _M_put_area + _S_buffer_length);
                                            ^~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:349:17: error: '_M_get_area' was not declared in this scope
      this->setg(_M_get_area + _S_putback_length,
                 ^~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:349:17: note: suggested alternative: '_M_state'
      this->setg(_M_get_area + _S_putback_length,
                 ^~~~~~~~~~~
                 _M_state
/usr/include/c++/7/bits/locale_conv.h:349:31: error: '_S_putback_length' was not declared in this scope
      this->setg(_M_get_area + _S_putback_length,
                               ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h: In member function 'bool std::wbuffer_convert<_Codecvt, _Elem, _Tr>::_M_conv_get()':
/usr/include/c++/7/bits/locale_conv.h:424:8: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  const streamsize __pb1 = this->gptr() - this->eback();
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/bits/locale_conv.h:425:8: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  const streamsize __pb2 = _S_putback_length;
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/bits/locale_conv.h:426:8: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  const streamsize __npb = std::min(__pb1, __pb2);
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/bits/locale_conv.h:428:12: error: '_M_get_area' was not declared in this scope
  _Tr::move(_M_get_area + _S_putback_length - __npb,
            ^~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:428:12: note: suggested alternative: '_M_state'
  _Tr::move(_M_get_area + _S_putback_length - __npb,
            ^~~~~~~~~~~
            _M_state
/usr/include/c++/7/bits/locale_conv.h:428:26: error: '_S_putback_length' was not declared in this scope
  _Tr::move(_M_get_area + _S_putback_length - __npb,
                          ^~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:428:46: error: '__npb' was not declared in this scope
  _Tr::move(_M_get_area + _S_putback_length - __npb,
                                              ^~~~~
/usr/include/c++/7/bits/locale_conv.h:431:2: error: 'streamsize' was not declared in this scope
  streamsize __nbytes = sizeof(_M_get_buf) - _M_unconv;
  ^~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:431:2: note: suggested alternative: 'streambuf'
  streamsize __nbytes = sizeof(_M_get_buf) - _M_unconv;
  ^~~~~~~~~~
  streambuf
/usr/include/c++/7/bits/locale_conv.h:432:2: error: '__nbytes' was not declared in this scope
  __nbytes = std::min(__nbytes, _M_buf->in_avail());
  ^~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:432:2: note: suggested alternative: '__write'
  __nbytes = std::min(__nbytes, _M_buf->in_avail());
  ^~~~~~~~
  __write
/usr/include/c++/7/bits/locale_conv.h:432:40: error: 'std::streambuf {aka class std::basic_streambuf<char>}' has no member named 'in_avail'
  __nbytes = std::min(__nbytes, _M_buf->in_avail());
                                        ^~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:435:21: error: 'std::streambuf {aka class std::basic_streambuf<char>}' has no member named 'sgetn'; did you mean 'sgetc'?
  __nbytes = _M_buf->sgetn(_M_get_buf + _M_unconv, __nbytes);
                     ^~~~~
                     sgetc
/usr/include/c++/7/bits/locale_conv.h:435:27: error: '_M_get_buf' was not declared in this scope
  __nbytes = _M_buf->sgetn(_M_get_buf + _M_unconv, __nbytes);
                           ^~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:435:27: note: suggested alternative: '_M_buf'
  __nbytes = _M_buf->sgetn(_M_get_buf + _M_unconv, __nbytes);
                           ^~~~~~~~~~
                           _M_buf
/usr/include/c++/7/bits/locale_conv.h:435:40: error: '_M_unconv' was not declared in this scope
  __nbytes = _M_buf->sgetn(_M_get_buf + _M_unconv, __nbytes);
                                        ^~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:435:40: note: suggested alternative: 'is_union'
  __nbytes = _M_buf->sgetn(_M_get_buf + _M_unconv, __nbytes);
                                        ^~~~~~~~~
                                        is_union
/usr/include/c++/7/bits/locale_conv.h:451:38: error: '_S_buffer_length' was not declared in this scope
      _Elem* __outend = _M_get_area + _S_buffer_length;
                                      ^~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h: In member function 'bool std::wbuffer_convert<_Codecvt, _Elem, _Tr>::_M_put(const char*, int)':
/usr/include/c++/7/bits/locale_conv.h:483:14: error: 'std::streambuf {aka class std::basic_streambuf<char>}' has no member named 'sputn'; did you mean 'sputc'?
  if (_M_buf->sputn(__p, __n) < __n)
              ^~~~~
              sputc
/usr/include/c++/7/bits/locale_conv.h: In member function 'bool std::wbuffer_convert<_Codecvt, _Elem, _Tr>::_M_conv_put()':
/usr/include/c++/7/bits/locale_conv.h:494:8: error: 'streamsize' does not name a type; did you mean 'streambuf'?
  const streamsize __pending = __last - __first;
        ^~~~~~~~~~
        streambuf
/usr/include/c++/7/bits/locale_conv.h:497:27: error: '__pending' was not declared in this scope
    return _M_put(__first, __pending);
                           ^~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:499:20: error: '_S_buffer_length' was not declared in this scope
  char __outbuf[2 * _S_buffer_length];
                    ^~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:506:24: error: '__outbuf' was not declared in this scope
      char* __outnext = __outbuf;
                        ^~~~~~~~
/usr/include/c++/7/bits/locale_conv.h:506:24: note: suggested alternative: '_M_buf'
      char* __outnext = __outbuf;
                        ^~~~~~~~
                        _M_buf
/usr/include/c++/7/bits/locale_conv.h:513:30: error: '__pending' was not declared in this scope
        return _M_put(__next, __pending);
                              ^~~~~~~~~
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h: In instantiation of 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::basic_string(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]':
/usr/include/c++/7/system_error:189:40:   required from here
/usr/include/c++/7/bits/basic_string.h:542:24: error: 'class std::__cxx11::basic_string<char>' has no member named '_M_allocated_capacity'; did you mean '_S_local_capacity'?
      _M_capacity(__str._M_allocated_capacity);
                  ~~~~~~^~~~~~~~~~~~~~~~~~~~~
                  _S_local_capacity
/usr/include/c++/7/bits/basic_string.h:542:17: error: '_M_capacity' was not declared in this scope
      _M_capacity(__str._M_allocated_capacity);
      ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:548:11: error: '_M_length' was not declared in this scope
  _M_length(__str.length());
  ~~~~~~~~~^~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h: In instantiation of 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]':
/usr/include/c++/7/system_error:351:50:   required from here
/usr/include/c++/7/bits/basic_string.h:5968:33: error: 'class std::__cxx11::basic_string<char>' has no member named 'size'
       const auto __size = __lhs.size() + __rhs.size();
                           ~~~~~~^~~~
/usr/include/c++/7/bits/basic_string.h:5968:48: error: 'class std::__cxx11::basic_string<char>' has no member named 'size'
       const auto __size = __lhs.size() + __rhs.size();
                                          ~~~~~~^~~~
/usr/include/c++/7/bits/basic_string.h:5969:43: error: 'class std::__cxx11::basic_string<char>' has no member named 'capacity'
       const bool __cond = (__size > __lhs.capacity()
                                     ~~~~~~^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5970:26: error: 'class std::__cxx11::basic_string<char>' has no member named 'capacity'
       && __size <= __rhs.capacity());
                    ~~~~~~^~~~~~~~
/usr/include/c++/7/bits/basic_string.h:5971:32: error: no matching function for call to 'std::__cxx11::basic_string<char>::insert(int, std::__cxx11::basic_string<char>&)'
       return __cond ? std::move(__rhs.insert(0, __lhs))
                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:1567:9: note: candidate: template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
         insert(const_iterator __p, _InputIterator __beg, _InputIterator __end)
         ^~~~~~
/usr/include/c++/7/bits/basic_string.h:1567:9: note:   template argument deduction/substitution failed:
/usr/include/c++/7/bits/basic_string.h:5971:32: note:   candidate expects 3 arguments, 2 provided
       return __cond ? std::move(__rhs.insert(0, __lhs))
                       ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:1601:7: note: candidate: void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator, std::initializer_list<_Tp>) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*]
       insert(iterator __p, initializer_list<_CharT> __l)
       ^~~~~~
/usr/include/c++/7/bits/basic_string.h:1601:7: note:   no known conversion for argument 1 from 'int' to 'std::__cxx11::basic_string<char>::iterator {aka __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >}'
/usr/include/c++/7/bits/basic_string.h:1728:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, _CharT) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]
       insert(__const_iterator __p, _CharT __c)
       ^~~~~~
/usr/include/c++/7/bits/basic_string.h:1728:7: note:   no known conversion for argument 1 from 'int' to 'std::__cxx11::basic_string<char>::__const_iterator {aka __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >}'
/usr/include/c++/7/bits/basic_string.h: In instantiation of 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const _CharT*, std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&&) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]':
/usr/include/c++/7/system_error:354:51:   required from here
/usr/include/c++/7/bits/basic_string.h:5979:23: error: no matching function for call to 'std::__cxx11::basic_string<char>::insert(int, const char*&)'
     { return std::move(__rhs.insert(0, __lhs)); }
              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:1567:9: note: candidate: template<class _InputIterator, class> std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = _InputIterator; <template-parameter-2-2> = <template-parameter-1-2>; _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]
         insert(const_iterator __p, _InputIterator __beg, _InputIterator __end)
         ^~~~~~
/usr/include/c++/7/bits/basic_string.h:1567:9: note:   template argument deduction/substitution failed:
/usr/include/c++/7/bits/basic_string.h:5979:23: note:   candidate expects 3 arguments, 2 provided
     { return std::move(__rhs.insert(0, __lhs)); }
              ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:1601:7: note: candidate: void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator, std::initializer_list<_Tp>) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*]
       insert(iterator __p, initializer_list<_CharT> __l)
       ^~~~~~
/usr/include/c++/7/bits/basic_string.h:1601:7: note:   no known conversion for argument 1 from 'int' to 'std::__cxx11::basic_string<char>::iterator {aka __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >}'
/usr/include/c++/7/bits/basic_string.h:1728:7: note: candidate: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::insert(std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator, _CharT) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::iterator = __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::pointer = char*; std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::__const_iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >; typename __gnu_cxx::__alloc_traits<typename __gnu_cxx::__alloc_traits<_Alloc>::rebind<_CharT>::other>::const_pointer = const char*]
       insert(__const_iterator __p, _CharT __c)
       ^~~~~~
/usr/include/c++/7/bits/basic_string.h:1728:7: note:   no known conversion for argument 1 from 'int' to 'std::__cxx11::basic_string<char>::__const_iterator {aka __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >}'
In file included from foo.cc:4:0:
/usr/include/c++/7/iomanip: In instantiation of 'std::basic_ostream<_CharT, _Traits>& std::operator<<(std::basic_ostream<_CharT, _Traits>&, std::_Setw) [with _CharT = char; _Traits = std::char_traits<char>]':
foo.cc:8:13:   required from here
/usr/include/c++/7/iomanip:240:12: error: 'class std::basic_ostream<char>' has no member named 'width'; did you mean 'widen'?
       __os.width(__f._M_n);
       ~~~~~^~~~~
       widen
In file included from /usr/include/c++/7/string:52:0,
                 from /usr/include/c++/7/bits/locale_classes.h:40,
                 from /usr/include/c++/7/bits/ios_base.h:41,
                 from /usr/include/c++/7/ios:42,
                 from /usr/include/c++/7/ostream:38,
                 from /usr/include/c++/7/iostream:39,
                 from foo.cc:3:
/usr/include/c++/7/bits/basic_string.h: In instantiation of 'void std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::_M_dispose() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]':
/usr/include/c++/7/bits/basic_string.h:647:19:   required from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::~basic_string() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]'
/usr/include/c++/7/system_error:189:40:   required from here
/usr/include/c++/7/bits/basic_string.h:221:15: error: using invalid field 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::<unnamed union>::_M_allocated_capacity'
    _M_destroy(_M_allocated_capacity);
               ^~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:221:14: error: '_M_destroy' was not declared in this scope
    _M_destroy(_M_allocated_capacity);
    ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:221:14: note: suggested alternative: '_M_data'
    _M_destroy(_M_allocated_capacity);
    ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
    _M_data
/usr/include/c++/7/bits/basic_string.h: In instantiation of 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc>& std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::append(const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]':
/usr/include/c++/7/bits/basic_string.h:5929:7:   required from 'std::__cxx11::basic_string<_CharT, _Traits, _Alloc> std::operator+(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _CharT*) [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>]'
/usr/include/c++/7/system_error:351:30:   required from here
/usr/include/c++/7/bits/basic_string.h:1257:17: error: '_M_check_length' was not declared in this scope
  _M_check_length(size_type(0), __n, "basic_string::append");
  ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:1257:17: note: suggested alternative: '__socklen_t'
  _M_check_length(size_type(0), __n, "basic_string::append");
  ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  __socklen_t
/usr/include/c++/7/bits/basic_string.h:1258:18: error: '_M_append' was not declared in this scope
  return _M_append(__s, __n);
         ~~~~~~~~~^~~~~~~~~~
/usr/include/c++/7/bits/basic_string.h:1258:18: note: suggested alternative: 'append'
  return _M_append(__s, __n);
         ~~~~~~~~~^~~~~~~~~~
         append
[Hydro](https://hydro.ac)提供评测服务

信息

递交者
类型
递交
题目
P1196 华语鸽坛
语言
C++
递交时间
2021-11-24 22:38:45
评测时间
2021-11-24 22:38:45
评测机
分数
0
总耗时
0ms
峰值内存
0 Bytes