This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Very early segfault


I sometimes get executables which segfault before the first
line of my code, at an address which gdb can't make anything
of.  The same source code runs on linux.  Some earlier versions
have worked on NT, duplicating the behaviour of their Linux
counterparts. 

More specifically, I get a dialog saying
'The instruction at "0x00371ab0" referenced memory at "0x00371ab0".  The
memory could not be "read".'  
With a breakpoint at the first line of my main program,
gdb says 'Program received signal SIGSEGV, Segmentation fault.
0x371ab0 in ?? ()'.  A bt command gives
'#0 0x371ab0 in ?? ()
Cannot access memory at address 0x308608.'

Visual C++, which happens to be installed also offers to debug
the program.  It says
'unhandled exception at 0xC0000005 access violation'
It also shows a disassembly listing starting at 371ab0, with
only '???' as the disassembly of each location.  

Extra background info:  This main program has parts
written in Ada  and compiled by gnat, and parts in
Modula-3, compiled by pm3-1.1.7.  Modula-3 has quite an
extensive runtime system.  It always behaves as expected
on Linux.  On NT, small changes in my code, well inside
routines called by by main program, seem to make this
segfault appear/disappear.  

Can anyone suggest a better method of tracking this down than unguided
random experiments? 

Rodney Bates 
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]