Bug ID: 85348
Summary: ostringstream with #pragma pack(1) causes stack
Assignee: unassigned at gcc dot gnu.org
Reporter: crillion at tiscali dot it
Target Milestone: ---
Using g++ version 7.2.0 on Windows 10 Enterprise N, installed with the
Mingw-w64 distribution, version x86_64-7.2.0-posix-seh-rt_v5-rev0, with the
that I compile with the script (called from the normal windows console after
having added mingw-w64 bin path to the windows PATH variable)
g++ -pedantic -std=c++17 -Wall -Wextra -Werror=return-type -fdiagnostics-color
-s -Os program.cpp -o program_gpp.exe
the program compiles finely, but when I run it I get a crash without error
messages. The error occurs both if I don't use the -g option for debug or if I
On an older mingw-w64 version i686-510-win32-sjlj-rt_v4, used on a complex
cmake project in Debug Mode I get the crash too, with more detail in an
explicit console output as " *** stack smashing detected ***: terminated ".
In release mode the error does not occur.
I understand that with #pragma pack(push,1) and #pragma pack(pop), and also by
including <sstream> BEFORE the #pragma pack(1) directive the crash does not
But could you please issue a warning if someone uses simply #pragma pack(1)
with ostringstream ?