From: "G.B." <bauhaus@notmyhomepage.invalid>
Subject: Re: Ichbiah 2022 compiler mode
Date: Sat, 21 Dec 2024 18:19:12 +0100 [thread overview]
Message-ID: <vk6tag$4tm1$1@dont-email.me> (raw)
In-Reply-To: <vk5tc9$3uoku$1@dont-email.me>
On 21.12.24 09:14, Randy Brukardt wrote:
>> Note that :
>> 1. I have no statistics, but it seems to me that there is more variables
>> than constants in my code.
>
> But how many of them *have* to be variables vs. the number that just are
> because it is easier? I know I have a number of the latter.
>
>> 2. I say "Useless" from my coder point of view, I dont know if it simplify
>> the work for compiler or tools implementers.
>
> Constants do help the compiler generate better code, although a lot of the
> benefits can be gained also by working harder. (That's what C compilers do,
> after all.)
What are some compilers offering today? That is, can they find declarations
of variables that could be constants, if so instructed?
I am seeing some warnings about non-initialized variables for a meaningless
mock-up, but not much else. Ada, C++, Java.
(Maybe there are options that I have missed. Or an analysis of a whole
program yields more.)
function testc (b : Boolean) return Integer is
package P is
x : Integer;
end;
begin
if b then
P.x := 42;
end if;
return P.x;
end testc;
int testc(bool b) {
struct {
int x;
} P;
if (b) {
P.x = 42;
}
return P.x;
}
class testc {
class P {
int x;
}
P P;
int $(boolean b) {
if (b) {
P.x = 42;
}
return P.x;
}
}
next prev parent reply other threads:[~2024-12-21 17:19 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-05 11:52 Ichbiah 2022 compiler mode Kevin Chadwick
2024-09-05 13:40 ` Jeffrey R.Carter
2024-09-05 13:49 ` Bill Findlay
2024-09-05 19:22 ` Jeffrey R.Carter
2024-09-05 14:05 ` Kevin Chadwick
2024-09-05 16:08 ` Kevin Chadwick
2024-09-05 19:24 ` Jeffrey R.Carter
2024-09-06 0:03 ` Randy Brukardt
2024-09-06 0:58 ` Lawrence D'Oliveiro
2024-09-12 4:39 ` Randy Brukardt
2024-09-12 22:24 ` Lawrence D'Oliveiro
2024-09-14 6:18 ` Randy Brukardt
2024-09-14 7:18 ` Lawrence D'Oliveiro
2024-09-06 21:22 ` Simon Wright
2024-09-07 17:13 ` Niklas Holsti
2024-09-07 20:34 ` Nioclás Pól Caileán de Ghloucester
2024-09-12 4:46 ` Randy Brukardt
2024-09-12 7:42 ` Niklas Holsti
2024-09-12 9:07 ` Dmitry A. Kazakov
2024-09-12 12:36 ` Kevin Chadwick
2024-09-12 15:43 ` Niklas Holsti
2024-09-13 20:45 ` Nioclás Pól Caileán de Ghloucester
2024-09-12 9:04 ` J-P. Rosen
2024-09-12 11:35 ` Niklas Holsti
2024-09-14 6:13 ` Randy Brukardt
2024-09-14 6:47 ` Dmitry A. Kazakov
2024-09-14 7:19 ` Lawrence D'Oliveiro
2024-09-14 8:12 ` Niklas Holsti
2024-12-20 23:26 ` Lioneldraghi
2024-12-21 8:14 ` Randy Brukardt
2024-12-21 9:50 ` Jeffrey R.Carter
2024-12-24 1:00 ` Randy Brukardt
2024-12-21 17:19 ` G.B. [this message]
2024-12-21 17:35 ` Chris Townley
2024-12-22 12:15 ` Simon Wright
2024-12-22 15:52 ` G.B.
2024-12-22 23:06 ` Simon Wright
2024-12-24 1:03 ` Randy Brukardt
2024-12-21 21:26 ` Keith Thompson
2024-12-22 9:32 ` Pascal Obry
2024-12-21 0:52 ` Lioneldraghi
2024-12-21 8:19 ` Randy Brukardt
2024-09-06 11:07 ` Jeffrey R.Carter
2024-09-06 20:26 ` Nioclás Pól Caileán de Ghloucester
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox