6.6.3 The return statement [stmt.return] p.149 C++N4606 Working Draft 2016, ISO/IEC 14882, C++ standard(61) 

# はじめに
N4606 Working Draft, Standard for Programming Language C++
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/#mailing2016-11
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/n4606.pdf

n4606は、ISO/IEC JTC1 SC22 WG21の作業原案(Working Draft)です。
公式のISO/IEC 14882原本ではありません。
ISO/IEC JTC1 SC22 WG21では、可能な限り作業文書を公開し、幅広い意見を求めています。
一連の記事はコード断片をコンパイルできる形にする方法を検討してコンパイル、リンク、実行して、規格案の原文と処理系(g++, Clang++)との違いを確認し、技術内容を検討し、ISO/IEC JTC1 SC22 WG21にフィードバックするために用います。
また、CERT C++, MISRA C++等のコーディング標準のコード断片をコンパイルする際の参考にさせていただこうと考えています。CERT C++, MISRA C++が標準化の動きとの時間的なずれがあれば確認できれば幸いです。また、boostライブラリとの関連、Linux OS, TOPPERSカーネル、g++(GCC), clang++(LLVM）との関係も調査中です。
何か、抜け漏れ、耳より情報がありましたらおしらせくださると幸いです。

## list
N4606 Working Draft 2016, ISO/IEC 14882, C++ standard(1) coding list
https://qiita.com/kaizen_nagoya/items/df5d62c35bd6ed1c3d43/

## Compiler
### clang++ --version
clang version 6.0.0 (tags/RELEASE_600/final)

### g++-7 --version
g++-7 (Homebrew GCC 7.3.0_1) 7.3.0
Copyright (C) 2017 Free Software Foundation, Inc.

# (61)6.6.3 The return statement [stmt.return]
p149.cpp のコードはコピペ間違いかつ、<>がなぜか消えていた。最終コードは、上のp149a.cpp。pairの出力方法は、
https://cpprefjp.github.io/reference/utility/pair.html
に基づいています。

cout関連のエラーがあるとg++が猛烈にエラーを出す現象を記録するために、下のp149.cppは、このままにしています。
あまりにたくさんのエラーでめげて、冷静にコードが見えなくなっていました。改行が入ったためにエラーが出るのは他にも一度経験していました。

##p149a.cpp
###算譜(source code)

```c++:p149a.cpp
// N4606 Committee Draft, Standard for Programming Language C++
// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/n4606.pdf
#define msg "p149.cpp(61)6.6.3 The return statement [stmt.return]"

#include <iostream>

std::pair<std::string,int> f(const char* p, int x) {
  return {p,x};
}
int main() {
  const char * p = "The return statement";
  int i=19;
  std::pair <std::string,int> s = f(p,i);
  std::cout <<"<"<< s.first << ","<<s.second<<">"<<std::endl;
  std::cout << msg << std::endl;
  return EXIT_SUCCESS;
}
```
###編纂・実行結果(compile and go)

```shell-session:cpla.sh
$ ./cpla.sh p149a
$ clang++ p149a.cpp -std=c++03 -Wall
p149a.cpp:9:10: warning: generalized initializer lists are a C++11 extension
      [-Wc++11-extensions]
  return {p,x};
         ^~~~~
p149a.cpp:9:10: error: non-aggregate type 'std::pair<std::string, int>' (aka
      'pair<basic_string<char, char_traits<char>, allocator<char> >, int>') cannot be
      initialized with an initializer list
  return {p,x};
         ^~~~~
1 warning and 1 error generated.
$ clang++ p149a.cpp -std=c++2a -Wall
<The return statement,19>
p149.cpp(61)6.6.3 The return statement [stmt.return]

$ g++-8 p149a.cpp -std=c++03  -Wall
p149a.cpp: In function 'std::pair<std::__cxx11::basic_string<char>, int> f(const char*, int)':
p149a.cpp:9:10: warning: extended initializer lists only available with -std=c++11 or -std=gnu++11
   return {p,x};
          ^
<The return statement,19>
p149.cpp(61)6.6.3 The return statement [stmt.return]

$ g++-8 p149a.cpp -std=c++2a  -Wall
<The return statement,19>
p149.cpp(61)6.6.3 The return statement [stmt.return]

```
##p149.cpp
###算譜(source code)

```c++:p149.cpp
// N4606 Committee Draft, Standard for Programming Language C++
// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/n4606.pdf 
#define msg "p149.cpp(61)
6.6.3 The return statement [stmt.return]"

#include <iostream>

std::pairstd::string,int f(const char* p, int x) {
  return {p,x};
}
int main(){
  const char * p = "The return statement";
  int i=1;
  std::cout << msg << std::endl;
  return EXIT_SUCCESS;
}
```
###編纂・実行結果(compile and go)

```shell_session
./cppgl17.sh p149
$ clang++ p149.cpp
p149.cpp:3:13: warning: missing terminating '"' character [-Winvalid-pp-token]
#define msg "p149.cpp(61)
            ^
p149.cpp:4:1: error: expected unqualified-id
6.6.3 The return statement [stmt.return]"
^
p149.cpp:4:41: warning: missing terminating '"' character [-Winvalid-pp-token]
6.6.3 The return statement [stmt.return]"
                                        ^
p149.cpp:8:6: error: no member named 'pairstd' in namespace 'std'
std::pairstd::string,int f(const char* p, int x) {
~~~~~^
p149.cpp:14:16: error: expected expression
  std::cout << msg << std::endl;
               ^
p149.cpp:3:13: note: expanded from macro 'msg'
#define msg "p149.cpp(61)
            ^
2 warnings and 3 errors generated.

$ g++-7 p149.cpp
p149.cpp:3:13: warning: missing terminating " character
 #define msg "p149.cpp(61)
             ^
p149.cpp:4:1: error: too many decimal points in number
 6.6.3 The return statement [stmt.return]"
 ^~~~~
p149.cpp:4:41: warning: missing terminating " character
 6.6.3 The return statement [stmt.return]"
                                         ^
p149.cpp:4:41: error: missing terminating " character
p149.cpp:3:13: error: missing terminating " character
 #define msg "p149.cpp(61)
             ^
p149.cpp:14:16: note: in expansion of macro 'msg'
   std::cout << msg << std::endl;
                ^~~
p149.cpp:4:1: error: expected unqualified-id before numeric constant
 6.6.3 The return statement [stmt.return]"
 ^~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:120:31: error: declaration of 'operator new' as non-function
 void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
                               ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:120:25: error: 'size_t' is not a member of 'std'
 void* operator new(std::size_t) _GLIBCXX_THROW (std::bad_alloc)
                         ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:120:25: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:122:33: error: declaration of 'operator new []' as non-function
 void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
                                 ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:122:27: error: 'size_t' is not a member of 'std'
 void* operator new[](std::size_t) _GLIBCXX_THROW (std::bad_alloc)
                           ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:122:27: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:129:29: error: 'std::size_t' has not been declared
 void operator delete(void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
                             ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:131:31: error: 'std::size_t' has not been declared
 void operator delete[](void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
                               ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:134:25: error: 'size_t' is not a member of 'std'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:134:25: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:134:33: error: expected primary-expression before 'const'
 void* operator new(std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
                                 ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:136:27: error: 'size_t' is not a member of 'std'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:136:27: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:136:35: error: expected primary-expression before 'const'
 void* operator new[](std::size_t, const std::nothrow_t&) _GLIBCXX_USE_NOEXCEPT
                                   ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:143:25: error: declaration of 'operator new' as non-function
 void* operator new(std::size_t, std::align_val_t)
                         ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:143:25: error: 'size_t' is not a member of 'std'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:143:25: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:143:49: error: expected primary-expression before ')' token
 void* operator new(std::size_t, std::align_val_t)
                                                 ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:145:25: error: declaration of 'operator new' as non-function
 void* operator new(std::size_t, std::align_val_t, const std::nothrow_t&)
                         ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:145:25: error: 'size_t' is not a member of 'std'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:145:25: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:145:49: error: expected primary-expression before ',' token
 void* operator new(std::size_t, std::align_val_t, const std::nothrow_t&)
                                                 ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:145:51: error: expected primary-expression before 'const'
 void* operator new(std::size_t, std::align_val_t, const std::nothrow_t&)
                                                   ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:151:27: error: declaration of 'operator new []' as non-function
 void* operator new[](std::size_t, std::align_val_t)
                           ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:151:27: error: 'size_t' is not a member of 'std'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:151:27: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:151:51: error: expected primary-expression before ')' token
 void* operator new[](std::size_t, std::align_val_t)
                                                   ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:153:27: error: declaration of 'operator new []' as non-function
 void* operator new[](std::size_t, std::align_val_t, const std::nothrow_t&)
                           ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:153:27: error: 'size_t' is not a member of 'std'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:153:27: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:153:51: error: expected primary-expression before ',' token
 void* operator new[](std::size_t, std::align_val_t, const std::nothrow_t&)
                                                   ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:153:53: error: expected primary-expression before 'const'
 void* operator new[](std::size_t, std::align_val_t, const std::nothrow_t&)
                                                     ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:160:29: error: 'std::size_t' has not been declared
 void operator delete(void*, std::size_t, std::align_val_t)
                             ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:162:31: error: 'std::size_t' has not been declared
 void operator delete[](void*, std::size_t, std::align_val_t)
                               ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:168:32: error: declaration of 'operator new' as non-function
 inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
                                ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:168:32: error: 'size_t' is not a member of 'std'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:168:32: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:168:40: error: expected primary-expression before 'void'
 inline void* operator new(std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
                                        ^~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:170:34: error: declaration of 'operator new []' as non-function
 inline void* operator new[](std::size_t, void* __p) _GLIBCXX_USE_NOEXCEPT
                                  ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:170:34: error: 'size_t' is not a member of 'std'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/new:170:34: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:362:26: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Size>
                          ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:363:25: error: '_Size' was not declared in this scope
     struct is_array<_Tp[_Size]>
                         ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:363:31: error: template argument 1 is invalid
     struct is_array<_Tp[_Size]>
                               ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:561:42: error: 'nullptr_t' is not a member of 'std'
     struct __is_null_pointer_helper<std::nullptr_t>
                                          ^~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:561:42: note: suggested alternative:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/cxxabi_init_exception.h:38:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/exception_ptr.h:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:142,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/lib/gcc/7/gcc/x86_64-apple-darwin17.4.0/7.3.0/include/stddef.h:444:29: note:   'nullptr_t'
   typedef decltype(nullptr) nullptr_t;
                             ^~~~~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:561:51: error: template argument 1 is invalid
     struct __is_null_pointer_helper<std::nullptr_t>
                                                   ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1464:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, __alignof__(_Tp)> { };
                                     ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1464:37: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1464:61: error: template argument 1 is invalid
     : public integral_constant<std::size_t, __alignof__(_Tp)> { };
                                                             ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1464:61: note: invalid template non-type parameter
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1469:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 0> { };
                                     ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1469:37: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1469:46: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 0> { };
                                              ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1469:46: note: invalid template non-type parameter
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1471:26: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Size>
                          ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1472:21: error: '_Size' was not declared in this scope
     struct rank<_Tp[_Size]>
                     ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1472:27: error: template argument 1 is invalid
     struct rank<_Tp[_Size]>
                           ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1473:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                     ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1473:37: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1473:65: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                                                 ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1473:65: note: invalid template non-type parameter
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1477:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                     ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1477:37: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1477:65: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 1 + rank<_Tp>::value> { };
                                                                 ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1477:65: note: invalid template non-type parameter
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1482:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t, 0> { };
                                     ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1482:37: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1482:46: error: template argument 1 is invalid
     : public integral_constant<std::size_t, 0> { };
                                              ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1482:46: note: invalid template non-type parameter
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1484:42: error: 'std::size_t' has not been declared
   template<typename _Tp, unsigned _Uint, std::size_t _Size>
                                          ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1485:23: error: '_Size' was not declared in this scope
     struct extent<_Tp[_Size], _Uint>
                       ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1485:36: error: template argument 1 is invalid
     struct extent<_Tp[_Size], _Uint>
                                    ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1486:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t,
                                     ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1486:37: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1487:24: error: '_Size' was not declared in this scope
           _Uint == 0 ? _Size : extent<_Tp,
                        ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1488:28: error: template argument 1 is invalid
           _Uint - 1>::value>
                            ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1488:28: note: invalid template non-type parameter
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1493:37: error: 'size_t' is not a member of 'std'
     : public integral_constant<std::size_t,
                                     ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1493:37: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/move.h:54:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/nested_exception.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/exception:143,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1495:31: error: template argument 1 is invalid
              _Uint - 1>::value>
                               ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1495:31: note: invalid template non-type parameter
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1944:26: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Size>
                          ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1945:30: error: '_Size' was not declared in this scope
     struct remove_extent<_Tp[_Size]>
                              ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1945:36: error: template argument 1 is invalid
     struct remove_extent<_Tp[_Size]>
                                    ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1957:26: error: 'std::size_t' has not been declared
   template<typename _Tp, std::size_t _Size>
                          ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1958:35: error: '_Size' was not declared in this scope
     struct remove_all_extents<_Tp[_Size]>
                                   ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:1958:41: error: template argument 1 is invalid
     struct remove_all_extents<_Tp[_Size]>
                                         ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:2016:12: error: 'std::size_t' has not been declared
   template<std::size_t _Len>
            ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:2021:23: error: '_Len' was not declared in this scope
  unsigned char __data[_Len];
                       ^~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:2036:12: error: 'std::size_t' has not been declared
   template<std::size_t _Len, std::size_t _Align =
            ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:2036:30: error: 'std::size_t' has not been declared
   template<std::size_t _Len, std::size_t _Align =
                              ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:2037:48: error: '_Len' was not declared in this scope
     __alignof__(typename __aligned_storage_msa<_Len>::__type)>
                                                ^~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:2037:52: error: template argument 1 is invalid
     __alignof__(typename __aligned_storage_msa<_Len>::__type)>
                                                    ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:2042:23: error: '_Len' was not declared in this scope
  unsigned char __data[_Len];
                       ^~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/type_traits:2043:37: error: '_Align' was not declared in this scope
  struct __attribute__((__aligned__((_Align)))) { } __align;
                                     ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_algobase.h:62:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/type_traits.h:157:5: note: previous declaration 'template<class _Type> bool __gnu_cxx::__is_null_pointer(_Type)'
     __is_null_pointer(_Type)
     ^~~~~~~~~~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/type_traits.h:162:26: error: 'nullptr_t' is not a member of 'std'
   __is_null_pointer(std::nullptr_t)
                          ^~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_algobase.h:64:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:39,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:86:12: error: 'std::size_t' has not been declared
   template<std::size_t...>
            ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:429:36: error: 'std::size_t' has not been declared
       template<typename... _Args1, std::size_t... _Indexes1,
                                    ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:430:36: error: 'std::size_t' has not been declared
                typename... _Args2, std::size_t... _Indexes2>
                                    ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:432:27: error: '_Indexes1' was not declared in this scope
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                           ^~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:432:27: note: suggested alternative: '_Index_tuple'
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                           ^~~~~~~~~
                           _Index_tuple
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:432:36: error: expected parameter pack before '...'
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                    ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:432:39: error: template argument 1 is invalid
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                       ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:432:55: error: '_Indexes2' was not declared in this scope
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                                       ^~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:432:55: note: suggested alternative: '_Index_tuple'
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                                       ^~~~~~~~~
                                                       _Index_tuple
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:432:64: error: expected parameter pack before '...'
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                                                ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/stl_pair.h:432:67: error: template argument 1 is invalid
              _Index_tuple<_Indexes1...>, _Index_tuple<_Indexes2...>);
                                                                   ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:108:61: error: 'std::size_t' has not been declared
       compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
                                                             ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:110:40: error: 'size_t' in namespace 'std' does not name a type
       static _GLIBCXX14_CONSTEXPR std::size_t
                                        ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:114:34: error: 'std::size_t' has not been declared
       find(const char_type* __s, std::size_t __n, const char_type& __a);
                                  ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:117:52: error: 'std::size_t' has not been declared
       move(char_type* __s1, const char_type* __s2, std::size_t __n);
                                                    ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:120:52: error: 'std::size_t' has not been declared
       copy(char_type* __s1, const char_type* __s2, std::size_t __n);
                                                    ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:123:30: error: 'std::size_t' has not been declared
       assign(char_type* __s, std::size_t __n, char_type __a);
                              ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:151:59: error: 'std::size_t' has not been declared
     compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
                                                           ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h: In static member function 'static constexpr int __gnu_cxx::char_traits<_CharT>::compare(const char_type*, const char_type*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:153:17: error: 'size_t' is not a member of 'std'
       for (std::size_t __i = 0; __i < __n; ++__i)
                 ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:153:17: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:153:33: error: '__i' was not declared in this scope
       for (std::size_t __i = 0; __i < __n; ++__i)
                                 ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:153:33: note: suggested alternative: '__n'
       for (std::size_t __i = 0; __i < __n; ++__i)
                                 ^~~
                                 __n
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h: At global scope:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:162:31: error: 'size_t' in namespace 'std' does not name a type
     _GLIBCXX14_CONSTEXPR std::size_t
                               ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:175:32: error: 'std::size_t' has not been declared
     find(const char_type* __s, std::size_t __n, const char_type& __a)
                                ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h: In static member function 'static constexpr const char_type* __gnu_cxx::char_traits<_CharT>::find(const char_type*, int, const char_type&)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:177:17: error: 'size_t' is not a member of 'std'
       for (std::size_t __i = 0; __i < __n; ++__i)
                 ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:177:17: note: suggested alternative:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/wchar.h:75:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/cwchar:44,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/postypes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iosfwd:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:31:32: note:   'size_t'
 typedef __darwin_size_t        size_t;
                                ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:177:33: error: '__i' was not declared in this scope
       for (std::size_t __i = 0; __i < __n; ++__i)
                                 ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:177:33: note: suggested alternative: '__s'
       for (std::size_t __i = 0; __i < __n; ++__i)
                                 ^~~
                                 __s
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h: At global scope:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:186:50: error: 'std::size_t' has not been declared
     move(char_type* __s1, const char_type* __s2, std::size_t __n)
                                                  ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:195:50: error: 'std::size_t' has not been declared
     copy(char_type* __s1, const char_type* __s2, std::size_t __n)
                                                  ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:205:28: error: 'std::size_t' has not been declared
     assign(char_type* __s, std::size_t __n, char_type __a)
                            ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h: In static member function 'static constexpr size_t std::char_traits<char>::length(const char_type*)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:318:46: error: 'length' is not a member of '__gnu_cxx::char_traits<char>'
    return __gnu_cxx::char_traits<char_type>::length(__s);
                                              ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h: In static member function 'static constexpr size_t std::char_traits<wchar_t>::length(const char_type*)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/char_traits.h:428:46: error: 'length' is not a member of '__gnu_cxx::char_traits<wchar_t>'
    return __gnu_cxx::char_traits<char_type>::length(__s);
                                              ^~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/x86_64-apple-darwin17.4.0/bits/c++allocator.h:33:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/allocator.h:46,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/new_allocator.h: At global scope:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/new_allocator.h:44:14: error: 'std::size_t' has not been declared
   using std::size_t;
              ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/new_allocator.h:45:14: error: 'std::ptrdiff_t' has not been declared
   using std::ptrdiff_t;
              ^~~~~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:44:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:45:26: error: 'streamsize' has not been declared
       const _CharT* __s, streamsize __n)
                          ^~~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h: In function 'void std::__ostream_write(std::basic_ostream<_CharT, _Traits>&, const _CharT*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:51:11: error: '__put' was not declared in this scope
       if (__put != __n)
           ^~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:51:11: note: suggested alternative: '__out'
       if (__put != __n)
           ^~~~~
           __out
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h: At global scope:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:57:59: error: 'streamsize' has not been declared
     __ostream_fill(basic_ostream<_CharT, _Traits>& __out, streamsize __n)
                                                           ^~~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:77:27: error: 'streamsize' has not been declared
        const _CharT* __s, streamsize __n)
                           ^~~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h: In function 'std::basic_ostream<_CharT, _Traits>& std::__ostream_insert(std::basic_ostream<_CharT, _Traits>&, const _CharT*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:87:14: error: 'streamsize' does not name a type; did you mean 'streambuf'?
        const streamsize __w = __out.width();
              ^~~~~~~~~~
              streambuf
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:88:12: error: '__w' was not declared in this scope
        if (__w > __n)
            ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:88:12: note: suggested alternative: '__s'
        if (__w > __n)
            ^~~
            __s
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h: At global scope:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:118:68: error: 'streamsize' has not been declared
   extern template ostream& __ostream_insert(ostream&, const char*, streamsize);
                                                                    ^~~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ostream_insert.h:122:11: error: 'streamsize' has not been declared
           streamsize);
           ^~~~~~~~~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/alloc_traits.h:36:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/alloc_traits.h:404:36: error: 'ptrdiff_t' in namespace 'std' does not name a type
       using difference_type = std::ptrdiff_t;
                                    ^~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/alloc_traits.h:407:30: error: 'size_t' in namespace 'std' does not name a type
       using size_type = std::size_t;
                              ^~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/alloc_traits.h:435:37: error: 'size_type' has not been declared
       allocate(allocator_type& __a, size_type __n)
                                     ^~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/alloc_traits.h:461:52: error: 'size_type' has not been declared
       deallocate(allocator_type& __a, pointer __p, size_type __n)
                                                    ^~~~~~~~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:55:46: error: 'std::size_t' has not been declared
     const char* __name, const _CharT* __str, std::size_t* __idx,
                                              ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:43: error: 'std::size_t' has not been declared
     __to_xstring(int (*__convf) (_CharT*, std::size_t, const _CharT*,
                                           ^~~
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:100:26: error: 'std::size_t' has not been declared
      __builtin_va_list), std::size_t __n,
                          ^~~
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/alloc_traits.h: In instantiation of 'struct __gnu_cxx::__alloc_traits<std::allocator<char> >':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:80:24:   required from 'class std::__cxx11::basic_string<char>'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6360:68:   required from here
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'int std::__cxx11::stoi(const string&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6361:19: error: no matching function for call to '__stoa<long int, int>(long int (*)(const char*, char**, int), const char [5], const char*, size_t*&, int&)'
      __idx, __base); }
                   ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6361:19: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*') to type 'int*'
      __idx, __base); }
                   ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'long int std::__cxx11::stol(const string&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6366:22: error: no matching function for call to '__stoa(long int (*)(const char*, char**, int), const char [5], const char*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6366:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*') to type 'int*'
         __idx, __base); }
                      ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'long unsigned int std::__cxx11::stoul(const string&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6371:22: error: no matching function for call to '__stoa(long unsigned int (*)(const char*, char**, int), const char [6], const char*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6371:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*') to type 'int*'
         __idx, __base); }
                      ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'long long int std::__cxx11::stoll(const string&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6376:22: error: no matching function for call to '__stoa(long long int (*)(const char*, char**, int), const char [6], const char*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6376:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*') to type 'int*'
         __idx, __base); }
                      ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'long long unsigned int std::__cxx11::stoull(const string&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6381:22: error: no matching function for call to '__stoa(long long unsigned int (*)(const char*, char**, int), const char [7], const char*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6381:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*') to type 'int*'
         __idx, __base); }
                      ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'float std::__cxx11::stof(const string&, size_t*)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6386:72: error: no matching function for call to '__stoa(float (*)(const char*, char**), const char [5], const char*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::strtof, "stof", __str.c_str(), __idx); }
                                                                        ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6386: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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'double std::__cxx11::stod(const string&, size_t*)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6390:72: error: no matching function for call to '__stoa(double (*)(const char*, char**), const char [5], const char*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::strtod, "stod", __str.c_str(), __idx); }
                                                                        ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6390: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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'long double std::__cxx11::stold(const string&, size_t*)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6394:74: error: no matching function for call to '__stoa(long double (*)(const char*, char**), const char [6], const char*, size_t*&)'
   { return __gnu_cxx::__stoa(&std::strtold, "stold", __str.c_str(), __idx); }
                                                                          ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6394: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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6404:20: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), long unsigned int, const char [3], int&)'
         "%d", __val); }
                    ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6404:20: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%d", __val); }
                    ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(unsigned int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6410:20: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), long unsigned int, const char [3], unsigned int&)'
         "%u", __val); }
                    ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6410:20: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%u", __val); }
                    ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6415:21: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), long unsigned int, const char [4], long int&)'
         "%ld", __val); }
                     ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6415:21: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%ld", __val); }
                     ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long unsigned int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6421:21: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), long unsigned int, const char [4], long unsigned int&)'
         "%lu", __val); }
                     ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6421:21: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%lu", __val); }
                     ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long long int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6427:22: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), long unsigned int, const char [5], long long int&)'
         "%lld", __val); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6427:22: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%lld", __val); }
                      ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long long unsigned int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6433:22: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), long unsigned int, const char [5], long long unsigned int&)'
         "%llu", __val); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6433:22: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%llu", __val); }
                      ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(float)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6441:20: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), const int&, const char [3], float&)'
         "%f", __val);
                    ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6441:20: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%f", __val);
                    ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(double)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6450:20: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), const int&, const char [3], double&)'
         "%f", __val);
                    ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6450:20: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%f", __val);
                    ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'std::__cxx11::string std::__cxx11::to_string(long double)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6459:21: error: no matching function for call to '__to_xstring<std::__cxx11::string>(int (*)(char*, size_t, const char*, __va_list_tag*), const int&, const char [4], long double&)'
         "%Lf", __val);
                     ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:99:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6459:21: note:   mismatched types 'int' and 'size_t {aka long unsigned int}'
         "%Lf", __val);
                     ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:40:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/alloc_traits.h: In instantiation of 'struct __gnu_cxx::__alloc_traits<std::allocator<wchar_t> ':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:80:24:   required from 'class std::__cxx11::basic_string<wchar_t>'
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6466:68:   required from here
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'int std::__cxx11::stoi(const wstring&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6467:19: error: no matching function for call to '__stoa<long int, int>(long int (*)(const wchar_t*, wchar_t**, int), const char [5], const wchar_t*, size_t*&, int&)'
      __idx, __base); }
                   ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6467:19: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*') to type 'int*'
      __idx, __base); }
                   ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'long int std::__cxx11::stol(const wstring&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6472:22: error: no matching function for call to '__stoa(long int (*)(const wchar_t*, wchar_t**, int), const char [5], const wchar_t*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6472:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*') to type 'int*'
         __idx, __base); }
                      ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'long unsigned int std::__cxx11::stoul(const wstring&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6477:22: error: no matching function for call to '__stoa(long unsigned int (*)(const wchar_t*, wchar_t**, int), const char [6], const wchar_t*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6477:22: note:   cannot convert '__idx' (type 'size_t* {aka long unsigned int*') to type 'int*'
         __idx, __base); }
                      ^
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h: In function 'long long int std::__cxx11::stoll(const wstring&, size_t*, int)':
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6482:22: error: no matching function for call to '__stoa(long long int (*)(const wchar_t*, wchar_t**, int), const char [6], const wchar_t*, size_t*&, int&)'
         __idx, __base); }
                      ^
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/basic_string.h:6349:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/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/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ext/string_conversions.h:54:5: note:   template argument deduction/substitution failed:
In file included from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/string:52:0,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/locale_classes.h:40,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/bits/ios_base.h:41,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ios:42,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/ostream:38,
                 from /usr/local/Cellar/gcc/7.3.0_1/include/c++/7.3.0/iostream:39,
                 from p149.cpp:6:
/usr/local/Cellar/gcc/7.3.0_1/include/c++
```

```c++:p149a.cpp
// N4606 Committee Draft, Standard for Programming Language C++
// http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/n4606.pdf
#define msg "p149.cpp(61)6.6.3 The return statement [stmt.return]"

#include <iostream>
#include <cstdlib>

std::pair<std::string,int> f(const char* p, int x) {
  return {p,x};
}
int main(){
  const char * p = "The return statement";
  int i=1;
  std::cout << msg << std::endl;
  return EXIT_SUCCESS;
}
```

```shell-console
$ ./cppgl17.sh p149a
$ clang++ p149a.cpp
p149.cpp(61)6.6.3 The return statement [stmt.return]

$ g++-7 p149a.cpp
p149.cpp(61)6.6.3 The return statement [stmt.return]
```

# 検討事項
clang++とg++の警告の有無の背景。
clang++ warninig
g++ no warning

# 参考資料
pair cpprefjp
https://cpprefjp.github.io/reference/utility/pair.html

コンパイル用shell script C版(clangとgcc)とC++版(clang++とg++)
https://qiita.com/kaizen_nagoya/items/74220c0577a512c2d7da

Qiitaに投稿するCのStyle例(暫定)
https://qiita.com/kaizen_nagoya/items/946df1528a6a1ef2bc0d

MISRA C++ 5-0-16
https://qiita.com/kaizen_nagoya/items/7df2d4e05db724752a74

C++ Templates Part1 BASICS Chapter 3. Class Templates 3.2 Use of Class Template Stack stack1test.cpp
https://qiita.com/kaizen_nagoya/items/cd5fc49106fad5a4e9ed


ISO/IEC TS 17961:2013 C Secure Coding Rules(1) All list(to be confirmed)
https://qiita.com/kaizen_nagoya/items/54e056195c4f11b850a1

C言語（C++)に対する誤解、曲解、無理解、爽快。
https://qiita.com/kaizen_nagoya/items/3f3992c9722c1cee2e3a

