text-match.cc:476:8: error: no viable conversion from 'pan::StringView' to 'std::__1::basic_string<char>'
Using a newer version of clang (I used clang-9.0 from llvm, on MacOS 10.13), pan 0.148 fails to build due to:
/opt/local/bin/clang++-mp-9.0 -DHAVE_CONFIG_H -I. -I../.. -I../.. -I/opt/local/include/gmime-2.6 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DGLIB_VERSION_MAX_ALLOWED=G_ENCODE_VERSION\(2,36\) -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0 -I/opt/local/include/cairo -I/opt/local/include/atk-1.0 -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include/fribidi -I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include/harfbuzz -I/opt/local/include/ossp -I/opt/local/include/freetype2 -I/opt/local/include/libpng16 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -pipe -Os -stdlib=libc++ -arch x86_64 -MT text-match.o -MD -MP -MF .deps/text-match.Tpo -c -o text-match.o text-match.cc
In file included from quark.cc:25:
In file included from ./quark.h:35:
/opt/local/libexec/llvm-9.0/bin/../include/c++/v1/ext/hash_set:204:5: warning: Use of the header <ext/hash_set> is deprecated. Migrate to <unordered_set> [-W#warnings]
# warning Use of the header <ext/hash_set> is deprecated. Migrate to <unordered_set>
^
mv -f .deps/progress.Tpo .deps/progress.Po
/opt/local/bin/clang++-mp-9.0 -DHAVE_CONFIG_H -I. -I../.. -I../.. -I/opt/local/include/gmime-2.6 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DGLIB_VERSION_MAX_ALLOWED=G_ENCODE_VERSION\(2,36\) -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0 -I/opt/local/include/cairo -I/opt/local/include/atk-1.0 -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include/fribidi -I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include/harfbuzz -I/opt/local/include/ossp -I/opt/local/include/freetype2 -I/opt/local/include/libpng16 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -pipe -Os -stdlib=libc++ -arch x86_64 -MT utf8-utils.o -MD -MP -MF .deps/utf8-utils.Tpo -c -o utf8-utils.o utf8-utils.cc
1 warning generated.
mv -f .deps/quark.Tpo .deps/quark.Po
/opt/local/bin/clang++-mp-9.0 -DHAVE_CONFIG_H -I. -I../.. -I../.. -I/opt/local/include/gmime-2.6 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DGLIB_VERSION_MAX_ALLOWED=G_ENCODE_VERSION\(2,36\) -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0 -I/opt/local/include/cairo -I/opt/local/include/atk-1.0 -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include/fribidi -I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include/harfbuzz -I/opt/local/include/ossp -I/opt/local/include/freetype2 -I/opt/local/include/libpng16 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -pipe -Os -stdlib=libc++ -arch x86_64 -MT worker-pool.o -MD -MP -MF .deps/worker-pool.Tpo -c -o worker-pool.o worker-pool.cc
mv -f .deps/string-view.Tpo .deps/string-view.Po
/opt/local/bin/clang++-mp-9.0 -DHAVE_CONFIG_H -I. -I../.. -I../.. -I/opt/local/include/gmime-2.6 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DGLIB_VERSION_MAX_ALLOWED=G_ENCODE_VERSION\(2,36\) -I/opt/local/include/gtk-2.0 -I/opt/local/lib/gtk-2.0/include -I/opt/local/include/pango-1.0 -I/opt/local/include/gio-unix-2.0 -I/opt/local/include/cairo -I/opt/local/include/atk-1.0 -I/opt/local/include/gdk-pixbuf-2.0 -I/opt/local/include/pango-1.0 -I/opt/local/include/harfbuzz -I/opt/local/include/pango-1.0 -I/opt/local/include/fribidi -I/opt/local/include/cairo -I/opt/local/include/pixman-1 -I/opt/local/include/harfbuzz -I/opt/local/include/ossp -I/opt/local/include/freetype2 -I/opt/local/include/libpng16 -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -pipe -Os -stdlib=libc++ -arch x86_64 -MT compression.o -MD -MP -MF .deps/compression.Tpo -c -o compression.o compression.cc
text-match.cc:476:8: error: no viable conversion from 'pan::StringView' to 'std::__1::basic_string<char>'
s = tmp;
^~~
/opt/local/libexec/llvm-9.0/bin/../include/c++/v1/string:799:5: note: candidate constructor not viable: no known conversion from 'pan::StringView' to 'const std::__1::basic_string<char> &' for 1st argument
basic_string(const basic_string& __str);
^
/opt/local/libexec/llvm-9.0/bin/../include/c++/v1/string:804:5: note: candidate constructor not viable: no known conversion from 'pan::StringView' to 'std::__1::basic_string<char> &&' for 1st argument
basic_string(basic_string&& __str)
^
/opt/local/libexec/llvm-9.0/bin/../include/c++/v1/string:819:5: note: candidate constructor not viable: no known conversion from 'pan::StringView' to 'const char *' for 1st argument
basic_string(const _CharT* __s) {
^
/opt/local/libexec/llvm-9.0/bin/../include/c++/v1/string:873:5: note: candidate constructor not viable: no known conversion from 'pan::StringView' to 'initializer_list<char>' for 1st argument
basic_string(initializer_list<_CharT> __il);
^
../../pan/general/string-view.h:98:10: note: candidate function
operator const std::string () const { return to_string(); }
^
/opt/local/libexec/llvm-9.0/bin/../include/c++/v1/string:891:44: note: passing argument to parameter '__str' here
basic_string& operator=(basic_string&& __str)
^
1 error generated.
make[3]: *** [text-match.o] Error 1
make[3]: *** Waiting for unfinished jobs....