[Bug c++/11091] Wrong code in variable initialization

dej@inode.org gcc-bugzilla@gcc.gnu.org
Wed Jun 4 22:04:00 GMT 2003


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11091



------- Additional Comments From dej@inode.org  2003-06-04 22:04 -------
This does not appear to be a CPU-specific problem.  I recompiled my code base with 
-march=i686 and here is the disassembly of the function in question: 
 
0806cd5a <_ZNK14DBInstantiator9findChildE5GCPtrI6DBNameE9DBObjType>: 
 806cd5a:       55                      push   %ebp 
 806cd5b:       89 e5                   mov    %esp,%ebp 
 806cd5d:       56                      push   %esi 
 806cd5e:       53                      push   %ebx 
 806cd5f:       83 ec 40                sub    $0x40,%esp 
 806cd62:       8b 5d 14                mov    0x14(%ebp),%ebx 
 806cd65:       8b 45 08                mov    0x8(%ebp),%eax 
 806cd68:       89 04 24                mov    %eax,(%esp,1) 
 806cd6b:       e8 98 97 02 00          call   8096508 <_ZN7XactRefI8DBObjectEC1Ev> 
 
The push 0x8(%ebp) has been replaced with a 2-instruction sequence, but the problem 
remains: the code erroneously performs a dereference. 
 



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the Gcc-bugs mailing list