Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c > #112199
| From | Keith Thompson <kst-u@mib.org> |
|---|---|
| Newsgroups | comp.lang.c |
| Subject | Re: isspace() executes without ctype header? |
| Date | 2017-06-14 09:46 -0700 |
| Organization | None to speak of |
| Message-ID | <ln4lviecup.fsf@kst-u.example.com> (permalink) |
| References | <ohq29k$892$1@dont-email.me> <kfna85b8g3i.fsf@x-alumni2.alumni.caltech.edu> <ohq8oe$mi3$1@dont-email.me> <kfno9tq7fpd.fsf@x-alumni2.alumni.caltech.edu> <ivd0B.96368$3k.53796@fx03.am4> |
bartc <bc@freeuk.com> writes:
[...]
> I tried compiling this:
>
> int main(void){
> isspace(0);
> }
>
> I get no messages at all from either of the two tccs I have on Windows
> (0.9.26, 32- and 64-buit versions).
That behavior is consistent with a conforming C90 compiler.
> Same with isspace(0,0). Same with isspace("abc"). So it's not just
> assuming implicit int.
Yes it is. The C90 implicit int rule assumes that an undeclared
function takes arguments of the (promoted) types in the call,
and returns int. (If that assumption is inconsistent with the
actual definition, as it is for isspace(0,0) and isspace("abc"),
the behavior is undefined.)
> Putting in a declaration like this however:
>
> int isspace(int);
>
> generates an error and warning respectively on those last two calls.
Again, that's consistent with a conforming C90 compiler. (Adding
"#include <ctype.h>" should have the same effect.)
On my system (Ubuntu 16.10):
% cat c.c
int main(void){
isspace(0);
}
% tcc -c c.c
c.c:1: warning: implicit declaration of function 'isspace'
% tcc -v
tcc version 0.9.26 (x86-64 Linux)
%
It's a little surprising that tcc 0.9.26 complains about the implicit
declaration on Linux but not on Windows.
--
Keith Thompson (The_Other_Keith) kst-u@mib.org <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
isspace() executes without ctype header? DFS <nospam@dfs.com> - 2017-06-13 21:13 -0400
Re: isspace() executes without ctype header? Ian Collins <ian-news@hotmail.com> - 2017-06-14 13:20 +1200
Re: isspace() executes without ctype header? DFS <nospam@dfs.com> - 2017-06-13 21:33 -0400
Re: isspace() executes without ctype header? Ian Collins <ian-news@hotmail.com> - 2017-06-14 13:35 +1200
Re: isspace() executes without ctype header? DFS <nospam@dfs.com> - 2017-06-13 22:31 -0400
Re: isspace() executes without ctype header? Ian Collins <ian-news@hotmail.com> - 2017-06-14 14:40 +1200
Re: isspace() executes without ctype header? Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2017-06-13 21:49 -0400
Re: isspace() executes without ctype header? Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-13 19:20 -0700
Re: isspace() executes without ctype header? DFS <nospam@dfs.com> - 2017-06-13 23:04 -0400
Re: isspace() executes without ctype header? asetofsymbols@gmail.com - 2017-06-13 23:07 -0700
Re: isspace() executes without ctype header? Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-14 08:26 -0700
Re: isspace() executes without ctype header? bartc <bc@freeuk.com> - 2017-06-14 17:29 +0100
Re: isspace() executes without ctype header? Keith Thompson <kst-u@mib.org> - 2017-06-14 09:46 -0700
Re: isspace() executes without ctype header? bartc <bc@freeuk.com> - 2017-06-14 17:54 +0100
Re: isspace() executes without ctype header? Keith Thompson <kst-u@mib.org> - 2017-06-14 10:17 -0700
Re: isspace() executes without ctype header? supercat@casperkitty.com - 2017-06-14 10:48 -0700
Re: isspace() executes without ctype header? Keith Thompson <kst-u@mib.org> - 2017-06-14 12:03 -0700
Re: isspace() executes without ctype header? supercat@casperkitty.com - 2017-06-14 12:48 -0700
Re: isspace() executes without ctype header? Keith Thompson <kst-u@mib.org> - 2017-06-14 13:06 -0700
Re: isspace() executes without ctype header? Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-16 23:14 -0700
Re: isspace() executes without ctype header? bartc <bc@freeuk.com> - 2017-06-14 11:18 +0100
Re: isspace() executes without ctype header? Keith Thompson <kst-u@mib.org> - 2017-06-14 09:35 -0700
Re: isspace() executes without ctype header? bartc <bc@freeuk.com> - 2017-06-14 17:47 +0100
Re: isspace() executes without ctype header? supercat@casperkitty.com - 2017-06-14 10:19 -0700
Re: isspace() executes without ctype header? Keith Thompson <kst-u@mib.org> - 2017-06-14 10:29 -0700
Re: isspace() executes without ctype header? Keith Thompson <kst-u@mib.org> - 2017-06-14 10:21 -0700
Re: isspace() executes without ctype header? bartc <bc@freeuk.com> - 2017-06-14 19:12 +0100
Re: isspace() executes without ctype header? Keith Thompson <kst-u@mib.org> - 2017-06-14 12:12 -0700
Re: isspace() executes without ctype header? joel.rees@gmail.com - 2017-06-16 17:56 -0700
Re: isspace() executes without ctype header? supercat@casperkitty.com - 2017-06-17 10:20 -0700
Re: isspace() executes without ctype header? Robert Wessel <robertwessel2@yahoo.com> - 2017-06-18 00:25 -0500
Re: isspace() executes without ctype header? supercat@casperkitty.com - 2017-06-19 09:01 -0700
Re: isspace() executes without ctype header? Robert Wessel <robertwessel2@yahoo.com> - 2017-06-19 21:59 -0500
csiph-web