LINUX.ORG.RU

clang перенимает наклонности оффтопика

 ,


0

1

Помнится, в Windows были (есть) селективные хаки, чтобы отдельные багнутые приложения, неправильно использующие WinAPI, могли работать. Например, SimСity.

Держу в курсе, что в clang тоже такое есть.

https://github.com/llvm-mirror/clang/blob/f4426c04a24f3f37369101f3a92898dd2e2...

// HACK: We've got an exception-specification
//   noexcept(noexcept(swap(...)))
// or
//   noexcept(noexcept(swap(...)) && noexcept(swap(...)))
// on a 'swap' member function. This is a libstdc++ bug; the lookup
// for 'swap' will only find the function we're currently declaring,
// whereas it expects to find a non-member swap through ADL. Turn off
// delayed parsing to give it a chance to find what it expects.

Это реальность. Никто не будет использовать Clang, если он не сможет компилировать libstdc++ хэдеры. У Clang есть и своя библиотека, libc++, но все остальные библиотеки в системе обычно слинкованны с libstdc++, поэтому libc++ остается в аутсайдерах.

rupert ★★★★★
()

Предлагаю тему следующего разоблачения: «BOOST_WORKAROUND: Boost скатился в сраную винду!»

anonymous
()

И что в этом такого? Они еще и кучу GNU-расширений реализовали.

А уж если вспомнить историю ANSI C, там «селективные хаки» были практически нормой.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

И что в этом такого? Они еще и кучу GNU-расширений реализовали.

Тоже мне, сравнил. Расширения документированы, а тут workaround для бага.

utf8nowhere ★★★
() автор топика
Ответ на: комментарий от RazrFalcon

Перед тем как произносить эти слова, ты должен их обосновать. Каждое твое нелепое слово имеет материальное значение, а вернее оно может применяться к тебе...

utf8nowhere ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.