xiph / xiph/opus

2 compiler warnings when compiling opus-1.6.1 using gcc-16

Open
#451 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
3.3k
Forks
808
PR merge metrics
No merged PRs in 30d

Description

2 compiler warnings when compiling opus-1.6.1 using gcc-16

TOOLCHAIN      configure
Executing (target): /var/media/DATA/home-rudi/LibreELEC.tv/build.LibreELEC-Generic.x86_64-13.0-devel/build/opus-1.6.1/configure --host=x86_64-libreelec-linux-gnu --build=x86_64-linux-gnu --prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --libdir=/usr/lib --libexecdir=/usr/lib --localstatedir=/var --disable-static --enable-shared --enable-static --disable-shared --disable-fixed-point

…

  CCLD     celt/tests/test_unit_rotation
In file included from /var/media/DATA/home-rudi/LibreELEC.tv/build.LibreELEC-Generic.x86_64-13.0-devel/toolchain/x86_64-libreelec-linux-gnu/sysroot/usr/include/string.h:548,
                 from ../silk/SigProc_FIX.h:36,
                 from ../silk/float/SigProc_FLP.h:31,
                 from ../silk/float/pitch_analysis_core_FLP.c:35:
In function 'memset',
    inlined from 'silk_pitch_analysis_core_FLP' at ../silk/float/pitch_analysis_core_FLP.c:168:5:
/var/media/DATA/home-rudi/LibreELEC.tv/build.LibreELEC-Generic.x86_64-13.0-devel/toolchain/x86_64-libreelec-linux-gnu/sysroot/usr/include/bits/string_fortified.h:59:10: warning: '__builtin___memset_chk' specified bound between 18446744041712042996 and 18446744073709549232 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
   59 |   return __builtin___memset_chk (__dest, __ch, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   60 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
../silk/float/pitch_analysis_core_FLP.c: In function 'silk_pitch_analysis_core_FLP':
../silk/float/pitch_analysis_core_FLP.c:157:5: warning: 'frame_8_FIX' may be used uninitialized [-Wmaybe-uninitialized]
  157 |     silk_resampler_down2( filt_state, frame_4_FIX, frame_8_FIX, frame_length_8kHz );
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../silk/SigProc_FIX.h:78:6: note: by argument 3 of type 'const opus_int16 *' {aka 'const short int *'} to 'silk_resampler_down2' declared here
   78 | void silk_resampler_down2(
      |      ^~~~~~~~~~~~~~~~~~~~
../silk/float/pitch_analysis_core_FLP.c:85:16: note: 'frame_8_FIX' declared here
   85 |     opus_int16 frame_8_FIX[ PE_MAX_FRAME_LENGTH_MS * 8 ];
      |                ^~~~~~~~~~~
  CCLD     libopus.la

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the opus-1.6.1 build with GCC 16 and inspect silk/float/pitch_analysis_core_FLP.c, especially lines 85, 157, and 168, alongside the silk_resampler_down2 declaration in silk/SigProc_FIX.h at line 78. Determine whether the warnings indicate a real issue, then validate that the build completes without them while preserving behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.