[OpenAFS-devel] CLANG 17+

Ben Huntsman ben@huntsmans.net
Thu, 23 Oct 2025 17:54:01 +0000


--_000_BYAPR07MB5879ED0E4139F5E324038DEFA7F0ABYAPR07MB5879namp_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi there-
   Do any of the ports currently work with CLANG 17 or higher?

   After some work trying to get the AIX port working with IBM's new Open X=
L C 17.1, which is CLANG-based, I noticed that version 17.1.0 and 17.1.1 us=
e CLANG 13, while 17.1.2 jumps to 17, and 17.1.3 uses CLANG 19.  CLANG 17 i=
s much more strict about the C standard it enforces.  When the configure sc=
ript gets run, the lex test code fails to compile and while this doesn't te=
rminate the script, the LEX variable gets set incorrectly in src/config/Mak=
efile.config:

LEX =3D : -l

   Obviously, that breaks the build later.  I can get around it by setting =
CFLAGS=3D"-std=3Dgnu89" and then configure works successfully, but that's p=
robably not the right solution here.

   Has anyone else seen anything like this?  Do we need a new version of au=
totools or something?

Thanks!

-Ben



--_000_BYAPR07MB5879ED0E4139F5E324038DEFA7F0ABYAPR07MB5879namp_
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html>
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-=
1">
<style type=3D"text/css" style=3D"display:none;"> P {margin-top:0;margin-bo=
ttom:0;} </style>
</head>
<body dir=3D"ltr">
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
Hi there-</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
&nbsp; &nbsp;Do any of the ports currently work with CLANG 17 or higher?&nb=
sp;&nbsp;</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
&nbsp; &nbsp;After some work trying to get the AIX port working with IBM's =
new Open XL C 17.1, which is CLANG-based, I noticed that version 17.1.0 and=
 17.1.1 use CLANG 13, while 17.1.2 jumps to 17, and 17.1.3 uses CLANG 19.&n=
bsp; CLANG 17 is much more strict about the C standard
 it enforces.&nbsp; When the configure script gets run, the lex test code f=
ails to compile and while this doesn't terminate the script, the LEX variab=
le gets set incorrectly in src/config/Makefile.config:</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
LEX =3D : -l</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
&nbsp; &nbsp;Obviously, that breaks the build later.&nbsp; I can get around=
 it by setting CFLAGS=3D&quot;-std=3Dgnu89&quot; and then configure works s=
uccessfully, but that's probably not the right solution here.</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
&nbsp; &nbsp;Has anyone else seen anything like this?&nbsp; Do we need a ne=
w version of autotools or something?&nbsp;&nbsp;</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
Thanks!</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
-Ben</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
<br>
</div>
<div style=3D"font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, =
Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" clas=
s=3D"elementToProof">
<br>
</div>
</body>
</html>

--_000_BYAPR07MB5879ED0E4139F5E324038DEFA7F0ABYAPR07MB5879namp_--