Error: GCC_ANALYZER_WARNING (CWE-476): [#def1] libdatrie-0.2.14/datrie/darray.c:139:12: warning[-Wanalyzer-null-dereference]: dereference of NULL 'syms' libdatrie-0.2.14/datrie/darray.c:613:1: enter_function: entry to 'da_relocate_base' libdatrie-0.2.14/datrie/darray.c:622:15: call_function: calling 'da_output_symbols' from 'da_relocate_base' libdatrie-0.2.14/datrie/darray.c:622:15: return_function: returning to 'da_relocate_base' from 'da_output_symbols' libdatrie-0.2.14/datrie/darray.c:624:21: call_function: calling 'symbols_num' from 'da_relocate_base' # 137| symbols_num (const Symbols *syms) # 138| { # 139|-> return syms->num_symbols; # 140| } # 141| Error: GCC_ANALYZER_WARNING (CWE-476): [#def2] libdatrie-0.2.14/datrie/darray.c:549:13: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libdatrie-0.2.14/datrie/darray.c:613:1: enter_function: entry to 'da_relocate_base' libdatrie-0.2.14/datrie/darray.c:622:15: call_function: calling 'da_output_symbols' from 'da_relocate_base' # 547| for (c = 0; c <= max_c; c++) { # 548| if (da_get_check (d, base + c) == s) # 549|-> symbols_add_fast (syms, (TrieChar) c); # 550| } # 551| Error: GCC_ANALYZER_WARNING (CWE-401): [#def3] libdatrie-0.2.14/datrie/tail.c:161:13: warning[-Wanalyzer-malloc-leak]: leak of 'malloc((long unsigned int)((int)length + 1))' libdatrie-0.2.14/datrie/tail.c:133:8: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:137:8: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:140:33: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:140:8: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:141:33: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:140:9: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:145:9: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:145:8: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:147:38: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:148:8: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:148:8: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:150:17: branch_true: following 'true' branch... libdatrie-0.2.14/datrie/tail.c:153:38: branch_true: ...to here libdatrie-0.2.14/datrie/tail.c:153:12: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:154:38: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:153:13: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:155:14: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:153:13: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:160:51: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:160:43: acquire_memory: allocated here libdatrie-0.2.14/datrie/tail.c:161:12: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/tail.c:163:12: branch_false: ...to here libdatrie-0.2.14/datrie/tail.c:161:13: danger: 'malloc((long unsigned int)((int)length + 1))' leaks here; was allocated at [(21)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/20) # 159| # 160| t->tails[i].suffix = (TrieChar *) malloc (length + 1); # 161|-> if (UNLIKELY (!t->tails[i].suffix)) # 162| goto exit_in_loop; # 163| if (length > 0) { Error: GCC_ANALYZER_WARNING (CWE-476): [#def4] libdatrie-0.2.14/datrie/trie.c:1029:13: warning[-Wanalyzer-null-dereference]: dereference of NULL '*iter.state' libdatrie-0.2.14/datrie/trie.c:1019:1: enter_function: entry to 'trie_iterator_next' libdatrie-0.2.14/datrie/trie.c:1025:8: branch_true: following 'true' branch (when 's' is NULL)... libdatrie-0.2.14/datrie/trie.c:1026:27: branch_true: ...to here libdatrie-0.2.14/datrie/trie.c:1026:27: call_function: calling 'trie_state_clone' from 'trie_iterator_next' libdatrie-0.2.14/datrie/trie.c:1026:27: return_function: returning to 'trie_iterator_next' from 'trie_state_clone' libdatrie-0.2.14/datrie/trie.c:1029:13: danger: dereference of NULL 'trie_state_clone(*iter.root)' # 1027| # 1028| /* for tail state, we are already at the only entry */ # 1029|-> if (s->is_suffix) # 1030| return TRUE; # 1031| Error: GCC_ANALYZER_WARNING (CWE-476): [#def5] libdatrie-0.2.14/datrie/trie.c:1029:13: warning[-Wanalyzer-null-dereference]: dereference of NULL '0' libdatrie-0.2.14/datrie/trie.c:649:1: enter_function: entry to 'trie_enumerate' libdatrie-0.2.14/datrie/trie.c:655:12: call_function: calling 'trie_root' from 'trie_enumerate' libdatrie-0.2.14/datrie/trie.c:655:12: return_function: returning to 'trie_enumerate' from 'trie_root' libdatrie-0.2.14/datrie/trie.c:656:8: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/trie.c:659:12: branch_false: ...to here libdatrie-0.2.14/datrie/trie.c:659:12: call_function: calling 'trie_iterator_new' from 'trie_enumerate' libdatrie-0.2.14/datrie/trie.c:659:12: return_function: returning to 'trie_enumerate' from 'trie_iterator_new' libdatrie-0.2.14/datrie/trie.c:660:8: branch_false: following 'false' branch... libdatrie-0.2.14/datrie/trie.c:660:8: branch_false: ...to here libdatrie-0.2.14/datrie/trie.c:663:12: branch_true: following 'true' branch (when 'cont != 0')... libdatrie-0.2.14/datrie/trie.c:663:20: branch_true: ...to here libdatrie-0.2.14/datrie/trie.c:663:20: call_function: calling 'trie_iterator_next' from 'trie_enumerate' # 1027| # 1028| /* for tail state, we are already at the only entry */ # 1029|-> if (s->is_suffix) # 1030| return TRUE; # 1031| Error: GCC_ANALYZER_WARNING (CWE-401): [#def6] libdatrie-0.2.14/tools/trietool.c:378:12: warning[-Wanalyzer-malloc-leak]: leak of ‘iconv_open("UCS-4LE", enc_name)’ libdatrie-0.2.14/tools/trietool.c:363:12: branch_false: following ‘false’ branch (when ‘argc > 1’)... libdatrie-0.2.14/tools/trietool.c:368:9: branch_false: ...to here libdatrie-0.2.14/tools/trietool.c:370:8: branch_false: following ‘false’ branch (when ‘opt_idx < argc’)... libdatrie-0.2.14/tools/trietool.c:374:23: branch_false: ...to here libdatrie-0.2.14/tools/trietool.c:376:8: branch_true: following ‘true’ branch (when ‘enc_name’ is non-NULL)... libdatrie-0.2.14/tools/trietool.c:377:24: branch_true: ...to here libdatrie-0.2.14/tools/trietool.c:377:24: acquire_memory: allocated here libdatrie-0.2.14/tools/trietool.c:378:12: danger: ‘iconv_open("UCS-4LE", enc_name)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/6) # 376| if (enc_name) { # 377| iconv_t conv = iconv_open (ALPHA_ENC, enc_name); # 378|-> if ((iconv_t) -1 == conv) { # 379| fprintf (stderr, # 380| "Conversion from \"%s\" to \"%s\" is not supported.\n", Error: GCC_ANALYZER_WARNING (CWE-401): [#def7] libdatrie-0.2.14/tools/trietool.c:480:12: warning[-Wanalyzer-malloc-leak]: leak of ‘iconv_open("UCS-4LE", enc_name)’ libdatrie-0.2.14/tools/trietool.c:465:12: branch_false: following ‘false’ branch (when ‘argc > 1’)... libdatrie-0.2.14/tools/trietool.c:470:9: branch_false: ...to here libdatrie-0.2.14/tools/trietool.c:472:8: branch_false: following ‘false’ branch (when ‘opt_idx < argc’)... libdatrie-0.2.14/tools/trietool.c:476:23: branch_false: ...to here libdatrie-0.2.14/tools/trietool.c:478:8: branch_true: following ‘true’ branch (when ‘enc_name’ is non-NULL)... libdatrie-0.2.14/tools/trietool.c:479:24: branch_true: ...to here libdatrie-0.2.14/tools/trietool.c:479:24: acquire_memory: allocated here libdatrie-0.2.14/tools/trietool.c:480:12: danger: ‘iconv_open("UCS-4LE", enc_name)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6) # 478| if (enc_name) { # 479| iconv_t conv = iconv_open (ALPHA_ENC, enc_name); # 480|-> if ((iconv_t) -1 == conv) { # 481| fprintf (stderr, # 482| "Conversion from \"%s\" to \"%s\" is not supported.\n",
| analyzer-version-clippy | 1.97.1 |
| analyzer-version-cppcheck | 2.21.1 |
| analyzer-version-gcc | 16.1.1 |
| analyzer-version-gcc-analyzer | 16.1.1 |
| analyzer-version-shellcheck | 0.11.0 |
| analyzer-version-unicontrol | 0.0.2 |
| enabled-plugins | clippy, cppcheck, gcc, shellcheck, unicontrol |
| exit-code | 0 |
| host | ip-172-16-1-105.us-west-2.compute.internal |
| known-false-positives | /usr/share/csmock/known-false-positives.js |
| known-false-positives-rpm | known-false-positives-0.0.0.20260524.213755.g3c6d0be.main-1.el9.noarch |
| mock-config | fedora-rawhide-x86_64 |
| project-name | libdatrie-0.2.14-3.fc45 |
| store-results-to | /tmp/tmpg7m674gb/libdatrie-0.2.14-3.fc45.tar.xz |
| time-created | 2026-08-03 17:06:59 |
| time-finished | 2026-08-03 17:08:22 |
| tool | csmock |
| tool-args | '/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,clippy,unicontrol,shellcheck,cppcheck' '-o' '/tmp/tmpg7m674gb/libdatrie-0.2.14-3.fc45.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmpg7m674gb/libdatrie-0.2.14-3.fc45.src.rpm' |
| tool-version | csmock-3.8.7.20260803.142340.gb75b18e-1.el9 |