C Puzzle Bookの有り難み5つ、C言語規格及びCコンパイラの特性を認識
https://qiita.com/kaizen_nagoya/items/d89a48c1536a02ecdec9

'wchar.h' file not found で困った clang++ macOS
https://qiita.com/kaizen_nagoya/items/de15cd46d657517fac11

Open POSIX Test Suiteの使い方を調べはじめました
https://qiita.com/kaizen_nagoya/items/644d5e407f5faf96e6dc

MISRA-C 2012 Referenceに掲載している文献の入手可能性を確認
https://qiita.com/kaizen_nagoya/items/96dc8b125e462d5575bb

どうやって MISRA Example Suiteをコンパイルするか
https://qiita.com/kaizen_nagoya/items/fbdbff5ff696e2ca7f00

MISRA C まとめ #include <misra_c.h>
https://qiita.com/kaizen_nagoya/items/f1a79a7cbd281607c7c9


日本語（０）一欄
https://qiita.com/kaizen_nagoya/items/7498dcfa3a9ba7fd1e68

英語(0) 一覧
https://qiita.com/kaizen_nagoya/items/680e3f5cbf9430486c7d

音楽　一覧(0) 
https://qiita.com/kaizen_nagoya/items/b6e5f42bbfe3bbe40f5d

「@kazuo_reve 新人の方によく展開している有益な情報」確認一覧 
https://qiita.com/kaizen_nagoya/items/b9380888d1e5a042646b

