Bug 2143640

Summary: tcl-signal: Adjustments for additional C type checks in GCC 14
Product: [Fedora] Fedora Reporter: Florian Weimer <fweimer>
Component: tcl-signalAssignee: Florian Weimer <fweimer>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: orion
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: tcl-signal-1.4-29.fc40 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-11-18 07:37:26 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2141798    
Attachments:
Description Flags
tcl-signal-c99-2.patch none

Description Florian Weimer 2022-11-17 13:29:36 UTC
configure has an old ac_cv_header_stdc fragment that calls an undeclared exit function instead of returning from main.

Last upstream release apparently was in 2003, even though the web page is still up (without an apparent contact address). So this needs to be fixed in a downstream patch.

Comment 1 Florian Weimer 2022-11-18 07:37:26 UTC
Patch looks like this.  This is generic autoconf-generated code, fixed in later versions. Other packages will likely need that as well.

diff --git a/configure b/configure
index 6d93d976873e878e..ed02d3f7fe44d2ab 100755
--- a/configure
+++ b/configure
@@ -747,8 +747,8 @@ else
 #define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
 #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
 int main () { int i; for (i = 0; i < 256; i++)
-if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
-exit (0); }
+if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) return 2;
+return 0; }
 
 EOF
 if { (eval echo configure:753: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null

Comment 2 Florian Weimer 2024-01-05 15:58:33 UTC
Created attachment 2007366 [details]
tcl-signal-c99-2.patch

More fixes are needed for GCC 14 compatibility.