The runtime no longer compiles with C++11. Examples of errors:
In file included from include/tvm/runtime/container/map.h:36:
include/tvm/runtime/container/./optional.h:112:3: error: 'auto' return without trailing return type; deduced return types are a C++14 extension
auto operator==(const Optional<T>& other) const {
^
In file included from include/tvm/runtime/registry.h:46:
include/tvm/runtime/packed_func.h:148:29: error: no template named 'enable_if_t' in namespace 'std'; did you mean 'enable_if'?
typename = std::enable_if_t<
~~~~~^~~~~~~~~~~
enable_if
/local/mnt/w/c/clang+llvm-13.0.0-x86_64-linux-gnu-ubuntu-20.04/bin/../include/c++/v1/type_traits:546:63: note: 'enable_if' declared here
template <bool, class _Tp = void> struct _LIBCPP_TEMPLATE_VIS enable_if {};
^
In file included from include/tvm/runtime/registry.h:46:
include/tvm/runtime/packed_func.h:1318:34: error: no member named 'index_sequence_for' in namespace 'std'
using T = typename Zipper<std::index_sequence_for<Args...>>::T;
~~~~~^
include/tvm/runtime/packed_func.h:1318:53: error: 'Args' does not refer to a value
using T = typename Zipper<std::index_sequence_for<Args...>>::T;
^
include/tvm/runtime/packed_func.h:1300:23: note: declared here
template <typename... Args>
^
include/tvm/runtime/packed_func.h:1318:22: error: expected a qualified name after 'typename'
using T = typename Zipper<std::index_sequence_for<Args...>>::T;
^
I’d prefer not to convert it all back to C++11, but if there is a strong need to have a C++11 runtime, that may be something to do…