Followup-For: Bug #836934 Control: found -1 1:1.2.4-1.1 Control: retitle -1 frobtads: FTBFS with C++14 on i386: error: exception cleanup for this placement new selects non-placement operator delete
Hi, this is still reproducible on i386 (and armhf, too, so probably a 32-bit problem): g++ -DHAVE_CONFIG_H -I. -I/build/frobtads-1.2.4/. -DFROBTADS -DTC_TARGET_T3 -DTADSNET -DOS_DECLARATIVE_TLS -DVMGLOB_VARS -D_M_IX86_64 -DRUNFAST -I/build/frobtads-1.2.4/./src -I/build/frobtads-1.2.4/./tads2 -I/build/frobtads-1.2.4/./tads3 -I/build/frobtads-1.2.4/./tads3/unix -DT3_INC_DIR=\"/usr/share/frobtads/tads3/include\" -DT3_LIB_DIR=\"/usr/share/frobtads/tads3/lib\" -DT3_RES_DIR=\"/usr/share/frobtads/tads3/res\" -DT3_LOG_FILE=\"/tmp/frob.log\" -I/build/frobtads-1.2.4/./src -I/build/frobtads-1.2.4/./tads2 -I/build/frobtads-1.2.4/./src -I/build/frobtads-1.2.4/./tads3 -I/build/frobtads-1.2.4/./tads3/test -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/frobtads-1.2.4=. -fstack-protector-strong -Wformat -Werror=format-security -fno-strict-aliasing -pthread -c -o tads3/tcprs.o /build/frobtads-1.2.4/./tads3/tcprs.cpp In file included from /build/frobtads-1.2.4/./tads3/tcprs.cpp:39: /build/frobtads-1.2.4/./tads3/vmbignum.h: In static member function 'static vm_obj_id_t CVmObjBigNum::create(int, const bignum_t<prec>*)': /build/frobtads-1.2.4/./tads3/vmbignum.h:585:45: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive] 585 | new (vmg_ id) CVmObjBigNum(vmg_ prec); | ^ <built-in>: note: 'void operator delete(void*, unsigned int)' is a usual (non-placement) deallocation function in C++14 (or with -fsized-deallocation) /build/frobtads-1.2.4/./tads3/vmbignum.h: In static member function 'static vm_obj_id_t CVmObjBigNum::create(int, const bignum_t<prec>&)': /build/frobtads-1.2.4/./tads3/vmbignum.h:596:45: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive] 596 | new (vmg_ id) CVmObjBigNum(vmg_ prec); | ^ <built-in>: note: 'void operator delete(void*, unsigned int)' is a usual (non-placement) deallocation function in C++14 (or with -fsized-deallocation) /build/frobtads-1.2.4/./tads3/vmbignum.h: In member function 'virtual void CVmMetaclassBigNum::create_for_image_load(vm_obj_id_t)': /build/frobtads-1.2.4/./tads3/vmbignum.h:1640:36: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive] 1640 | new (vmg_ id) CVmObjBigNum(); | ^ <built-in>: note: 'void operator delete(void*, unsigned int)' is a usual (non-placement) deallocation function in C++14 (or with -fsized-deallocation) /build/frobtads-1.2.4/./tads3/vmbignum.h: In member function 'virtual void CVmMetaclassBigNum::create_for_restore(vm_obj_id_t)': /build/frobtads-1.2.4/./tads3/vmbignum.h:1647:36: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive] 1647 | new (vmg_ id) CVmObjBigNum(); | ^ <built-in>: note: 'void operator delete(void*, unsigned int)' is a usual (non-placement) deallocation function in C++14 (or with -fsized-deallocation) make[2]: *** [Makefile:10276: tads3/tcprs.o] Error 1 make[2]: Leaving directory '/build/frobtads-1.2.4/obj-i686-linux-gnu' make[1]: *** [Makefile:3854: all] Error 2 make[1]: Leaving directory '/build/frobtads-1.2.4/obj-i686-linux-gnu' make: *** [/usr/share/cdbs/1/class/makefile.mk:77: debian/stamp-makefile-build] Error 2 Andreas