Damus
Iron Bug · 1w
@mittorn @cheb просто темплейты плюсов - это уже ещё один язык внутри языка. и если насчёт языков есть, скажем, какой-...
mittorn profile picture
@Iron Bug @nprofile1q... даже не отсюда. ABI продуман так, чтобы правильно написанный код не ломался пока не использует новые фичи. Но в разных стандартах std::string это разные классы, из-за чего линковка и ломается. То есть проблема совершенно не на бинарном уровне, а на логическом. Однако, разные ABI всё равно будут несовместимы между собой, как минимум из-за разного манглинга, а где-то и calling conversion, потому в интерфейсах от плюсов часто отказываются. Даже COM-подобные интерфейсы могут поломаться из-за calling conversion (на x86 где-то cdecl, а где-то thiscall)
2
Iron Bug · 1w
@mittorn @cheb не может нечто с одним названием быть "разными классами", ты же это понимаешь. я понимаю, что там до линковки дело ещё даже не доходит. ломается уже на уровне ...
Iron Bug · 1w
@mittorn @cheb проблема в том, что компилятор стал ещё одной мега-жирной библиотекой, по сути. он и был раньше, но можно было линковать статически, а на уровне динамических ...