RPi-I2C v2.3606 Perl 5 v5.8.7 x86_64-linux-thread-multi

Status
Unknown
From
Nigel Horne
Dist
RPi-I2C v2.3606
Platform
Perl 5 v5.8.7 x86_64-linux-thread-multi
Date
2018-05-30 10:43:08
ID
3dcc2190-63f6-11e8-8649-9a118c28008b
This distribution has been tested as part of the CPAN Testers
project, supporting the Perl programming language.  See
http://wiki.cpantesters.org/ for more information or email
questions to cpan-testers-discuss@perl.org


--
Dear Steve Bertrand,

This is a computer-generated report for RPi-I2C-2.3606
on perl 5.8.7, created by CPAN-Reporter-1.2018.

Thank you for uploading your work to CPAN.  However, attempting to
test your distribution gave an inconclusive result.

This could be because your distribution had an error during the make/build
stage, did not define tests, tests could not be found, because your tests were
interrupted before they finished, or because the results of the tests could not
be parsed.  You may wish to consult the CPAN Testers Wiki:

http://wiki.cpantesters.org/wiki/CPANAuthorNotes

Sections of this report:

    * Tester comments
    * Program output
    * Prerequisites
    * Environment and other context

------------------------------
TESTER COMMENTS
------------------------------

Additional comments from tester:

this report is from an automated smoke testing program
and was not reviewed by a human for accuracy

------------------------------
PROGRAM OUTPUT
------------------------------

Output from '/usr/bin/make -j4 -j4':

Running Mkbootstrap for I2C ()
"/home/njh/perl5/perlbrew/perls/perl-5.8.7/bin/perl" "/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/ExtUtils/xsubpp"  -typemap '/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/ExtUtils/typemap'  I2C.xs > I2C.xsc
cp lib/RPi/I2C.pm blib/lib/RPi/I2C.pm
chmod 644 "I2C.bs"
"/home/njh/perl5/perlbrew/perls/perl-5.8.7/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- I2C.bs blib/arch/auto/RPi/I2C/I2C.bs 644
mv I2C.xsc I2C.c
cc -c  -I. -D_REENTRANT -D_GNU_SOURCE -O2 -W -Wformat=2 -Wswitch -Wshadow -Wwrite-strings -Wuninitialized -Wall -pipe -mtune=native -march=native -fomit-frame-pointer -mfpmath=sse -pedantic -D_FORTIFY_SOURCE=2 -Wpointer-arith -Wstrict-prototypes -fstack-protector -Wstack-protector -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wundef -Wformat-security -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"2.3606\" -DXS_VERSION=\"2.3606\" -fpic "-I/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE"   I2C.c
In file included from I2C.xs:5:0:
ppport.h:4146:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes]
 typedef OP* (CPERLscope(*Perl_ppaddr_t))(ARGSproto);
 ^~~~~~~
