Каков портативный способ к классам вперед-declare в встроенном пространстве имен в Libc ++?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Каков портативный способ к классам вперед-declare в встроенном пространстве имен в Libc ++?

Сообщение Anonymous »

Следующий код не компилируется только тогда, когда я указываю -Stdlib = libc ++ , чтобы Clang ++ :

Код: Выделить всё

namespace std {
class mutex;
}

void f(std::mutex &x);

#include 

void f(std::mutex &x) { }
< /code>
[list]
[*]gcc.godbolt.org
< /ul>

Примечание: кандидат найден по имени. Там < /p>

[*] Откуда символ __1, когда используется LLVM LIBC ++? />http://en.cppreference.com/w/cpp/thread/mutex (ну, это не на самом деле стандарт ...)
[/list]
это  должно быть возможным, чтобы он был возможна, чтобы перенаправить declare std :: mutex 
, потому что он должен быть непосредственно под непосредственным. /> Обратите внимание, что фаза компиляции, а не фаза связывания, терпит неудачу. Поэтому я не думаю, что ответ на мой вопрос должен быть в соответствии с «потому что Libc ++ использует другой ABI от GNU libstdc ++ ...»

Подробнее здесь: https://stackoverflow.com/questions/357 ... pace-in-li
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»