delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/09/14/10:30:52

From: eplmst AT lu DOT erisoft DOT se (Martin Stromberg)
Newsgroups: comp.os.msdos.djgpp
Subject: Re: startup-code
Date: 14 Sep 2000 13:51:23 GMT
Organization: Ericsson Erisoft AB, Sweden
Lines: 27
Message-ID: <8pql4r$ig$1@antares.lu.erisoft.se>
References: <4 DOT 3 DOT 1 DOT 1 DOT 20000912162729 DOT 00bfb3c0 AT mdh DOT se>
NNTP-Posting-Host: lws256.lu.erisoft.se
X-Newsreader: TIN [version 1.2 PL2]
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Christer Sandberg (christer DOT sandberg AT mdh DOT se) wrote:
: Declaring a global identifier named 'end' will clatch with some 
: startup/exit function or data. Internal data should have underscore as prefix.
: Program built from the following code will crash on exit.
: int end[1000];
: int main(void)
: {
:     memset(end, 0, sizeof(int)*1000)
:     return 0;
: }

: Unfortunately I don't know which version of DJ I use, and I don't even know 
: how do find it out, but the test case is obviously simple. (the files libc 
: and ctr0 seems to be dated 1998)

A potential fix is to edit lib/djgpp.djl and change the line 
"     end = . ; _end = .;"
to
"     end = . ;"

It's potential because I'm not an assembly guy and I don't know what
I'm doing. But it works for me.


Right,

						MartinS

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019