texlive[74950] Build/source/texk/ps2pk: Fix 'spaces' module for C23.

commits+ascherer at tug.org commits+ascherer at tug.org
Tue Apr 15 19:12:33 CEST 2025


Revision: 74950
          https://tug.org/svn/texlive?view=revision&revision=74950
Author:   ascherer
Date:     2025-04-15 19:12:33 +0200 (Tue, 15 Apr 2025)
Log Message:
-----------
Fix 'spaces' module for C23.

$ CC='gcc-14 --std=c23' ./Build ...
gets really picky.

Modified Paths:
--------------
    trunk/Build/source/texk/ps2pk/spaces.c
    trunk/Build/source/texk/ps2pk/spaces.h

Modified: trunk/Build/source/texk/ps2pk/spaces.c
===================================================================
--- trunk/Build/source/texk/ps2pk/spaces.c	2025-04-15 17:12:31 UTC (rev 74949)
+++ trunk/Build/source/texk/ps2pk/spaces.c	2025-04-15 17:12:33 UTC (rev 74950)
@@ -45,8 +45,10 @@
 #include "fonts.h"
 #include "arith.h"
 
-static void FindFfcn(DOUBLE, DOUBLE, fractpel (**)());
-static void FindIfcn(DOUBLE, DOUBLE, fractpel *, fractpel *, fractpel (**)());
+static void FindFfcn(DOUBLE, DOUBLE,
+		fractpel (**)(DOUBLE,DOUBLE,DOUBLE,DOUBLE));
+static void FindIfcn(DOUBLE, DOUBLE, fractpel *, fractpel *,
+		fractpel (**)(int32_t,int32_t,int32_t,int32_t));
 /*
 :h3.Entry Points Provided to the TYPE1IMAGER User
 */
@@ -539,7 +541,8 @@
  
 static void FindFfcn(
        register DOUBLE cx, register DOUBLE cy,  /* x and y coefficients      */
-       register fractpel (**fcnP)())  /* pointer to function to set          */
+       register fractpel (**fcnP)(DOUBLE,DOUBLE,DOUBLE,DOUBLE))
+                                      /* pointer to function to set          */
 {
        if (cx == 0.0)
                *fcnP = FYonly;
@@ -564,7 +567,8 @@
        register DOUBLE cx, DOUBLE cy,  /* x and y coefficients               */
        register fractpel *icxP,  /* fixed point ...                          */
        register fractpel *icyP,  /* ... coefficients to set                  */
-       register fractpel (**fcnP)())  /* pointer to function to set          */
+       register fractpel (**fcnP)(int32_t,int32_t,int32_t,int32_t))
+                                      /* pointer to function to set          */
 {
        register fractpel imax;  /* maximum of cx and cy                      */
  

Modified: trunk/Build/source/texk/ps2pk/spaces.h
===================================================================
--- trunk/Build/source/texk/ps2pk/spaces.h	2025-04-15 17:12:31 UTC (rev 74949)
+++ trunk/Build/source/texk/ps2pk/spaces.h	2025-04-15 17:12:33 UTC (rev 74950)
@@ -67,12 +67,18 @@
 struct XYspace {
        XOBJ_COMMON           /* xobject common data define 3-26-91 PNM       */
 			     /* type = SPACETYPE			     */
-       void (*convert)();     /* calculate "fractpoint" X,Y from float X,Y    */
-       void (*iconvert)();    /* calculate "fractpoint" X,Y from int X,Y      */
-       fractpel (*xconvert)();  /* subroutine of convert                     */
-       fractpel (*yconvert)();  /* subroutine of convert                     */
-       fractpel (*ixconvert)();  /* subroutine of iconvert                   */
-       fractpel (*iyconvert)();  /* subroutine of iconvert                   */
+       void (*convert)(struct fractpoint*,struct XYspace*,DOUBLE,DOUBLE);
+                             /* calculate "fractpoint" X,Y from float X,Y    */
+       void (*iconvert)(struct fractpoint*,struct XYspace*,int32_t,int32_t);
+                             /* calculate "fractpoint" X,Y from int X,Y      */
+       fractpel (*xconvert)(DOUBLE,DOUBLE,DOUBLE,DOUBLE);
+                             /* subroutine of convert                        */
+       fractpel (*yconvert)(DOUBLE,DOUBLE,DOUBLE,DOUBLE);
+                             /* subroutine of convert                        */
+       fractpel (*ixconvert)(int32_t,int32_t,int32_t,int32_t);
+                             /* subroutine of iconvert                       */
+       fractpel (*iyconvert)(int32_t,int32_t,int32_t,int32_t);
+                             /* subroutine of iconvert                       */
 #if 0
 /* These were my attempts at the C23-required replacement declarations
    with all argument types (I gave up at ixconvert and iyconvert). But



More information about the tex-live-commits mailing list.