Alexey Popov пишет:
  size_t arg_size = sizeof test_t(666);
 Ну это боян. Код всё равно проктологический,
все пишут обычно sizeof(test_t).
 Но собственно гря о чём речь то? В каждом
компиляторе баги есть.
Так в том то и дело, что боян, но боян плавающий...
Я с ним столкнулся первый раз на С++ 5.02, если кто такое помнит.
Там он выглядел так:
const string& get_opa(bool arg) {
  static string opa = init_opa();
  return opa;
}
int main() {
  return 0;
}
А в какой-то из последующих версий, так:
const string opa = cond ? "Blin!" : string("");

Короче, один и тот же баг, но в разных версиях проявляется несколько по разному. И никогда не знаешь какую именно модификацию этого дерьма следующая версия тебе преподнесёт. Но в том что преподнесёт можешь быть уверен.
И это не единственный подобный случай... :-\

С другими компиляторами я пока не натыкался на столь стойкую преемственность багов.
--
Александр Замараев

Ответить