I2C.xs:10:5: warning: no previous prototype for ‘I2C__readI2CBlockData’ [-Wmissing-prototypes]
 int I2C__readI2CBlockData(int file, int command, SV* output){
     ^~~~~~~~~~~~~~~~~~~~~
I2C.xs: In function ‘I2C__readI2CBlockData’:
I2C.xs:15:61: warning: pointer targets in passing argument 4 of ‘i2c_smbus_read_i2c_block_data’ differ in signedness [-Wpointer-sign]
     ret = i2c_smbus_read_i2c_block_data(file, command, len, buf);
                                                             ^~~
In file included from I2C.xs:6:0:
i2c-dev.h:278:21: note: expected ‘__u8 * {aka unsigned char *}’ but argument is of type ‘char *’
 static inline __s32 i2c_smbus_read_i2c_block_data(int file, __u8 command,
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__readI2CBlockData’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:183:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:197:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:197:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:197:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:199:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__checkDevice’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:206:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:219:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:219:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:219:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:221:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__readByte’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:228:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:239:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:239:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:239:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:241:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__writeByte’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:248:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:261:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:261:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:261:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:263:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__readByteData’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:270:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:283:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:283:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:283:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:285:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__writeByteData’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:292:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:307:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:307:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:307:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:309:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__readWordData’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:316:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:329:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:329:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:329:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:331:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__writeWordData’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:338:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:353:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:353:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:353:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:355:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__processCall’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:362:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:377:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:377:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:377:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:379:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__readBlockData’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:386:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
I2C.xs:107:52: warning: pointer targets in passing argument 3 of ‘i2c_smbus_read_block_data’ differ in signedness [-Wpointer-sign]
     ret = i2c_smbus_read_block_data(file, command, buf);
                                                    ^~~
In file included from I2C.xs:6:0:
i2c-dev.h:245:21: note: expected ‘__u8 * {aka unsigned char *}’ but argument is of type ‘char *’
 static inline __s32 i2c_smbus_read_block_data(int file, __u8 command,
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:409:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:409:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:409:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:411:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__writeBlockData’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:418:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
I2C.xs:123:61: warning: pointer targets in passing argument 4 of ‘i2c_smbus_write_block_data’ differ in signedness [-Wpointer-sign]
     RETVAL = i2c_smbus_write_block_data(file, command, len, buf);
                                                             ^~~
In file included from I2C.xs:6:0:
i2c-dev.h:260:21: note: expected ‘__u8 * {aka unsigned char *}’ but argument is of type ‘char *’
 static inline __s32 i2c_smbus_write_block_data(int file, __u8 command,
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:437:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:437:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:437:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:439:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__blockProcessCall’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:446:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
I2C.xs:135:63: warning: pointer targets in passing argument 4 of ‘i2c_smbus_block_process_call’ differ in signedness [-Wpointer-sign]
     RETVAL = i2c_smbus_block_process_call(file, command, len, buf);
                                                               ^~~
In file included from I2C.xs:6:0:
i2c-dev.h:313:21: note: expected ‘__u8 * {aka unsigned char *}’ but argument is of type ‘char *’
 static inline __s32 i2c_smbus_block_process_call(int file, __u8 command,
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:465:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:465:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:465:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:467:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘XS_RPi__I2C__writeI2CBlockData’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:474:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
I2C.xs:147:65: warning: pointer targets in passing argument 4 of ‘i2c_smbus_write_i2c_block_data’ differ in signedness [-Wpointer-sign]
     RETVAL = i2c_smbus_write_i2c_block_data(file, command, len, buf);
                                                                 ^~~
In file included from I2C.xs:6:0:
i2c-dev.h:298:21: note: expected ‘__u8 * {aka unsigned char *}’ but argument is of type ‘char *’
 static inline __s32 i2c_smbus_write_i2c_block_data(int file, __u8 command,
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/sv.h:1213:23: note: in expansion of macro ‘STMT_START’
 #define SvSETMAGIC(x) STMT_START { if (SvSMAGICAL(x)) mg_set(x); } STMT_END
                       ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:31: note: in expansion of macro ‘SvSETMAGIC’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                               ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:493:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:304:18: note: in expansion of macro ‘STMT_START’
 #define PUSHTARG STMT_START { SvSETMAGIC(TARG); PUSHs(TARG); } STMT_END
                  ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:56: note: in expansion of macro ‘PUSHTARG’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                                                        ^~~~~~~~
I2C.c:493:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/pp.h:307:18: note: in expansion of macro ‘STMT_START’
 #define PUSHi(i) STMT_START { sv_setiv(TARG, (IV)(i)); PUSHTARG; } STMT_END
                  ^~~~~~~~~~
I2C.c:493:13: note: in expansion of macro ‘PUSHi’
  XSprePUSH; PUSHi((IV)RETVAL);
             ^~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
I2C.c:495:5: note: in expansion of macro ‘XSRETURN’
     XSRETURN(1);
     ^~~~~~~~
In file included from I2C.xs:2:0:
I2C.c: In function ‘boot_RPi__I2C’:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:165:26: warning: nested extern declaration of ‘Perl___notused’ [-Wnested-externs]
 #define dNOOP extern int Perl___notused PERL_UNUSED_DECL
                          ^
ppport.h:4109:42: note: in expansion of macro ‘dNOOP’
 #  define dVAR                           dNOOP
                                          ^~~~~
I2C.c:505:5: note: in expansion of macro ‘dVAR’
     dVAR; dXSARGS;
     ^~~~
I2C.c:510:18: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
     char* file = __FILE__;
                  ^~~~~~~~
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:718:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:223:8: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
     vn = "XS_VERSION"), FALSE);  \
        ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/embed.h:2629:40: note: in definition of macro ‘get_sv’
 #define get_sv(a,b)  Perl_get_sv(aTHX_ a,b)
                                        ^
I2C.c:520:5: note: in expansion of macro ‘XS_VERSION_BOOTCHECK’
     XS_VERSION_BOOTCHECK;
     ^~~~~~~~~~~~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:226:12: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         vn = "VERSION"), FALSE);  \
            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/embed.h:2629:40: note: in definition of macro ‘get_sv’
 #define get_sv(a,b)  Perl_get_sv(aTHX_ a,b)
                                        ^
I2C.c:520:5: note: in expansion of macro ‘XS_VERSION_BOOTCHECK’
     XS_VERSION_BOOTCHECK;
     ^~~~~~~~~~~~~~~~~~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:215:5: note: in expansion of macro ‘STMT_START’
     STMT_START {       \
     ^~~~~~~~~~
I2C.c:520:5: note: in expansion of macro ‘XS_VERSION_BOOTCHECK’
     XS_VERSION_BOOTCHECK;
     ^~~~~~~~~~~~~~~~~~~~
I2C.c:526:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_readI2CBlockData", XS_RPi__I2C__readI2CBlockData);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:527:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_checkDevice", XS_RPi__I2C__checkDevice);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:528:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_readByte", XS_RPi__I2C__readByte);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:529:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_writeByte", XS_RPi__I2C__writeByte);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:530:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_readByteData", XS_RPi__I2C__readByteData);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:531:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_writeByteData", XS_RPi__I2C__writeByteData);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:532:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_readWordData", XS_RPi__I2C__readWordData);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:533:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_writeWordData", XS_RPi__I2C__writeWordData);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:534:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_processCall", XS_RPi__I2C__processCall);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:535:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_readBlockData", XS_RPi__I2C__readBlockData);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:536:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_writeBlockData", XS_RPi__I2C__writeBlockData);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:537:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_blockProcessCall", XS_RPi__I2C__blockProcessCall);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
I2C.c:538:23: warning: passing argument 2 of ‘Perl_newXS’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
         newXS_deffile("RPi::I2C::_writeI2CBlockData", XS_RPi__I2C__writeI2CBlockData);
                       ^
