[Bug libstdc++/47921] New: pbump will overflow when input n is larger than 2G-1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47921 Summary: pbump will overflow when input n is larger than 2G-1 Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: critical Priority: P3 Component: libstdc++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: robertpyt...@163.com Target: x86_64-redhat-linux Build: gcc version 4.1.2 20071124 (Red Hat 4.1.2-42) in function int basic_streambuf::pbump(int n), n is a int which is easily overflow in 64bit environment, especially when it is called in overflow function.
[Bug libstdc++/47921] pbump will overflow when input n is larger than 2G-1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47921 --- Comment #1 from Robert Python 2011-02-28 10:51:30 UTC --- try below program in a 64bit environment with about 8G memory: #include #include #include #define N 1 #define SIZE 40 using namespace std; int main() { const char msg[SIZE] = "aaa"; strstreambuf *new_data = new strstreambuf(); for (int i = 0; i < N; ++i) { new_data->freeze(false); new_data->sputn(msg, SIZE); } delete new_data; return 0; }