Search
Write a publication
Pull to refresh
6
0
Сергей @d7d1cd

Программист

Send message

По поводу -Woverloaded-virtual. По совету этой статьи решил попробовать поиспользовать этот флаг. И внезапно столкнулся с проблемой в большом проекте, использующего boost.

Возьмем вот такой код. Как мы видим, он компилируется без варнов. А теперь создадим идентичный код (прототипы методов срисованы с бустовых один-в-один). И внезапно, компилятор начинает говорить о shadow параметра. Что это? Баг компилятора GCC? Потому что Clang, например, не дает варна в таком случае.

В функции HashFunctionHorner ошибка. В условии окончания цикла надо i != s.size(), а не s[i] != s.size().

Внутри какого модуля - зависит от реализации компилятора и порядка обхода модулей во время компиляции.

В моем примере модули скомпилированы отдельно друг от друга, а не в одной команде. Поэтому функция zoo есть в каждом, это нормально.

Вот да, поддерживаю вопрос.

Не проводил широких экспериментов с оптимизацией. Пример с inline функцией был выбран для упрощения. Если вместо нее в foo и boo создавать объект типа std::string, то тоже будет наблюдаться включение "ненужного" модуля. Линкер в первом модуле *BNDDIR увидит инстанцированный конструктор std::basic_string и включит этот модуль в программу, хотя это инстанцирование уже есть в модуле BOO$.

Им и при хороших временах было пофигу. А сейчас и подавно.

Мне интересно мнение читателя по поводу вопроса.

128-битные указатели реализованы программно или аппаратно?

Если верить википедии, то вот так:

разрядность указателей 128 бит (в настоящее время реализуется микрокодом на 64-разрядной архитектуре)

Не понял Вашего вопроса "откуда в принципе IBM i". Из США, оттуда же, где фирма IBM )))

Почему у нас именно эта система сказать не могу. Она у нас с 90-х годов. На этой системе у нас работает ядро банка, мы разрабатываем и поддерживаем банковский софт, его back end.

Вопрос автору и тем, кто «в теме». Как при такой сборке происходит процесс разработки, а конкретно поиск ошибок в коде?

Information

Rating
Does not participate
Location
Нижний Новгород, Нижегородская обл., Россия
Date of birth
Registered
Activity