Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BBC: C89 changes break DBI #16207

Closed
p5pRT opened this issue Oct 22, 2017 · 21 comments
Closed

BBC: C89 changes break DBI #16207

p5pRT opened this issue Oct 22, 2017 · 21 comments

Comments

@p5pRT
Copy link

p5pRT commented Oct 22, 2017

Migrated from rt.perl.org#132347 (status was 'resolved')

Searchable as RT132347$

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

From @jkeenan

Blead has broken the build for CPAN library DBI. This was first
detected by Carlos Guevara; see
http​://matrix.cpantesters.org/?dist=DBI;os=linux;perl=5.27.6;reports=1.

I have reproduced his findings on Linux building with both gcc-7.2 and
gcc-5.4. The relevant portion of my cpanm build.log is attached.

This is being investigated now on #p5p. mauke diagnoses this as fallout
from the "assume C89" patches that were introduced to blead in the past
two weeks. Investigation continues.

Thank you very much.
Jim Keenan

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

From @jkeenan

running Mkbootstrap for DBI ()
chmod 644 "DBI.bs"
"/home/jkeenan/testing/blead/bin/perl" -MExtUtils​::Command​::MM -e 'cp_nonempty' -- DBI.bs blib/arch/auto/DBI/DBI.bs 644
"/home/jkeenan/testing/blead/bin/perl" -p -e "s/DRIVER/Perl/g" ./Driver.xst > Perl.xsi
"/home/jkeenan/testing/blead/bin/perl" "/home/jkeenan/testing/blead/lib/perl5/5.27.6/ExtUtils/xsubpp" -typemap '/home/jkeenan/testing/blead/lib/perl5/5.27.6/ExtUtils/typemap' -typemap '/home/jkeenan/.cpanm/work/1508670809.16621/DBI-1.637/typemap' Perl.xs > Perl.xsc
mv Perl.xsc Perl.c
cc -c -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"1.637\" -DXS_VERSION=\"1.637\" -fPIC "-I/home/jkeenan/testing/blead/lib/perl5/5.27.6/x86_64-linux/CORE" -W -Wall -Wpointer-arith -Wbad-function-cast -Wno-comment -Wno-sign-compare -Wno-cast-qual -Wmissing-noreturn -Wno-unused-parameter -DDBI_NO_THREADS Perl.c
In file included from Perl.xs​:7​:0​:
DBIXS.h​:429​:27​: error​: expected ‘​:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ before ‘_’
  void (*check_version) _((const char *name,
  ^
In file included from Perl.xs​:8​:0​:
dbd_xsh.h​:14​:19​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
void dbd_init _((dbistate_t *dbistate));
  ^
dbd_xsh.h​:16​:25​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_discon_all _((SV *drh, imp_drh_t *imp_drh));
  ^
dbd_xsh.h​:17​:28​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
SV *dbd_take_imp_data _((SV *h, imp_xxh_t *imp_xxh, void *foo));
  ^
dbd_xsh.h​:24​:27​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_db_login6_sv _((SV *dbh, imp_dbh_t *imp_dbh, SV *dbname, SV *uid, SV *pwd, SV*attribs));
  ^
dbd_xsh.h​:25​:24​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_db_login6 _((SV *dbh, imp_dbh_t *imp_dbh, char *dbname, char *uid, char *pwd, SV*attribs));
  ^
dbd_xsh.h​:26​:24​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_db_login _((SV *dbh, imp_dbh_t *imp_dbh, char *dbname, char *uid, char *pwd)); /* deprecated */
  ^
dbd_xsh.h​:30​:24​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_db_do4 _((SV *dbh, imp_dbh_t *imp_dbh, char *statement, SV *params));
  ^
dbd_xsh.h​:31​:24​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
IV dbd_db_do4_iv _((SV *dbh, imp_dbh_t *imp_dbh, char *statement, SV *params));
  ^
dbd_xsh.h​:32​:28​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_db_commit _((SV *dbh, imp_dbh_t *imp_dbh));
  ^
dbd_xsh.h​:33​:28​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_db_rollback _((SV *dbh, imp_dbh_t *imp_dbh));
  ^
dbd_xsh.h​:34​:28​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_db_disconnect _((SV *dbh, imp_dbh_t *imp_dbh));
  ^
dbd_xsh.h​:35​:28​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
void dbd_db_destroy _((SV *dbh, imp_dbh_t *imp_dbh));
  ^
dbd_xsh.h​:36​:30​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_db_STORE_attrib _((SV *dbh, imp_dbh_t *imp_dbh, SV *keysv, SV *valuesv));
  ^
dbd_xsh.h​:37​:30​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
SV *dbd_db_FETCH_attrib _((SV *dbh, imp_dbh_t *imp_dbh, SV *keysv));
  ^
dbd_xsh.h​:38​:27​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
SV *dbd_db_last_insert_id _((SV *dbh, imp_dbh_t *imp_dbh, SV *catalog, SV *schema, SV *table, SV *field, SV *attr));
  ^
dbd_xsh.h​:39​:30​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
AV *dbd_db_data_sources _((SV *dbh, imp_dbh_t *imp_dbh, SV *attr));
  ^
dbd_xsh.h​:41​:25​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_st_prepare _((SV *sth, imp_sth_t *imp_sth, char *statement, SV *attribs));
  ^
dbd_xsh.h​:42​:28​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_st_prepare_sv _((SV *sth, imp_sth_t *imp_sth, SV *statement, SV *attribs));
  ^
dbd_xsh.h​:43​:25​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_st_rows _((SV *sth, imp_sth_t *imp_sth));
  ^
dbd_xsh.h​:44​:25​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
IV dbd_st_rows_iv _((SV *sth, imp_sth_t *imp_sth));
  ^
dbd_xsh.h​:45​:28​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_st_execute _((SV *sth, imp_sth_t *imp_sth));
  ^
dbd_xsh.h​:46​:28​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
IV dbd_st_execute_iv _((SV *sth, imp_sth_t *imp_sth));
  ^
dbd_xsh.h​:47​:25​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
AV *dbd_st_fetch _((SV *sth, imp_sth_t *imp_sth));
  ^
dbd_xsh.h​:48​:25​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_st_finish3 _((SV *sth, imp_sth_t *imp_sth, int from_destroy));
  ^
dbd_xsh.h​:49​:25​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_st_finish _((SV *sth, imp_sth_t *imp_sth)); /* deprecated */
  ^
dbd_xsh.h​:50​:25​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
void dbd_st_destroy _((SV *sth, imp_sth_t *imp_sth));
  ^
dbd_xsh.h​:51​:27​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_st_blob_read _((SV *sth, imp_sth_t *imp_sth,
  ^
dbd_xsh.h​:53​:30​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_st_STORE_attrib _((SV *sth, imp_sth_t *imp_sth, SV *keysv, SV *valuesv));
  ^
dbd_xsh.h​:54​:30​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
SV *dbd_st_FETCH_attrib _((SV *sth, imp_sth_t *imp_sth, SV *keysv));
  ^
dbd_xsh.h​:55​:35​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
SV *dbd_st_execute_for_fetch _((SV *sth, imp_sth_t *imp_sth, SV *fetch_tuple_sub, SV *tuple_status));
  ^
dbd_xsh.h​:57​:23​: error​: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘_’
int dbd_bind_ph _((SV *sth, imp_sth_t *imp_sth,
  ^
In file included from Perl.xs​:7​:0​:
Driver_xst.h​: In function ‘dbixst_bounce_method’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:376​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_xxh(h) D_impdata(imp_xxh, imp_xxh_t, h)
  ^
Driver_xst.h​:27​:5​: note​: in expansion of macro ‘D_imp_xxh’
  D_imp_xxh(ST(0));
  ^
In file included from Perl.xs​:7​:0​:
DBIXS.h​:195​:51​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘logfp’
#define DBIc_LOGPIO(imp) DBIc_DBISTATE(imp)->logfp
  ^
Driver_xst.h​:29​:16​: note​: in expansion of macro ‘DBIc_LOGPIO’
  PerlIO_printf(DBIc_LOGPIO(imp_xxh),
  ^
DBIXS.h​:195​:51​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘logfp’
#define DBIc_LOGPIO(imp) DBIc_DBISTATE(imp)->logfp
  ^
Driver_xst.h​:45​:16​: note​: in expansion of macro ‘DBIc_LOGPIO’
  PerlIO_printf(DBIc_LOGPIO(imp_xxh),
  ^
In file included from Perl.xs​:7​:0​:
DBIXS.h​:362​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘neat_svpv’
#define neatsvpv(sv,len) (DBIS->neat_svpv(sv,len))
  ^
Driver_xst.h​:46​:60​: note​: in expansion of macro ‘neatsvpv’
  " <- %s= %s (trampoline call return)\n", methname, neatsvpv(sv,0));
  ^
In file included from Perl.c​:207​:0​:
Driver_xst.h​: In function ‘dbdxst_bind_params’​:
Driver_xst.h​:81​:7​: warning​: implicit declaration of function ‘dbd_bind_ph’ [-Wimplicit-function-declaration]
  if (!dbd_bind_ph(sth, imp_sth, idx, value, 0, Nullsv, FALSE, 0)) {
  ^
In file included from Perl.xs​:7​:0​:
Driver_xst.h​: In function ‘dbdxst_fetchall_arrayref’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
Driver_xst.h​:93​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
In file included from Perl.c​:207​:0​:
Driver_xst.h​:112​:23​: warning​: implicit declaration of function ‘dbd_st_fetch’ [-Wimplicit-function-declaration]
  && (fetched_av = dbd_st_fetch(sth, imp_sth))
  ^
Driver_xst.h​:112​:21​: warning​: assignment makes pointer from integer without a cast [-Wint-conversion]
  && (fetched_av = dbd_st_fetch(sth, imp_sth))
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__dr_discon_all_’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:373​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_drh(h) D_impdata(imp_drh, imp_drh_t, h)
  ^
./Perl.xsi​:69​:5​: note​: in expansion of macro ‘D_imp_drh’
  D_imp_drh(drh);
  ^
./Perl.xsi​: In function ‘XS_DBD__Perl__dr_data_sources’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:373​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_drh(h) D_impdata(imp_drh, imp_drh_t, h)
  ^
./Perl.xsi​:84​:9​: note​: in expansion of macro ‘D_imp_drh’
  D_imp_drh(drh);
  ^
Perl.c​:276​:7​: warning​: variable ‘attr’ set but not used [-Wunused-but-set-variable]
  SV * attr;
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db__login’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:114​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
./Perl.xsi​:125​:13​: warning​: implicit declaration of function ‘dbd_db_login’ [-Wimplicit-function-declaration]
  ST(0) = dbd_db_login( dbh, imp_dbh, SvPV_nolen(dbname), u, p) ? &PL_sv_yes : &PL_sv_no;
  ^
Perl.c​:320​:7​: warning​: variable ‘attribs’ set but not used [-Wunused-but-set-variable]
  SV * attribs;
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_selectall_arrayref’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
./Perl.xsi​:168​:28​: note​: in expansion of macro ‘DBIh_COM’
  imp_sth = (imp_sth_t*)(DBIh_COM(sth));
  ^
./Perl.xsi​:177​:10​: warning​: implicit declaration of function ‘dbd_st_execute’ [-Wimplicit-function-declaration]
  if ( dbd_st_execute(sth, imp_sth) <= -2 ) { /* -2 == error */
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_selectrow_arrayref’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
./Perl.xsi​:214​:28​: note​: in expansion of macro ‘DBIh_COM’
  imp_sth = (imp_sth_t*)(DBIh_COM(sth));
  ^
./Perl.xsi​:227​:12​: warning​: assignment makes pointer from integer without a cast [-Wint-conversion]
  row_av = dbd_st_fetch(sth, imp_sth);
  ^
./Perl.xsi​:249​:5​: warning​: implicit declaration of function ‘dbd_st_finish’ [-Wimplicit-function-declaration]
  dbd_st_finish(sth, imp_sth);
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_do’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:262​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
./Perl.xsi​: In function ‘XS_DBD__Perl__db_last_insert_id’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:289​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
Perl.c​:555​:7​: warning​: variable ‘attr’ set but not used [-Wunused-but-set-variable]
  SV * attr;
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_commit’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:300​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
./Perl.xsi​:303​:13​: warning​: implicit declaration of function ‘dbd_db_commit’ [-Wimplicit-function-declaration]
  ST(0) = dbd_db_commit(dbh, imp_dbh) ? &PL_sv_yes : &PL_sv_no;
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_rollback’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:310​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
./Perl.xsi​:313​:13​: warning​: implicit declaration of function ‘dbd_db_rollback’ [-Wimplicit-function-declaration]
  ST(0) = dbd_db_rollback(dbh, imp_dbh) ? &PL_sv_yes : &PL_sv_no;
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_disconnect’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:320​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
./Perl.xsi​:333​:13​: warning​: implicit declaration of function ‘dbd_db_disconnect’ [-Wimplicit-function-declaration]
  ST(0) = dbd_db_disconnect(dbh, imp_dbh) ? &PL_sv_yes : &PL_sv_no;
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_STORE’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:343​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
./Perl.xsi​:347​:10​: warning​: implicit declaration of function ‘dbd_db_STORE_attrib’ [-Wimplicit-function-declaration]
  if (!dbd_db_STORE_attrib(dbh, imp_dbh, keysv, valuesv))
  ^
./Perl.xsi​:348​:36​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘set_attr_k’
  if (!DBIc_DBISTATE(imp_dbh)->set_attr(dbh, keysv, valuesv))
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_FETCH’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:357​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
./Perl.xsi​:358​:19​: warning​: implicit declaration of function ‘dbd_db_FETCH_attrib’ [-Wimplicit-function-declaration]
  SV *valuesv = dbd_db_FETCH_attrib(dbh, imp_dbh, keysv);
  ^
./Perl.xsi​:358​:19​: warning​: initialization makes pointer from integer without a cast [-Wint-conversion]
./Perl.xsi​:360​:41​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘get_attr_k’
  valuesv = DBIc_DBISTATE(imp_dbh)->get_attr(dbh, keysv);
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_DESTROY’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:374​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_dbh(h) D_impdata(imp_dbh, imp_dbh_t, h)
  ^
./Perl.xsi​:369​:5​: note​: in expansion of macro ‘D_imp_dbh’
  D_imp_dbh(dbh);
  ^
./Perl.xsi​:373​:70​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘debug’
  if (DBIc_WARN(imp_dbh) && !PL_dirty && DBIc_DBISTATE(imp_dbh)->debug >= 2)
  ^
In file included from Perl.xs​:7​:0​:
DBIXS.h​:195​:51​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘logfp’
#define DBIc_LOGPIO(imp) DBIc_DBISTATE(imp)->logfp
  ^
./Perl.xsi​:374​:28​: note​: in expansion of macro ‘DBIc_LOGPIO’
  PerlIO_printf(DBIc_LOGPIO(imp_dbh),
  ^
./Perl.xsi​:381​:39​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘debug’
  if (DBIc_DBISTATE(imp_dbh)->debug)
  ^
In file included from Perl.xs​:7​:0​:
DBIXS.h​:195​:51​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘logfp’
#define DBIc_LOGPIO(imp) DBIc_DBISTATE(imp)->logfp
  ^
./Perl.xsi​:382​:32​: note​: in expansion of macro ‘DBIc_LOGPIO’
  PerlIO_printf(DBIc_LOGPIO(imp_dbh), " DESTROY %s skipped due to InactiveDestroy\n", SvPV_nolen(dbh));
  ^
./Perl.xsi​:399​:56​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘debug’
  && (!PL_dirty || DBIc_DBISTATE(imp_dbh)->debug >= 3)
  ^
./Perl.xsi​:411​:9​: warning​: implicit declaration of function ‘dbd_db_destroy’ [-Wimplicit-function-declaration]
  dbd_db_destroy(dbh, imp_dbh);
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__db_take_imp_data’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:376​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_xxh(h) D_impdata(imp_xxh, imp_xxh_t, h)
  ^
./Perl.xsi​:421​:5​: note​: in expansion of macro ‘D_imp_xxh’
  D_imp_xxh(h);
  ^
./Perl.xsi​: In function ‘XS_DBD__Perl__st__prepare’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:475​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​:480​:13​: warning​: implicit declaration of function ‘dbd_st_prepare’ [-Wimplicit-function-declaration]
  ST(0) = dbd_st_prepare(sth, imp_sth, SvPV_nolen(statement), attribs) ? &PL_sv_yes : &PL_sv_no;
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__st_bind_col’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:508​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​:527​:48​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘bind_col’
  ST(0) = (DBIc_DBISTATE(imp_sth)->bind_col(sth, col, ref, attribs))
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__st_bind_param’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:546​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​: In function ‘XS_DBD__Perl__st_bind_param_inout’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:576​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​: In function ‘XS_DBD__Perl__st_execute’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:605​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​: In function ‘XS_DBD__Perl__st_execute_for_fetch’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:633​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​: In function ‘XS_DBD__Perl__st_fetchrow_arrayref’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:647​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​:650​:8​: warning​: assignment makes pointer from integer without a cast [-Wint-conversion]
  av = dbd_st_fetch(sth, imp_sth);
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__st_fetchrow_array’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:660​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​:662​:8​: warning​: assignment makes pointer from integer without a cast [-Wint-conversion]
  av = dbd_st_fetch(sth, imp_sth);
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__st_finish’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:696​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​: In function ‘XS_DBD__Perl__st_blob_read’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:725​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​:728​:9​: warning​: implicit declaration of function ‘dbd_st_blob_read’ [-Wimplicit-function-declaration]
  if (dbd_st_blob_read(sth, imp_sth, field, offset, len, destrv, destoffset))
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__st_STORE’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:740​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​:744​:10​: warning​: implicit declaration of function ‘dbd_st_STORE_attrib’ [-Wimplicit-function-declaration]
  if (!dbd_st_STORE_attrib(sth, imp_sth, keysv, valuesv))
  ^
./Perl.xsi​:745​:36​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘set_attr_k’
  if (!DBIc_DBISTATE(imp_sth)->set_attr(sth, keysv, valuesv))
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__st_FETCH_attrib’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:757​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​:760​:15​: warning​: implicit declaration of function ‘dbd_st_FETCH_attrib’ [-Wimplicit-function-declaration]
  valuesv = dbd_st_FETCH_attrib(sth, imp_sth, keysv);
  ^
./Perl.xsi​:760​:13​: warning​: assignment makes pointer from integer without a cast [-Wint-conversion]
  valuesv = dbd_st_FETCH_attrib(sth, imp_sth, keysv);
  ^
./Perl.xsi​:762​:41​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘get_attr_k’
  valuesv = DBIc_DBISTATE(imp_sth)->get_attr(sth, keysv);
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘XS_DBD__Perl__st_DESTROY’​:
DBIXS.h​:361​:38​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘getcom’
#define DBIh_COM(h) (DBIS->getcom(h))
  ^
DBIXS.h​:372​:54​: note​: in expansion of macro ‘DBIh_COM’
#define D_impdata(name,type,h) type *name = (type*)(DBIh_COM(h))
  ^
DBIXS.h​:375​:22​: note​: in expansion of macro ‘D_impdata’
#define D_imp_sth(h) D_impdata(imp_sth, imp_sth_t, h)
  ^
./Perl.xsi​:771​:5​: note​: in expansion of macro ‘D_imp_sth’
  D_imp_sth(sth);
  ^
./Perl.xsi​:775​:70​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘debug’
  if (DBIc_WARN(imp_sth) && !PL_dirty && DBIc_DBISTATE(imp_sth)->debug >= 2)
  ^
In file included from Perl.xs​:7​:0​:
DBIXS.h​:195​:51​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘logfp’
#define DBIc_LOGPIO(imp) DBIc_DBISTATE(imp)->logfp
  ^
./Perl.xsi​:776​:28​: note​: in expansion of macro ‘DBIc_LOGPIO’
  PerlIO_printf(DBIc_LOGPIO(imp_sth),
  ^
./Perl.xsi​:783​:39​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘debug’
  if (DBIc_DBISTATE(imp_sth)->debug)
  ^
In file included from Perl.xs​:7​:0​:
DBIXS.h​:195​:51​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘logfp’
#define DBIc_LOGPIO(imp) DBIc_DBISTATE(imp)->logfp
  ^
./Perl.xsi​:784​:32​: note​: in expansion of macro ‘DBIc_LOGPIO’
  PerlIO_printf(DBIc_LOGPIO(imp_sth), " DESTROY %s skipped due to InactiveDestroy\n", SvPV_nolen(sth));
  ^
./Perl.xsi​:799​:9​: warning​: implicit declaration of function ‘dbd_st_destroy’ [-Wimplicit-function-declaration]
  dbd_st_destroy(sth, imp_sth);
  ^
In file included from Perl.xs​:7​:0​:
./Perl.xsi​: In function ‘boot_DBD__Perl’​:
DBIXS.h​:523​:9​: error​: ‘dbistate_t {aka struct dbistate_st}’ has no member named ‘check_version’
  DBIS->check_version(__FILE__, DBISTATE_VERSION, sizeof(*DBIS), NEED_DBIXS_VERSION, \
  ^
./Perl.xsi​:40​:5​: note​: in expansion of macro ‘DBISTATE_INIT’
  DBISTATE_INIT;
  ^
./Perl.xsi​:45​:5​: warning​: implicit declaration of function ‘dbd_init’ [-Wimplicit-function-declaration]
  dbd_init(DBIS);
  ^
Makefile​:459​: recipe for target 'Perl.o' failed
make​: *** [Perl.o] Error 1
-> FAIL Installing DBI failed. See /home/jkeenan/.cpanm/work/1508670809.16621/build.log for details. Retry with --force to force install it.

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

From @jkeenan

Summary of my perl5 (revision 5 version 27 subversion 6) configuration​:
  Commit id​: 1990fc3
  Platform​:
  osname=linux
  osvers=4.4.0-97-generic
  archname=x86_64-linux
  uname='linux zareason 4.4.0-97-generic #120-ubuntu smp tue sep 19 17​:28​:18 utc 2017 x86_64 x86_64 x86_64 gnulinux '
  config_args='-des -Dusedevel -Uversiononly -Dprefix=/home/jkeenan/testing/blead -Dman1dir=none -Dman3dir=none'
  hint=recommended
  useposix=true
  d_sigaction=define
  useithreads=undef
  usemultiplicity=undef
  use64bitint=define
  use64bitall=define
  uselongdouble=undef
  usemymalloc=n
  default_inc_excludes_dot=define
  bincompat5005=undef
  Compiler​:
  cc='cc'
  ccflags ='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
  optimize='-O2'
  cppflags='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
  ccversion=''
  gccversion='5.4.0 20160609'
  gccosandvers=''
  intsize=4
  longsize=8
  ptrsize=8
  doublesize=8
  byteorder=12345678
  doublekind=3
  d_longlong=define
  longlongsize=8
  d_longdbl=define
  longdblsize=16
  longdblkind=3
  ivtype='long'
  ivsize=8
  nvtype='double'
  nvsize=8
  Off_t='off_t'
  lseeksize=8
  alignbytes=8
  prototype=undef
  Linker and Libraries​:
  ld='cc'
  ldflags =' -fstack-protector-strong -L/usr/local/lib'
  libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib /lib64 /usr/lib64
  libs=-lpthread -lnsl -ldb -ldl -lm -lcrypt -lutil -lc
  perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
  libc=libc-2.23.so
  so=so
  useshrplib=false
  libperl=libperl.a
  gnulibc_version='2.23'
  Dynamic Linking​:
  dlsrc=dl_dlopen.xs
  dlext=so
  d_dlsymun=undef
  ccdlflags='-Wl,-E'
  cccdlflags='-fPIC'
  lddlflags='-shared -O2 -L/usr/local/lib -fstack-protector-strong'

Characteristics of this binary (from libperl)​:
  Compile-time options​:
  HAS_TIMES
  PERLIO_LAYERS
  PERL_COPY_ON_WRITE
  PERL_DONT_CREATE_GVSV
  PERL_MALLOC_WRAP
  PERL_OP_PARENT
  PERL_PRESERVE_IVUV
  PERL_USE_DEVEL
  USE_64_BIT_ALL
  USE_64_BIT_INT
  USE_LARGE_FILES
  USE_LOCALE
  USE_LOCALE_COLLATE
  USE_LOCALE_CTYPE
  USE_LOCALE_NUMERIC
  USE_LOCALE_TIME
  USE_PERLIO
  USE_PERL_ATOF
  Built under linux
  Compiled at Oct 22 2017 07​:11​:36
  %ENV​:
  PERL2DIR="/home/jkeenan/gitwork/perl2"
  PERLBREW_BASHRC_VERSION="0.78"
  PERLBREW_HOME="/home/jkeenan/.perlbrew"
  PERLBREW_MANPATH="/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/man"
  PERLBREW_PATH="/home/jkeenan/perl5/perlbrew/bin​:/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/bin"
  PERLBREW_PERL="perl-5.26.0"
  PERLBREW_ROOT="/home/jkeenan/perl5/perlbrew"
  PERLBREW_VERSION="0.78"
  PERL_WORKDIR="/home/jkeenan/gitwork/perl"
  @​INC​:
  lib
  /home/jkeenan/testing/blead/lib/perl5/site_perl/5.27.6/x86_64-linux
  /home/jkeenan/testing/blead/lib/perl5/site_perl/5.27.6
  /home/jkeenan/testing/blead/lib/perl5/5.27.6/x86_64-linux
  /home/jkeenan/testing/blead/lib/perl5/5.27.6

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

From @arc

Fixed in ae75e3d.

--
Aaron Crane

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

@arc - Status changed from 'open' to 'resolved'

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

From @jkeenan

Re-opening. DBI is still not building on blead as of commit ae75e3d. Investigation on #p5p is ongoing.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

@jkeenan - Status changed from 'resolved' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Oct 22, 2017

From @jkeenan

On Sun, 22 Oct 2017 12​:11​:31 GMT, jkeenan wrote​:

Re-opening. DBI is still not building on blead as of commit
ae75e3d. Investigation on #p5p is
ongoing.

As of commit 36a113c, DBI is building and PASSing again in blead.

Other CPAN libraries -- e.g., Tk -- may still have breakage.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Oct 23, 2017

From @arc

This is believed to be resolved as of 6c2ae64 (under which I have successfully built both DBI and Tk).

If there's any further fallout from the c89ification changes, new BBC tickets will of course be welcome as always.

Thanks.

--
Aaron Crane

@p5pRT
Copy link
Author

p5pRT commented Oct 23, 2017

@arc - Status changed from 'open' to 'resolved'

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

From @cpansprout

On Mon, 23 Oct 2017 09​:28​:04 -0700, arc wrote​:

This is believed to be resolved as of
6c2ae64 (under which I have
successfully built both DBI and Tk).

If there's any further fallout from the c89ification changes, new BBC
tickets will of course be welcome as always.

Since the ‘new ticket’ feature seems to have disappeared from RT, I’m going to be naughty and reopen this ticket. I have changed the subject to be more informative.

PDL is also affected. The build does not fail, but image2d.t fails like this​:

t/image2d.t ..................... 1/29
# Failed test 'patchbad2d'
# at t/image2d.t line 126.
# Looks like you failed 1 test of 29.
t/image2d.t ..................... Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/29 subtests

as of this commit​:

commit 9d82a2b
Author​: Aaron Crane <arc@​cpan.org>
Date​: Fri Oct 13 00​:55​:41 2017 +0200

  Rely on C89 <stdarg.h>

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

@cpansprout - Status changed from 'resolved' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

From @cpansprout

On Wed, 22 Nov 2017 20​:26​:01 -0800, sprout wrote​:

On Mon, 23 Oct 2017 09​:28​:04 -0700, arc wrote​:

This is believed to be resolved as of
6c2ae64 (under which I have
successfully built both DBI and Tk).

If there's any further fallout from the c89ification changes, new BBC
tickets will of course be welcome as always.

Since the ‘new ticket’ feature seems to have disappeared from RT, I’m
going to be naughty and reopen this ticket. I have changed the
subject to be more informative.

PDL is also affected. The build does not fail, but image2d.t fails
like this​:

t/image2d.t ..................... 1/29
# Failed test 'patchbad2d'
# at t/image2d.t line 126.
# Looks like you failed 1 test of 29.
t/image2d.t ..................... Dubious, test returned 1 (wstat 256,
0x100)
Failed 1/29 subtests

as of this commit​:

commit 9d82a2b
Author​: Aaron Crane <arc@​cpan.org>
Date​: Fri Oct 13 00​:55​:41 2017 +0200

Rely on C89 <stdarg.h>

A quick skim of that commit and a corresponding grep (ack) of the PDL source suggests that we need to restore the I_STDARG symbol​:

$ ack '\bI_STDARG\b'
Basic/Core/pdlcore.c.PL
703​:#ifdef I_STDARG

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

From @arc

Father Chrysostomos via RT <perlbug-followup@​perl.org> wrote​:

On Wed, 22 Nov 2017 20​:26​:01 -0800, sprout wrote​:

On Mon, 23 Oct 2017 09​:28​:04 -0700, arc wrote​:

This is believed to be resolved as of
6c2ae64 (under which I have
successfully built both DBI and Tk).

PDL is also affected. The build does not fail, but image2d.t fails
like this​:

t/image2d.t ..................... 1/29
# Failed test 'patchbad2d'
# at t/image2d.t line 126.
# Looks like you failed 1 test of 29.
t/image2d.t ..................... Dubious, test returned 1 (wstat 256,
0x100)
Failed 1/29 subtests

as of this commit​:

commit 9d82a2b
Author​: Aaron Crane <arc@​cpan.org>
Date​: Fri Oct 13 00​:55​:41 2017 +0200

Rely on C89 <stdarg.h>

A quick skim of that commit and a corresponding grep (ack) of the PDL source suggests that we need to restore the I_STDARG symbol​:

$ ack '\bI_STDARG\b'
Basic/Core/pdlcore.c.PL
703​:#ifdef I_STDARG

That symbol was restored by this commit​:

commit 36a113c
Author​: Aaron Crane <arc@​cpan.org>
Date​: Sun Oct 22 13​:33​:31 2017 +0100

  Define I_STDARG cpp symbol for XS backcompat

  While I'm not eager in general to go round defining symbols like this
  for all the standard headers, I_STDARG is a little unusual in that
  several older XS modules also use it to decide whether to call the
  va_args() macro using its pre-standardisation form (since C89 added an
  additional argument to it).

  Affected modules include DBI, Tk, and DBD​::Unify.

So I don't think that's the problem any longer.

Do you still have the bisection setup you used to find the PDL
problem, and if so, are you in a position to run it on the successors
of 36a113c?

--
Aaron Crane ** http​://aaroncrane.co.uk/

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

From @jkeenan

On Thu, 23 Nov 2017 12​:07​:28 GMT, arc wrote​:

Father Chrysostomos via RT <perlbug-followup@​perl.org> wrote​:

On Wed, 22 Nov 2017 20​:26​:01 -0800, sprout wrote​:

On Mon, 23 Oct 2017 09​:28​:04 -0700, arc wrote​:

This is believed to be resolved as of
6c2ae64 (under which I have
successfully built both DBI and Tk).

PDL is also affected. The build does not fail, but image2d.t fails
like this​:

t/image2d.t ..................... 1/29
# Failed test 'patchbad2d'
# at t/image2d.t line 126.
# Looks like you failed 1 test of 29.
t/image2d.t ..................... Dubious, test returned 1 (wstat
256,
0x100)
Failed 1/29 subtests

as of this commit​:

commit 9d82a2b
Author​: Aaron Crane <arc@​cpan.org>
Date​: Fri Oct 13 00​:55​:41 2017 +0200

Rely on C89 <stdarg.h>

A quick skim of that commit and a corresponding grep (ack) of the PDL
source suggests that we need to restore the I_STDARG symbol​:

$ ack '\bI_STDARG\b'
Basic/Core/pdlcore.c.PL
703​:#ifdef I_STDARG

That symbol was restored by this commit​:

commit 36a113c
Author​: Aaron Crane <arc@​cpan.org>
Date​: Sun Oct 22 13​:33​:31 2017 +0100

Define I_STDARG cpp symbol for XS backcompat

While I'm not eager in general to go round defining symbols like this
for all the standard headers, I_STDARG is a little unusual in that
several older XS modules also use it to decide whether to call the
va_args() macro using its pre-standardisation form (since C89 added an
additional argument to it).

Affected modules include DBI, Tk, and DBD​::Unify.

So I don't think that's the problem any longer.

Do you still have the bisection setup you used to find the PDL
problem, and if so, are you in a position to run it on the successors
of 36a113c?

PDL is indeed failing tests when built against blead (more precisely, commit 8510c6c on Nov 21 -- 2 days ago), but looking at the 'make test' output attached, my hunch is that these various failures have multiple causes.

Thank you very much.
--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

From @jkeenan

PERL_DL_NONLAZY=1 "/home/jkeenan/testing/blead/bin/perl" "-MExtUtils​::Command​::MM" "-MTest​::Harness" "-e" "undef *Test​::Harness​::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00-report-prereqs.t ........... ok
t/01-checkmanifest.t ............ ok
t/aaa_load.t .................... ok
t/argtest.t ..................... ok
t/autoload.t .................... ok
t/bad.t ......................... ok
t/badvalue_scalar_cmp.t ......... ok
t/basic.t ....................... ok
t/bess.t ........................ ok
t/bigmem.t ...................... skipped​: bigmem tests skipped to avoid OOM fails
t/bool.t ........................ ok
t/callext.t ..................... ok
t/clump.t ....................... ok
t/complex.t ..................... ok
t/config.t ...................... ok
t/constants.t ................... ok
t/constructor.t ................. ok
t/conv.t ........................ ok
t/core.t ........................ ok
t/croak.t ....................... ok
t/diskcache.t ................... ok
t/dumper.t ...................... ok
t/erf.t ......................... ok
t/erfi.t ........................ ok
t/familyfree.t .................. ok
t/fastraw.t ..................... ok
t/fft.t ......................... ok
t/fits.t ........................ ok
t/flexraw.t ..................... ok
t/flexraw_fortran.t ............. skipped​: Skipped tests as F77 compiler not found
t/flow.t ........................ ok
t/func.t ........................ ok
t/gauss.t ....................... ok
t/gd_oo_tests.t ................. skipped​: PDL​::IO​::GD not compiled.
t/gd_tests.t .................... skipped​: PDL​::IO​::GD not compiled.
t/gis_proj.t .................... skipped​: PDL​::GIS​::Proj module not compiled.
t/gsl_diff.t .................... ok
t/gsl_integ.t ................... ok
t/gsl_interp.t .................. ok
t/gsl_mroot.t ................... skipped​: PDL​::GSL​::MROOT doesn't work with PDL_Index, yet
t/gsl_rng.t ..................... ok
t/gsl_sf.t ...................... ok
t/hdf_sd.t ...................... skipped​: PDL​::IO​::HDF module not compiled.
t/hdf_vdata.t ................... skipped​: PDL​::IO​::HDF module not compiled.
t/hdf_vgroup.t .................. skipped​: PDL​::IO​::HDF module not compiled.
t/hdrs.t ........................ ok
t/hist.t ........................ ok
t/howbig.t ...................... ok
t/ica.t ......................... ok
t/image2d.t .....................
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/29 subtests
t/imagend.t ..................... ok
t/imagergb.t .................... ok
t/inline-comment-test.t ......... ok
t/inline-with.t ................. ok
t/inlinepdlpp.t ................. ok
t/interp.t ...................... skipped​: See PDL​::Func
t/interp_slatec.t ............... skipped​: See PDL​::Func
t/interpol.t .................... ok
t/iotypes.t ..................... ok
t/lgamma.t ...................... ok
t/limits_00.t ................... skipped​: PDL​::Slatec not available
t/limits_errb.t ................. skipped​: PDL​::Slatec not available
t/limits_keyspecs.t ............. skipped​: PDL​::Slatec not available
t/limits_normalize_dsets.t ...... skipped​: could not load modules
t/limits_range.t ................ skipped​: PDL​::Slatec not available
t/limits_round.t ................ skipped​: PDL​::Slatec not available
t/limits_trans.t ................ skipped​: PDL​::Slatec not available
t/limits_trans_err.t ............ skipped​: PDL​::Slatec not available
t/limits_ulimits.t .............. skipped​: PDL​::Slatec not available
t/linfit.t ...................... skipped​: PDL​::Fit​::Linfit​: Can't locate PDL/Slatec.pm in @​INC (you may need to install the PDL​::Slatec module) (@​INC contains​: /home/jkeenan/.cpanm/work/1511442816.1911/PDL-2.018/blib/lib /home/jkeenan/.cpanm/work/1511442816.1911/PDL-2.018/blib/arch /home/jkeenan/testing/blead/lib/perl5/site_perl/5.27.7/x86_64-linux /home/jkeenan/testing/blead/lib/perl5/site_perl/5.27.7 /home/jkeenan/testing/blead/lib/perl5/5.27.7/x86_64-linux /home/jkeenan/testing/blead/lib/perl5/5.27.7 .) at /home/jkeenan/.cpanm/work/1511442816.1911/PDL-2.018/blib/lib/PDL/Fit/Linfit.pm line 118.
t/lm.t .......................... skipped​: PDL​::Fit​::LM not available (needs PDL​::Slatec)
t/lut.t ......................... ok
t/lvalue.t ...................... ok
t/magic.t ....................... skipped​: Disabled
t/matmult.t ..................... ok
t/matrix.t ...................... ok
t/matrixops.t ................... ok
t/minmax-behavior.t ............. ok
t/minuit.t ...................... skipped​: PDL not built WITH_MINUIT
t/misc.t ........................ ok
t/niceslice.t ................... ok
t/nsdatahandle.t ................ ok
t/ones.t ........................ ok
t/op-eq-warn-for-non-numeric.t .. ok
t/opengl.t ...................... skipped​: TriD graphics not compiled
t/ops.t ......................... ok
t/pdl-from-string-bad-values.t .. ok
t/pdl_from_string.t ............. ok
t/pdlchar.t ..................... ok
t/pgplot.t ...................... skipped​: PDL​::Graphics​::PGPLOT not installed
t/physical.t .................... skipped​: Disabled
t/pic_16bit.t ................... ok
t/picnorgb.t .................... ok
t/picrgb.t ...................... ok
t/pnm.t ......................... ok
t/poly.t ........................ ok
t/polyroots.t ................... ok
t/pp_croaking.t ................. ok
t/pp_line_numbers.t ............. ok
t/pptest.t ...................... ok
t/primitive.t ................... ok
t/primitive2.t .................. ok
t/proj_transform.t .............. skipped​: PDL​::Transform​::Proj4 module not compiled.
t/proj_transform2.t ............. skipped​: PDL​::Transform​::Proj4 module not compiled.
t/pthread.t ..................... ok
t/pthread_auto.t ................ ok
t/pthreadBarf.t ................. ok
t/reduce.t ...................... ok
t/refs.t ........................ ok
t/requiredmods.t ................ ok
t/rim.t ......................... ok
t/round.t ....................... ok
t/scope.t ....................... ok
t/segfault.t .................... ok
t/simplex.t ..................... ok
t/slatec-polyfit-weight.t ....... skipped​: PDL​::Slatec not available
t/slatec.t ...................... skipped​: PDL​::Slatec not available
t/slice-exceptions.t ............ ok
t/slice.t ....................... ok
t/storable.t .................... ok
t/stringify.t ................... ok
t/subclass.t .................... ok
t/subclass2.t ................... ok
t/subclass3.t ................... ok
t/subclass4.t ................... ok
t/thread.t ...................... ok
t/thread_def.t .................. ok
t/transform.t ................... ok
t/trig.t ........................ ok
t/ufunc.t ....................... ok
t/unpdl.t ....................... ok
t/vaffine.t ..................... ok
t/vsearch.t ..................... ok
t/xvals.t ....................... ok

Test Summary Report


t/bad.t (Wstat​: 0 Tests​: 82 Failed​: 0)
  TODO passed​: 53-54
t/fits.t (Wstat​: 0 Tests​: 95 Failed​: 0)
  TODO passed​: 13, 17, 26, 30, 39, 45, 51, 60
t/image2d.t (Wstat​: 256 Tests​: 29 Failed​: 1)
  Failed test​: 13
  Non-zero exit status​: 1
t/inline-comment-test.t (Wstat​: 0 Tests​: 3 Failed​: 0)
  TODO passed​: 3
t/iotypes.t (Wstat​: 0 Tests​: 7 Failed​: 0)
  TODO passed​: 1-7
t/minmax-behavior.t (Wstat​: 0 Tests​: 3 Failed​: 0)
  TODO passed​: 1, 3
t/op-eq-warn-for-non-numeric.t (Wstat​: 0 Tests​: 5 Failed​: 0)
  TODO passed​: 5
t/ops.t (Wstat​: 0 Tests​: 60 Failed​: 0)
  TODO passed​: 49-52
t/pdl_from_string.t (Wstat​: 0 Tests​: 113 Failed​: 0)
  TODO passed​: 37-39
t/primitive.t (Wstat​: 0 Tests​: 58 Failed​: 0)
  TODO passed​: 10-11
t/ufunc.t (Wstat​: 0 Tests​: 43 Failed​: 0)
  TODO passed​: 22-43
Files=134, Tests=1599, 22 wallclock secs ( 0.40 usr 0.10 sys + 19.75 cusr 1.41 csys = 21.66 CPU)
Result​: FAIL
Makefile​:1093​: recipe for target 'test_dynamic' failed

#####

Summary of my perl5 (revision 5 version 27 subversion 7) configuration​:
  Commit id​: 8510c6c
  Platform​:
  osname=linux
  osvers=4.4.0-98-generic
  archname=x86_64-linux
  uname='linux zareason 4.4.0-98-generic #121-ubuntu smp tue oct 10 14​:24​:03 utc 2017 x86_64 x86_64 x86_64 gnulinux '
  config_args='-des -Dusedevel -Uversiononly -Dprefix=/home/jkeenan/testing/blead -Dman1dir=none -Dman3dir=none'
  hint=recommended
  useposix=true
  d_sigaction=define
  useithreads=undef
  usemultiplicity=undef
  use64bitint=define
  use64bitall=define
  uselongdouble=undef
  usemymalloc=n
  default_inc_excludes_dot=define
  bincompat5005=undef
  Compiler​:
  cc='cc'
  ccflags ='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
  optimize='-O2'
  cppflags='-fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
  ccversion=''
  gccversion='5.4.1 20160904'
  gccosandvers=''
  intsize=4
  longsize=8
  ptrsize=8
  doublesize=8
  byteorder=12345678
  doublekind=3
  d_longlong=define
  longlongsize=8
  d_longdbl=define
  longdblsize=16
  longdblkind=3
  ivtype='long'
  ivsize=8
  nvtype='double'
  nvsize=8
  Off_t='off_t'
  lseeksize=8
  alignbytes=8
  prototype=define
  Linker and Libraries​:
  ld='cc'
  ldflags =' -fstack-protector-strong -L/usr/local/lib'
  libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/5/include-fixed /usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib /usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib /lib64 /usr/lib64
  libs=-lpthread -lnsl -ldb -ldl -lm -lcrypt -lutil -lc
  perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
  libc=libc-2.23.so
  so=so
  useshrplib=false
  libperl=libperl.a
  gnulibc_version='2.23'
  Dynamic Linking​:
  dlsrc=dl_dlopen.xs
  dlext=so
  d_dlsymun=undef
  ccdlflags='-Wl,-E'
  cccdlflags='-fPIC'
  lddlflags='-shared -O2 -L/usr/local/lib -fstack-protector-strong'

Characteristics of this binary (from libperl)​:
  Compile-time options​:
  HAS_TIMES
  PERLIO_LAYERS
  PERL_COPY_ON_WRITE
  PERL_DONT_CREATE_GVSV
  PERL_MALLOC_WRAP
  PERL_OP_PARENT
  PERL_PRESERVE_IVUV
  PERL_USE_DEVEL
  USE_64_BIT_ALL
  USE_64_BIT_INT
  USE_LARGE_FILES
  USE_LOCALE
  USE_LOCALE_COLLATE
  USE_LOCALE_CTYPE
  USE_LOCALE_NUMERIC
  USE_LOCALE_TIME
  USE_PERLIO
  USE_PERL_ATOF
  Built under linux
  Compiled at Nov 21 2017 18​:24​:22
  %ENV​:
  PERL2DIR="/home/jkeenan/gitwork/perl2"
  PERLBREW_BASHRC_VERSION="0.78"
  PERLBREW_HOME="/home/jkeenan/.perlbrew"
  PERLBREW_MANPATH="/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/man"
  PERLBREW_PATH="/home/jkeenan/perl5/perlbrew/bin​:/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/bin"
  PERLBREW_PERL="perl-5.26.0"
  PERLBREW_ROOT="/home/jkeenan/perl5/perlbrew"
  PERLBREW_VERSION="0.78"
  PERL_WORKDIR="/home/jkeenan/gitwork/perl"
  @​INC​:
  lib
  /home/jkeenan/testing/blead/lib/perl5/site_perl/5.27.7/x86_64-linux
  /home/jkeenan/testing/blead/lib/perl5/site_perl/5.27.7
  /home/jkeenan/testing/blead/lib/perl5/5.27.7/x86_64-linux
  /home/jkeenan/testing/blead/lib/perl5/5.27.7

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

From @jkeenan

On Thu, 23 Nov 2017 13​:33​:08 GMT, jkeenan wrote​:

On Thu, 23 Nov 2017 12​:07​:28 GMT, arc wrote​:

Father Chrysostomos via RT <perlbug-followup@​perl.org> wrote​:

On Wed, 22 Nov 2017 20​:26​:01 -0800, sprout wrote​:

On Mon, 23 Oct 2017 09​:28​:04 -0700, arc wrote​:

This is believed to be resolved as of
6c2ae64 (under which I have
successfully built both DBI and Tk).

PDL is also affected. The build does not fail, but image2d.t
fails
like this​:

t/image2d.t ..................... 1/29
# Failed test 'patchbad2d'
# at t/image2d.t line 126.
# Looks like you failed 1 test of 29.
t/image2d.t ..................... Dubious, test returned 1 (wstat
256,
0x100)
Failed 1/29 subtests

as of this commit​:

commit 9d82a2b
Author​: Aaron Crane <arc@​cpan.org>
Date​: Fri Oct 13 00​:55​:41 2017 +0200

Rely on C89 <stdarg.h>

A quick skim of that commit and a corresponding grep (ack) of the
PDL
source suggests that we need to restore the I_STDARG symbol​:

$ ack '\bI_STDARG\b'
Basic/Core/pdlcore.c.PL
703​:#ifdef I_STDARG

That symbol was restored by this commit​:

commit 36a113c
Author​: Aaron Crane <arc@​cpan.org>
Date​: Sun Oct 22 13​:33​:31 2017 +0100

Define I_STDARG cpp symbol for XS backcompat

While I'm not eager in general to go round defining symbols like this
for all the standard headers, I_STDARG is a little unusual in that
several older XS modules also use it to decide whether to call the
va_args() macro using its pre-standardisation form (since C89 added
an
additional argument to it).

Affected modules include DBI, Tk, and DBD​::Unify.

So I don't think that's the problem any longer.

Do you still have the bisection setup you used to find the PDL
problem, and if so, are you in a position to run it on the successors
of 36a113c?

PDL is indeed failing tests when built against blead (more precisely,
commit 8510c6c on Nov 21 -- 2 days ago), but looking at the 'make
test' output attached, my hunch is that these various failures have
multiple causes.

Thank you very much.

Please ignore the preceding post. I didn't realize that all the failing tests have been TODOed except for the one which Father C singled out. I apologize for the noise.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

From @cpansprout

On Thu, 23 Nov 2017 04​:07​:28 -0800, arc wrote​:

That symbol was restored by this commit​:

commit 36a113c
Author​: Aaron Crane <arc@​cpan.org>
Date​: Sun Oct 22 13​:33​:31 2017 +0100

Define I_STDARG cpp symbol for XS backcompat

While I'm not eager in general to go round defining symbols like this
for all the standard headers, I_STDARG is a little unusual in that
several older XS modules also use it to decide whether to call the
va_args() macro using its pre-standardisation form (since C89 added an
additional argument to it).

Affected modules include DBI, Tk, and DBD​::Unify.

So I don't think that's the problem any longer.

Do you still have the bisection setup you used to find the PDL
problem, and if so, are you in a position to run it on the successors
of 36a113c?

Yes, I am running it now. It may take several hours. FYI, the command I did the previous bisect with was​:

../perl.git-copy/Porting/bisect.pl --test-module=PDL --cpan-config-dir=/Users/sprout --start=v5.26.0 --end=v5.27.6

using the --test-module option that I just added.

--

Father Chrysostomos

@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

From @cpansprout

On Thu, 23 Nov 2017 08​:45​:50 -0800, sprout wrote​:

On Thu, 23 Nov 2017 04​:07​:28 -0800, arc wrote​:

That symbol was restored by this commit​:

commit 36a113c
Author​: Aaron Crane <arc@​cpan.org>
Date​: Sun Oct 22 13​:33​:31 2017 +0100

Define I_STDARG cpp symbol for XS backcompat

While I'm not eager in general to go round defining symbols like this
for all the standard headers, I_STDARG is a little unusual in that
several older XS modules also use it to decide whether to call the
va_args() macro using its pre-standardisation form (since C89 added
an
additional argument to it).

Affected modules include DBI, Tk, and DBD​::Unify.

So I don't think that's the problem any longer.

Do you still have the bisection setup you used to find the PDL
problem, and if so, are you in a position to run it on the successors
of 36a113c?

Yes, I am running it now. It may take several hours. FYI, the
command I did the previous bisect with was​:

../perl.git-copy/Porting/bisect.pl --test-module=PDL --cpan-config-
dir=/Users/sprout --start=v5.26.0 --end=v5.27.6

using the --test-module option that I just added.

The result​: OP_MULTICONCAT, so I am closing this ticket. I have mentioned in ticket #132385 that PDL is affected.

--

Father Chrysostomos

@p5pRT p5pRT closed this as completed Nov 23, 2017
@p5pRT
Copy link
Author

p5pRT commented Nov 23, 2017

@cpansprout - Status changed from 'open' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant