[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: problems with c89 and c++ on z/OS
From: |
James Tison |
Subject: |
Re: problems with c89 and c++ on z/OS |
Date: |
Wed, 3 Jul 2002 07:50:09 -0400 |
Paul,
I'll try reporting it and see what happens. When I've complained about
these kinds of errors (the ones you *think* make sense by a read of the
Standard) in the past, I have received the answer "working as
documented/designed". Believe me, I'd like to see them fixed just as much
as the rest of us would. Perhaps the answer is as simple as getting the
right return code percolated back through the c89/cc/cxx/c++ front ends.
Regards,
--Jim--
James S. Tison
Senior Software Engineer
TPF Laboratory / Architecture
IBM Corporation
+1 203 486-2835 (voice/fax)
address@hidden
Paul Eggert
<address@hidden To: James
Tison/Poughkeepsie/address@hidden
om> cc: address@hidden,
address@hidden, Michael
MacIsaac/Poughkeepsie/address@hidden
07/03/2002 02:51 Subject: Re: problems with c89
and c++ on z/OS
> From: "James Tison" <address@hidden>
> Date: Tue, 2 Jul 2002 17:25:57 -0400
>
> If someone can quote me chapter and verse from the Standard
> on the required behavior, I'll be happy to file a bug report against it.
Page 163 section 6.10.2 line 1 of the C99 standard says:
Constraints
A #include directive shall identify a header or source file
that can
be processed by the implementation.
The standard requires that every constraint violation must be
diagnosed, so a diagnostic is required from the C compiler if a
program attempts to include a nonexistent header or source file.
There is no requirement that c99 (or c89 or cc) must return a nonzero
error status in this case. However, longstanding tradition is that
nonexistent include files are serious errors, warranting a nonzero
exit status.
Many programs rely on the traditional behavior in order to configure
themselves properly. No program that I know of relies on the other
behavior (where missing include files are not considered to be
errors). So it's not useful for a compiler to depart from the
longstanding tradition here.