[Bug c++/48814] New: Incorrect scalar increment result
schaub.johannes at googlemail dot com
gcc-bugzilla@gcc.gnu.org
Fri Apr 29 06:29:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48814
Summary: Incorrect scalar increment result
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: schaub.johannes@googlemail.com
The following test-case should output "2 3", but GCC outputs "1 2":
#include <stdio.h>
int arr[] = {1,2,3,4};
int count = 0;
int incr(){
return ++count;
}
int main(){
arr[count++]=incr();
printf("%d %d",count,arr[count]);
return 0;
}
(it may not be obvious; see
http://stackoverflow.com/questions/5827707/why-this-output/5828578#5828578 ).
Clang correctly handles this case.
More information about the Gcc-bugs
mailing list