This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/19317] [4.1 Regression] removing a temporary return value when we cannot
- From: "pluto at pld-linux dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 9 Apr 2005 02:29:08 -0000
- Subject: [Bug c++/19317] [4.1 Regression] removing a temporary return value when we cannot
- References: <20050107191510.19317.mueller@kde.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From pluto at pld-linux dot org 2005-04-09 02:29 -------
(In reply to comment #24)
> (In reply to comment #15)
please ignore previous post.
gcc passes params in the right way but something is wrong.
with the original sourcecode gdb shows stack frame with
invalid parameters (name, xmluiFile):
#4 0x4008b10c in KonqMainWindow (this=0x812afc0, initialURL=@0xbfffef5c,
openInitialURL=false, name=0x2e <Address 0x2e out of bounds>,
xmluiFile=@0x2e) at konq_mainwindow.cc:218
if I access xmluiFile at the begin of this cstr, eg.
qDebug("name=%p, xmlui=%s", name, xmluiFile.ascii());
gdb will show a stack frame with correct params:
#4 0x4008b130 in KonqMainWindow (this=0x812afc0, initialURL=@0xbfffef5c,
openInitialURL=false, name=0x0, xmluiFile=@0xbfffef1c)
at konq_mainwindow.cc:218
disassembler shows only s/eax/edx/ in several places.
is this a gdb-6.3 bug?
i give up.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19317