https://gitlab.synchro.net/main/sbbs/-/commit/15eefc2b3691dc35c03cec32
Modified Files:
src/sbbs3/js_bbs.cpp js_console.cpp
Log Message:
Fix (false pos?) warnings in use of JSVALUE_TO_ASTRING only in RELEASE buildsusing gcc version 12.2.0 (Debian 12.2.0-14), e.g.js_console.cpp: In function ‘JSBool js_handle_ctrlkey(JSContext*, uintN, jsval*)’:sbbs.h:230:56: warning: writing 8 bytes into a region of size 2 [-Wstringop-overflow=] 230 | (ret)[JSSTSpos]=(char)JSSTSstrval[JSSTSpos]; \ | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~sbbs.h:242:9: note: in expansion of macro ‘JSSTRING_TO_ASTRING’ 242 | JSSTRING_TO_ASTRING((cx), JSVTSstr, (ret), (maxsize), (lenptr)); \ | ^~~~~~~~~~~~~~~~~~~js_console.cpp:670:17: note: in expansion of macro ‘JSVALUE_TO_ASTRING’ 670 | JSVALUE_TO_ASTRING(cx, argv[0], keystr, 2, NULL); | ^~~~~~~~~~~~~~~~~~In file included from sbbs.h:255:/home/rswindell/sbbs/src/sbbs3/../xpdev/genwrap.h:77:36: note: destination object of size 2 allocated by ‘__builtin_alloca’ 77 | #define alloca(sz) __builtin_alloca(sz) | ~~~~~~~~~~~~~~~~^~~~sbbs.h:228:43: note: in expansion of macro ‘alloca’ 228 | if(((ret)=(char *)alloca((*JSSTSlenptr)+1))) { \ | ^~~~~~sbbs.h:242:9: note: in expansion of macro ‘JSSTRING_TO_ASTRING’ 242 | JSSTRING_TO_ASTRING((cx), JSVTSstr, (ret), (maxsize), (lenptr)); \ | ^~~~~~~~~~~~~~~~~~~js_console.cpp:670:17: note: in expansion of macro ‘JSVALUE_TO_ASTRING’ 670 | JSVALUE_TO_ASTRING(cx, argv[0], keystr, 2, NULL); | ^~~~~~~~~~~~~~~~~~sbbs.h:230:56: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 230 | (ret)[JSSTSpos]=(char)JSSTSstrval[JSSTSpos]; \ | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~sbbs.h:242:9: note: in expansion of macro ‘JSSTRING_TO_ASTRING’ 242 | JSSTRING_TO_ASTRING((cx), JSVTSstr, (ret), (maxsize), (lenptr)); \ | ^~~~~~~~~~~~~~~~~~~js_console.cpp:670:17: note: in expansion of macro ‘JSVALUE_TO_ASTRING’ 670 | JSVALUE_TO_ASTRING(cx, argv[0], keystr, 2, NULL); | ^~~~~~~~~~~~~~~~~~/home/rswindell/sbbs/src/sbbs3/../xpdev/genwrap.h:77:36: note: at offset 2 into destination object of size 2 allocated by ‘__builtin_alloca’ 77 | #define alloca(sz) __builtin_alloca(sz) | ~~~~~~~~~~~~~~~~^~~~sbbs.h:228:43: note: in expansion of macro ‘alloca’ 228 | if(((ret)=(char *)alloca((*JSSTSlenptr)+1))) { \ | ^~~~~~sbbs.h:242:9: note: in expansion of macro ‘JSSTRING_TO_ASTRING’ 242 | JSSTRING_TO_ASTRING((cx), JSVTSstr, (ret), (maxsize), (lenptr)); \ | ^~~~~~~~~~~~~~~~~~~js_console.cpp:670:17: note: in expansion of macro ‘JSVALUE_TO_ASTRING’ 670 | JSVALUE_TO_ASTRING(cx, argv[0], keystr, 2, NULL); | ^~~~~~~~~~~~~~~~~~/home/rswindell/sbbs/src/sbbs3/../xpdev/genwrap.h:77:36: note: at offset 2 into destination object of size 2 allocated by ‘__builtin_alloca’ 77 | #define alloca(sz) __builtin_alloca(sz) | ~~~~~~~~~~~~~~~~^~~~sbbs.h:228:43: note: in expansion of macro ‘alloca’ 228 | if(((ret)=(char *)alloca((*JSSTSlenptr)+1))) { \ | ^~~~~~sbbs.h:242:9: note: in expansion of macro ‘JSSTRING_TO_ASTRING’ 242 | JSSTRING_TO_ASTRING((cx), JSVTSstr, (ret), (maxsize), (lenptr)); \ | ^~~~~~~~~~~~~~~~~~~js_console.cpp:670:17: note: in expansion of macro ‘JSVALUE_TO_ASTRING’ 670 | JSVALUE_TO_ASTRING(cx, argv[0], keystr, 2, NULL); | ^~~~~~~~~~~~~~~~~~/home/rswindell/sbbs/src/sbbs3/../xpdev/genwrap.h:77:36: note: at offset 2 into destination object of size [1, 2] allocated by ‘__builtin_alloca’ 77 | #define alloca(sz) __builtin_alloca(sz) | ~~~~~~~~~~~~~~~~^~~~sbbs.h:228:43: note: in expansion of macro ‘alloca’ 228 | if(((ret)=(char *)alloca((*JSSTSlenptr)+1))) { \ | ^~~~~~sbbs.h:242:9: note: in expansion of macro ‘JSSTRING_TO_ASTRING’ 242 | JSSTRING_TO_ASTRING((cx), JSVTSstr, (ret), (maxsize), (lenptr)); \ | ^~~~~~~~~~~~~~~~~~~js_console.cpp:670:17: note: in expansion of macro ‘JSVALUE_TO_ASTRING’ 670 | JSVALUE_TO_ASTRING(cx, argv[0], keystr, 2, NULL); | ^~~~~~~~~~~~~~~~~~sbbs.h:230:56: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=] 230 | (ret)[JSSTSpos]=(char)JSSTSstrval[JSSTSpos]; \ | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~sbbs.h:242:9: note: in expansion of macro ‘JSSTRING_TO_ASTRING’ 242 | JSSTRING_TO_ASTRING((cx), JSVTSstr, (ret), (maxsize), (lenptr)); \ | ^~~~~~~~~~~~~~~~~~~
--- SBBSecho 3.20-Linux
* Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)