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