鉄道（０）鉄道のシステム考察はてっちゃんがてつだってくれる
https://qiita.com/kaizen_nagoya/items/faa4ea03d91d901a618a

OSEK OS設計の基礎　OSEK(100)
https://qiita.com/kaizen_nagoya/items/7528a22a14242d2d58a3

coding (101) 一覧を作成し始めた。omake:最近のQiitaで表示しない5つの事象
https://qiita.com/kaizen_nagoya/items/20667f09f19598aedb68

官公庁・学校・公的団体（NPOを含む）システムの課題、官（０）
https://qiita.com/kaizen_nagoya/items/04ee6eaf7ec13d3af4c3

「はじめての」シリーズ　 ベクタージャパン　
https://qiita.com/kaizen_nagoya/items/2e41634f6e21a3cf74eb

AUTOSAR(0)Qiita記事一覧, OSEK(75)
https://qiita.com/kaizen_nagoya/items/89c07961b59a8754c869

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

LaTeX(0) 一覧　
https://qiita.com/kaizen_nagoya/items/e3f7dafacab58c499792

自動制御、制御工学一覧（０）
https://qiita.com/kaizen_nagoya/items/7767a4e19a6ae1479e6b

Rust(0) 一覧　
https://qiita.com/kaizen_nagoya/items/5e8bb080ba6ca0281927

