Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #388704

Re: constexpr keyword is unnecessary

From Keith Thompson <Keith.S.Thompson+u@gmail.com>
Newsgroups comp.lang.c
Subject Re: constexpr keyword is unnecessary
Date 2024-10-19 21:08 -0700
Organization None to speak of
Message-ID <87plnvpgb9.fsf@nosuchdomain.example.com> (permalink)
References (2 earlier) <vf0ijd$3u54q$1@dont-email.me> <vf0l98$3un4n$1@dont-email.me> <vf1216$p0c$1@dont-email.me> <87y12jpxvl.fsf@nosuchdomain.example.com> <vf1d2o$2hjk$1@dont-email.me>

Show all headers | View raw


Thiago Adams <thiago.adams@gmail.com> writes:
> Em 10/19/2024 6:48 PM, Keith Thompson escreveu:
[...]
>> My reasons for not wanting `const int c = 2;` to make c a constant
>> expression have nothing to do with any theoretical difference in
>> generated code.
>>
>> My reason is that "const" and "constant" are two almost entirely
>> distinct concepts.  Conflating them makes the language more confusing.
>> Making the name of a "const" object a constant expression adds no new
>> capabilities beyone what we already have with "constexpr".
>
> I see some differences but not enough to justify a new keyword and I
> think it also generates confusion. So it is a matter of choosing what
> that of confusion we want.

But the new keyword already exists, and will be part of the language for
years.  Removing the constexpr keyword will not be possible, because
doing so would break existing code.

> For instance, in file scope,
>
> const int a = 1;
> constexpr int b =1;
>
> In both cases, because it is file scope, a and b need to be
> initialized with constant expressions. I don“t see anything more
> special in b compared with a to make any distinction.

As of C23, you're right.  But what if a future C standard allows
non-constant initializers for file-scope object (as C++ already does)?

-- 
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
void Void(void) { Void(); } /* The recursive call of the void */

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


Thread

constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-11 09:25 -0300
  Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-11 20:03 +0200
    Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-11 15:11 -0300
      Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-11 21:17 +0200
        Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-11 16:30 -0300
          Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-12 06:39 +0200
            Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-12 10:23 -0300
              Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-12 15:52 +0200
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-12 18:37 -0300
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 12:51 +0200
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 08:32 -0300
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 13:39 +0200
                Re: constexpr keyword is unnecessary DFS <nospam@dfs.com> - 2024-10-14 23:30 -0400
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-15 13:41 +0200
                Re: constexpr keyword is unnecessary Bart <bc@freeuk.com> - 2024-10-15 14:01 +0100
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-15 10:11 -0300
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-15 15:27 +0200
                Re: constexpr keyword is unnecessary Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2024-10-16 08:35 +0200
                Re: constexpr keyword is unnecessary Kaz Kylheku <643-408-1753@kylheku.com> - 2024-10-15 20:31 +0000
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-16 07:14 +0200
                Re: constexpr keyword is unnecessary Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2024-10-16 08:44 +0200
          Re: constexpr keyword is unnecessary Kaz Kylheku <643-408-1753@kylheku.com> - 2024-10-13 16:39 +0000
            Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 14:39 -0300
              Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 20:13 +0200
              Re: constexpr keyword is unnecessary Kaz Kylheku <643-408-1753@kylheku.com> - 2024-10-13 18:21 +0000
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 18:12 -0300
  Re: constexpr keyword is unnecessary Bart <bc@freeuk.com> - 2024-10-12 14:53 +0100
    Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-12 18:43 -0300
      Re: constexpr keyword is unnecessary Bart <bc@freeuk.com> - 2024-10-13 10:52 +0100
        Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 08:37 -0300
          Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 13:49 +0200
            Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 09:38 -0300
              Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 14:58 +0200
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 10:09 -0300
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 15:14 +0200
                Re: constexpr keyword is unnecessary Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2024-10-13 15:35 +0200
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 15:47 +0200
                Re: constexpr keyword is unnecessary Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2024-10-13 16:33 +0200
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 16:41 +0200
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 11:52 -0300
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 17:14 +0200
                Re: constexpr keyword is unnecessary Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2024-10-13 17:03 +0200
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-13 17:19 +0200
              Re: constexpr keyword is unnecessary Michael S <already5chosen@yahoo.com> - 2024-10-13 16:06 +0300
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 10:10 -0300
                Re: constexpr keyword is unnecessary Michael S <already5chosen@yahoo.com> - 2024-10-13 16:29 +0300
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-13 10:50 -0300
  Re: constexpr keyword is unnecessary Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2024-10-18 16:54 -0700
    Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-19 09:18 +0200
    Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-19 12:18 -0300
      Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-19 18:03 +0200
        Re: constexpr keyword is unnecessary Bart <bc@freeuk.com> - 2024-10-19 18:22 +0100
          Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-20 12:40 +0200
            Re: constexpr keyword is unnecessary Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2024-10-20 11:28 -0700
              Re: constexpr keyword is unnecessary Opus <ifonly@youknew.org> - 2024-10-21 03:02 +0200
              Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-21 08:40 +0200
                Re: constexpr keyword is unnecessary Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2024-10-21 13:47 -0700
                Re: constexpr keyword is unnecessary "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-10-21 14:20 -0700
                Re: constexpr keyword is unnecessary Kaz Kylheku <643-408-1753@kylheku.com> - 2024-10-22 02:43 +0000
                Re: constexpr keyword is unnecessary "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2024-10-22 12:18 -0700
        Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-19 16:41 -0300
          Re: constexpr keyword is unnecessary Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2024-10-19 14:48 -0700
            Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-19 19:49 -0300
              Re: constexpr keyword is unnecessary Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2024-10-19 21:08 -0700
                Re: constexpr keyword is unnecessary Michael S <already5chosen@yahoo.com> - 2024-10-20 14:59 +0300
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-20 09:22 -0300
                Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-22 10:02 +0200
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-22 09:48 -0300
                Re: constexpr keyword is unnecessary Vir Campestris <vir.campestris@invalid.invalid> - 2024-10-26 15:07 +0100
                Re: constexpr keyword is unnecessary James Kuyper <jameskuyper@alumni.caltech.edu> - 2024-10-26 11:08 -0400
                Re: constexpr keyword is unnecessary Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2024-10-26 20:28 +0200
                Re: constexpr keyword is unnecessary scott@slp53.sl.home (Scott Lurndal) - 2024-10-26 19:37 +0000
                Re: constexpr keyword is unnecessary Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-10-26 21:58 -0700
                Re: constexpr keyword is unnecessary scott@slp53.sl.home (Scott Lurndal) - 2024-10-27 17:22 +0000
                Re: constexpr keyword is unnecessary Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-11-03 19:06 -0800
                Re: constexpr keyword is unnecessary Lowell Gilbert <lgusenet@be-well.ilk.org> - 2024-11-04 12:57 -0500
                Re: constexpr keyword is unnecessary Kaz Kylheku <643-408-1753@kylheku.com> - 2024-11-04 19:38 +0000
                Re: constexpr keyword is unnecessary Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-11-07 05:15 -0800
                Re: constexpr keyword is unnecessary Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-10-26 21:54 -0700
                Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-27 15:24 +0100
                Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-27 15:21 +0100
                Re: constexpr keyword is unnecessary Kaz Kylheku <643-408-1753@kylheku.com> - 2024-10-28 06:13 +0000
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-28 08:58 -0300
                Re: constexpr keyword is unnecessary Kaz Kylheku <643-408-1753@kylheku.com> - 2024-10-29 05:04 +0000
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-29 09:16 -0300
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-29 09:21 -0300
                Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-29 15:13 +0100
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-29 11:46 -0300
                Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-29 19:27 +0100
                Re: constexpr keyword is unnecessary Janis Papanagnou <janis_papanagnou+ng@hotmail.com> - 2024-10-30 01:41 +0100
                Re: constexpr keyword is unnecessary Kaz Kylheku <643-408-1753@kylheku.com> - 2024-10-29 20:57 +0000
                Re: constexpr keyword is unnecessary Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-11-05 07:46 -0800
                Re: constexpr keyword is unnecessary Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-11-05 07:48 -0800
                Re: constexpr keyword is unnecessary Richard Harnden <richard.nospam@gmail.invalid> - 2024-10-29 17:26 +0000
                Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-29 14:48 -0300
                Re: constexpr keyword is unnecessary Tim Rentsch <tr.17687@z991.linuxsc.com> - 2024-10-26 21:37 -0700
                Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-27 15:32 +0100
            Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-19 22:56 -0300
              Re: constexpr keyword is unnecessary Bonita Montero <Bonita.Montero@gmail.com> - 2024-10-20 18:12 +0200
          Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-20 12:45 +0200
            Re: constexpr keyword is unnecessary Bart <bc@freeuk.com> - 2024-10-20 12:23 +0100
              Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-20 13:36 +0200
        Re: constexpr keyword is unnecessary Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2024-10-19 14:24 -0700
          Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-19 19:13 -0300
          Re: constexpr keyword is unnecessary David Brown <david.brown@hesbynett.no> - 2024-10-20 12:55 +0200
      Re: constexpr keyword is unnecessary Michael S <already5chosen@yahoo.com> - 2024-10-19 19:53 +0300
        Re: constexpr keyword is unnecessary Thiago Adams <thiago.adams@gmail.com> - 2024-10-19 16:35 -0300
          Re: constexpr keyword is unnecessary Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2024-10-19 14:49 -0700

csiph-web