Skip to content
Snippets Groups Projects
Select Git revision
  • dailybuild_linux-x64
  • dailybuild_win32
  • master default protected
  • sqlite
  • rip_abstraction
  • dailybuild_macos-armv8
  • dd_file_lister_filanem_in_desc_color
  • mode7
  • dd_msg_reader_are_you_there_warning_improvement
  • c23-playing
  • syncterm-1.3
  • syncterm-1.2
  • test-build
  • hide_remote_connection_with_telgate
  • 638-can-t-control-c-during-a-file-search
  • add_body_to_pager_email
  • mingw32-build
  • cryptlib-3.4.7
  • ree/mastermind
  • new_user_dat
  • sbbs320d
  • syncterm-1.6
  • syncterm-1.5
  • syncterm-1.4
  • sbbs320b
  • syncterm-1.3
  • syncterm-1.2
  • syncterm-1.2rc6
  • syncterm-1.2rc5
  • push
  • syncterm-1.2rc4
  • syncterm-1.2rc2
  • syncterm-1.2rc1
  • sbbs319b
  • sbbs318b
  • goodbuild_linux-x64_Sep-01-2020
  • goodbuild_win32_Sep-01-2020
  • goodbuild_linux-x64_Aug-31-2020
  • goodbuild_win32_Aug-31-2020
  • goodbuild_win32_Aug-30-2020
40 results

js_console.cpp

  • Rob Swindell's avatar
    15eefc2b
    Fix (false pos?) warnings in use of JSVALUE_TO_ASTRING only in RELEASE builds · 15eefc2b
    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)); \
          |         ^~~~~~~~~~~~~~~~~~~
    15eefc2b
    History
    Fix (false pos?) warnings in use of JSVALUE_TO_ASTRING only in RELEASE builds
    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)); \
          |         ^~~~~~~~~~~~~~~~~~~