barannikov88 added a comment. In D139973#4004408 <https://reviews.llvm.org/D139973#4004408>, @jsilvanus wrote:
> I just checked on Godbolt that gcc 12.2 with libstdc++, clang 15.0 with both > libstd++ and libc++ and MSVC 19.33 support `std::any` without RTTI. > But gcc and clang do not provide `std::any::type` without RTTI though. > > Are you aware of any documentation on what can be relied on without RTTI? It is surprising to me that std::any can work without RTTI. Never thought it could be implemented. This "compare function pointer" trick is awesome, but it might not always work as explained in this <https://github.com/gcc-mirror/gcc/commit/aa573a6a3e165632103f2f8defb9768106db6a61> commit. This question <https://stackoverflow.com/questions/45290296/stdany-across-shared-library-bounding-in-mingw> however, suggest that any_cast doesn't always work with RTTI either, which is weird. I don't know of any other potential issues. std::visitor can't be used with std::any in absense of std::any::type, but that's minor, I think. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D139973/new/ https://reviews.llvm.org/D139973 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits