[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">
   Do any of the ports currently work with CLANG 17 or higher?&nb=
sp; </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">
   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.  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">
   Obviously, that breaks the build later.  I can get around=
 it by setting CFLAGS=3D"-std=3Dgnu89" 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">
   Has anyone else seen anything like this?  Do we need a ne=
w version of autotools or something?  </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_--