ExtUtils::Constant: Remove impediment to compiling under C++11
authorKarl Williamson <khw@cpan.org>
Sat, 19 Nov 2016 14:14:29 +0000 (07:14 -0700)
committerNicholas Clark <nick@ccl4.org>
Tue, 8 Aug 2017 13:22:05 +0000 (15:22 +0200)
C++11 changed from earlier versions to require space between the end of
a string literal and a macro, so that a feature can unambiguously be
added to the language.  Starting in g++ 6.2, the compiler emits a
deprecation warning when there isn't a space (presumably so that future
versions can support C++11).  This commit fixes ExtUtils::Constant

This patch also changes any affected lines that exceed 79 columns, as
specified by perlhack.

Code and modules included with the Perl core need to be compilable using
C++.  This is so that perl can be embedded in C++ programs. (Actually,
only the hdr files need to be so compilable, but it would be hard to
test that just the hdrs are compilable.)  So we need to accommodate
changes to the C++ language.

cpan/ExtUtils-Constant/lib/ExtUtils/Constant/ProxySubs.pm

index 3388b98..0aee523 100644 (file)
@@ -9,7 +9,7 @@ require ExtUtils::Constant::XS;
 use ExtUtils::Constant::Utils qw(C_stringify);
 use ExtUtils::Constant::XS qw(%XS_TypeSet);
 
-$VERSION = '0.08';
+$VERSION = '0.09';
 @ISA = 'ExtUtils::Constant::XS';
 
 %type_to_struct =
@@ -632,7 +632,8 @@ EOA
        } else
 #endif
        {
-           sv = newSVpvf("%"SVf" is not a valid $package_sprintf_safe macro at %"
+           sv = newSVpvf("%" SVf
+                          " is not a valid $package_sprintf_safe macro at %"
                          COP_FILE_F " line %" UVuf "\\n",
                          sv, COP_FILE(cop), (UV)CopLINE(cop));
        }
@@ -670,7 +671,7 @@ $xs_subname(sv)
        } else
 #endif
        {
-           sv = newSVpvf("%"SVf" is not a valid $package_sprintf_safe macro",
+           sv = newSVpvf("%" SVf " is not a valid $package_sprintf_safe macro",
                          sv);
        }
        PUSHs(sv_2mortal(sv));