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 ★★★★ ()

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

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

tailgunner ★★★★★ ()