programの本質は計画だ。programは設計だ。
https://qiita.com/kaizen_nagoya/items/c8545a769c246a458c27

登壇直後版 色使い(JIS安全色) Qiita Engineer Festa 2023〜私しか得しないニッチな技術でLT〜 スライド編 0.15
https://qiita.com/kaizen_nagoya/items/f0d3070d839f4f735b2b

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

逆も真：社会人が最初に確かめるとよいこと。OSEK(69)、Ethernet(59)
https://qiita.com/kaizen_nagoya/items/39afe4a728a31b903ddc

統計の嘘。仮説（127）
https://qiita.com/kaizen_nagoya/items/63b48ecf258a3471c51b

自分の言葉だけで論理展開できるのが天才なら、文章の引用だけで論理展開できるのが秀才だ。仮説（136）
https://qiita.com/kaizen_nagoya/items/97cf07b9e24f860624dd

参考文献駆動執筆(references driven writing)・デンソークリエイト編
https://qiita.com/kaizen_nagoya/items/b27b3f58b8bf265a5cd1

「何を」よりも「誰を」。１０年後のために今見習いたい人たち
https://qiita.com/kaizen_nagoya/items/8045978b16eb49d572b2

Qiitaの記事に３段階または５段階で到達するための方法
https://qiita.com/kaizen_nagoya/items/6e9298296852325adc5e

