Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!rutgers!usc!wuarchive!udel!princeton!astro.Princeton.EDU From: byron@astro.Princeton.EDU (Byron Rakitzis) Newsgroups: comp.lang.c Subject: ANSI prototype confusion Message-ID: <4559@idunno.Princeton.EDU> Date: 7 Dec 90 14:38:57 GMT Sender: news@idunno.Princeton.EDU Organization: Princeton University, Princeton, New Jersey Lines: 19 The only ANSI compiler I have is gcc, so forgive me if I turn out to be complaining about a bug in gcc. I'm writing my own header file for symbols to be found in libc. I declared qsort as: void qsort(void *, int, int, int (*)(void *, void *)); This is okay, except that gcc then complains if strcmp or any function not taking (void *, void *) as arguments is passed to qsort. Is this correct? Could someone please enlighten me? The alternative: void qsort(void *, int, int, int (*)()); hurts typechecking, as far as I can tell. Thanks much. Byron Rakitzis.