I2C.c:173:47: note: in definition of macro ‘newXS_deffile’
 #  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
                                               ^
In file included from /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/perl.h:3813:0,
                 from I2C.xs:2:
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/proto.h:496:19: note: expected ‘char *’ but argument is of type ‘const char *’
 PERL_CALLCONV CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename);
                   ^~~~~~~~~~
In file included from I2C.xs:5:0:
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:195:5: note: in expansion of macro ‘STMT_START’
     STMT_START {     \
     ^~~~~~~~~~
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:207:52: note: in expansion of macro ‘XSRETURN’
 #define XSRETURN_YES   STMT_START { XST_mYES(0);   XSRETURN(1); } STMT_END
                                                    ^~~~~~~~
I2C.c:544:5: note: in expansion of macro ‘XSRETURN_YES’
     XSRETURN_YES;
     ^~~~~~~~~~~~
ppport.h:4001:28: warning: ISO C forbids braced-groups within expressions [-Wpedantic]
 #  define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */
                            ^
/home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi/CORE/XSUB.h:207:24: note: in expansion of macro ‘STMT_START’
 #define XSRETURN_YES   STMT_START { XST_mYES(0);   XSRETURN(1); } STMT_END
                        ^~~~~~~~~~
I2C.c:544:5: note: in expansion of macro ‘XSRETURN_YES’
     XSRETURN_YES;
     ^~~~~~~~~~~~
rm -f blib/arch/auto/RPi/I2C/I2C.so
cc  -shared -L/usr/local/lib  I2C.o  -o blib/arch/auto/RPi/I2C/I2C.so  \
      \
  
cc: error: I2C.o: No such file or directory
cc: fatal error: no input files
compilation terminated.
Makefile:481: recipe for target 'blib/arch/auto/RPi/I2C/I2C.so' failed
make: *** [blib/arch/auto/RPi/I2C/I2C.so] Error 1

------------------------------
PREREQUISITES
------------------------------

Prerequisite modules loaded:

    No requirements found

------------------------------
ENVIRONMENT AND OTHER CONTEXT
------------------------------

Environment variables:

    AUTOMATED_TESTING = 1
    LANG = en_GB.UTF-8
    LANGUAGE = en_GB:en
    PATH = /home/njh/perl5/perlbrew/bin:/home/njh/perl5/perlbrew/perls/perl-5.8.7/bin:/home/njh/perl5/perlbrew/bin:/usr/bin:/bin
    PERL = /home/njh/perl5/perlbrew/perls/perl-5.8.7/bin/perl
    PERL5LIB = 
    PERL5OPT = 
    PERL5_CPANPLUS_IS_RUNNING = 23672
    PERL5_CPAN_IS_RUNNING = 23672
    PERL5_MINISMOKEBOX = 0.58
    PERLBREW_LIB = 
    PERLBREW_MANPATH = /home/njh/perl5/perlbrew/perls/perl-5.8.7/man
    PERLBREW_PATH = /home/njh/perl5/perlbrew/bin:/home/njh/perl5/perlbrew/perls/perl-5.8.7/bin
    PERLBREW_PERL = perl-5.8.7
    PERLBREW_ROOT = /home/njh/perl5/perlbrew
    PERLBREW_SHELLRC_VERSION = 0.82
    PERLBREW_VERSION = 0.82
    PERL_EXTUTILS_AUTOINSTALL = --defaultdeps
    PERL_LOCAL_LIB_ROOT = 
    PERL_MM_USE_DEFAULT = 1
    SHELL = /bin/sh

Perl special variables (and OS-specific diagnostics, for MSWin32):

    $^X = /home/njh/perl5/perlbrew/perls/perl-5.8.7/bin/perl
    $UID/$EUID = 1000 / 1000
    $GID = 1000 1000 112 108 46 44 30 29 25 24 4
    $EGID = 1000 1000 112 108 46 44 30 29 25 24 4

Perl module toolchain versions installed:

    Module              Have    
    ------------------- --------
    CPAN                2.16    
    CPAN::Meta          2.150005
    Cwd                 3.40    
    ExtUtils::CBuilder  0.280216
    ExtUtils::Command   7.34    
    ExtUtils::Install   2.06    
    ExtUtils::MakeMaker 7.34    
    ExtUtils::Manifest  1.70    
    ExtUtils::ParseXS   3.30    
    File::Spec          3.40    
    JSON                2.93    
    JSON::PP            2.27400 
    Module::Build       0.4210  
    Module::Signature   0.70    
    Parse::CPAN::Meta   1.4422  
    Test::Harness       3.36    
    Test::More          1.302086
    YAML                n/a     
    YAML::Syck          1.30    
    version             0.88    


--

Summary of my perl5 (revision 5 version 8 subversion 7) configuration:
  Platform:
    osname=linux, osvers=3.2.0-4-amd64, archname=x86_64-linux-thread-multi
    uname='linux nigelhorne.force9.co.uk 3.2.0-4-amd64 #1 smp debian 3.2.32-1 x86_64 gnulinux '
    config_args='-de -Dprefix=/home/njh/perl5/perlbrew/perls/perl-5.8.7 -Duseithreads -Dusemultiplicity -Accflags=-O2 -W -Wformat=2 -Wswitch -Wshadow -Wwrite-strings -Wuninitialized -Wall -pipe -mtune=native -march=native -fomit-frame-pointer -mfpmath=sse -pedantic -D_FORTIFY_SOURCE=2 -Wpointer-arith -Wstrict-prototypes -fstack-protector -Wstack-protector -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wundef -Wformat-security -Aeval:scriptdir=/home/njh/perl5/perlbrew/perls/perl-5.8.7/bin'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=define use64bitall=define uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -O2 -W -Wformat=2 -Wswitch -Wshadow -Wwrite-strings -Wuninitialized -Wall -pipe -mtune=native -march=native -fomit-frame-pointer -mfpmath=sse -pedantic -D_FORTIFY_SOURCE=2 -Wpointer-arith -Wstrict-prototypes -fstack-protector -Wstack-protector -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wundef -Wformat-security -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -O2 -W -Wformat=2 -Wswitch -Wshadow -Wwrite-strings -Wuninitialized -Wall -pipe -mtune=native -march=native -fomit-frame-pointer -mfpmath=sse -pedantic -D_FORTIFY_SOURCE=2 -Wpointer-arith -Wstrict-prototypes -fstack-protector -Wstack-protector -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wundef -Wformat-security -fno-strict-aliasing -I/usr/local/include'
    ccversion='', gccversion='4.7.2', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib /usr/lib
    libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
    perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc -lgdbm_compat
    libc=, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version='2.13'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Compile-time options: MULTIPLICITY USE_ITHREADS USE_64_BIT_INT
                        USE_64_BIT_ALL USE_LARGE_FILES
                        PERL_IMPLICIT_CONTEXT
  Built under linux
  Compiled at Mar  5 2013 01:16:25
  %ENV:
    PERL="/home/njh/perl5/perlbrew/perls/perl-5.8.7/bin/perl"
    PERL5LIB=""
    PERL5OPT=""
    PERL5_CPANPLUS_IS_RUNNING="23672"
    PERL5_CPAN_IS_RUNNING="23672"
    PERL5_MINISMOKEBOX="0.58"
    PERLBREW_LIB=""
    PERLBREW_MANPATH="/home/njh/perl5/perlbrew/perls/perl-5.8.7/man"
    PERLBREW_PATH="/home/njh/perl5/perlbrew/bin:/home/njh/perl5/perlbrew/perls/perl-5.8.7/bin"
    PERLBREW_PERL="perl-5.8.7"
    PERLBREW_ROOT="/home/njh/perl5/perlbrew"
    PERLBREW_SHELLRC_VERSION="0.82"
    PERLBREW_VERSION="0.82"
    PERL_EXTUTILS_AUTOINSTALL="--defaultdeps"
    PERL_LOCAL_LIB_ROOT=""
    PERL_MM_USE_DEFAULT="1"
  @INC:
    /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7/x86_64-linux-thread-multi
    /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/5.8.7
    /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/site_perl/5.8.7/x86_64-linux-thread-multi
    /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/site_perl/5.8.7
    /home/njh/perl5/perlbrew/perls/perl-5.8.7/lib/site_perl
    .