出力(output)と呼ばないで。これは状態(state)です。
https://qiita.com/kaizen_nagoya/items/80b8b5913b2748867840

祝休日・謹賀新年 2025年の目標
https://qiita.com/kaizen_nagoya/items/dfa34827932f99c59bbc

Qiita 1年間をまとめた「振り返りページ」＠2024
https://qiita.com/kaizen_nagoya/items/ed6be239119c99b15828

2024 参加・主催Calendarと投稿記事一覧 Qiita(248)
https://qiita.com/kaizen_nagoya/items/d80b8fbac2496df7827f

主催Calendar2024分析 Qiita(254)
https://qiita.com/kaizen_nagoya/items/15807336d583076f70bc

Calendar 統計
https://qiita.com/kaizen_nagoya/items/e315558dcea8ee3fe43e

LLM 関連 Calendar 2024 
https://qiita.com/kaizen_nagoya/items/c36033cf66862d5496fa

Large Language Model Related Calendar 
https://qiita.com/kaizen_nagoya/items/3beb0bc3fb71e3ae6d66

博士論文 Calendar 2024 を開催します。 
https://qiita.com/kaizen_nagoya/items/51601357efbcaf1057d0

博士論文(0)関連記事一覧
https://qiita.com/kaizen_nagoya/items/8f223a760e607b705e78

