Den folgenden Code haben
%Vor%erzeugt den folgenden Fehler beim Kompilieren mit clang (Version 3.1, LLVM 3.1, Debian GNU / Linux Sid)
%Vor%Wenn Sie denselben Code mit GCC (Version 4.7.0) kompilieren, werden keine Fehlermeldungen ausgegeben. Gibt es einen Grund, warum der Operator & lt; () nicht für geteilte Zeiger in clang funktioniert?
clang ++ und libstdc ++ passen noch nicht perfekt zusammen. Du könntest eines der folgenden Dinge tun:
clang++ -stdlib=libc++ -std=c++11 ...
verwenden) Wenden Sie den folgenden Patch auf /usr/include/c++/4.7.0/type_traits
an (wie in Ссылка dokumentiert):
Wenn du bits/shared_ptr.h
checkst, hast du std::common_type
gefunden, und die Entwickler behaupten, dass es ist eigentlich ein Fehler von libstdc ++ , obwohl ich nicht glaube, dass ein Fehler von libstdc ++ alleine dazu führen würde, dass der nicht existierende Typ int*&&&
erscheint.