Порча данных при swap ostringstream

ramon

New member
Сообщения
5
#1
Здравствуйте! Столкнулся с такой проблемой, собранный в AstraLinux 2.12.46 бинарный файл при переносе в другую систему к примеру Debian10, swap двух ostringstream портит результирующую переменную. Под результирующей имею ввиду, что первоначально одна переменная пустая, а во второй какие либо данные и требуется засвопить их с друг с другом. Самое странное что это проявляется только с флагом оптимизации -O3 (то есть по умолчанию для Release'а ) и если длина не пустого ostringstream'а менее 16 символов.
В самой Астре все работает, но при проверки переносимости на другие системы, столкнулся этой проблемой, мне казалось что для стандартной библиотеки не должно было быть таких проблем, спасибо заранее за любую помощь.
 

Вложения

ALSE_User

New member
Сообщения
531
#4
Проблема с бинарным файлом или со сборкой на разных системах ?
Бинарник собран статичный или с динамическими библиотеками ?
Ну и 2.12.46 это Debian 9 .
 

ramon

New member
Сообщения
5
#5
как мне видится, проблема с бинарным файлом, собираю только в астре, после копирую и запускаю на дебиане. Собран с динамическими библиотеками.
 

ALSE_User

New member
Сообщения
531
#6
Вы собрали его практически в 9 Debiane, а запускаете в 10-ом ? Возможны сюрпризы:cry:
Попробуйте собрать статический бинарник