coding (101) 一覧を作成し始めた。omake:最近のQiitaで表示しない5つの事象
https://qiita.com/kaizen_nagoya/items/20667f09f19598aedb68

あなたは「勘違いまとめ」から、勘違いだと言っていることが勘違いだといくつ見つけられますか。人間の間違い(human error(125))の種類と対策
https://qiita.com/kaizen_nagoya/items/ae391b77fffb098b8fb4

プログラマの「プログラムが書ける」思い込みは強みだ。３つの理由。仮説（168）統計と確率(17) , OSEK(79)
https://qiita.com/kaizen_nagoya/items/bc5dd86e414de402ec29

出力(output)と呼ばないで。これは状態(state)です。
https://qiita.com/kaizen_nagoya/items/80b8b5913b2748867840

これからの情報伝達手段の在り方について考えてみよう。炎上と便乗。
https://qiita.com/kaizen_nagoya/items/71a09077ac195214f0db

ISO/IEC JTC1 SC7 Software and System Engineering
https://qiita.com/kaizen_nagoya/items/48b43f0f6976a078d907

アクセシビリティの知見を発信しよう！（再び）
https://qiita.com/kaizen_nagoya/items/03457eb9ee74105ee618

統計論及確率論輪講（再び）
https://qiita.com/kaizen_nagoya/items/590874ccfca988e85ea3

