schroedinger-1.0.11-30.fc41
List of Defects
Error: CPPCHECK_WARNING: [#def1]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroarith.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def2]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroasync-pthread.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def3]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobufferlist.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-688): [#def4]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodebug.c: scope_hint: In function 'schro_dump'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodebug.c:106:3: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL 'dump_files[type]' where non-null expected
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodebug.c:7: included_from: Included from here.
/usr/include/stdio.h:372:12: note: argument 1 of 'vfprintf' must be non-null
# 104|
# 105| va_start (varargs, format);
# 106|-> vfprintf (dump_files[type], format, varargs);
# 107| va_end (varargs);
# 108|
Error: CPPCHECK_WARNING: [#def5]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodecoder.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def6]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodomain.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def7]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING: [#def8]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.c: scope_hint: In function 'schro_encoder_init_rc_buffer'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.c:220:32: warning[-Wxor-used-as-pow]: result of '2^24' is 26; did you mean '1 << 24' (16777216)?
# 220 | encoder->I_frame_alloc = 2 ^ 24;
# | ^
# | -
# | 1 <<
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.c:220:30: note: you can silence this warning by using a hexadecimal constant (0x2 rather than 2)
# 220 | encoder->I_frame_alloc = 2 ^ 24;
# | ^
# | 0x2
# 218| int num_B_frames = gop_length - num_P_frames - 1;
# 219| int total;
# 220|-> encoder->I_frame_alloc = 2 ^ 24;
# 221| encoder->P_frame_alloc = encoder->I_frame_alloc / 3;
# 222| encoder->B_frame_alloc = encoder->P_frame_alloc / 3;
Error: CLANG_WARNING: [#def9]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.c:1230:3: warning[deadcode.DeadStores]: Value stored to 'offset' is never read
# 1228| schro_encoder_fixup_offsets (frame->encoder, buf, FALSE);
# 1229| orc_memcpy (buffer->data + offset, buf->data, buf->length);
# 1230|-> offset += buf->length;
# 1231| }
# 1232|
Error: CPPCHECK_WARNING: [#def10]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroengine.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def11]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrofft.c:38:12: warning[core.BitwiseShift]: Right operand is negative in left shift
# 36|
# 37| half_n = 1 << i;
# 38|-> skip = 1 << (shift - i - 1);
# 39| for (j = 0; j < skip; j++) {
# 40| for (k = 0; k < half_n; k++) {
Error: CPPCHECK_WARNING: [#def12]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrofilter.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def13]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-758): [#def14]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c: scope_hint: In function 'schro_frame_subtract_s16_s16'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c:1113:7: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 1113 | orc_subtract_s16 (ddata, ddata, sdata, width);
# | ^~~~~~~~~~~~~~~~
# 1111| sdata = SCHRO_FRAME_DATA_GET_LINE (scomp, y);
# 1112| ddata = SCHRO_FRAME_DATA_GET_LINE (dcomp, y);
# 1113|-> orc_subtract_s16 (ddata, ddata, sdata, width);
# 1114| }
# 1115| }
Error: COMPILER_WARNING (CWE-758): [#def15]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c: scope_hint: In function 'schro_frame_subtract_s16_u8'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c:1139:7: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 1139 | orc_subtract_s16_u8 (ddata, ddata, sdata, width);
# | ^~~~~~~~~~~~~~~~~~~
# 1137| sdata = SCHRO_FRAME_DATA_GET_LINE (scomp, y);
# 1138| ddata = SCHRO_FRAME_DATA_GET_LINE (dcomp, y);
# 1139|-> orc_subtract_s16_u8 (ddata, ddata, sdata, width);
# 1140| }
# 1141| }
Error: CLANG_WARNING: [#def16]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c:1364:9: warning[deadcode.DeadStores]: Value stored to 'data' is never read
# 1362|
# 1363| comp = &frame->components[i];
# 1364|-> data = comp->data;
# 1365|
# 1366| w = (i > 0) ? chroma_width : width;
Error: CLANG_WARNING: [#def17]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c:1386:9: warning[deadcode.DeadStores]: Value stored to 'data' is never read
# 1384|
# 1385| comp = &frame->components[i];
# 1386|-> data = comp->data;
# 1387|
# 1388| w = (i > 0) ? chroma_width : width;
Error: CLANG_WARNING: [#def18]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c:1805:3: warning[deadcode.DeadStores]: Value stored to 'x' is never read
# 1803| state[3] = 0x10325476;
# 1804|
# 1805|-> x = 0;
# 1806| y = 0;
# 1807| k = 0;
Error: CLANG_WARNING: [#def19]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c:1806:3: warning[deadcode.DeadStores]: Value stored to 'y' is never read
# 1804|
# 1805| x = 0;
# 1806|-> y = 0;
# 1807| k = 0;
# 1808| for (k = 0; k < 3; k++) {
Error: CLANG_WARNING: [#def20]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.c:1807:3: warning[deadcode.DeadStores]: Value stored to 'k' is never read
# 1805| x = 0;
# 1806| y = 0;
# 1807|-> k = 0;
# 1808| for (k = 0; k < 3; k++) {
# 1809| for (y = 0; y < frame->components[k].height; y++) {
Error: CPPCHECK_WARNING: [#def21]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroglobalest.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def22]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrohierbm.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def23]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrolowdelay.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-457): [#def24]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrolowdelay.c: scope_hint: In function 'schro_encoder_encode_lowdelay_transform_data'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrolowdelay.c:1164:34: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'lowdelay.luma_subbands[0].height'
# 1162|
# 1163| schro_lowdelay_init (&lowdelay, frame->iwt_frame, params);
# 1164|-> lowdelay.reconstructed_frame = schro_frame_new_and_alloc (NULL,
# 1165| frame->iwt_frame->format,
# 1166| lowdelay.luma_subbands[0].width, lowdelay.luma_subbands[0].height);
Error: CLANG_WARNING: [#def25]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrolowdelay.c:1164:34: warning[core.CallAndMessage]: 3rd function call argument is an uninitialized value
# 1162|
# 1163| schro_lowdelay_init (&lowdelay, frame->iwt_frame, params);
# 1164|-> lowdelay.reconstructed_frame = schro_frame_new_and_alloc (NULL,
# 1165| frame->iwt_frame->format,
# 1166| lowdelay.luma_subbands[0].width, lowdelay.luma_subbands[0].height);
Error: CPPCHECK_WARNING: [#def26]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def27]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:103:58: warning[core.uninitialized.Assign]: Assigned value is garbage or undefined
# 101| if (skip_h > 1) {
# 102| for (j = 0; j < scan->scan_height; ++j) {
# 103|-> metrics[(i * 2 + 1) * scan->scan_height + j] =
# 104| metrics[i * 2 * scan->scan_height + j];
# 105| }
Error: GCC_ANALYZER_WARNING (CWE-457): [#def28]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c: scope_hint: In function 'schro_metric_scan_do_scan'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:104:24: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'metrics[<unknown>]'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schro.h:11: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:38:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodebug.h:56:9: note: in definition of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:40:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodebug.h:56:9: note: in definition of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:42:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:43:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:43:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:44:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:44:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:45:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:45:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroparams.h:7: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.h:8: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroanalysis.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schro.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.h:52:46: note: in definition of macro 'SCHRO_FRAME_FORMAT_H_SHIFT'
# 102| for (j = 0; j < scan->scan_height; ++j) {
# 103| metrics[(i * 2 + 1) * scan->scan_height + j] =
# 104|-> metrics[i * 2 * scan->scan_height + j];
# 105| }
# 106| }
Error: CLANG_WARNING: [#def29]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:110:59: warning[core.uninitialized.Assign]: Assigned value is garbage or undefined
# 108| for (j = 0; j < scan->scan_height; ++j) {
# 109| for (i = 0; i < scan->scan_width; ++i) {
# 110|-> scan->chroma_metrics[i * scan->scan_height + j] +=
# 111| metrics[i * scan->scan_height + j];
# 112| }
Error: GCC_ANALYZER_WARNING (CWE-457): [#def30]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:111:22: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'metrics[<unknown>]'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:38:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodebug.h:56:9: note: in definition of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:40:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrodebug.h:56:9: note: in definition of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:42:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:43:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:43:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:44:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:44:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:45:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrometric.c:45:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.h:52:46: note: in definition of macro 'SCHRO_FRAME_FORMAT_H_SHIFT'
# 109| for (i = 0; i < scan->scan_width; ++i) {
# 110| scan->chroma_metrics[i * scan->scan_height + j] +=
# 111|-> metrics[i * scan->scan_height + j];
# 112| }
# 113| }
Error: CPPCHECK_WARNING: [#def31]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotion.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def32]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotion8.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def33]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotion8.c: scope_hint: In function 'schro_motion_render_u8'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotion8.c:812:9: warning[-Wanalyzer-null-dereference]: dereference of NULL 'ocomp'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroparams.h:7: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.h:8: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroanalysis.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schro.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotion8.c:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.h:47:44: note: in definition of macro 'SCHRO_FRAME_FORMAT_DEPTH'
# 810| if (SCHRO_FRAME_FORMAT_DEPTH (addframe->format) ==
# 811| SCHRO_FRAME_FORMAT_DEPTH_S16) {
# 812|-> orc_rrshift6_add_s16_2d (SCHRO_FRAME_DATA_GET_LINE (ocomp, 0),
# 813| ocomp->stride, SCHRO_FRAME_DATA_GET_LINE (acomp, 0), acomp->stride,
# 814| SCHRO_FRAME_DATA_GET_LINE (comp, 0), comp->stride, motion->width,
Error: CLANG_WARNING: [#def34]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotion8.c:812:34: warning[core.NullDereference]: Access to field 'data' results in a dereference of a null pointer (loaded from variable 'ocomp')
# 810| if (SCHRO_FRAME_FORMAT_DEPTH (addframe->format) ==
# 811| SCHRO_FRAME_FORMAT_DEPTH_S16) {
# 812|-> orc_rrshift6_add_s16_2d (SCHRO_FRAME_DATA_GET_LINE (ocomp, 0),
# 813| ocomp->stride, SCHRO_FRAME_DATA_GET_LINE (acomp, 0), acomp->stride,
# 814| SCHRO_FRAME_DATA_GET_LINE (comp, 0), comp->stride, motion->width,
Error: GCC_ANALYZER_WARNING (CWE-476): [#def35]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotion8.c:817:9: warning[-Wanalyzer-null-dereference]: dereference of NULL 'ocomp'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.h:47:44: note: in definition of macro 'SCHRO_FRAME_FORMAT_DEPTH'
# 815| motion->ybsep - motion->yoffset);
# 816| } else {
# 817|-> orc_rrshift6_add_s32_2d (SCHRO_FRAME_DATA_GET_LINE (ocomp, 0),
# 818| ocomp->stride, SCHRO_FRAME_DATA_GET_LINE (acomp, 0), acomp->stride,
# 819| SCHRO_FRAME_DATA_GET_LINE (comp, 0), comp->stride, motion->width,
Error: CLANG_WARNING: [#def36]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotion8.c:817:34: warning[core.NullDereference]: Access to field 'data' results in a dereference of a null pointer (loaded from variable 'ocomp')
# 815| motion->ybsep - motion->yoffset);
# 816| } else {
# 817|-> orc_rrshift6_add_s32_2d (SCHRO_FRAME_DATA_GET_LINE (ocomp, 0),
# 818| ocomp->stride, SCHRO_FRAME_DATA_GET_LINE (acomp, 0), acomp->stride,
# 819| SCHRO_FRAME_DATA_GET_LINE (comp, 0), comp->stride, motion->width,
Error: CPPCHECK_WARNING: [#def37]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def38]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:157:9: note: Taking false branch
# 155| for (jj = 0; jj < 4; jj += skip) {
# 156| for (ii = 0; ii < 4; ii += skip) {
# 157|-> if (SCHRO_METRIC_INVALID == block->mv[jj][ii].metric) {
# 158| continue;
# 159| }
Error: CLANG_WARNING: [#def39]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:160:9: note: Taking true branch
# 158| continue;
# 159| }
# 160|-> if (block->mv[jj][ii].pred_mode == 1
# 161| || block->mv[jj][ii].pred_mode == 2) {
# 162| SchroUpsampledFrame *ref_upframe;
Error: CLANG_WARNING: [#def40]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:160:13: note: Assuming field 'pred_mode' is not equal to 1
# 158| continue;
# 159| }
# 160|-> if (block->mv[jj][ii].pred_mode == 1
# 161| || block->mv[jj][ii].pred_mode == 2) {
# 162| SchroUpsampledFrame *ref_upframe;
Error: CLANG_WARNING: [#def41]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:160:13: note: Left side of '||' is false
# 158| continue;
# 159| }
# 160|-> if (block->mv[jj][ii].pred_mode == 1
# 161| || block->mv[jj][ii].pred_mode == 2) {
# 162| SchroUpsampledFrame *ref_upframe;
Error: CLANG_WARNING: [#def42]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:161:16: note: Assuming field 'pred_mode' is equal to 2
# 159| }
# 160| if (block->mv[jj][ii].pred_mode == 1
# 161|-> || block->mv[jj][ii].pred_mode == 2) {
# 162| SchroUpsampledFrame *ref_upframe;
# 163| SchroFrameData orig;
Error: CLANG_WARNING: [#def43]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:173:11: note: The value 1 is assigned to 'ref'
# 171| int ref;
# 172|
# 173|-> ref = block->mv[jj][ii].pred_mode - 1;
# 174| ref_upframe = frame->ref_frame[ref]->upsampled_original_frame;
# 175|
Error: CLANG_WARNING: [#def44]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:174:25: note: Access to field 'upsampled_original_frame' results in a dereference of a null pointer
# 172|
# 173| ref = block->mv[jj][ii].pred_mode - 1;
# 174|-> ref_upframe = frame->ref_frame[ref]->upsampled_original_frame;
# 175|
# 176| x = MAX ((i + ii) * frame->params.xbsep_luma, 0);
Error: CLANG_WARNING: [#def45]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:174:25: warning[core.NullDereference]: Access to field 'upsampled_original_frame' results in a dereference of a null pointer
# 172|
# 173| ref = block->mv[jj][ii].pred_mode - 1;
# 174|-> ref_upframe = frame->ref_frame[ref]->upsampled_original_frame;
# 175|
# 176| x = MAX ((i + ii) * frame->params.xbsep_luma, 0);
Error: CPPCHECK_WARNING (CWE-758): [#def46]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1482: error[overlappingWriteFunction]: Overlapping read/write in memcpy() is undefined behavior
# 1480| mv[2] = mv[0];
# 1481| mv[3] = mv[0];
# 1482|-> memcpy (mv + 4, mv, 4 * sizeof (*mv));
# 1483| memcpy (mv + 8, mv, 4 * sizeof (*mv));
# 1484| memcpy (mv + 12, mv, 4 * sizeof (*mv));
Error: CPPCHECK_WARNING (CWE-758): [#def47]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1483: error[overlappingWriteFunction]: Overlapping read/write in memcpy() is undefined behavior
# 1481| mv[3] = mv[0];
# 1482| memcpy (mv + 4, mv, 4 * sizeof (*mv));
# 1483|-> memcpy (mv + 8, mv, 4 * sizeof (*mv));
# 1484| memcpy (mv + 12, mv, 4 * sizeof (*mv));
# 1485| }
Error: CPPCHECK_WARNING (CWE-758): [#def48]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1484: error[overlappingWriteFunction]: Overlapping read/write in memcpy() is undefined behavior
# 1482| memcpy (mv + 4, mv, 4 * sizeof (*mv));
# 1483| memcpy (mv + 8, mv, 4 * sizeof (*mv));
# 1484|-> memcpy (mv + 12, mv, 4 * sizeof (*mv));
# 1485| }
# 1486| if (mv->split == 1) {
Error: CPPCHECK_WARNING (CWE-758): [#def49]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1489: error[overlappingWriteFunction]: Overlapping read/write in memcpy() is undefined behavior
# 1487| mv[1] = mv[0];
# 1488| mv[3] = mv[2];
# 1489|-> memcpy (mv + 4, mv, 4 * sizeof (*mv));
# 1490| mv[9] = mv[8];
# 1491| mv[11] = mv[10];
Error: CPPCHECK_WARNING (CWE-758): [#def50]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1492: error[overlappingWriteFunction]: Overlapping read/write in memcpy() is undefined behavior
# 1490| mv[9] = mv[8];
# 1491| mv[11] = mv[10];
# 1492|-> memcpy (mv + 12, mv + 8, 4 * sizeof (*mv));
# 1493| }
# 1494| }
Error: CLANG_WARNING: [#def51]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1573:5: note: Taking false branch
# 1571| dy >>= SCHRO_CHROMA_FORMAT_V_SHIFT (params->video_format->chroma_format);
# 1572| dy += tmp_y;
# 1573|-> if (INT_MAX == mv->metric) {
# 1574| *metric = INT_MAX;
# 1575| return;
Error: CLANG_WARNING: [#def52]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1578:14: note: Assigned value is garbage or undefined
# 1576| }
# 1577| /* I need to save the original value of fd width and height */
# 1578|-> fd_width = fd->width;
# 1579| fd_height = fd->height;
# 1580| fd->width = width[k];
Error: GCC_ANALYZER_WARNING (CWE-457): [#def53]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c: scope_hint: In function 'schro_get_split2_metric'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1578:14: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value '*fd.width'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schro.h:11: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2876:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2792:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2820:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1671:9: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2792:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroanalysis.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schro.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroutils.h:44:24: note: in definition of macro 'MIN'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2799:3: note: in expansion of macro 'SCHRO_ASSERT'
# 1576| }
# 1577| /* I need to save the original value of fd width and height */
# 1578|-> fd_width = fd->width;
# 1579| fd_height = fd->height;
# 1580| fd->width = width[k];
Error: CLANG_WARNING: [#def54]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1578:14: warning[core.uninitialized.Assign]: Assigned value is garbage or undefined
# 1576| }
# 1577| /* I need to save the original value of fd width and height */
# 1578|-> fd_width = fd->width;
# 1579| fd_height = fd->height;
# 1580| fd->width = width[k];
Error: GCC_ANALYZER_WARNING (CWE-457): [#def55]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c: scope_hint: In function 'schro_do_split2'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1727:22: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value '*<unknown>.width'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2876:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2792:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2820:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1671:9: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2792:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2820:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1671:9: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2792:3: note: in expansion of macro 'SCHRO_ASSERT'
# 1725| }
# 1726| /* I need to save the original value of fd width and height */
# 1727|-> fd_width = fd[ref].width;
# 1728| fd_height = fd[ref].height;
# 1729| fd[ref].width = width[k];
Error: CLANG_WARNING: [#def56]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1727:22: warning[core.uninitialized.Assign]: Assigned value is garbage or undefined
# 1725| }
# 1726| /* I need to save the original value of fd width and height */
# 1727|-> fd_width = fd[ref].width;
# 1728| fd_height = fd[ref].height;
# 1729| fd[ref].width = width[k];
Error: CLANG_WARNING: [#def57]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:1755:13: warning[deadcode.DeadStores]: Value stored to 'min_score' is never read
# 1753| best_entropy = entropy[0] + entropy[1];
# 1754| best_mv = *mv;
# 1755|-> min_score = score;
# 1756| }
# 1757| }
Error: CLANG_WARNING: [#def58]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2188:13: warning[deadcode.DeadStores]: Value stored to 'min_score' is never read
# 2186| best_entropy = entropy[0] + entropy[1];
# 2187| best_mv = mv_ref[0];
# 2188|-> min_score = score;
# 2189| }
# 2190| }
Error: CLANG_WARNING: [#def59]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2294:3: warning[deadcode.DeadStores]: Value stored to 'tmp_x' is never read
# 2292| }
# 2293| /* now pick the best candidate */
# 2294|-> tmp_x = (i * params->xbsep_luma) << mv_prec;
# 2295| tmp_y = (j * params->ybsep_luma) << mv_prec;
# 2296| upframe = schro_me_ref (me, ref);
Error: CLANG_WARNING: [#def60]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2295:3: warning[deadcode.DeadStores]: Value stored to 'tmp_y' is never read
# 2293| /* now pick the best candidate */
# 2294| tmp_x = (i * params->xbsep_luma) << mv_prec;
# 2295|-> tmp_y = (j * params->ybsep_luma) << mv_prec;
# 2296| upframe = schro_me_ref (me, ref);
# 2297| for (m = 0; n > m; ++m) {
Error: GCC_ANALYZER_WARNING (CWE-457): [#def61]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c: scope_hint: In function 'schro_do_split0_biref'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2458:32: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'width[k]'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2792:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2876:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2799:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroparams.h:6: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.h:8: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:85:48: note: in definition of macro 'SCHRO_CHROMA_FORMAT_H_SHIFT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:86:48: note: in definition of macro 'SCHRO_CHROMA_FORMAT_V_SHIFT'
# 2456| fd_width = fd[ref].width;
# 2457| fd_height = fd[ref].height;
# 2458|-> fd[ref].width = width[k];
# 2459| fd[ref].height = height[k];
# 2460| upframe[ref] = schro_me_ref (me, ref);
Error: GCC_ANALYZER_WARNING (CWE-457): [#def62]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2475:13: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value 'height[k]'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2792:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2876:3: note: in expansion of macro 'SCHRO_ASSERT'
# 2473| for (k = 1; 3 > k; ++k) {
# 2474| chroma_error +=
# 2475|-> schro_metric_get_biref (&orig[k], &ref_data[k][0], 1,
# 2476| &ref_data[k][1], 1, 1, width[k], height[k]);
# 2477| }
Error: CLANG_WARNING: [#def63]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2566:7: warning[deadcode.DeadStores]: Value stored to 'min_score' is never read
# 2564|
# 2565| if (biref_block.valid && min_score > biref_block.score) {
# 2566|-> min_score = biref_block.score;
# 2567| best_mv = biref_block.mv[0][0];
# 2568| best_error = biref_block.error;
Error: GCC_ANALYZER_WARNING (CWE-121): [#def64]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c: scope_hint: In function 'schro_mode_decision'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2603:20: warning[-Wanalyzer-out-of-bounds]: stack-based buffer overflow
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2603:20: note: write of 8 bytes to beyond the end of 'fd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2603:20: note: valid subscripts for 'fd' are '[0]' to '[1]'
# 2601| if (1 < params->mv_precision) {
# 2602| for (ref = 0; params->num_refs > ref; ++ref) {
# 2603|-> fd[ref].data = schro_malloc (block_size * sizeof (uint8_t));
# 2604| fd[ref].stride = fd[ref].width = params->xbsep_luma << 2;
# 2605| fd[ref].height = params->ybsep_luma << 2;
Error: GCC_ANALYZER_WARNING (CWE-121): [#def65]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2604:22: warning[-Wanalyzer-out-of-bounds]: stack-based buffer overflow
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2604:22: note: write of 4 bytes to beyond the end of 'fd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2604:22: note: valid subscripts for 'fd' are '[0]' to '[1]'
# 2602| for (ref = 0; params->num_refs > ref; ++ref) {
# 2603| fd[ref].data = schro_malloc (block_size * sizeof (uint8_t));
# 2604|-> fd[ref].stride = fd[ref].width = params->xbsep_luma << 2;
# 2605| fd[ref].height = params->ybsep_luma << 2;
# 2606| fd[ref].length = block_size * sizeof (uint8_t);
Error: GCC_ANALYZER_WARNING (CWE-121): [#def66]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2604:38: warning[-Wanalyzer-out-of-bounds]: stack-based buffer overflow
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2604:38: note: write of 4 bytes to beyond the end of 'fd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2604:38: note: valid subscripts for 'fd' are '[0]' to '[1]'
# 2602| for (ref = 0; params->num_refs > ref; ++ref) {
# 2603| fd[ref].data = schro_malloc (block_size * sizeof (uint8_t));
# 2604|-> fd[ref].stride = fd[ref].width = params->xbsep_luma << 2;
# 2605| fd[ref].height = params->ybsep_luma << 2;
# 2606| fd[ref].length = block_size * sizeof (uint8_t);
Error: GCC_ANALYZER_WARNING (CWE-121): [#def67]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2605:22: warning[-Wanalyzer-out-of-bounds]: stack-based buffer overflow
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2605:22: note: write of 4 bytes to beyond the end of 'fd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2605:22: note: valid subscripts for 'fd' are '[0]' to '[1]'
# 2603| fd[ref].data = schro_malloc (block_size * sizeof (uint8_t));
# 2604| fd[ref].stride = fd[ref].width = params->xbsep_luma << 2;
# 2605|-> fd[ref].height = params->ybsep_luma << 2;
# 2606| fd[ref].length = block_size * sizeof (uint8_t);
# 2607| fd[ref].h_shift = fd[ref].v_shift = 0;
Error: GCC_ANALYZER_WARNING (CWE-121): [#def68]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2606:22: warning[-Wanalyzer-out-of-bounds]: stack-based buffer overflow
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2606:22: note: write of 4 bytes to beyond the end of 'fd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2606:22: note: valid subscripts for 'fd' are '[0]' to '[1]'
# 2604| fd[ref].stride = fd[ref].width = params->xbsep_luma << 2;
# 2605| fd[ref].height = params->ybsep_luma << 2;
# 2606|-> fd[ref].length = block_size * sizeof (uint8_t);
# 2607| fd[ref].h_shift = fd[ref].v_shift = 0;
# 2608| fd[ref].format = SCHRO_FRAME_FORMAT_U8_420;
Error: GCC_ANALYZER_WARNING (CWE-121): [#def69]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2607:23: warning[-Wanalyzer-out-of-bounds]: stack-based buffer overflow
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2607:23: note: write of 4 bytes to beyond the end of 'fd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2607:23: note: valid subscripts for 'fd' are '[0]' to '[1]'
# 2605| fd[ref].height = params->ybsep_luma << 2;
# 2606| fd[ref].length = block_size * sizeof (uint8_t);
# 2607|-> fd[ref].h_shift = fd[ref].v_shift = 0;
# 2608| fd[ref].format = SCHRO_FRAME_FORMAT_U8_420;
# 2609| }
Error: GCC_ANALYZER_WARNING (CWE-121): [#def70]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2607:41: warning[-Wanalyzer-out-of-bounds]: stack-based buffer overflow
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2607:41: note: write of 4 bytes to beyond the end of 'fd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2607:41: note: valid subscripts for 'fd' are '[0]' to '[1]'
# 2605| fd[ref].height = params->ybsep_luma << 2;
# 2606| fd[ref].length = block_size * sizeof (uint8_t);
# 2607|-> fd[ref].h_shift = fd[ref].v_shift = 0;
# 2608| fd[ref].format = SCHRO_FRAME_FORMAT_U8_420;
# 2609| }
Error: GCC_ANALYZER_WARNING (CWE-121): [#def71]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2608:22: warning[-Wanalyzer-out-of-bounds]: stack-based buffer overflow
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2883:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2890:3: note: in expansion of macro 'SCHRO_ASSERT'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2608:22: note: write of 4 bytes to beyond the end of 'fd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionest.c:2608:22: note: valid subscripts for 'fd' are '[0]' to '[1]'
# 2606| fd[ref].length = block_size * sizeof (uint8_t);
# 2607| fd[ref].h_shift = fd[ref].v_shift = 0;
# 2608|-> fd[ref].format = SCHRO_FRAME_FORMAT_U8_420;
# 2609| }
# 2610| }
Error: CPPCHECK_WARNING: [#def72]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionfast.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def73]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionfast.c:269:5: warning[deadcode.DeadStores]: Value stored to 'j' is never read
# 267| (motion->height - motion->yoffset) / motion->ybsep);
# 268|
# 269|-> j = 0;
# 270| for (j = 0; j < max_y_blocks; j++) {
# 271| y = motion->ybsep * j - motion->yoffset;
Error: CPPCHECK_WARNING: [#def74]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schromotionref.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def75]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroparams.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def76]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroparse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def77]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroparse.c:194:15: warning[core.UndefinedBinaryOperatorResult]: The left operand of '!=' is a garbage value
# 192| }
# 193|
# 194|-> if (data[0] != 'B' || data[1] != 'B' || data[2] != 'C' || data[3] != 'D') {
# 195| return 0;
# 196| }
Error: CPPCHECK_WARNING: [#def78]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrophasecorrelation.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def79]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroquantiser.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def80]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroroughmotion.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def81]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrossim.c:38:5: warning[deadcode.DeadStores]: Value stored to 'ddata' is never read
# 36| dcomp = &dest->components[i];
# 37| scomp = &src->components[i];
# 38|-> ddata = dcomp->data;
# 39| sdata = scomp->data;
# 40|
Error: CLANG_WARNING: [#def82]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrossim.c:39:5: warning[deadcode.DeadStores]: Value stored to 'sdata' is never read
# 37| scomp = &src->components[i];
# 38| ddata = dcomp->data;
# 39|-> sdata = scomp->data;
# 40|
# 41| width = (dcomp->width < scomp->width) ? dcomp->width : scomp->width;
Error: CPPCHECK_WARNING: [#def83]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrounpack.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-688): [#def84]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroutils.c: scope_hint: In function 'schro_malloc0'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroutils.c:52:3: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL 'ptr' where non-null expected
<built-in>: note: argument 1 of '__builtin_memset' must be non-null
# 50|
# 51| ptr = malloc (size);
# 52|-> memset (ptr, 0, size);
# 53| SCHRO_DEBUG ("alloc %p %d", ptr, size);
# 54|
Error: COMPILER_WARNING (CWE-758): [#def85]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroanalysis.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schro.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:6: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'schro_iiwt_desl_9_3_s32'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroutils.h:68:35: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 68 | #define SCHRO_OFFSET(ptr,offset) ((void *)(((uint8_t *)(ptr)) + (offset)))
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroframe.h:100:42: note: in expansion of macro 'SCHRO_OFFSET'
# 100 | #define SCHRO_FRAME_DATA_GET_LINE(fd,i) (SCHRO_OFFSET((fd)->data,(fd)->stride*(i)))
# | ^~~~~~~~~~~~
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:2095:15: note: in expansion of macro 'SCHRO_FRAME_DATA_GET_LINE'
# 2095 | SCHRO_FRAME_DATA_GET_LINE (src, j),
# | ^~~~~~~~~~~~~~~~~~~~~~~~~
# 66| #endif
# 67|
# 68|-> #define SCHRO_OFFSET(ptr,offset) ((void *)(((uint8_t *)(ptr)) + (offset)))
# 69| #define SCHRO_GET(ptr, offset, type) (*(type *)((uint8_t *)(ptr) + (offset)) )
# 70|
Error: CPPCHECK_WARNING: [#def86]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrovideoformat.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING (CWE-758): [#def87]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrovideoformat.c:111: error[shiftTooManyBitsSigned]: Shifting signed 32-bit value by 31 bits is undefined behaviour
# 109|
# 110| for (i = 0; i < 32; i++) {
# 111|-> if (max < (1 << i))
# 112| return i;
# 113| }
Error: CPPCHECK_WARNING: [#def88]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrovirtframe.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def89]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-758): [#def90]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'wavelet_iwt_daub97_vert1_odd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:772:5: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 772 | orc_mas2_sub_s16_op (hi, hi, lo1, lo2, 6497, 2048, 12, width);
# | ^~~~~~~~~~~~~~~~~~~
# 770| }
# 771|
# 772|-> orc_mas2_sub_s16_op (hi, hi, lo1, lo2, 6497, 2048, 12, width);
# 773| }
# 774| }
Error: COMPILER_WARNING (CWE-758): [#def91]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'wavelet_iwt_daub97_vert1_even'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:793:5: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 793 | orc_mas2_sub_s16_op (lo, lo, hi1, hi2, 217, 2048, 12, width);
# | ^~~~~~~~~~~~~~~~~~~
# 791| hi2 = SCHRO_FRAME_DATA_GET_LINE (fd, i + 1);
# 792|
# 793|-> orc_mas2_sub_s16_op (lo, lo, hi1, hi2, 217, 2048, 12, width);
# 794| }
# 795| }
Error: COMPILER_WARNING (CWE-758): [#def92]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'wavelet_iwt_daub97_vert2_odd'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:814:5: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 814 | orc_mas2_add_s16_op (hi, hi, lo1, lo2, 3616, 2048, 12, width);
# | ^~~~~~~~~~~~~~~~~~~
# 812| }
# 813|
# 814|-> orc_mas2_add_s16_op (hi, hi, lo1, lo2, 3616, 2048, 12, width);
# 815| }
# 816| }
Error: COMPILER_WARNING (CWE-758): [#def93]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'wavelet_iwt_daub97_vert2_even'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:835:5: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 835 | orc_mas2_add_s16_op (lo, lo, hi1, hi2, 1817, 2048, 12, width);
# | ^~~~~~~~~~~~~~~~~~~
# 833| hi2 = SCHRO_FRAME_DATA_GET_LINE (fd, i + 1);
# 834|
# 835|-> orc_mas2_add_s16_op (lo, lo, hi1, hi2, 1817, 2048, 12, width);
# 836| }
# 837| }
Error: COMPILER_WARNING (CWE-758): [#def94]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'wavelet_iwt_daub97_vert1_odd_s32'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:1360:5: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 1360 | orc_mas2_sub_s32_op (hi, hi, lo1, lo2, 6497, 2048, 12, width);
# | ^~~~~~~~~~~~~~~~~~~
# 1358| }
# 1359|
# 1360|-> orc_mas2_sub_s32_op (hi, hi, lo1, lo2, 6497, 2048, 12, width);
# 1361| }
# 1362| }
Error: COMPILER_WARNING (CWE-758): [#def95]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'wavelet_iwt_daub97_vert1_even_s32'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:1381:5: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 1381 | orc_mas2_sub_s32_op (lo, lo, hi1, hi2, 217, 2048, 12, width);
# | ^~~~~~~~~~~~~~~~~~~
# 1379| hi2 = SCHRO_FRAME_DATA_GET_LINE (fd, i + 1);
# 1380|
# 1381|-> orc_mas2_sub_s32_op (lo, lo, hi1, hi2, 217, 2048, 12, width);
# 1382| }
# 1383| }
Error: COMPILER_WARNING (CWE-758): [#def96]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'wavelet_iwt_daub97_vert2_odd_s32'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:1402:5: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 1402 | orc_mas2_add_s32_op (hi, hi, lo1, lo2, 3616, 2048, 12, width);
# | ^~~~~~~~~~~~~~~~~~~
# 1400| }
# 1401|
# 1402|-> orc_mas2_add_s32_op (hi, hi, lo1, lo2, 3616, 2048, 12, width);
# 1403| }
# 1404| }
Error: COMPILER_WARNING (CWE-758): [#def97]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'wavelet_iwt_daub97_vert2_even_s32'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:1423:5: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 1423 | orc_mas2_add_s32_op (lo, lo, hi1, hi2, 1817, 2048, 12, width);
# | ^~~~~~~~~~~~~~~~~~~
# 1421| hi2 = SCHRO_FRAME_DATA_GET_LINE (fd, i + 1);
# 1422|
# 1423|-> orc_mas2_add_s32_op (lo, lo, hi1, hi2, 1817, 2048, 12, width);
# 1424| }
# 1425| }
Error: COMPILER_WARNING (CWE-758): [#def98]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c: scope_hint: In function 'schro_iiwt_13_5_s32'
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:2247:13: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 2247 | srcline, s1, s2, s3, s4, 1 << 4, 5, width);
# | ^~~~~~~
# 2245| }
# 2246| orc_mas4_vert_sub_s32_1991_op (srcline,
# 2247|-> srcline, s1, s2, s3, s4, 1 << 4, 5, width);
# 2248| }
# 2249| }
Error: COMPILER_WARNING (CWE-758): [#def99]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrowaveletorc.c:2268:13: warning[-Wrestrict]: passing argument 1 to 'restrict'-qualified parameter aliases with argument 2
# 2268 | srcline, s1, s2, s3, s4, 1 << 3, 4, width);
# | ^~~~~~~
# 2266| }
# 2267| orc_mas4_vert_add_s32_1991_op (srcline,
# 2268|-> srcline, s1, s2, s3, s4, 1 << 3, 4, width);
# 2269| }
# 2270| }
Error: CPPCHECK_WARNING: [#def100]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/arith.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-688): [#def101]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/arith_encode.c: scope_hint: In function ‘main’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/arith_encode.c:57:13: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘fopen("test_file", "r")’ where non-null expected
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/arith_encode.c:4: included_from: Included from here.
/usr/include/stdio.h:728:15: note: argument 4 of ‘fread’ must be non-null
# 55|
# 56| file = fopen("test_file","r");
# 57|-> n_bytes = fread (input_buffer, 1, BUFFER_SIZE, file);
# 58| fclose(file);
# 59|
Error: CLANG_WARNING: [#def102]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/arith_encode.c:73:3: warning[deadcode.DeadStores]: Value stored to 'n_bytes' is never read
# 71|
# 72| file = fopen("test_file_arith.out","w");
# 73|-> n_bytes = fwrite (output_buffer, 1, a->offset, file);
# 74| fclose(file);
# 75|
Error: GCC_ANALYZER_WARNING (CWE-688): [#def103]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/arith_encode.c:73:13: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘fopen("test_file_arith.out", "w")’ where non-null expected
/usr/include/stdio.h:735:15: note: argument 4 of ‘fwrite’ must be non-null
# 71|
# 72| file = fopen("test_file_arith.out","w");
# 73|-> n_bytes = fwrite (output_buffer, 1, a->offset, file);
# 74| fclose(file);
# 75|
Error: GCC_ANALYZER_WARNING (CWE-476): [#def104]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_qm.c:6: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_qm.c: scope_hint: In function ‘speed_arith_qm’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith.h:74:15: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘indata’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_qm.c:240:1: note: in expansion of macro ‘DEFINE_SPEED’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_qm.c:240:1: note: in expansion of macro ‘DEFINE_SPEED’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_qm.c:240:1: note: in expansion of macro ‘DEFINE_SPEED’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith.h:74:18: note: in expansion of macro ‘rand_u8’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_qm.c:240:1: note: in expansion of macro ‘DEFINE_SPEED’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_qm.c:240:1: note: in expansion of macro ‘DEFINE_SPEED’
# 72| orc_profile_init (&prof); \
# 73| for(i=0;i<n;i++){ \
# 74|-> indata[i] = (rand_u8() < x); \
# 75| } \
# 76| for(j=0;j<20;j++) { \
Error: CPPCHECK_WARNING: [#def105]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_dirac_both.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def106]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_dirac_byte.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def107]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/arith_exp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING (CWE-628): [#def108]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/coder/coding_efficiency.c:29: warning[invalidFunctionArg]: Invalid log() argument nr 1. The value is 0 but the valid values are '4.94066e-324:'.
# 27| if (x == 0 || x == 1) return 0;
# 28|
# 29|-> return (x*log(x) + (1-x)*log(1-x))/log(0.5);
# 30| }
# 31|
Error: CLANG_WARNING: [#def109]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/colorspace.c:252:21: warning[core.UndefinedBinaryOperatorResult]: The right operand of '*' is a garbage value
# 250| for (i = 0; i < 3; i++) {
# 251| double x = 0;
# 252|-> x += m->m[i][0] * src[0];
# 253| x += m->m[i][1] * src[1];
# 254| x += m->m[i][2] * src[2];
Error: CPPCHECK_WARNING: [#def110]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def111]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/common.c: scope_hint: In function 'parse_packet'
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/common.c:690:3: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL 'packet'
# 688|
# 689| packet = malloc (size);
# 690|-> memcpy (packet, header, 13);
# 691| n = fread (packet + 13, 1, size - 13, file);
# 692| if (n < size - 13) {
Error: CLANG_WARNING: [#def112]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/common.c:712:10: warning[core.uninitialized.Assign]: Assigned value is garbage or undefined
# 710| }
# 711| for(i=0;i<n;i++){
# 712|-> a[i] = tmp[i];
# 713| }
# 714| }
Error: CLANG_WARNING: [#def113]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/common.c:726:10: warning[core.uninitialized.Assign]: Assigned value is garbage or undefined
# 724| }
# 725| for(i=0;i<n;i++){
# 726|-> a[i] = tmp[i];
# 727| }
# 728| }
Error: GCC_ANALYZER_WARNING (CWE-476): [#def114]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode.c: scope_hint: In function ‘decode’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode.c:103:15: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘format’
# 101| schro_video_format_get_picture_luma_size (format, &width, &height);
# 102| frame = schro_frame_new_and_alloc (NULL,
# 103|-> schro_params_get_frame_format(8, format->chroma_format),
# 104| width, height);
# 105| schro_decoder_add_output_picture (decoder, frame);
Error: CLANG_WARNING: [#def115]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode.c:103:48: warning[core.NullDereference]: Access to field 'chroma_format' results in a dereference of a null pointer (loaded from variable 'format')
# 101| schro_video_format_get_picture_luma_size (format, &width, &height);
# 102| frame = schro_frame_new_and_alloc (NULL,
# 103|-> schro_params_get_frame_format(8, format->chroma_format),
# 104| width, height);
# 105| schro_decoder_add_output_picture (decoder, frame);
Error: CPPCHECK_WARNING: [#def116]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_coded_order.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-476): [#def117]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_coded_order.c: scope_hint: In function ‘decode’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_coded_order.c:88:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘format’
# 86|
# 87| if (SCHRO_PARSE_CODE_IS_PICTURE (parse_code)) {
# 88|-> frame = schro_frame_new_and_alloc (NULL,
# 89| schro_params_get_frame_format(8, format->chroma_format),
# 90| format->width, format->height);
Error: CLANG_WARNING: [#def118]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_coded_order.c:89:46: warning[core.NullDereference]: Access to field 'chroma_format' results in a dereference of a null pointer (loaded from variable 'format')
# 87| if (SCHRO_PARSE_CODE_IS_PICTURE (parse_code)) {
# 88| frame = schro_frame_new_and_alloc (NULL,
# 89|-> schro_params_get_frame_format(8, format->chroma_format),
# 90| format->width, format->height);
# 91| schro_decoder_add_output_picture (decoder, frame);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def119]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_coded_order.c:113:19: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘format’
# 111| break;
# 112| case SCHRO_DECODER_NEED_FRAME:
# 113|-> frame = schro_frame_new_and_alloc (NULL,
# 114| schro_params_get_frame_format(8, format->chroma_format),
# 115| format->width, format->height);
Error: CLANG_WARNING: [#def120]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_coded_order.c:114:48: warning[core.NullDereference]: Access to field 'chroma_format' results in a dereference of a null pointer (loaded from variable 'format')
# 112| case SCHRO_DECODER_NEED_FRAME:
# 113| frame = schro_frame_new_and_alloc (NULL,
# 114|-> schro_params_get_frame_format(8, format->chroma_format),
# 115| format->width, format->height);
# 116| schro_decoder_add_output_picture (decoder, frame);
Error: GCC_ANALYZER_WARNING (CWE-476): [#def121]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_loop.c: scope_hint: In function ‘decode’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_loop.c:101:19: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘format’
# 99| break;
# 100| case SCHRO_DECODER_NEED_FRAME:
# 101|-> frame = schro_frame_new_and_alloc (NULL,
# 102| schro_params_get_frame_format(8, format->chroma_format),
# 103| format->width, format->height);
Error: CLANG_WARNING: [#def122]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/decode_loop.c:102:48: warning[core.NullDereference]: Access to field 'chroma_format' results in a dereference of a null pointer (loaded from variable 'format')
# 100| case SCHRO_DECODER_NEED_FRAME:
# 101| frame = schro_frame_new_and_alloc (NULL,
# 102|-> schro_params_get_frame_format(8, format->chroma_format),
# 103| format->width, format->height);
# 104| schro_decoder_add_output_picture (decoder, frame);
Error: GCC_ANALYZER_WARNING (CWE-688): [#def123]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/encode.c: scope_hint: In function ‘test’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/encode.c:59:11: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘picture’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
# 57|
# 58| picture = malloc(size);
# 59|-> memset (picture, 128, size);
# 60|
# 61| frame = schro_frame_new_from_data_I420 (picture, w, h);
Error: CLANG_WARNING: [#def124]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/fft.c:104:11: warning[core.BitwiseShift]: Right operand is negative in left shift
# 102|
# 103| half_n = 1<<i;
# 104|-> skip = 1<<(shift - i - 1);
# 105| for(j=0;j<skip; j++) {
# 106| for(k=0;k<half_n;k++){
Error: GCC_ANALYZER_WARNING (CWE-476): [#def125]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/fft.c: scope_hint: In function ‘fft_stage_try2’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/fft.c:113:22: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘d1’
# 111| costable[k*skip], sintable[k*skip]);
# 112|
# 113|-> d1[k*skip + j] = s1[offset + j] + x;
# 114| d2[k*skip + j] = s2[offset + j] + y;
# 115| d1[k*skip + half_n*skip + j] = s1[offset + j] - x;
Error: CLANG_WARNING: [#def126]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/fft.c:113:39: warning[core.UndefinedBinaryOperatorResult]: The left operand of '+' is a garbage value
# 111| costable[k*skip], sintable[k*skip]);
# 112|
# 113|-> d1[k*skip + j] = s1[offset + j] + x;
# 114| d2[k*skip + j] = s2[offset + j] + y;
# 115| d1[k*skip + half_n*skip + j] = s1[offset + j] - x;
Error: GCC_ANALYZER_WARNING (CWE-688): [#def127]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/fft.c: scope_hint: In function ‘DFT_try2’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/fft.c:132:3: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘s2’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
# 130|
# 131| s2 = malloc (sizeof(double)*n);
# 132|-> memset (s2, 0, sizeof(double)*n);
# 133|
# 134| tmp = malloc (4*sizeof(double)*n);
Error: GCC_ANALYZER_WARNING (CWE-688): [#def128]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/fft.c: scope_hint: In function ‘DFT_try3’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/fft.c:258:3: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘s2’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
# 256|
# 257| s2 = malloc (sizeof(double)*n);
# 258|-> memset (s2, 0, sizeof(double)*n);
# 259|
# 260| fft_stage_step0_try3 (d1, d2, s1, s2, costable, sintable, shift);
Error: CLANG_WARNING: [#def129]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/filter_coeff.c:212:5: warning[deadcode.DeadStores]: Value stored to 'hi_isum' is never read
# 210| if (isum > target) {
# 211| hi_adj = 0.0;
# 212|-> hi_isum = isum;
# 213| lo_adj = -0.5;
# 214| filter2d_quantise (filter, lo_adj);
Error: CLANG_WARNING: [#def130]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/filter_coeff.c:221:5: warning[deadcode.DeadStores]: Value stored to 'lo_isum' is never read
# 219| } else {
# 220| lo_adj = 0.0;
# 221|-> lo_isum = isum;
# 222| hi_adj = 0.5;
# 223| filter2d_quantise (filter, hi_adj);
Error: CLANG_WARNING: [#def131]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/filter_coeff.c:240:7: warning[deadcode.DeadStores]: Value stored to 'lo_isum' is never read
# 238| if (mid_isum < target) {
# 239| lo_adj = mid_adj;
# 240|-> lo_isum = mid_isum;
# 241| } else {
# 242| hi_adj = mid_adj;
Error: CLANG_WARNING: [#def132]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/filter_coeff.c:243:7: warning[deadcode.DeadStores]: Value stored to 'hi_isum' is never read
# 241| } else {
# 242| hi_adj = mid_adj;
# 243|-> hi_isum = mid_isum;
# 244| }
# 245|
Error: CLANG_WARNING: [#def133]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/filter_coeff.c:268:3: warning[deadcode.DeadStores]: Value stored to 'offset' is never read
# 266|
# 267| cutoff = 0.5;
# 268|-> offset = 0.25;
# 269| w = 4;
# 270| for(i = 0; i <= 50; i++) {
Error: CLANG_WARNING: [#def134]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/filter_coeff.c:269:3: warning[deadcode.DeadStores]: Value stored to 'w' is never read
# 267| cutoff = 0.5;
# 268| offset = 0.25;
# 269|-> w = 4;
# 270| for(i = 0; i <= 50; i++) {
# 271| offset = i/50.0;
Error: GCC_ANALYZER_WARNING (CWE-688): [#def135]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/motion.c: scope_hint: In function ‘main’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/motion.c:68:3: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘motion_vectors’ where non-null expected
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
# 66| motion_vectors = malloc(sizeof(SchroMotionVector) *
# 67| params.x_num_blocks * params.y_num_blocks);
# 68|-> memset (motion_vectors, 0, sizeof(SchroMotionVector) *
# 69| params.x_num_blocks * params.y_num_blocks);
# 70|
Error: GCC_ANALYZER_WARNING (CWE-688): [#def136]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/motion2.c: scope_hint: In function ‘main’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/motion2.c:127:3: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘motion_vectors’ where non-null expected
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/motion2.c: scope_hint: In function ‘main’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/motion2.c: scope_hint: In function ‘main’
<built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null
# 125| motion_vectors = malloc(sizeof(SchroMotionVector) *
# 126| params.x_num_blocks * params.y_num_blocks);
# 127|-> memset (motion_vectors, 0, sizeof(SchroMotionVector) *
# 128| params.x_num_blocks * params.y_num_blocks);
# 129|
Error: CPPCHECK_WARNING: [#def137]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/perceptual_weight.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING (CWE-823): [#def138]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/perceptual_weight.c:36: error[arrayIndexOutOfBounds]: Array 'encoder->intra_subband_weights[7][6][19]' accessed at index encoder->intra_subband_weights[7][*][0], which is out of bounds.
# 34| n = 3*(j+1)+1;
# 35|
# 36|-> min = encoder->intra_subband_weights[filter][j][0];
# 37| for(i=0;i<n;i++){
# 38| if (encoder->intra_subband_weights[filter][j][i] < min) {
Error: CPPCHECK_WARNING (CWE-823): [#def139]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/perceptual_weight.c:54: error[arrayIndexOutOfBounds]: Array 'encoder->inter_subband_weights[7][6][19]' accessed at index encoder->inter_subband_weights[7][*][0], which is out of bounds.
# 52| n = 3*(j+1)+1;
# 53|
# 54|-> min = encoder->inter_subband_weights[filter][j][0];
# 55| for(i=0;i<n;i++){
# 56| if (encoder->inter_subband_weights[filter][j][i] < min) {
Error: CPPCHECK_WARNING: [#def140]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/quant.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: COMPILER_WARNING (CWE-758): [#def141]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/quant.c: scope_hint: In function ‘test_dequant’
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/quant.c:167:25: warning[-Wrestrict]: passing argument 1 to ‘restrict’-qualified parameter aliases with argument 2
# 167 | orc_dequantise_s16 (c, c, quant_factor, quant_offset, N);
# | ^ ~
# 165| /* do nothing */
# 166| } else {
# 167|-> orc_dequantise_s16 (c, c, quant_factor, quant_offset, N);
# 168| }
# 169|
Error: CPPCHECK_WARNING: [#def142]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/sort.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def143]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/tables2/lowdelay_tables.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def144]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/tables2/quant_tables.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def145]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/tables2/unpack_tables.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def146]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/tables2/wavelet_tables.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def147]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/unpack.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def148]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/upsample.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def149]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_2d.c:415:9: warning[unix.MallocSizeof]: Result of 'malloc' is converted to a pointer of type 'int16_t', which is incompatible with sizeof operand type 'int32_t'
# 413| int16_t *tmp;
# 414|
# 415|-> tmp = malloc(((p->width+8)*2)*sizeof(int32_t));
# 416|
# 417| schro_wavelet_transform_2d (p, filter, tmp);
Error: CLANG_WARNING: [#def150]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_2d.c:426:9: warning[unix.MallocSizeof]: Result of 'malloc' is converted to a pointer of type 'int16_t', which is incompatible with sizeof operand type 'int32_t'
# 424| int16_t *tmp;
# 425|
# 426|-> tmp = malloc(((p->width+8)*2)*sizeof(int32_t));
# 427|
# 428| schro_wavelet_inverse_transform_2d (p, p, filter, tmp);
Error: CPPCHECK_WARNING: [#def151]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_gain.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def152]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_gain_curve.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def153]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_gain_curve.c:120:23: warning[core.UndefinedBinaryOperatorResult]: The right operand of '*' is a garbage value
# 118| b[0] = c[0] * c[0] / (1<<(n_levels*filtershift[filter]));
# 119| for(i=0;i<n_levels;i++){
# 120|-> b[i*2+1] = c[i+0] * c[i+1] / (1<<((n_levels-i)*filtershift[filter]));
# 121| b[i*2+2] = c[i+1] * c[i+1] / (1<<((n_levels-i)*filtershift[filter]));
# 122| }
Error: CLANG_WARNING: [#def154]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_gain_curve.c:126:14: warning[core.UndefinedBinaryOperatorResult]: The left operand of '<' is a garbage value
# 124| min = b[0];
# 125| for(i=0;i<n_levels*2+1;i++){
# 126|-> if (b[i] < min) min = b[i];
# 127| }
# 128|
Error: CPPCHECK_WARNING: [#def155]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_max_gain.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CLANG_WARNING: [#def156]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_max_gain.c:130:7: warning[deadcode.DeadStores]: Value stored to 'fd_ref' is never read
# 128| ref = schro_frame_new_and_alloc (NULL, SCHRO_FRAME_FORMAT_S32_444,
# 129| width, height);
# 130|-> fd_ref = ref->components + 0;
# 131|
# 132| schro_frame_data_clear (fd_orig);
Error: CLANG_WARNING: [#def157]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_max_gain.c:297:9: warning[unix.MallocSizeof]: Result of 'malloc' is converted to a pointer of type 'int16_t', which is incompatible with sizeof operand type 'int32_t'
# 295| int16_t *tmp;
# 296|
# 297|-> tmp = malloc(((p->width+8)*2)*sizeof(int32_t));
# 298|
# 299| schro_wavelet_transform_2d (p, filter, tmp);
Error: CLANG_WARNING: [#def158]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_max_gain.c:308:9: warning[unix.MallocSizeof]: Result of 'malloc' is converted to a pointer of type 'int16_t', which is incompatible with sizeof operand type 'int32_t'
# 306| int16_t *tmp;
# 307|
# 308|-> tmp = malloc(((p->width+8)*2)*sizeof(int32_t));
# 309|
# 310| schro_wavelet_inverse_transform_2d (p, p, filter, tmp);
Error: CPPCHECK_WARNING: [#def159]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_noise_2d.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def160]
schroedinger-1.0.11-build/schroedinger-1.0.11/testsuite/wavelet_noise_gain.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: CPPCHECK_WARNING: [#def161]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dirac_parse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-835): [#def162]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dirac_parse.c:477:13: warning[-Wanalyzer-infinite-loop]: infinite loop
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dirac_parse.c: scope_hint: In function ‘schro_unpack_decode_uint’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dirac_parse.c: scope_hint: In function ‘schro_unpack_decode_uint’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dirac_parse.c: scope_hint: In function ‘schro_unpack_decode_uint’
# 475| int bit;
# 476|
# 477|-> if (unpack->n_bits_left < 1) {
# 478| return unpack->guard_bit;
# 479| }
Error: CPPCHECK_WARNING: [#def163]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-775): [#def164]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c: scope_hint: In function ‘main’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:44:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(argv[1], "r")’
# 42| }
# 43|
# 44|-> outfile = fopen (argv[2], "w");
# 45| if (outfile == NULL) {
# 46| printf("cannot open %s for writing: %s\n", argv[2], strerror(errno));
Error: GCC_ANALYZER_WARNING (CWE-401): [#def165]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:44:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(argv[1], "r")’
# 42| }
# 43|
# 44|-> outfile = fopen (argv[2], "w");
# 45| if (outfile == NULL) {
# 46| printf("cannot open %s for writing: %s\n", argv[2], strerror(errno));
Error: CPPCHECK_WARNING (CWE-404): [#def166]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:47: error[resourceLeak]: Resource leak: file
# 45| if (outfile == NULL) {
# 46| printf("cannot open %s for writing: %s\n", argv[2], strerror(errno));
# 47|-> return 1;
# 48| }
# 49|
Error: GCC_ANALYZER_WARNING (CWE-775): [#def167]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:50:19: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(argv[2], "w")’
# 48| }
# 49|
# 50|-> start_picture = strtoul (argv[3], NULL, 0);
# 51| end_picture = strtoul (argv[4], NULL, 0);
# 52|
Error: GCC_ANALYZER_WARNING (CWE-401): [#def168]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:50:19: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(argv[2], "w")’
# 48| }
# 49|
# 50|-> start_picture = strtoul (argv[3], NULL, 0);
# 51| end_picture = strtoul (argv[4], NULL, 0);
# 52|
Error: CLANG_WARNING: [#def169]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:59:38: warning[core.NullDereference]: Array access (from variable 'packet') results in a null pointer dereference
# 57| }
# 58|
# 59|-> if (seq_header_packet == NULL && SCHRO_PARSE_CODE_IS_SEQ_HEADER(packet[4])) {
# 60| seq_header_packet = packet;
# 61| seq_header_size = size;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def170]
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroparams.h:6: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroencoder.h:8: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schroanalysis.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schro.h:5: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:6: included_from: Included from here.
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:59:75: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘packet’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:39:45: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_SEQ_HEADER’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:39:45: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_SEQ_HEADER’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:39:45: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_SEQ_HEADER’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:39:45: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_SEQ_HEADER’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:39:45: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_SEQ_HEADER’
# 57| }
# 58|
# 59|-> if (seq_header_packet == NULL && SCHRO_PARSE_CODE_IS_SEQ_HEADER(packet[4])) {
# 60| seq_header_packet = packet;
# 61| seq_header_size = size;
Error: CLANG_WARNING: [#def171]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:65:9: warning[core.NullDereference]: Array access (from variable 'packet') results in a null pointer dereference
# 63| }
# 64|
# 65|-> if (SCHRO_PARSE_CODE_IS_PICTURE(packet[4])) {
# 66| pic_num = (packet[13] << 24) | (packet[14]<<16) |
# 67| (packet[15]<<8) | packet[16];
Error: GCC_ANALYZER_WARNING (CWE-457): [#def172]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:66:24: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘packet[13]’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:39:45: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_SEQ_HEADER’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:43:42: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_PICTURE’
# 64|
# 65| if (SCHRO_PARSE_CODE_IS_PICTURE(packet[4])) {
# 66|-> pic_num = (packet[13] << 24) | (packet[14]<<16) |
# 67| (packet[15]<<8) | packet[16];
# 68| printf("got picture %d\n", pic_num);
Error: CLANG_WARNING: [#def173]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:130:7: warning[core.NullDereference]: Array access (from variable 'packet') results in a null pointer dereference
# 128| int ret;
# 129|
# 130|-> if (packet[4] == SCHRO_PARSE_CODE_END_OF_SEQUENCE) {
# 131| packet[5] = 0;
# 132| packet[6] = 0;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def174]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c: scope_hint: In function ‘write_packet’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:130:13: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘packet’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:39:45: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_SEQ_HEADER’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:43:42: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_PICTURE’
schroedinger-1.0.11-build/schroedinger-1.0.11/schroedinger/schrobitstream.h:43:42: note: in definition of macro ‘SCHRO_PARSE_CODE_IS_PICTURE’
# 128| int ret;
# 129|
# 130|-> if (packet[4] == SCHRO_PARSE_CODE_END_OF_SEQUENCE) {
# 131| packet[5] = 0;
# 132| packet[6] = 0;
Error: GCC_ANALYZER_WARNING (CWE-476): [#def175]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c: scope_hint: In function ‘parse_packet’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/drc-cut.c:192:3: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘packet’
# 190|
# 191| packet = malloc (size);
# 192|-> memcpy (packet, header, 13);
# 193| n = fread (packet + 13, 1, size - 13, file);
# 194| if (n < size - 13) {
Error: CPPCHECK_WARNING: [#def176]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-775): [#def177]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c: scope_hint: In function ‘main’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c:49:8: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fn, "r")’
# 47|
# 48| n = fread (header, 1, 13, file);
# 49|-> if (n == 0) {
# 50| return 0;
# 51| }
Error: GCC_ANALYZER_WARNING (CWE-401): [#def178]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c:49:8: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fn, "r")’
# 47|
# 48| n = fread (header, 1, 13, file);
# 49|-> if (n == 0) {
# 50| return 0;
# 51| }
Error: GCC_ANALYZER_WARNING (CWE-775): [#def179]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c:52:8: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fn, "r")’
# 50| return 0;
# 51| }
# 52|-> if (n < 13) {
# 53| printf("truncated header\n");
# 54| return 1;
Error: GCC_ANALYZER_WARNING (CWE-401): [#def180]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c:52:8: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fn, "r")’
# 50| return 0;
# 51| }
# 52|-> if (n < 13) {
# 53| printf("truncated header\n");
# 54| return 1;
Error: GCC_ANALYZER_WARNING (CWE-775): [#def181]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c:57:15: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fn, "r")’
# 55| }
# 56|
# 57|-> if (header[0] != 'B' || header[1] != 'B' || header[2] != 'C' ||
# 58| header[3] != 'D') {
# 59| printf("expected BBCD header\n");
Error: GCC_ANALYZER_WARNING (CWE-401): [#def182]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c:57:15: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fn, "r")’
# 55| }
# 56|
# 57|-> if (header[0] != 'B' || header[1] != 'B' || header[2] != 'C' ||
# 58| header[3] != 'D') {
# 59| printf("expected BBCD header\n");
Error: GCC_ANALYZER_WARNING (CWE-476): [#def183]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_gop.c:77:5: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘packet’
# 75|
# 76| packet = malloc (size);
# 77|-> memcpy (packet, header, 13);
# 78| n = fread (packet + 13, 1, size - 13, file);
# 79| if (n < size - 13) {
Error: CPPCHECK_WARNING: [#def184]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-775): [#def185]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c: scope_hint: In function ‘main’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c:48:8: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fn, "r")’
# 46|
# 47| n = fread (header, 1, 13, file);
# 48|-> if (n == 0) {
# 49| return 0;
# 50| }
Error: GCC_ANALYZER_WARNING (CWE-401): [#def186]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c:48:8: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fn, "r")’
# 46|
# 47| n = fread (header, 1, 13, file);
# 48|-> if (n == 0) {
# 49| return 0;
# 50| }
Error: GCC_ANALYZER_WARNING (CWE-775): [#def187]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c:51:8: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fn, "r")’
# 49| return 0;
# 50| }
# 51|-> if (n < 13) {
# 52| printf("truncated header\n");
# 53| return 1;
Error: GCC_ANALYZER_WARNING (CWE-401): [#def188]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c:51:8: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fn, "r")’
# 49| return 0;
# 50| }
# 51|-> if (n < 13) {
# 52| printf("truncated header\n");
# 53| return 1;
Error: GCC_ANALYZER_WARNING (CWE-775): [#def189]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c:56:15: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fn, "r")’
# 54| }
# 55|
# 56|-> if (header[0] != 'B' || header[1] != 'B' || header[2] != 'C' ||
# 57| header[3] != 'D') {
# 58| printf("expected BBCD header\n");
Error: GCC_ANALYZER_WARNING (CWE-401): [#def190]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c:56:15: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fn, "r")’
# 54| }
# 55|
# 56|-> if (header[0] != 'B' || header[1] != 'B' || header[2] != 'C' ||
# 57| header[3] != 'D') {
# 58| printf("expected BBCD header\n");
Error: GCC_ANALYZER_WARNING (CWE-476): [#def191]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/dump_packets.c:76:5: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘packet’
# 74|
# 75| packet = malloc (size);
# 76|-> memcpy (packet, header, 13);
# 77| n = fread (packet + 13, 1, size - 13, file);
# 78| if (n < size - 13) {
Error: CPPCHECK_WARNING: [#def192]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/parse_header.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.
Error: GCC_ANALYZER_WARNING (CWE-775): [#def193]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/parse_header.c: scope_hint: In function ‘main’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/parse_header.c:40:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(argv[1], "r")’
# 38| }
# 39|
# 40|-> n = fread (data, 1, 4096, file);
# 41| if (n < 13) {
# 42| printf("file too short\n");
Error: GCC_ANALYZER_WARNING (CWE-401): [#def194]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/parse_header.c:40:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(argv[1], "r")’
# 38| }
# 39|
# 40|-> n = fread (data, 1, 4096, file);
# 41| if (n < 13) {
# 42| printf("file too short\n");
Error: GCC_ANALYZER_WARNING (CWE-476): [#def195]
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/parse_header.c: scope_hint: In function ‘parse_packet’
schroedinger-1.0.11-build/schroedinger-1.0.11/tools/parse_header.c:140:3: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘packet’
# 138|
# 139| packet = malloc (size);
# 140|-> memcpy (packet, header, 13);
# 141| n = fread (packet + 13, 1, size - 13, file);
# 142| if (n < size - 13) {
Scan Properties
analyzer-version-clang | 18.1.7 |
analyzer-version-cppcheck | 2.14.2 |
analyzer-version-gcc | 14.1.1 |
analyzer-version-gcc-analyzer | 14.1.1 |
analyzer-version-shellcheck | 0.10.0 |
enabled-plugins | clang, cppcheck, gcc, shellcheck |
exit-code | 0 |
host | ip-172-16-1-134.us-west-2.compute.internal |
mock-config | fedora-41-x86_64 |
project-name | schroedinger-1.0.11-30.fc41 |
store-results-to | /tmp/tmp_shrx9j4/schroedinger-1.0.11-30.fc41.tar.xz |
time-created | 2024-07-03 17:56:21 |
time-finished | 2024-07-03 17:59:00 |
tool | csmock |
tool-args | '/usr/bin/csmock' '-r' 'fedora-41-x86_64' '-t' 'cppcheck,gcc,clang,shellcheck' '-o' '/tmp/tmp_shrx9j4/schroedinger-1.0.11-30.fc41.tar.xz' '--gcc-analyze' '/tmp/tmp_shrx9j4/schroedinger-1.0.11-30.fc41.src.rpm' |
tool-version | csmock-3.5.3-1.el9 |