Control: tags 871215 + patch
Control: tags 836934 + patch

On Mon, 07 Aug 2017 01:45:33 +0200 Andreas Beckmann wrote:

frobtads FTBFS since GCC-7 was made the default compiler:

g++ -DHAVE_CONFIG_H -I. -I/build/frobtads-1.2.3/.  -DFROBTADS -DTC_TARGET_T3 -DTADSNET  -DOS_DECLARATIVE_TLS  
-DVMGLOB_VARS  -D_M_IX86_64 -DRUNFAST -I/build/frobtads-1.2.3/./src -I/build/frobtads-1.2.3/./tads2 
-I/build/frobtads-1.2.3/./tads3 -I/build/frobtads-1.2.3/./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.3/./src -I/build/frobtads-1.2.3/./tads2 -I/build/frobtads-1.2.3/./src 
-I/build/frobtads-1.2.3/./tads3 -I/build/frobtads-1.2.3/./tads3/test -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 
-fdebug-prefix-map=/build/frobtads-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security 
-fno-strict-aliasing -pthread -c -o tads3/tct3stm.o /build/frobtads-1.2.3/./tads3/tct3stm.cpp
/build/frobtads-1.2.3/./tads3/tct3stm.cpp: In static member function 'static 
void CTPNVarIn::gen_iter_init(CTcPrsNode*, int, const char*)':
/build/frobtads-1.2.3/./tads3/tct3stm.cpp:318:24: error: ISO C++ forbids 
comparison between pointer and integer [-fpermissive]
     if (create_iter != VM_INVALID_PROP)
                        ^~~~~~~~~~~~~~~
Makefile:6604: recipe for target 'tads3/tct3stm.o' failed

On Sat, 24 Sep 2016 22:05:34 +0200 Andreas Beckmann wrote:

On 2016-09-24 20:46, Sebastian Ramacher wrote:
On 2016-09-07 13:09:40, Andreas Beckmann wrote:
frobtads FTBFS since the default compiler was switched to GCC 6 (which
defaults to -std=c++14):

g++ -DHAVE_CONFIG_H -I. -I/build/frobtads-1.2.3/.  -DFROBTADS -DTC_TARGET_T3 -DTADSNET  -DOS_DECLARATIVE_TLS  
-DVMGLOB_VARS  -D_M_IX86_64 -DRUNFAST -I/build/frobtads-1.2.3/./src -I/build/frobtads-1.2.3/./tads2 
-I/build/frobtads-1.2.3/./tads3 -I/build/frobtads-1.2.3/./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.3/./src -I/build/frobtads-1.2.3/./tads2 -I/build/frobtads-1.2.3/./src 
-I/build/frobtads-1.2.3/./tads3 -I/build/frobtads-1.2.3/./tads3/test -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 
-fdebug-prefix-map=/build/frobtads-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security 
-fno-strict-aliasing -pthread -c -o tads3/tcprs.o /build/frobtads-1.2.3/./tads3/tcprs.cpp
In file included from /build/frobtads-1.2.3/./tads3/tcprs.cpp:39:0:
/build/frobtads-1.2.3/./tads3/vmbignum.h: In static member function 'static 
vm_obj_id_t CVmObjBigNum::create(int, const bignum_t<prec>*)':
/build/frobtads-1.2.3/./tads3/vmbignum.h:585:45: error: exception cleanup for 
this placement new selects non-placement operator delete [-fpermissive]
         new (vmg_ id) CVmObjBigNum(vmg_ prec);

frobtads builds fine in todays sid. Closing.

Nope. It builds fine on amd64, but fails on i386 (both in pbuilder on an
amd64 host).


Hello,

Sending this message to 871215 and 836934 since they seem to be fixed by the same patch, and to 853629 because tads3/tct3stm.cpp is the same file in both qtads and frobtads.

Using an older standard of C++ seems to have done it for Arch Linux users, based on a comment at
https://aur.archlinux.org/packages/frobtads

In this patch that applies to frobtads, I add -std=gnu++98 because that was the default before GCC 6 changed it to -std=gnu++14.

Thanks,
Juhani
diff -Nru frobtads-1.2.3/debian/rules frobtads-1.2.3/debian/rules
--- frobtads-1.2.3/debian/rules	2013-07-15 00:42:57.000000000 +0300
+++ frobtads-1.2.3/debian/rules	2017-12-10 13:25:29.000000000 +0200
@@ -1,5 +1,7 @@
 #!/usr/bin/make -f
 
+DEB_CXXFLAGS_MAINT_APPEND = -std=gnu++98
+
 include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/class/autotools.mk
 

Reply via email to