[Bug 649564] New: app with virtual method crashes

bugzilla at redhat.com bugzilla at redhat.com
Thu Nov 4 00:52:24 UTC 2010


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.

Summary: app with virtual method crashes

https://bugzilla.redhat.com/show_bug.cgi?id=649564

           Summary: app with virtual method crashes
           Product: Fedora
           Version: 14
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Severity: medium
          Priority: low
         Component: mingw32-gcc
        AssignedTo: rjones at redhat.com
        ReportedBy: idht4n at gmail.com
         QAContact: extras-qa at fedoraproject.org
                CC: rjones at redhat.com, kalev at smartlink.ee,
                    fedora-mingw at lists.fedoraproject.org
    Classification: Fedora


Description of problem:
The simple test program below crashes when compiled with mingw in f14 and run
with f14 wine.  It works in f12 and Ubuntu 10.10 and I was told it works in
f13.

class Foo {
  virtual void bar();
};

void Foo::bar()
{
}

int main()
{
  return 0;
}

Version-Release number of selected component (if applicable):
mingw32-gcc-4.5.0-1.fc14.i686

How reproducible:
Every time

Steps to Reproduce:
1. Compile and run test program
2.
3.

Actual results:
Test program crashes

Expected results:
Test program doesn't crash

Additional info:
usr/bin/i686-pc-mingw32-g++ -o foo.exe /tmp/foo.cpp 
Info: resolving vtable for __cxxabiv1::__class_type_info by linking to
__imp___ZTVN10__cxxabiv117__class_type_infoE (auto-import)
/usr/lib/gcc/i686-pc-mingw32/4.5.0/../../../../i686-pc-mingw32/bin/ld: warning:
auto-importing has been activated without --enable-auto-import specified on the
command line.
This should work unless it involves constant data structures referencing
symbols from auto-imported DLLs.

$ cd /usr/i686-pc-mingw32/sys-root/mingw/bin
$ /tmp/foo.exe
wine: Unhandled page fault on write access to 0x00403028 at address 0x40142f
(thread 0009), starting debugger...
Unhandled exception: page fault on write access to 0x00403028 in 32-bit code
(0x0040142f).
Register dump:
 CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
 EIP:0040142f ESP:0061fe2c EBP:0061fe30 EFLAGS:00010206(  R- --  I   - -P- )
 EAX:00403050 EBX:00400000 ECX:00000008 EDX:00403028
 ESI:7ffdf000 EDI:00401130
Stack dump:
0x0061fe2c:  6f305898 0061fe70 0040108d 00404000
0x0061fe3c:  00404004 0061fe64 ffffffff 0061fe60
0x0061fe4c:  00000000 00000000 00000000 00000000
0x0061fe5c:  00000000 00000000 00112fa8 6f305898
0x0061fe6c:  6f305898 0061fe90 00401148 00000001
0x0061fe7c:  68026b22 00000000 00000000 00000000
Backtrace:
=>0 0x0040142f in foo (+0x142f) (0x0061fe30)
  1 0x0040108d __mingw_CRTStartup+0x6c()
[/builddir/build/BUILD/mingwrt-3.15.2-mingw32/crt1.c:217] in foo (0x0061fe70)
  2 0x0040108d __mingw_CRTStartup+0x6c()
[/builddir/build/BUILD/mingwrt-3.15.2-mingw32/crt1.c:217] in foo (0x0061fe90)
  3 0x00401148 mainCRTStartup+0x17()
[/builddir/build/BUILD/mingwrt-3.15.2-mingw32/crt1.c:257] in foo (0x0061fea8)
  4 0x6f2c8c9c call_process_entry+0xb() in kernel32 (0x0061fee8)
  5 0x68389ee0 call_thread_func+0xb() in ntdll (0x0061fef8)
  6 0x6838cb61 call_thread_entry_point+0x70() in ntdll (0x0061ffc8)
  7 0x6836223b call_dll_entry_point+0x65a() in ntdll (0x0061ffe8)
0x0040142f: addl %ecx,0x0(%edx)
Modules:
Module Address   Debug info Name (17 modules)
PE   400000-  411000 Dwarf           foo
ELF 68000000-68022000 Deferred        ld-linux.so.2
ELF 68022000-68164000 Export          libwine.so.1
ELF 68164000-68180000 Deferred        libpthread.so.0
ELF 68180000-68313000 Deferred        libc.so.6
ELF 68313000-68318000 Deferred        libdl.so.2
ELF 68318000-683e0000 Export          ntdll<elf>
  \-PE 68330000-683e0000 \               ntdll
ELF 683e0000-683ed000 Deferred        libnss_files.so.2
ELF 683ed000-6847b000 Deferred        msvcrt<elf>
  \-PE 68400000-6847b000 \               msvcrt
PE 6cec0000-6cf2c000 Deferred        libgcc_s_sjlj-1
ELF 6f272000-6f3f6000 Export          kernel32<elf>
  \-PE 6f280000-6f3f6000 \               kernel32
PE 6fc40000-7011c000 Deferred        libstdc++-6
ELF 74d91000-74dbb000 Deferred        libm.so.6
ELF 7bf00000-7bf03000 Deferred        <wine-loader>
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) Z:\tmp\foo.exe
 00000009    0 <==
0000000e services.exe
 00000018    0
 00000017    0
 00000016    0
 00000010    0
 0000000f    0
00000011 winedevice.exe
 0000001a    0
 00000019    0
 00000015    0
 00000012    0
00000013 explorer.exe
 00000014    0
Backtrace:
=>0 0x0040142f in foo (+0x142f) (0x0061fe30)
  1 0x0040108d __mingw_CRTStartup+0x6c()
[/builddir/build/BUILD/mingwrt-3.15.2-mingw32/crt1.c:217] in foo (0x0061fe70)
  2 0x0040108d __mingw_CRTStartup+0x6c()
[/builddir/build/BUILD/mingwrt-3.15.2-mingw32/crt1.c:217] in foo (0x0061fe90)
  3 0x00401148 mainCRTStartup+0x17()
[/builddir/build/BUILD/mingwrt-3.15.2-mingw32/crt1.c:257] in foo (0x0061fea8)
  4 0x6f2c8c9c call_process_entry+0xb() in kernel32 (0x0061fee8)
  5 0x68389ee0 call_thread_func+0xb() in ntdll (0x0061fef8)
  6 0x6838cb61 call_thread_entry_point+0x70() in ntdll (0x0061ffc8)
  7 0x6836223b call_dll_entry_point+0x65a() in ntdll (0x0061ffe8)

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


More information about the mingw mailing list