Thanks Sergey, did not remembered this one.
From: sr-dev sr-dev-bounces@lists.kamailio.org On Behalf Of Sergey Safarov Sent: Wednesday, May 13, 2020 12:02 PM To: Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.org Subject: Re: [sr-dev] warnings with gcc 9.3 on app_sqlang ,squirrel
Could you try look https://github.com/kamailio/kamailio/issues/2135
On Wed, May 13, 2020 at 11:52 AM Henning Westerholt <hw@skalatan.demailto:hw@skalatan.de> wrote: Hello,
Just a quick note - I get the following warnings on app_sqlang with gcc 9.3.0 (Ubuntu 20.04):
henning@static:~/repositories/kamailio/src/modules/app_sqlang$ make CC (gcc) [M app_sqlang.so] app_sqlang_api.o CC (gcc) [M app_sqlang.so] app_sqlang_kemi_export.o CC (gcc) [M app_sqlang.so] app_sqlang_mod.o make --no-print-directory -C ./squirrel/squirrel SQMARCH64="-m64" CC_EXTRA_FLAGS="-fPIC" \ OUT="../../libsquirrel.a" sq64 gcc -O2 -m64 -D_SQ64 -fno-exceptions -fno-rtti -Wall -fno-strict-aliasing -c sqapi.cpp sqbaselib.cpp sqfuncstate.cpp sqdebug.cpp sqlexer.cpp sqobject.cpp sqcompiler.cpp sqstate.cpp sqtable.cpp sqmem.cpp sqvm.cpp sqclass.cpp -I../include -I. -Iinclude -fPIC In file included from sqobject.h:5, from sqpcheader.h:17, from sqapi.cpp:4: squtils.h: In instantiation of ‘void sqvector<T>::remove(SQUnsignedInteger) [with T = SQObjectPtr; SQUnsignedInteger = long long unsigned int]’: sqarray.h:83:27: required from here squtils.h:97:20: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘struct SQObjectPtr’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess] 97 | memmove(&_vals[idx], &_vals[idx+1], sizeof(T) * (_size - idx - 1)); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from sqpcheader.h:17, from sqapi.cpp:4: sqobject.h:205:8: note: ‘struct SQObjectPtr’ declared here 205 | struct SQObjectPtr : public SQObject | ^~~~~~~~~~~ In file included from sqobject.h:5, from sqpcheader.h:17, from sqbaselib.cpp:4: squtils.h: In instantiation of ‘void sqvector<T>::remove(SQUnsignedInteger) [with T = SQObjectPtr; SQUnsignedInteger = long long unsigned int]’: sqarray.h:83:27: required from here squtils.h:97:20: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘struct SQObjectPtr’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess] 97 | memmove(&_vals[idx], &_vals[idx+1], sizeof(T) * (_size - idx - 1)); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from sqpcheader.h:17, from sqbaselib.cpp:4: sqobject.h:205:8: note: ‘struct SQObjectPtr’ declared here 205 | struct SQObjectPtr : public SQObject | ^~~~~~~~~~~ In file included from sqobject.h:5, from sqpcheader.h:17, from sqobject.cpp:4: squtils.h: In instantiation of ‘void sqvector<T>::remove(SQUnsignedInteger) [with T = SQObjectPtr; SQUnsignedInteger = long long unsigned int]’: sqarray.h:83:27: required from here squtils.h:97:20: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘struct SQObjectPtr’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess] 97 | memmove(&_vals[idx], &_vals[idx+1], sizeof(T) * (_size - idx - 1)); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from sqpcheader.h:17, from sqobject.cpp:4: sqobject.h:205:8: note: ‘struct SQObjectPtr’ declared here 205 | struct SQObjectPtr : public SQObject | ^~~~~~~~~~~ In file included from sqobject.h:5, from sqpcheader.h:17, from sqstate.cpp:4: squtils.h: In instantiation of ‘void sqvector<T>::remove(SQUnsignedInteger) [with T = SQObjectPtr; SQUnsignedInteger = long long unsigned int]’: sqarray.h:83:27: required from here squtils.h:97:20: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘struct SQObjectPtr’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess] 97 | memmove(&_vals[idx], &_vals[idx+1], sizeof(T) * (_size - idx - 1)); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from sqpcheader.h:17, from sqstate.cpp:4: sqobject.h:205:8: note: ‘struct SQObjectPtr’ declared here 205 | struct SQObjectPtr : public SQObject | ^~~~~~~~~~~ In file included from sqobject.h:5, from sqpcheader.h:17, from sqvm.cpp:4: squtils.h: In instantiation of ‘void sqvector<T>::remove(SQUnsignedInteger) [with T = SQObjectPtr; SQUnsignedInteger = long long unsigned int]’: sqarray.h:83:27: required from here squtils.h:97:20: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘struct SQObjectPtr’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess] 97 | memmove(&_vals[idx], &_vals[idx+1], sizeof(T) * (_size - idx - 1)); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from sqpcheader.h:17, from sqvm.cpp:4: sqobject.h:205:8: note: ‘struct SQObjectPtr’ declared here 205 | struct SQObjectPtr : public SQObject | ^~~~~~~~~~~
-- Henning Westerholt – https://skalatan.de/blog/ Kamailio services – https://gilawa.comhttps://gilawa.com/
_______________________________________________ Kamailio (SER) - Development Mailing List sr-dev@lists.kamailio.orgmailto:sr-dev@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev