Please note that
 - Debug -g
 - RelWithDebInfo uses -g -O1
 - Release uses -O3

there must be an option in -O1 that generates the buggy code.


Best regards
C.

On Mon, May 21, 2012 at 10:34 AM, Christophe Prud'homme <prudh...@debian.org
> wrote:

> Package: g++-4.7
> Version: 4.7.0-8
> Severity: normal
> Tags: upstream
>
> Dear Maintainer,
>
>   * What led up to the situation?
> I ported feel++ to gcc47 and found out that it generates buggy
> code(generating
> segfault) in optimisation mode.
> Here are the steps to reproduce it
>  - install feel++-apps
>  - execute feel_doc_myfunctionspace (compiled using
> CMAKE_BUILD_TYPE=Release)
>  - it generates a segfault
>
> what happens is that a data structure containing only a double data member
> seem
> to be optimized away and became dangling reference (invalid read using
> valgrind).
> The code crashes at line 220 of doc/manual/tutorial/myfunctionspace.cpp
> when
> evaluating the expression template data structure g defined on line 215.
>
>  - in gcc47 with CMAKE_BUILD_TYPE=Debug, it works without problems
>  - with gcc45, gcc46, clang31 on Linux and OSX there are no problems at all
>   in RelWithDebInfo and Release mode (CMAKE_BUILD_TYPE)
>
> Hence I believe that this is a bug in gcc47 code generation/optimisation.
>
>
>
> -- System Information:
> Debian Release: wheezy/sid
>  APT prefers unstable
>  APT policy: (500, 'unstable')
> Architecture: amd64 (x86_64)
>
> Kernel: Linux 3.2.0-2-amd64 (SMP w/1 CPU core)
> Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
> Shell: /bin/sh linked to /bin/dash
>
> Versions of packages g++-4.7 depends on:
> ii  gcc-4.7             4.7.0-8
> ii  gcc-4.7-base        4.7.0-8
> ii  libc6               2.13-32
> ii  libgmp10            2:5.0.5+dfsg-1.1
> ii  libmpc2             0.9-4
> ii  libmpfr4            3.1.0-5
> ii  libstdc++6-4.7-dev  4.7.0-8
> ii  zlib1g              1:1.2.7.dfsg-2
>
> g++-4.7 recommends no packages.
>
> Versions of packages g++-4.7 suggests:
> pn  g++-4.7-multilib    <none>
> pn  gcc-4.7-doc         <none>
> pn  libstdc++6-4.7-dbg  <none>
>
> -- no debconf information
>
>
>

Reply via email to