Hi Thomas, recent changes in cdk-perl-20130717 broke the build again with newer versions of ExtUtils::ParseXS, including the one bundled with Perl 5.18.
Cdk.c: In function 'XS_Cdk__Entry_New': Cdk.c:5576:2: error: too few arguments to function 'sv2dtype' int int_disptype = sv2dtype (/* not a parameter */); ^ Cdk.xs:666:1: note: declared here sv2dtype(SV * sv) ^ Cdk.c: In function 'XS_Cdk__Mentry_New': Cdk.c:6497:2: error: too few arguments to function 'sv2dtype' int int_disptype = sv2dtype (/* not a parameter */); ^ Cdk.xs:666:1: note: declared here sv2dtype(SV * sv) ^ make[1]: *** [Cdk.o] Error 1 I'm attaching a proposed patch for this. For reference, this is http://bugs.debian.org/719578. Thanks for your work on CDK, -- Niko Tyni nt...@debian.org
>From e0700c1621e41806fc59a0257de51ce0359a51f4 Mon Sep 17 00:00:00 2001 From: Niko Tyni <nt...@debian.org> Date: Tue, 13 Aug 2013 18:12:57 +0000 Subject: [PATCH] Fix XS syntax, enforced by newer versions of ExtUtils::ParseXS This fixes errors like Cdk.c: In function 'XS_Cdk__Entry_New': Cdk.c:5576:2: error: too few arguments to function 'sv2dtype' int int_disptype = sv2dtype (/* not a parameter */); ^ Cdk.xs:666:1: note: declared here sv2dtype(SV * sv) ^ --- Cdk.xs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Cdk.xs b/Cdk.xs index 890017a..1165221 100644 --- a/Cdk.xs +++ b/Cdk.xs @@ -2561,8 +2561,7 @@ New(title,label,min,max,fieldWidth,filler=".",disptype=vMIXED,xPos=CENTER,yPos=C int max int fieldWidth chtype filler = sv2chtype ($arg); - int int_disptype = sv2dtype ($arg); - EDisplayType disptype = (EDisplayType) int_disptype; + int disptype = sv2dtype ($arg); int xPos = sv2int ($arg); int yPos = sv2int ($arg); chtype fieldattr = sv2chtype ($arg); @@ -2580,7 +2579,7 @@ New(title,label,min,max,fieldWidth,filler=".",disptype=vMIXED,xPos=CENTER,yPos=C entryWidget = newCDKEntry (GCDKSCREEN,xPos,yPos, Title,label, - fieldattr,filler,disptype, + fieldattr,filler,(EDisplayType) disptype, fieldWidth,min,max, Box,shadow); free (Title); @@ -2894,8 +2893,7 @@ New(title,label,min,physical,logical,fieldWidth,disptype=vMIXED,filler=".",xPos= int physical int logical int fieldWidth - int int_disptype = sv2dtype ($arg); - EDisplayType disptype = (EDisplayType) int_disptype; + int disptype = sv2dtype ($arg); chtype filler = sv2chtype ($arg); int xPos = sv2int ($arg); int yPos = sv2int ($arg); @@ -2915,7 +2913,7 @@ New(title,label,min,physical,logical,fieldWidth,disptype=vMIXED,filler=".",xPos= mentryWidget = newCDKMentry (GCDKSCREEN,xPos,yPos, Title,label, fieldattr,filler, - disptype,fieldWidth, + (EDisplayType) disptype,fieldWidth, physical,logical,min, Box,shadow); free (Title); -- 1.8.4.rc2