c++/3574: sizeof(bool) changed from gcc2 to gcc3 on Alphas - needs _big_ warning in documentation!

niemayer@isg.de niemayer@isg.de
Thu Jul 5 13:16:00 GMT 2001


>Number:         3574
>Category:       c++
>Synopsis:       sizeof(bool) changed from gcc2 to gcc3 on Alphas - needs _big_ warning in documentation!
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          doc-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jul 05 13:16:01 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Peter Niemayer
>Release:        gcc-3.0
>Organization:
>Environment:
Alpha CPUs, maybe other 64bit-architectures
>Description:
It's probably documented somewhere deep inside the Changelogs
(didn't find it by myself), but you should _really_ put a
_very_big_warning_sign_ on gcc-3.0 telling people that the
sizeof(bool) changed from 8 to 1 on Alphas (and maybe other
64bit-platforms?) - because this immediately breaks many
applications that try to load binary files they've written
themselfes before, when they were compiled with gcc-2.x.x

It's no fun searching for the obscure crashes this may
cause...
>How-To-Repeat:
just printf(sizeof(bool)) with gcc2, then gcc3 - and imagine
what this means if a binary file was written by a gcc2 
compiled application and read by the same application compiled
with gcc3...
>Fix:
put a _VERY_BIG_ warning in the release notes...
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the Gcc-bugs mailing list