Groups | Search | Server Info | Login | Register


Groups > comp.lang.c > #398051

Re: function declaration without args no longer works

From John Forkosh <forkosh@panix.com>
Newsgroups comp.lang.c
Subject Re: function declaration without args no longer works
Date 2026-04-28 07:02 +0000
Organization PANIX Public Access Internet and UNIX, NYC
Message-ID <10spm2q$5fq$1@reader1.panix.com> (permalink)
References <10sl5na$5ov$1@reader1.panix.com> <20260426175044.000062ff@yahoo.com> <10slf3h$mho$3@reader1.panix.com> <10smamp$1vlj2$2@dont-email.me> <10smvq5$25a7q$2@dont-email.me>

Show all headers | View raw


David Brown <david.brown@hesbynett.no> wrote:
> Lawrence D?Oliveiro wrote:
>> John Forkosh wrote:
>> 
>>> And, as much as possible, I try to write code consistent with K&R2,
>>> so don't usually need "modern language extensions".
>> 
>> That's just creating work for yourself.
> 
> People can have good and bad reasons for choosing to write to older C 
> standards, though it is unusual to refer specifically to "K&R2".  Most 
> often, people say "ANSI C" - inaccurately thinking that means the 
> original ANSI C standard, or basically C90.  I have no idea why John 
> chooses K&R2 - I assume he has good reasons for that choice.

No particular reason for "K&R2" versus "ANSI C". But overall reason
for "older C standard" was (but pretty much no longer is) contract
work on a variety of slightly-weird systems, particularly, for
example, VMS, which can require, e.g., a variety of very non-standard
stuff like
   #include <descrip.h>
   ...
   char    tabbuf[64];          /* usual declarations */
   char    *tabnam;
   struct  dsc$descriptor_s     /* required descriptor declarations */
        tab_desc = { 0, DSC$K_DTYPE_T, DSC$K_CLASS_S, &tabbuf[0] },
        log_desc = { 0, DSC$K_DTYPE_T, DSC$K_CLASS_S, lognam };
And I found it easier to stick to an older C standard whenever
possible, just to ensure compliance among as many OSs as possible,
across as many different platforms as possible.
Even one-line  // comments  rather than  /* comments */  can be
a problem.

> In my work I see a lot of libraries and code bases that claim "ANSI C" 
> as though it were a badge of merit.  I think in many cases, what they 
> are really saying is that someone wrote the code a generation ago, and 
> the current guys don't really understand how it works so they don't dare 
> change things.

Yeah, a lot of it is old or very old code, but all of the stuff
I'm talking about was written by me, so I presumably unserstand it.
It's not that I "don't dare change things", it's that things still
work (modulo that -std=gnu17 fix in this case -- thanks again, guys)
and required changes would involve lots and lots of trivial work
with no observable benefit, whereas I'd rather spend my time
more profitably (both $-wise and benefit-wise).

> Typically such code is horrible.  It is painfully structured, full of 
> home-made pseudo-standard types like "MY_LIB_UINT32", or "i16", or even 
> "ULONG".  "int" instead of bool.  Macros instead of static inline 
> functions.  #define'd constants instead of enums.  Long functions with 
> variables declared at the top.  (C90 code does not /have/ to be bad, but 
> it very often is.)

Personally, I always use int rather than bool, e.g., sometimes I need
a three- or many-valued logic (undetermined typically a third value),
and sometimes not sure what will be needed as development progresses,
even when there's a detailed design document to begin with.
And I'd never #define a name like MY_LIB_UINT32, but often do
#define types, again typically because it's not clear what will
be needed. Indeed, several times what started out as some scalar
type, evolved into a struct, or more simply, sometimes from
a three-component vector into a four-component quaternion.
#define'd types can be very, very, very useful for a wide, wide
variety of reasons. It's always possible to point out a few
silly misuses of anything, but not always helpful in general.

> And then, in the field of embedded systems, there is often piles of 
> assembly mixed in because the code was written in a time when compilers 
> were weak.  (Some assembly can be unavoidable.)

I did a lot of "mixed" assembly & Fortran coding on the IBM/360 series,
simply to speed up heavy numerical work back when computers were slow
and compiler optimization pretty much non-existent. Also some assembly
on PDP-10s and on PDP lab8/es (so the lab8/es could upload collected
laboratory data to the PDP 10 for processing). And also some assembly
on DG MV/8000 and C/330 Nova and Eclipse.
   Besides C, Fortran, and several assembly languages, I've also done
