foo.cc:124:5: error: 'split' function uses 'auto' type specifier without trailing return type
124 | auto split(int pos)
| ^~~~
foo.cc:124:5: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
foo.cc:230:86: error: parameter declared 'auto'
230 | template < typename T, typename T_lazy, T default_val, T_lazy default_lazy_val, auto op,
| ^~
foo.cc:231:17: error: parameter declared 'auto'
231 | auto updval, auto lazydown
| ^~~~~~
foo.cc:231:30: error: parameter declared 'auto'
231 | auto updval, auto lazydown
| ^~~~~~~~
foo.cc:308:32: error: lambda-expression in template-argument only available with '-std=c++2a' or '-std=gnu++2a'
308 | typedef Segtree< ll, ll, 0, 0, [](ll a, ll b) { return a + b; }, default_updval_func,
| ^
foo.cc:309:40: error: template argument 5 is invalid
309 | default_lazydown_func >
| ^
foo.cc:309:40: note: invalid template non-type parameter
foo.cc:309:40: note: invalid template non-type parameter
foo.cc:311:40: error: lambda-expression in template-argument only available with '-std=c++2a' or '-std=gnu++2a'
311 | typedef Segtree< ll, ll, ( ll )1e9, 0, [](ll a, ll b) { return min(a, b); },
| ^
foo.cc:312:18: error: lambda-expression in template-argument only available with '-std=c++2a' or '-std=gnu++2a'
312 | [](segnode< ll, ll >& now) { now.val += now.lazy; }, default_lazydown_func >
| ^
foo.cc:312:93: error: template argument 5 is invalid
312 | [](segnode< ll, ll >& now) { now.val += now.lazy; }, default_lazydown_func >
| ^
foo.cc:312:93: error: template argument 6 is invalid
foo.cc:312:93: note: invalid template non-type parameter
foo.cc: In member function 'void str::AC_automaton::insert(std::string)':
foo.cc:326:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
326 | for (int i = 0; i < s.length(); i++) {
| ~~^~~~~~~~~~~~
foo.cc: In member function 'int str::AC_automaton::query(std::string)':
foo.cc:352:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
352 | for (int i = 0; i < s.length(); i++) {
| ~~^~~~~~~~~~~~
[Hydro](https://hydro.ac)提供评测服务