読者の心をグッと惹き寄せる7つの魔法
https://qiita.com/kaizen_nagoya/items/b1b5e89bd5c0a211d862

「@kazuo_reve 新人の方によく展開している有益な情報」確認一覧
https://qiita.com/kaizen_nagoya/items/b9380888d1e5a042646b

ソースコードで議論しよう。日本語で議論するの止めましょう（あるプログラミング技術の議論報告）
https://qiita.com/kaizen_nagoya/items/8b9811c80f3338c6c0b0

脳内コンパイラの3つの危険
https://qiita.com/kaizen_nagoya/items/7025cf2d7bd9f276e382

心理学の本を読むよりはコンパイラ書いた方がよくね。仮説（34）
https://qiita.com/kaizen_nagoya/items/fa715732cc148e48880e

NASAを超えるつもりがあれば読んでください。
https://qiita.com/kaizen_nagoya/items/e81669f9cb53109157f6

データサイエンティストの気づき!「勉強して仕事に役立てない人。大嫌い!!」『それ自分かも?』ってなった!!! 
https://qiita.com/kaizen_nagoya/items/d85830d58d8dd7f71d07

「ぼくの好きな先生」「人がやらないことをやれ」プログラマになるまで。仮説（37）　
https://qiita.com/kaizen_nagoya/items/53e4bded9fe5f724b3c4

