delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2013/06/26/10:45:12

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Received: by 10.224.29.76 with SMTP id p12mr3160529qac.5.1372256674944;
Wed, 26 Jun 2013 07:24:34 -0700 (PDT)
X-Received: by 10.49.63.195 with SMTP id i3mr99256qes.29.1372256674927; Wed,
26 Jun 2013 07:24:34 -0700 (PDT)
Newsgroups: comp.os.msdos.djgpp
Date: Wed, 26 Jun 2013 07:24:34 -0700 (PDT)
In-Reply-To: <efcd3df3-8410-4735-92c4-fee6c18e12fc@googlegroups.com>
Complaints-To: groups-abuse AT google DOT com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=65.13.115.246;
posting-account=p5rsXQoAAAB8KPnVlgg9E_vlm2dvVhfO
NNTP-Posting-Host: 65.13.115.246
References: <36e857f0-9899-496b-9fc6-32251e109888 AT googlegroups DOT com>
<kpo3gh$4qo$1 AT speranza DOT aioe DOT org> <858cbded-7989-46e6-a997-93f842cdb3b0 AT googlegroups DOT com>
<kq75ni$qvf$1 AT speranza DOT aioe DOT org> <020e0244-406c-4c1f-9dbc-d82a0fae976f AT googlegroups DOT com>
<fa6e9d1a-62f9-42c9-a020-5c317d7c33da AT googlegroups DOT com> <efcd3df3-8410-4735-92c4-fee6c18e12fc AT googlegroups DOT com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <afa4175a-5054-468e-b350-5b8ec91de337@googlegroups.com>
Subject: Re: General Protection Fault error is intermittent
From: rugxulo AT gmail DOT com
Injection-Date: Wed, 26 Jun 2013 14:24:34 +0000
Bytes: 2814
Lines: 26
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

Hi,

On Tuesday, June 25, 2013 6:26:59 PM UTC-5, K.J.Williams wrote:
> 
> Well I have noticed this in some .h files (which I can read in
> RHIDE), they sometimes #include other .h(s) before the defintions.
> I thought , maybe string.h or stdio.h has a ctype.h included which
> is allowing me to get away from actually using #include<ctype.h>
> in my code that I was needing isspace(); for. But I immediately
> added that #include to my source code to prevent future problems

You mentioned C99 explicitly, so you must be targeting that. I'm
far from standards expert, but C89 (aka, ANSI C) only had 15
headers, and they were all standalone. (Doesn't mean they didn't
include system dependent stuff behind the scenes, but the 15
weren't mixed amongst themselves.)

C99 changed that, as I recently found out on djgpp-workers.
Apparently some are mixed these days, e.g. inttypes.h apparently
includes stdint.h. But you can't always count on such things
for other headers, so it's best to be explicit in always including
headers for functions you use.

http://stackoverflow.com/questions/2027991/list-of-standard-header-files-in-c-and-c

BTW, my recommendation (for you) is to use "-Wall -Wextra -Wpedantic -std=c99"
with latest GCC 4.8.1, though I doubt that will automatically avoid all possible errors. But hey, it's better than nothing.

- Raw text -


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