Skip to content
Snippets Groups Projects
Rob Swindell (on Debian Linux)'s avatar
Rob Swindell authored
using 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)); \
      |         ^~~~~~~~~~~~~~~~~~~
90dc709d
History

Synchronet Project

BBS-Related Software Source Repository

Directories within:

  • 3rdp - Third-party libraries
  • ctrl - Synchronet BBS configuration and run-time data files
  • docs - Synchronet BBS documentation (mostly legacy HTML)
  • exec - Synchronet BBS executable files (mostly JavaScript)
  • install - Synchronet BBS installation files
  • node1 - Synchronet BBS Terminal Server "node" configuration files
  • src - Source code (mostly C/C++)
  • text - Synchronet BBS text and menu files
  • web - Synchronet Legacy/Runemaster web UI
  • webv4 - echicken's web interface (v4) for Synchronet
  • xtrn - Synchronet BBS doors (mostly JavaScript)

Related web-sites:
Synchronet BBS Software
Synchronet Wiki
Synchronet Source Repository