なぜ経済学徒を辞め、計算機屋になったか（経済学部入学前・入学後・卒業後対応） 転職(1)  
https://qiita.com/kaizen_nagoya/items/06335a1d24c099733f64    

プログラミング言語教育のXYZ。 仮説（52） 
https://qiita.com/kaizen_nagoya/items/1950c5810fb5c0b07be4

【24卒向け】9ヶ月後に年収１０００万円を目指す。二つの関門と三つの道。
https://qiita.com/kaizen_nagoya/items/fb5bff147193f726ad25

「【25卒向け】Qiita Career Meetup for STUDENT」予習の勧め
https://qiita.com/kaizen_nagoya/items/00eadb8a6e738cb6336f

大学入試不合格でも筆記試験のない大学に入って卒業できる。卒業しなくても博士になれる。
https://qiita.com/kaizen_nagoya/items/74adec99f396d64b5fd5

全世界の不登校の子供たち「博士論文」を書こう。世界子供博士論文遠隔実践中心 安全(99)
https://qiita.com/kaizen_nagoya/items/912d69032c012bcc84f2

日本のプログラマが世界で戦える16分野。仮説(53),統計と確率(25) 転職(32)、Ethernet(58)
https://qiita.com/kaizen_nagoya/items/a7e634a996cdd02bc53b

小川メソッド　覚え（書きかけ）
https://qiita.com/kaizen_nagoya/items/3593d72eca551742df68

DoCAP（ドゥーキャップ）って何ですか？
https://qiita.com/kaizen_nagoya/items/47e0e6509ab792c43327

views 20,000越え自己記事一覧
https://qiita.com/kaizen_nagoya/items/58e8bd6450957cdecd81

Views１万越え、もうすぐ１万記事一覧 最近いいねをいただいた213記事
https://qiita.com/kaizen_nagoya/items/d2b805717a92459ce853

amazon 殿堂入りNo1レビュアになるまで。仮説(102)
https://qiita.com/kaizen_nagoya/items/83259d18921ce75a91f4

100以上いいねをいただいた記事16選
https://qiita.com/kaizen_nagoya/items/f8d958d9084ffbd15d2a

水道局10年(1976,4-1986,3)を振り返る
https://qiita.com/kaizen_nagoya/items/707fcf6fae230dd349bf

小川清最終講義、最終講義（再）計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53

＜この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。＞
This article is an individual impression based on my individual experience. It has nothing to do with the organization or business to which I currently belong.
Este artículo es una impresión personal basada en mi experiencia personal. No tiene nada que ver con la organización o empresa a la que pertenezco actualmente.
### 文書履歴(document history)
0.10 初稿 20180416
0.20 pair 出力　20180522
### 最後までおよみいただきありがとうございました。
いいね　💚、フォローをお願いします。
#### Thank you very much for reading to the last sentence.
Please press the like icon 💚　and follow me for your happy life.
#### Muchas gracias por leer hasta la última oración.
Por favor, haz clic en el ícono Me gusta 💚 y sígueme para tener una vida feliz.