some programming in PL/1, Cobol, Basic, and one or two others --
every hear of Jovial (Jules' Own Version of the International
Algorithmic Language)? C does seem to have survived the longest
(Fortran notwithstanding), but I think that focusing solely on
its place in the programming language environment might be too
one-dimensional.

> IMHO, C99 made C programming a lot nicer - it's easier to write, easier 
> to read, and lets you get more efficient results.  C11 adds a few nice 
> things, though nothing too critical (for my usage), and then C23 adds 
> some other convenient features.  I can appreciate people not bothering 
> to use C11 onwards, especially if they are writing code that should be 
> usable on a wide variety of compilers, but I find it hard to understand 
> why anyone would actively choose C90 over C99.

"Passively", so to speak, chosen, at least by me. So the original post
refers to a lot of old code, and it would be a big pain in the fingers
to go back and fix all the  int typer();  kind of stuff just to get it
to compile. -std=gnu17 is a much kinder and gentler (to my fingers)
solution. And having done that, note that everything now compiles and
runs correctly with no further change whatsoever.
-- 
John Forkosh

Back to comp.lang.c | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-26 13:59 +0000
  Re: function declaration without args no longer works Michael Bäuerle <michael.baeuerle@gmx.net> - 2026-04-26 16:24 +0200
    Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-26 16:29 +0000
      Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-05-04 19:36 +0000
        Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-05-05 00:15 -0700
          Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-05-05 09:10 +0000
            Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-05-05 11:17 +0200
              Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-05-05 11:07 +0000
            Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-05-05 02:24 -0700
              Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-05-05 11:20 +0000
              Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-05-05 18:09 +0000
                Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-05-07 12:52 +0000
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-05-07 14:51 +0000
              Re: function declaration without args no longer works Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2026-05-06 11:41 +0200
            Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-05-05 10:03 -0700
              Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-05-07 12:35 +0000
                Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-05-08 07:36 -0700
                Re: function declaration without args no longer works antispam@fricas.org (Waldek Hebisch) - 2026-05-08 18:39 +0000
  Re: function declaration without args no longer works richard@cogsci.ed.ac.uk (Richard Tobin) - 2026-04-26 14:32 +0000
    Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-26 16:35 +0000
    Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-04-29 16:43 -0700
      Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-30 08:39 +0200
  Re: function declaration without args no longer works Michael S <already5chosen@yahoo.com> - 2026-04-26 17:50 +0300
    Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-26 16:39 +0000
      Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-27 00:30 +0000
        Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-27 08:30 +0200
          Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-28 07:02 +0000
            Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-28 10:16 +0200
              Re: function declaration without args no longer works antispam@fricas.org (Waldek Hebisch) - 2026-04-28 15:33 +0000
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-28 20:24 +0200
                Re: function declaration without args no longer works antispam@fricas.org (Waldek Hebisch) - 2026-04-28 20:22 +0000
              Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-29 06:22 +0000
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-29 09:15 +0200
                Re: function declaration without args no longer works Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2026-04-29 10:06 +0200
                Re: function declaration without args no longer works Michael S <already5chosen@yahoo.com> - 2026-04-29 11:25 +0300
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-29 11:26 +0200
                Re: function declaration without args no longer works James Kuyper <jameskuyper@alumni.caltech.edu> - 2026-04-29 20:07 -0400
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-30 00:14 +0000
                Re: function declaration without args no longer works "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-04-29 17:57 -0700
                Re: function declaration without args no longer works Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2026-04-30 03:09 +0200
                Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-04-30 00:48 -0700
                Re: function declaration without args no longer works "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-04-30 20:18 -0700
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-05-01 04:12 +0000
                Re: function declaration without args no longer works "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-04-30 23:29 -0700
                Re: function declaration without args no longer works Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2026-05-01 19:31 +0200
                Re: function declaration without args no longer works James Kuyper <jameskuyper@alumni.caltech.edu> - 2026-05-01 13:49 -0400
                Re: function declaration without args no longer works "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-05-01 12:49 -0700
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-05-01 22:31 +0000
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-05-02 00:13 +0000
                Re: function declaration without args no longer works "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-05-01 19:27 -0700
                Re: function declaration without args no longer works "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-05-01 19:28 -0700
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-05-02 03:07 +0000
                Re: function declaration without args no longer works scott@slp53.sl.home (Scott Lurndal) - 2026-05-02 16:16 +0000
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-30 01:39 +0000
                Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-04-30 00:38 -0700
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-30 03:07 -0700
                Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-04-30 05:54 -0700
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-30 14:32 -0700
                Re: function declaration without args no longer works James Kuyper <jameskuyper@alumni.caltech.edu> - 2026-04-30 09:45 -0400
                Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-04-30 12:48 -0700
                Re: function declaration without args no longer works Bart <bc@freeuk.com> - 2026-04-29 11:05 +0100
                Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-04-29 16:32 -0700
                Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-04-30 01:22 -0700
                Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-29 10:42 +0000
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-29 14:31 -0700
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-30 08:42 +0200
                Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-30 13:17 +0000
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-30 14:40 -0700
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-30 22:14 +0000
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-04-29 18:55 +0000
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-29 21:19 +0000
                Re: function declaration without args no longer works Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-04-29 16:46 -0700
            Re: function declaration without args no longer works Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2026-04-28 14:25 +0200
              Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-04-28 13:13 +0000
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-28 15:48 +0200
                Re: function declaration without args no longer works Bart <bc@freeuk.com> - 2026-04-28 15:05 +0100
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-28 16:37 +0200
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-28 14:02 -0700
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-29 09:29 +0200
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-29 02:49 -0700
                Re: function declaration without args no longer works James Kuyper <jameskuyper@alumni.caltech.edu> - 2026-04-29 20:06 -0400
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-29 17:13 -0700
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-30 00:45 +0000
                Re: function declaration without args no longer works James Kuyper <jameskuyper@alumni.caltech.edu> - 2026-04-29 21:11 -0400
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-30 01:40 +0000
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-29 20:09 -0700
                Re: function declaration without args no longer works scott@slp53.sl.home (Scott Lurndal) - 2026-04-30 14:57 +0000
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-04-30 15:07 +0000
                Re: function declaration without args no longer works Bart <bc@freeuk.com> - 2026-04-30 16:20 +0100
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-04-30 16:10 +0000
                Re: function declaration without args no longer works Bart <bc@freeuk.com> - 2026-04-30 17:48 +0100
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-30 22:31 +0200
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-30 22:18 +0000
                Re: function declaration without args no longer works Bart <bc@freeuk.com> - 2026-05-01 00:25 +0100
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-05-01 00:08 +0000
                Re: function declaration without args no longer works Bart <bc@freeuk.com> - 2026-05-01 01:24 +0100
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-30 17:46 -0700
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-05-01 01:55 +0000
                Re: function declaration without args no longer works Bart <bc@freeuk.com> - 2026-05-01 10:48 +0100
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-05-01 11:20 +0000
                Re: function declaration without args no longer works "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-04-30 20:23 -0700
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-05-01 10:32 +0200
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-30 14:43 -0700
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-04-30 22:34 +0000
                Re: function declaration without args no longer works James Kuyper <jameskuyper@alumni.caltech.edu> - 2026-05-01 13:32 -0400
                Re: function declaration without args no longer works scott@slp53.sl.home (Scott Lurndal) - 2026-05-01 18:12 +0000
                Re: function declaration without args no longer works Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2026-04-30 03:50 +0200
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-30 08:52 +0200
                Re: function declaration without args no longer works "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2026-04-28 14:56 -0700
                Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-28 15:41 -0700
                Re: function declaration without args no longer works Lawrence D’Oliveiro <ldo@nz.invalid> - 2026-04-29 21:20 +0000
                Re: function declaration without args no longer works Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2026-04-28 17:14 +0200
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-28 17:31 +0200
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-04-28 19:06 +0000
                Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-28 21:44 +0200
                Re: function declaration without args no longer works Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2026-04-28 17:06 +0200
                Re: function declaration without args no longer works cross@spitfire.i.gajendra.net (Dan Cross) - 2026-04-28 19:23 +0000
  Re: function declaration without args no longer works David Brown <david.brown@hesbynett.no> - 2026-04-26 17:35 +0200
    Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-26 16:50 +0000
    Re: function declaration without args no longer works Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-04-26 15:52 -0700
  Re: function declaration without args no longer works Andrey Tarasevich <noone@noone.net> - 2026-04-26 08:38 -0700
    Re: function declaration without args no longer works John Forkosh <forkosh@panix.com> - 2026-04-26 16:56 +0000

csiph-web