vim-9.1.1972-1.fc44

List of Findings

Error: SHELLCHECK_WARNING (CWE-758): [#def1]
/etc/profile.d/vim-default-editor.sh:1:1: error[SC2148]: Tips depend on target shell and yours is unknown. Add a shebang or a 'shell' directive.
#    1|-> # Ensure vim is set as EDITOR if it isn't already set
#    2|   
#    3|   if [ -z "$EDITOR" ]; then

Error: SHELLCHECK_WARNING (CWE-156): [#def2]
/usr/bin/gvimtutor:8:6: warning[SC2046]: Quote this to prevent word splitting.
#    6|   # See vimtutor for usage.
#    7|   
#    8|-> exec $(dirname $0)/vimtutor -g "$@"

Error: COMPILER_WARNING: [#def3]
vim91/src/alloc.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def4]
vim91/src/arabic.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def5]
vim91/src/arglist.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def6]
vim91/src/auto/gui_gtk_gresources.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def7]
vim91/src/auto/if_perl.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def8]
vim91/src/auto/pathdef.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def9]
vim91/src/auto/wayland/ext-data-control-v1.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def10]
vim91/src/auto/wayland/primary-selection-unstable-v1.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def11]
vim91/src/auto/wayland/wlr-data-control-unstable-v1.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def12]
vim91/src/auto/wayland/xdg-shell.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def13]
vim91/src/autocmd.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def14]
vim91/src/autocmd.c:1182:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘pat’
vim91/src/autocmd.c:3333:1: enter_function: entry to ‘f_autocmd_delete’
vim91/src/autocmd.c:3335:5: call_function: calling ‘autocmd_add_or_delete’ from ‘f_autocmd_delete’
# 1180|        * Show or delete all patterns for an event.
# 1181|        */
# 1182|->     if (*pat == NUL)
# 1183|       {
# 1184|   	FOR_ALL_AUTOCMD_PATTERNS(event, ap)

Error: COMPILER_WARNING: [#def15]
vim91/src/beval.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def16]
vim91/src/beval.c:82:29: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘spos’
vim91/src/beval.c:42:8: branch_false: following ‘false’ branch...
vim91/src/beval.c:47:8: branch_false: following ‘false’ branch...
vim91/src/beval.c:51:12: branch_false: ...to here
vim91/src/beval.c:52:8: branch_false: following ‘false’ branch...
vim91/src/beval.c:56:8: branch_false: ...to here
vim91/src/beval.c:56:8: branch_true: following ‘true’ branch (when ‘getword != 0’)...
vim91/src/beval.c:63:13: branch_true: ...to here
vim91/src/beval.c:63:12: branch_false: following ‘false’ branch...
vim91/src/beval.c:77:15: branch_false: ...to here
vim91/src/beval.c:80:12: branch_true: following ‘true’ branch...
vim91/src/beval.c:81:20: branch_true: ...to here
vim91/src/beval.c:80:13: branch_true: following ‘true’ branch...
vim91/src/beval.c:82:29: branch_true: ...to here
vim91/src/beval.c:82:29: danger: dereference of NULL ‘spos’
#   80|   	if (VIsual_active
#   81|   		&& wp->w_buffer == curwin->w_buffer
#   82|-> 		&& (lnum == spos->lnum
#   83|   		    ? col >= (int)spos->col
#   84|   		    : lnum > spos->lnum)

Error: COMPILER_WARNING: [#def17]
vim91/src/blob.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def18]
vim91/src/blowfish.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def19]
vim91/src/buffer.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def20]
vim91/src/bufwrite.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def21]
vim91/src/change.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def22]
vim91/src/channel.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def23]
vim91/src/channel.c:636:17: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘sd’
vim91/src/channel.c:5188:1: enter_function: entry to ‘f_ch_open’
vim91/src/channel.c:5191:8: branch_false: following ‘false’ branch...
vim91/src/channel.c:5193:29: call_function: calling ‘channel_open_func’ from ‘f_ch_open’
#  634|   		ioctlsocket(sd, FIONBIO, &val) < 0
#  635|   #else
#  636|-> 		fcntl(sd, F_SETFL, O_NONBLOCK) < 0
#  637|   #endif
#  638|   	       )

Error: GCC_ANALYZER_WARNING (CWE-775): [#def24]
vim91/src/channel.c:649:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘sd’
vim91/src/channel.c:5188:1: enter_function: entry to ‘f_ch_open’
vim91/src/channel.c:5191:8: branch_false: following ‘false’ branch...
vim91/src/channel.c:5193:29: call_function: calling ‘channel_open_func’ from ‘f_ch_open’
#  647|   
#  648|   	// Try connecting to the server.
#  649|-> 	ch_log(channel, "Connecting...");
#  650|   
#  651|   	ret = connect(sd, server_addr, server_addrlen);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def25]
vim91/src/channel.c:651:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘sd’
vim91/src/channel.c:5188:1: enter_function: entry to ‘f_ch_open’
vim91/src/channel.c:5191:8: branch_false: following ‘false’ branch...
vim91/src/channel.c:5193:29: call_function: calling ‘channel_open_func’ from ‘f_ch_open’
#  649|   	ch_log(channel, "Connecting...");
#  650|   
#  651|-> 	ret = connect(sd, server_addr, server_addrlen);
#  652|   	if (ret == 0)
#  653|   	    // The connection could be established.

Error: GCC_ANALYZER_WARNING (CWE-688): [#def26]
vim91/src/channel.c:2112:24: warning[-Wanalyzer-null-argument]: use of NULL ‘reader.js_buf’ where non-null expected
vim91/src/channel.c:2168:1: enter_function: entry to ‘channel_parse_json’
vim91/src/channel.c:2181:21: call_function: calling ‘channel_get’ from ‘channel_parse_json’
vim91/src/channel.c:2181:21: return_function: returning to ‘channel_parse_json’ from ‘channel_get’
vim91/src/channel.c:2187:8: branch_true: following ‘true’ branch...
vim91/src/channel.c:2188:18: branch_true: ...to here
vim91/src/channel.c:2188:18: call_function: calling ‘channel_process_lsp_http_hdr’ from ‘channel_parse_json’
# 2110|   
# 2111|       // We find the end once, to avoid calling strlen() many times.
# 2112|->     jsbuf_len = (int_u)STRLEN(reader->js_buf);
# 2113|       reader->js_end = reader->js_buf + jsbuf_len;
# 2114|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def27]
vim91/src/channel.c:2253:25: warning[-Wanalyzer-null-argument]: use of NULL ‘reader.js_buf’ where non-null expected
vim91/src/channel.c:2168:1: enter_function: entry to ‘channel_parse_json’
vim91/src/channel.c:2181:21: call_function: calling ‘channel_get’ from ‘channel_parse_json’
vim91/src/channel.c:2181:21: return_function: returning to ‘channel_parse_json’ from ‘channel_get’
vim91/src/channel.c:2187:8: branch_true: following ‘true’ branch...
vim91/src/channel.c:2188:18: branch_true: ...to here
vim91/src/channel.c:2188:18: call_function: calling ‘channel_process_lsp_http_hdr’ from ‘channel_parse_json’
vim91/src/channel.c:2188:18: return_function: returning to ‘channel_parse_json’ from ‘channel_process_lsp_http_hdr’
vim91/src/channel.c:2194:8: branch_false: following ‘false’ branch...
vim91/src/channel.c:2251:13: branch_false: ...to here
vim91/src/channel.c:2251:13: branch_true: following ‘true’ branch (when ‘status == 2’)...
vim91/src/channel.c:2253:25: branch_true: ...to here
vim91/src/channel.c:2253:25: release_memory: ‘reader.js_buf’ is NULL
vim91/src/channel.c:2253:25: danger: argument 1 (‘reader.js_buf’) NULL where non-null expected
# 2251|       else if (status == MAYBE)
# 2252|       {
# 2253|-> 	size_t buflen = STRLEN(reader.js_buf);
# 2254|   
# 2255|   	if (chanpart->ch_wait_len < buflen)

Error: GCC_ANALYZER_WARNING (CWE-476): [#def28]
vim91/src/channel.c:2311:14: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘reader.js_buf’
vim91/src/channel.c:2168:1: enter_function: entry to ‘channel_parse_json’
vim91/src/channel.c:2181:21: call_function: calling ‘channel_get’ from ‘channel_parse_json’
vim91/src/channel.c:2181:21: return_function: returning to ‘channel_parse_json’ from ‘channel_get’
vim91/src/channel.c:2187:8: branch_true: following ‘true’ branch...
vim91/src/channel.c:2188:18: branch_true: ...to here
vim91/src/channel.c:2188:18: call_function: calling ‘channel_process_lsp_http_hdr’ from ‘channel_parse_json’
vim91/src/channel.c:2188:18: return_function: returning to ‘channel_parse_json’ from ‘channel_process_lsp_http_hdr’
vim91/src/channel.c:2194:8: branch_false: following ‘false’ branch...
vim91/src/channel.c:2251:13: branch_false: ...to here
vim91/src/channel.c:2251:13: branch_true: following ‘true’ branch (when ‘status == 2’)...
vim91/src/channel.c:2253:25: branch_true: ...to here
vim91/src/channel.c:2253:25: release_memory: ‘reader.js_buf’ is NULL
vim91/src/channel.c:2305:8: branch_false: following ‘false’ branch (when ‘status != 0’)...
vim91/src/channel.c:2311:14: branch_false: ...to here
vim91/src/channel.c:2311:14: release_memory: ‘reader.js_buf’ is NULL
vim91/src/channel.c:2311:14: danger: dereference of NULL ‘reader.js_buf + (sizetype)reader.js_used’
# 2309|   	chanpart->ch_wait_len = 0;
# 2310|       }
# 2311|->     else if (reader.js_buf[reader.js_used] != NUL)
# 2312|       {
# 2313|   	// Put the unread part back into the channel.

Error: COMPILER_WARNING: [#def29]
vim91/src/charset.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-457): [#def30]
vim91/src/charset.c:449: warning[uninitvar]: Uninitialized variable: ga.ga_data
#  447|       // Make each character lower case.
#  448|       i = 0;
#  449|->     while (STR_CHAR(i) != NUL)
#  450|       {
#  451|   	if (enc_utf8 || (has_mbyte && MB_BYTE2LEN(STR_CHAR(i)) > 1))

Error: COMPILER_WARNING: [#def31]
vim91/src/cindent.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-909): [#def32]
vim91/src/cindent.c:2529: error[uninitStructMember]: Uninitialized struct member: our_paren_pos.lnum
# 2527|   	    }
# 2528|   
# 2529|-> 	    amount = skip_label(our_paren_pos.lnum, &look);
# 2530|   	    look = skipwhite(look);
# 2531|   	    if (*look == '(')

Error: CPPCHECK_WARNING (CWE-909): [#def33]
vim91/src/cindent.c:2597: error[uninitStructMember]: Uninitialized struct member: our_paren_pos.col
# 2595|   		    else
# 2596|   		    {
# 2597|-> 			col = our_paren_pos.col + 1;
# 2598|   			while (VIM_ISWHITE(l[col]))
# 2599|   			    col++;

Error: COMPILER_WARNING: [#def34]
vim91/src/clientserver.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-457): [#def35]
vim91/src/clientserver.c:958:17: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘w’
vim91/src/clientserver.c:885:8: branch_false: following ‘false’ branch...
vim91/src/clientserver.c:889:8: branch_false: following ‘false’ branch...
vim91/src/clientserver.c:892:9: branch_false: ...to here
vim91/src/clientserver.c:897:8: branch_false: following ‘false’ branch...
vim91/src/clientserver.c:899:12: branch_false: ...to here
vim91/src/clientserver.c:904:8: branch_false: following ‘false’ branch...
vim91/src/clientserver.c:910:9: branch_false: ...to here
vim91/src/clientserver.c:910:8: branch_false: following ‘false’ branch...
vim91/src/clientserver.c:936:5: branch_false: ...to here
vim91/src/clientserver.c:938:8: branch_true: following ‘true’ branch...
vim91/src/clientserver.c:949:17: branch_true: ...to here
vim91/src/clientserver.c:950:12: branch_true: following ‘true’ branch...
vim91/src/clientserver.c:957:16: branch_true: following ‘true’ branch...
vim91/src/clientserver.c:958:17: branch_true: ...to here
vim91/src/clientserver.c:958:17: danger: use of uninitialized value ‘w’ here
#  956|   #ifdef FEAT_X11
#  957|   	    if (clientserver_method == CLIENTSERVER_METHOD_X11)
#  958|-> 		sprintf((char *)str, PRINTF_HEX_LONG_U, (long_u)w);
#  959|   #endif
#  960|   #ifdef FEAT_SOCKETSERVER

Error: COMPILER_WARNING: [#def36]
vim91/src/clipboard.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def37]
vim91/src/clipboard.c:317:13: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cbd’
vim91/src/clipboard.c:3286:1: enter_function: entry to ‘vwl_data_source_listener_event_cancelled’
vim91/src/clipboard.c:3291:32: call_function: inlined call to ‘clip_wl_get_cbd_from_selection’ from ‘vwl_data_source_listener_event_cancelled’
vim91/src/clipboard.c:3293:5: call_function: calling ‘clip_lose_selection’ from ‘vwl_data_source_listener_event_cancelled’
#  315|   {
#  316|   #ifdef FEAT_X11
#  317|->     int	    was_owned = cbd->owned;
#  318|   #endif
#  319|       int     visual_selection = FALSE;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def38]
vim91/src/clipboard.c:2794:5: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/clipboard.c:2785:1: enter_function: entry to ‘vwl_data_device_listener_event_selection’
vim91/src/clipboard.c:2791:32: call_function: inlined call to ‘clip_wl_get_selection’ from ‘vwl_data_device_listener_event_selection’
vim91/src/clipboard.c:2794:5: danger: dereference of NULL ‘<unknown>’
# 2792|   
# 2793|       // Destroy previous offer if any, it is now invalid
# 2794|->     vwl_data_offer_destroy(sel->offer);
# 2795|   
# 2796|       // There are two cases when sel->offer is NULL

Error: GCC_ANALYZER_WARNING (CWE-476): [#def39]
vim91/src/clipboard.c:2928:16: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/clipboard.c:2857:1: enter_function: entry to ‘clip_init_wayland’
vim91/src/clipboard.c:2861:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:2864:5: call_function: inlined call to ‘memset’ from ‘clip_init_wayland’
vim91/src/clipboard.c:2868:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:2871:31: branch_false: ...to here
vim91/src/clipboard.c:2892:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:2894:35: branch_true: ...to here
vim91/src/clipboard.c:2897:12: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:2899:38: branch_true: ...to here
vim91/src/clipboard.c:2902:16: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:2906:17: branch_false: ...to here
vim91/src/clipboard.c:2907:17: release_memory: using NULL here
vim91/src/clipboard.c:2927:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:2928:16: branch_true: ...to here
vim91/src/clipboard.c:2928:16: release_memory: using NULL here
vim91/src/clipboard.c:2928:16: danger: dereference of NULL ‘clip_wl.primary.manager’
# 2926|   	clip_wl.regular.requires_focus = true;
# 2927|       if (clip_wl.primary.available
# 2928|-> 	    && clip_wl.primary.manager->protocol == VWL_DATA_PROTOCOL_PRIMARY
# 2929|   	    && clip_wl_focus_stealing_available())
# 2930|   	clip_wl.primary.requires_focus = true;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def40]
vim91/src/clipboard.c:3034:28: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fds[0]’
vim91/src/clipboard.c:3132:1: enter_function: entry to ‘clip_wl_request_selection’
vim91/src/clipboard.c:3140:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3144:9: branch_true: ...to here
vim91/src/clipboard.c:3144:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3157:13: branch_false: ...to here
vim91/src/clipboard.c:3157:12: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3161:9: branch_false: ...to here
vim91/src/clipboard.c:3161:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3164:5: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3169:21: branch_true: ...to here
vim91/src/clipboard.c:3173:16: branch_true: following ‘true’ branch (when the strings are equal)...
vim91/src/clipboard.c:3173:16: branch_true: ...to here
vim91/src/clipboard.c:3172:25: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3170:37: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3177:8: branch_false: ...to here
vim91/src/clipboard.c:3177:8: branch_false: following ‘false’ branch (when ‘chosen_mime’ is non-NULL)...
vim91/src/clipboard.c:3177:32: branch_false: ...to here
vim91/src/clipboard.c:3177:9: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3180:53: branch_false: ...to here
vim91/src/clipboard.c:3185:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3186:9: branch_true: ...to here
vim91/src/clipboard.c:3186:9: call_function: calling ‘clip_wl_receive_data’ from ‘clip_wl_request_selection’
# 3032|   
# 3033|       // Make pipe (read end) non-blocking
# 3034|->     if (fcntl(fd, F_SETFL, fcntl(fd, F_GETFL) | O_NONBLOCK) == -1)
# 3035|   	return;
# 3036|   

Error: CPPCHECK_WARNING (CWE-457): [#def41]
vim91/src/clipboard.c:3049: error[uninitvar]: Uninitialized variable: tv
# 3047|       while (poll(&pfd, 1, p_wtm) > 0)
# 3048|   #else
# 3049|->     while (tv.tv_sec = p_wtm / 1000, tv.tv_usec = (p_wtm % 1000) * 1000,
# 3050|   	    select(fd + 1, &rfds, NULL, NULL, &tv) > 0)
# 3051|   #endif

Error: GCC_ANALYZER_WARNING (CWE-476): [#def42]
vim91/src/clipboard.c:3140:10: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/clipboard.c:3132:1: enter_function: entry to ‘clip_wl_request_selection’
vim91/src/clipboard.c:3134:32: call_function: inlined call to ‘clip_wl_get_selection_from_cbd’ from ‘clip_wl_request_selection’
vim91/src/clipboard.c:3140:10: danger: dereference of NULL ‘<unknown>’
# 3138|       const char		*chosen_mime = NULL;
# 3139|   
# 3140|->     if (!sel->available)
# 3141|   	goto clear;
# 3142|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def43]
vim91/src/clipboard.c:3180:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fds[0]’
vim91/src/clipboard.c:3140:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3144:9: branch_true: ...to here
vim91/src/clipboard.c:3144:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3157:13: branch_false: ...to here
vim91/src/clipboard.c:3157:12: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3161:9: branch_false: ...to here
vim91/src/clipboard.c:3161:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3164:5: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3169:21: branch_true: ...to here
vim91/src/clipboard.c:3173:16: branch_true: following ‘true’ branch (when the strings are equal)...
vim91/src/clipboard.c:3173:16: branch_true: ...to here
vim91/src/clipboard.c:3172:25: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3170:37: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3177:8: branch_false: ...to here
vim91/src/clipboard.c:3177:8: branch_false: following ‘false’ branch (when ‘chosen_mime’ is non-NULL)...
vim91/src/clipboard.c:3177:32: branch_false: ...to here
vim91/src/clipboard.c:3177:9: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3180:53: branch_false: ...to here
vim91/src/clipboard.c:3180:5: throw: if ‘vwl_data_offer_receive’ throws an exception...
vim91/src/clipboard.c:3180:5: danger: ‘fds[0]’ leaks here
# 3178|   	goto clear;
# 3179|   
# 3180|->     vwl_data_offer_receive(sel->offer, chosen_mime, fds[1]);
# 3181|   
# 3182|       close(fds[1]); // Close before we read data so that when the source client

Error: GCC_ANALYZER_WARNING (CWE-775): [#def44]
vim91/src/clipboard.c:3180:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fds[1]’
vim91/src/clipboard.c:3140:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3144:9: branch_true: ...to here
vim91/src/clipboard.c:3144:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3157:13: branch_false: ...to here
vim91/src/clipboard.c:3157:12: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3161:9: branch_false: ...to here
vim91/src/clipboard.c:3161:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3164:5: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3169:21: branch_true: ...to here
vim91/src/clipboard.c:3173:16: branch_true: following ‘true’ branch (when the strings are equal)...
vim91/src/clipboard.c:3173:16: branch_true: ...to here
vim91/src/clipboard.c:3172:25: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3170:37: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3177:8: branch_false: ...to here
vim91/src/clipboard.c:3177:8: branch_false: following ‘false’ branch (when ‘chosen_mime’ is non-NULL)...
vim91/src/clipboard.c:3177:32: branch_false: ...to here
vim91/src/clipboard.c:3177:9: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3180:53: branch_false: ...to here
vim91/src/clipboard.c:3180:5: throw: if ‘vwl_data_offer_receive’ throws an exception...
vim91/src/clipboard.c:3180:5: danger: ‘fds[1]’ leaks here
# 3178|   	goto clear;
# 3179|   
# 3180|->     vwl_data_offer_receive(sel->offer, chosen_mime, fds[1]);
# 3181|   
# 3182|       close(fds[1]); // Close before we read data so that when the source client

Error: GCC_ANALYZER_WARNING (CWE-775): [#def45]
vim91/src/clipboard.c:3182:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fds[0]’
vim91/src/clipboard.c:3140:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3144:9: branch_true: ...to here
vim91/src/clipboard.c:3144:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3157:13: branch_false: ...to here
vim91/src/clipboard.c:3157:12: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3161:9: branch_false: ...to here
vim91/src/clipboard.c:3161:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3164:5: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3169:21: branch_true: ...to here
vim91/src/clipboard.c:3173:16: branch_true: following ‘true’ branch (when the strings are equal)...
vim91/src/clipboard.c:3173:16: branch_true: ...to here
vim91/src/clipboard.c:3172:25: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3170:37: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3177:8: branch_false: ...to here
vim91/src/clipboard.c:3177:8: branch_false: following ‘false’ branch (when ‘chosen_mime’ is non-NULL)...
vim91/src/clipboard.c:3177:32: branch_false: ...to here
vim91/src/clipboard.c:3177:9: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3180:53: branch_false: ...to here
vim91/src/clipboard.c:3182:5: throw: if ‘close’ throws an exception...
vim91/src/clipboard.c:3182:5: danger: ‘fds[0]’ leaks here
# 3180|       vwl_data_offer_receive(sel->offer, chosen_mime, fds[1]);
# 3181|   
# 3182|->     close(fds[1]); // Close before we read data so that when the source client
# 3183|   		   // closes their end we receive an EOF.
# 3184|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def46]
vim91/src/clipboard.c:3185:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fds[0]’
vim91/src/clipboard.c:3140:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3144:9: branch_true: ...to here
vim91/src/clipboard.c:3144:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3157:13: branch_false: ...to here
vim91/src/clipboard.c:3157:12: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3161:9: branch_false: ...to here
vim91/src/clipboard.c:3161:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3164:5: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3169:21: branch_true: ...to here
vim91/src/clipboard.c:3173:16: branch_true: following ‘true’ branch (when the strings are equal)...
vim91/src/clipboard.c:3173:16: branch_true: ...to here
vim91/src/clipboard.c:3172:25: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3170:37: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3177:8: branch_false: ...to here
vim91/src/clipboard.c:3177:8: branch_false: following ‘false’ branch (when ‘chosen_mime’ is non-NULL)...
vim91/src/clipboard.c:3177:32: branch_false: ...to here
vim91/src/clipboard.c:3177:9: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3180:53: branch_false: ...to here
vim91/src/clipboard.c:3185:9: throw: if ‘vwl_connection_flush’ throws an exception...
vim91/src/clipboard.c:3185:9: danger: ‘fds[0]’ leaks here
# 3183|   		   // closes their end we receive an EOF.
# 3184|   
# 3185|->     if (vwl_connection_flush(wayland_ct) >= 0)
# 3186|   	clip_wl_receive_data(cbd, chosen_mime, fds[0]);
# 3187|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def47]
vim91/src/clipboard.c:3188:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fds[0]’
vim91/src/clipboard.c:3140:8: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3144:9: branch_true: ...to here
vim91/src/clipboard.c:3144:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3157:13: branch_false: ...to here
vim91/src/clipboard.c:3157:12: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3161:9: branch_false: ...to here
vim91/src/clipboard.c:3161:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3164:5: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_true: following ‘true’ branch...
vim91/src/clipboard.c:3169:21: branch_true: ...to here
vim91/src/clipboard.c:3173:16: branch_true: following ‘true’ branch (when the strings are equal)...
vim91/src/clipboard.c:3173:16: branch_true: ...to here
vim91/src/clipboard.c:3172:25: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3170:37: branch_false: ...to here
vim91/src/clipboard.c:3169:21: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3177:8: branch_false: ...to here
vim91/src/clipboard.c:3177:8: branch_false: following ‘false’ branch (when ‘chosen_mime’ is non-NULL)...
vim91/src/clipboard.c:3177:32: branch_false: ...to here
vim91/src/clipboard.c:3177:9: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3180:53: branch_false: ...to here
vim91/src/clipboard.c:3185:8: branch_false: following ‘false’ branch...
vim91/src/clipboard.c:3188:5: branch_false: ...to here
vim91/src/clipboard.c:3188:5: throw: if ‘close’ throws an exception...
vim91/src/clipboard.c:3188:5: danger: ‘fds[0]’ leaks here
# 3186|   	clip_wl_receive_data(cbd, chosen_mime, fds[0]);
# 3187|   
# 3188|->     close(fds[0]);
# 3189|   
# 3190|       return;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def48]
vim91/src/clipboard.c:3323:10: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/clipboard.c:3318:1: enter_function: entry to ‘clip_wl_own_selection’
vim91/src/clipboard.c:3320:32: call_function: inlined call to ‘clip_wl_get_selection_from_cbd’ from ‘clip_wl_own_selection’
vim91/src/clipboard.c:3321:36: call_function: inlined call to ‘clip_wl_get_selection_type’ from ‘clip_wl_own_selection’
vim91/src/clipboard.c:3323:10: danger: dereference of NULL ‘<unknown>’
# 3321|       wayland_selection_T sel_type = clip_wl_get_selection_type(sel);
# 3322|   
# 3323|->     if (!sel->available || vwl_connection_roundtrip(wayland_ct) == FAIL)
# 3324|   	return FAIL;
# 3325|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def49]
vim91/src/clipboard.c:3390:10: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/clipboard.c:3386:1: enter_function: entry to ‘clip_wl_lose_selection’
vim91/src/clipboard.c:3388:32: call_function: inlined call to ‘clip_wl_get_selection_from_cbd’ from ‘clip_wl_lose_selection’
vim91/src/clipboard.c:3390:10: danger: dereference of NULL ‘<unknown>’
# 3388|       clip_wl_selection_T *sel = clip_wl_get_selection_from_cbd(cbd);
# 3389|   
# 3390|->     if (!sel->available)
# 3391|   	return;
# 3392|   

Error: COMPILER_WARNING: [#def50]
vim91/src/cmdexpand.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-131): [#def51]
vim91/src/cmdexpand.c:3427:5: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size
# 3425|   								options);
# 3426|   
# 3427|->     *matches = (char_u **)"";
# 3428|       *numMatches = 0;
# 3429|       if (xp->xp_context == EXPAND_HELP)

Error: COMPILER_WARNING: [#def52]
vim91/src/cmdhist.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def53]
vim91/src/cmdhist.c:171:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘temp’
vim91/src/cmdhist.c:132:8: branch_false: following ‘false’ branch...
vim91/src/cmdhist.c:132:8: branch_false: ...to here
vim91/src/cmdhist.c:136:20: branch_true: following ‘true’ branch (when ‘type <= 4’)...
vim91/src/cmdhist.c:138:12: branch_true: ...to here
vim91/src/cmdhist.c:138:12: branch_false: following ‘false’ branch (when ‘newlen <= 0’)...
vim91/src/cmdhist.c:158:13: branch_false: ...to here
vim91/src/cmdhist.c:158:12: branch_false: following ‘false’ branch...
vim91/src/cmdhist.c:165:18: branch_false: ...to here
vim91/src/cmdhist.c:165:17: branch_true: following ‘true’ branch...
vim91/src/cmdhist.c:165:17: branch_true: ...to here
vim91/src/cmdhist.c:170:25: branch_true: following ‘true’ branch...
vim91/src/cmdhist.c:171:27: branch_true: ...to here
vim91/src/cmdhist.c:171:17: danger: dereference of NULL ‘temp + (long unsigned int)i * 32’
#  169|   
#  170|   	    for (i = 0; i <= hisidx[type]; ++i)
#  171|-> 		temp[i] = history[type][i];
#  172|   	    j = i;
#  173|   	    for ( ; i <= newlen - (hislen - hisidx[type]); ++i)

Error: COMPILER_WARNING: [#def54]
vim91/src/crypt.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def55]
vim91/src/crypt.c:814:19: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen("/proc/sys/crypto/fips_enabled", "r")’
vim91/src/crypt.c:810:28: acquire_resource: opened here
vim91/src/crypt.c:811:8: branch_false: following ‘false’ branch...
vim91/src/crypt.c:814:19: branch_false: ...to here
vim91/src/crypt.c:814:19: throw: if ‘fgetc’ throws an exception...
vim91/src/crypt.c:814:19: danger: ‘fopen("/proc/sys/crypto/fips_enabled", "r")’ leaks here; was opened at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#  812|   	return;
#  813|   
#  814|->     int enabled = fgetc(fips_enable_fd);
#  815|   
#  816|       if ( access(SYSTEM_FIPS_FILE_LINK, F_OK) != -1 && enabled == '1')

Error: GCC_ANALYZER_WARNING (CWE-401): [#def56]
vim91/src/crypt.c:814:19: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen("/proc/sys/crypto/fips_enabled", "r")’
vim91/src/crypt.c:810:28: acquire_memory: allocated here
vim91/src/crypt.c:811:8: branch_false: following ‘false’ branch...
vim91/src/crypt.c:814:19: branch_false: ...to here
vim91/src/crypt.c:814:19: throw: if ‘fgetc’ throws an exception...
vim91/src/crypt.c:814:19: danger: ‘fopen("/proc/sys/crypto/fips_enabled", "r")’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#  812|   	return;
#  813|   
#  814|->     int enabled = fgetc(fips_enable_fd);
#  815|   
#  816|       if ( access(SYSTEM_FIPS_FILE_LINK, F_OK) != -1 && enabled == '1')

Error: GCC_ANALYZER_WARNING (CWE-775): [#def57]
vim91/src/crypt.c:819:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen("/proc/sys/crypto/fips_enabled", "r")’
vim91/src/crypt.c:810:28: acquire_resource: opened here
vim91/src/crypt.c:811:8: branch_false: following ‘false’ branch...
vim91/src/crypt.c:814:19: branch_false: ...to here
vim91/src/crypt.c:816:8: branch_true: following ‘true’ branch...
vim91/src/crypt.c:819:9: throw: if ‘msg’ throws an exception...
vim91/src/crypt.c:819:9: danger: ‘fopen("/proc/sys/crypto/fips_enabled", "r")’ leaks here; was opened at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  817|       {
#  818|   	msg_scroll = TRUE;
#  819|-> 	msg(_("Warning: This cryptography is not FIPS 140-2 compliant."));
#  820|       }
#  821|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def58]
vim91/src/crypt.c:819:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen("/proc/sys/crypto/fips_enabled", "r")’
vim91/src/crypt.c:810:28: acquire_memory: allocated here
vim91/src/crypt.c:811:8: branch_false: following ‘false’ branch...
vim91/src/crypt.c:814:19: branch_false: ...to here
vim91/src/crypt.c:816:8: branch_true: following ‘true’ branch...
vim91/src/crypt.c:819:9: throw: if ‘msg’ throws an exception...
vim91/src/crypt.c:819:9: danger: ‘fopen("/proc/sys/crypto/fips_enabled", "r")’ leaks here; was allocated at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#  817|       {
#  818|   	msg_scroll = TRUE;
#  819|-> 	msg(_("Warning: This cryptography is not FIPS 140-2 compliant."));
#  820|       }
#  821|   

Error: COMPILER_WARNING: [#def59]
vim91/src/crypt_zip.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def60]
vim91/src/debugger.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def61]
vim91/src/dict.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def62]
vim91/src/diff.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-457): [#def63]
vim91/src/diff.c:2406: warning[uninitvar]: Uninitialized variable: diff_length
# 2404|       const int iwhite = (diff_flags & (DIFF_IWHITEALL | DIFF_IWHITE)) > 0 ? 1 : 0;
# 2405|       size_t decisions_length =
# 2406|-> 	linematch_nbuffers(diffbufs, diff_length, ndiffs, &decisions, iwhite);
# 2407|   
# 2408|       for (size_t i = 0; i < ndiffs; i++)

Error: COMPILER_WARNING: [#def64]
vim91/src/digraph.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def65]
vim91/src/drawline.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def66]
vim91/src/drawscreen.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def67]
vim91/src/edit.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def68]
vim91/src/eval.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def69]
vim91/src/evalbuffer.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def70]
vim91/src/evalfunc.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-457): [#def71]
vim91/src/evalfunc.c:4809:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘save_ga.ga_len’
vim91/src/evalfunc.c:4732:13: branch_false: following ‘false’ branch...
vim91/src/evalfunc.c:4741:15: branch_false: ...to here
vim91/src/evalfunc.c:4742:12: branch_false: following ‘false’ branch...
vim91/src/evalfunc.c:4746:17: branch_false: ...to here
vim91/src/evalfunc.c:4767:8: branch_false: following ‘false’ branch...
vim91/src/evalfunc.c:4769:5: branch_false: ...to here
vim91/src/evalfunc.c:4778:8: branch_true: following ‘true’ branch (when ‘cmd’ is non-NULL)...
vim91/src/evalfunc.c:4779:9: branch_true: ...to here
vim91/src/evalfunc.c:4808:8: branch_true: following ‘true’ branch (when ‘save_redir_execute != 0’)...
vim91/src/evalfunc.c:4809:9: branch_true: ...to here
vim91/src/evalfunc.c:4809:9: danger: use of uninitialized value ‘save_ga.ga_len’ here
# 4807|       redir_execute = save_redir_execute;
# 4808|       if (redir_execute)
# 4809|-> 	redir_execute_ga = save_ga;
# 4810|       redir_off = save_redir_off;
# 4811|   

Error: COMPILER_WARNING: [#def72]
vim91/src/evalvars.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def73]
vim91/src/evalwindow.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def74]
vim91/src/ex_cmds.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def75]
vim91/src/ex_cmds.c:3127:54: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘oldwin’
vim91/src/ex_cmds.c:2791:27: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:2794:9: branch_false: ...to here
vim91/src/ex_cmds.c:2794:8: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:2798:8: branch_false: ...to here
vim91/src/ex_cmds.c:2798:8: branch_true: following ‘true’ branch (when ‘eap’ is non-NULL)...
vim91/src/ex_cmds.c:2799:9: branch_true: ...to here
vim91/src/ex_cmds.c:2804:12: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:2871:23: branch_false: ...to here
vim91/src/ex_cmds.c:2925:8: branch_true: following ‘true’ branch (when ‘other_file != 0’)...
vim91/src/ex_cmds.c:2927:35: branch_true: ...to here
vim91/src/ex_cmds.c:2975:12: branch_false: following ‘false’ branch (when ‘buf’ is non-NULL)...
vim91/src/ex_cmds.c:2979:13: branch_false: ...to here
vim91/src/ex_cmds.c:2979:12: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:2990:19: branch_false: ...to here
vim91/src/ex_cmds.c:3028:12: branch_true: following ‘true’ branch...
vim91/src/ex_cmds.c:3031:25: branch_true: ...to here
vim91/src/ex_cmds.c:3037:13: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:3040:13: branch_false: ...to here
vim91/src/ex_cmds.c:3041:13: release_memory: ‘oldwin’ is NULL
vim91/src/ex_cmds.c:3053:16: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:3055:13: branch_false: ...to here
vim91/src/ex_cmds.c:3062:16: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:3070:17: branch_false: ...to here
vim91/src/ex_cmds.c:3070:16: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:3077:17: branch_false: ...to here
vim91/src/ex_cmds.c:3077:16: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:3081:30: branch_false: ...to here
vim91/src/ex_cmds.c:3114:20: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:3121:21: branch_false: ...to here
vim91/src/ex_cmds.c:3121:20: branch_true: following ‘true’ branch...
vim91/src/ex_cmds.c:3125:24: branch_true: ...to here
vim91/src/ex_cmds.c:3127:24: branch_true: following ‘true’ branch...
vim91/src/ex_cmds.c:3127:54: branch_true: ...to here
vim91/src/ex_cmds.c:3127:54: danger: dereference of NULL ‘oldwin’
# 3125|   		    if (did_decrement && buf_valid(was_curbuf))
# 3126|   			++was_curbuf->b_nwindows;
# 3127|-> 		    if (win_valid_any_tab(oldwin) && oldwin->w_buffer == NULL)
# 3128|   			oldwin->w_buffer = was_curbuf;
# 3129|   		    auto_buf = TRUE;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def76]
vim91/src/ex_cmds.c:4349:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘sub’
vim91/src/ex_cmds.c:4134:13: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:4200:9: branch_false: ...to here
vim91/src/ex_cmds.c:4274:8: branch_true: following ‘true’ branch...
vim91/src/ex_cmds.c:4276:13: branch_true: ...to here
vim91/src/ex_cmds.c:4283:17: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:4291:22: branch_false: ...to here
vim91/src/ex_cmds.c:4312:8: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:4318:10: branch_false: ...to here
vim91/src/ex_cmds.c:4326:8: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:4335:9: branch_false: ...to here
vim91/src/ex_cmds.c:4335:8: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:4337:13: branch_false: ...to here
vim91/src/ex_cmds.c:4337:13: branch_false: following ‘false’ branch...
vim91/src/ex_cmds.c:4349:9: branch_false: ...to here
vim91/src/ex_cmds.c:4349:9: danger: dereference of NULL ‘sub’
# 4347|        * again.
# 4348|        */
# 4349|->     if (sub[0] == '\\' && sub[1] == '=')
# 4350|       {
# 4351|   	p = vim_strsave(sub);

Error: COMPILER_WARNING: [#def77]
vim91/src/ex_cmds2.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def78]
vim91/src/ex_cmds2.c:645:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘tp’
vim91/src/ex_cmds2.c:516:8: branch_false: following ‘false’ branch...
vim91/src/ex_cmds2.c:516:9: branch_false: following ‘false’ branch...
vim91/src/ex_cmds2.c:543:9: branch_false: ...to here
vim91/src/ex_cmds2.c:571:12: branch_false: following ‘false’ branch...
vim91/src/ex_cmds2.c:606:13: branch_false: ...to here
vim91/src/ex_cmds2.c:609:16: branch_true: following ‘true’ branch...
vim91/src/ex_cmds2.c:611:16: branch_false: following ‘false’ branch...
vim91/src/ex_cmds2.c:629:21: branch_false: ...to here
vim91/src/ex_cmds2.c:629:21: branch_false: following ‘false’ branch...
vim91/src/ex_cmds2.c:639:21: branch_false: ...to here
vim91/src/ex_cmds2.c:639:21: branch_true: following ‘true’ branch...
vim91/src/ex_cmds2.c:642:22: branch_true: ...to here
vim91/src/ex_cmds2.c:642:20: branch_false: following ‘false’ branch...
vim91/src/ex_cmds2.c:644:17: branch_false: ...to here
vim91/src/ex_cmds2.c:645:17: danger: dereference of NULL ‘tp’
#  643|   		    break;
#  644|   		goto_tabpage_tp(tp, TRUE, TRUE);
#  645|-> 		tp = tp->tp_next;
#  646|   	    }
#  647|   	    else if (eap->cmdidx == CMD_bufdo)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def79]
vim91/src/ex_cmds2.c:889:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(filename, "r")’
vim91/src/ex_cmds2.c:880:8: branch_false: following ‘false’ branch (when ‘lines >= 0’)...
vim91/src/ex_cmds2.c:883:12: branch_false: ...to here
vim91/src/ex_cmds2.c:883:12: acquire_resource: opened here
vim91/src/ex_cmds2.c:884:8: branch_false: following ‘false’ branch...
vim91/src/ex_cmds2.c:884:8: branch_false: ...to here
vim91/src/ex_cmds2.c:887:17: branch_true: following ‘true’ branch (when ‘i < lines’)...
vim91/src/ex_cmds2.c:889:13: branch_true: ...to here
vim91/src/ex_cmds2.c:889:13: throw: if ‘vim_fgets’ throws an exception...
vim91/src/ex_cmds2.c:889:13: danger: ‘fopen(filename, "r")’ leaks here; was opened at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#  887|       for (i = 0; i < lines; i++)
#  888|       {
#  889|-> 	if (vim_fgets(IObuff, IOSIZE, file))
#  890|   	    break;
#  891|   	if (i == 0 && IObuff[0] == '#' && IObuff[1] == '!')

Error: GCC_ANALYZER_WARNING (CWE-401): [#def80]
vim91/src/ex_cmds2.c:889:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(filename, "r")’
vim91/src/ex_cmds2.c:880:8: branch_false: following ‘false’ branch (when ‘lines >= 0’)...
vim91/src/ex_cmds2.c:883:12: branch_false: ...to here
vim91/src/ex_cmds2.c:883:12: acquire_memory: allocated here
vim91/src/ex_cmds2.c:884:8: branch_false: following ‘false’ branch...
vim91/src/ex_cmds2.c:884:8: branch_false: ...to here
vim91/src/ex_cmds2.c:887:17: branch_true: following ‘true’ branch (when ‘i < lines’)...
vim91/src/ex_cmds2.c:889:13: branch_true: ...to here
vim91/src/ex_cmds2.c:889:13: throw: if ‘vim_fgets’ throws an exception...
vim91/src/ex_cmds2.c:889:13: danger: ‘fopen(filename, "r")’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#  887|       for (i = 0; i < lines; i++)
#  888|       {
#  889|-> 	if (vim_fgets(IObuff, IOSIZE, file))
#  890|   	    break;
#  891|   	if (i == 0 && IObuff[0] == '#' && IObuff[1] == '!')

Error: COMPILER_WARNING: [#def81]
vim91/src/ex_docmd.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-786): [#def82]
vim91/src/ex_docmd.c:3972: error[negativeIndex]: Array 'cmdidxs2[26][26]' accessed at index cmdidxs2[*][-97], which is out of bounds.
# 3970|   	    eap->cmdidx = cmdidxs1[CharOrdLow(c1)];
# 3971|   	    if (ASCII_ISLOWER(c2))
# 3972|-> 		eap->cmdidx += cmdidxs2[CharOrdLow(c1)][CharOrdLow(c2)];
# 3973|   	}
# 3974|   	else if (ASCII_ISUPPER(eap->cmd[0]))

Error: CPPCHECK_WARNING (CWE-562): [#def83]
vim91/src/ex_docmd.c:7263: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
# 7261|   	    // Edit the directory.
# 7262|   	    if (*eap->arg == NUL || !mch_isdir(eap->arg))
# 7263|-> 		eap->arg = dot_path;
# 7264|   	}
# 7265|   	else

Error: COMPILER_WARNING: [#def84]
vim91/src/ex_eval.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def85]
vim91/src/ex_eval.c:861:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘value’
vim91/src/ex_eval.c:2479:1: enter_function: entry to ‘cleanup_conditionals’
vim91/src/ex_eval.c:2487:32: branch_true: following ‘true’ branch (when ‘idx >= 0’)...
vim91/src/ex_eval.c:2489:13: branch_true: ...to here
vim91/src/ex_eval.c:2489:12: branch_true: following ‘true’ branch...
vim91/src/ex_eval.c:2497:17: branch_true: ...to here
vim91/src/ex_eval.c:2507:25: call_function: calling ‘report_discard_pending’ from ‘cleanup_conditionals’
#  859|   		mesg = (char *)vim_strnsave(IObuff, STRLEN(IObuff) + 4);
#  860|   		STRCAT(mesg, ": %s");
#  861|-> 		s = (char *)((except_T *)value)->value;
#  862|   	    }
#  863|   	    else if ((pending & CSTP_ERROR) && (pending & CSTP_INTERRUPT))

Error: COMPILER_WARNING: [#def86]
vim91/src/ex_getln.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def87]
vim91/src/fileio.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-401): [#def88]
vim91/src/fileio.c:5094:18: warning[-Wanalyzer-malloc-leak]: leak of ‘opendir(path)’
vim91/src/fileio.c:5081:12: acquire_memory: allocated here
vim91/src/fileio.c:5082:8: branch_false: following ‘false’ branch...
vim91/src/fileio.c:5082:8: branch_false: ...to here
vim91/src/fileio.c:5094:18: throw: if ‘readdir’ throws an exception...
vim91/src/fileio.c:5094:18: danger: ‘opendir(path)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
# 5092|   	    void    *item;
# 5093|   
# 5094|-> 	    dp = readdir(dirp);
# 5095|   	    if (dp == NULL)
# 5096|   		break;

Error: COMPILER_WARNING: [#def89]
vim91/src/filepath.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def90]
vim91/src/findfile.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def91]
vim91/src/float.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def92]
vim91/src/fold.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def93]
vim91/src/fuzzy.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def94]
vim91/src/gc.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def95]
vim91/src/getchar.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def96]
vim91/src/gui.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def97]
vim91/src/gui.c:195:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  193|   #endif
#  194|   
#  195|->     termcapinit((char_u *)"builtin_gui");
#  196|       gui.starting = recursive - 1;
#  197|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def98]
vim91/src/gui.c:205:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  203|   	Display	*x11_display;
#  204|   
#  205|-> 	if (gui_get_x11_windis(&x11_window, &x11_display) == OK)
#  206|   	    set_vim_var_nr(VV_WINDOWID, (long)x11_window);
#  207|   # endif

Error: GCC_ANALYZER_WARNING (CWE-775): [#def99]
vim91/src/gui.c:206:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  204|   
#  205|   	if (gui_get_x11_windis(&x11_window, &x11_display) == OK)
#  206|-> 	    set_vim_var_nr(VV_WINDOWID, (long)x11_window);
#  207|   # endif
#  208|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def100]
vim91/src/gui.c:256:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[0]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  254|       if (pid < 0)	    // Fork error
#  255|       {
#  256|-> 	emsg(_(e_failed_to_create_new_process_for_GUI));
#  257|   	return;
#  258|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def101]
vim91/src/gui.c:256:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  254|       if (pid < 0)	    // Fork error
#  255|       {
#  256|-> 	emsg(_(e_failed_to_create_new_process_for_GUI));
#  257|   	return;
#  258|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def102]
vim91/src/gui.c:257:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[0]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  255|       {
#  256|   	emsg(_(e_failed_to_create_new_process_for_GUI));
#  257|-> 	return;
#  258|       }
#  259|       else if (pid > 0)	    // Parent

Error: GCC_ANALYZER_WARNING (CWE-775): [#def103]
vim91/src/gui.c:257:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  255|       {
#  256|   	emsg(_(e_failed_to_create_new_process_for_GUI));
#  257|-> 	return;
#  258|       }
#  259|       else if (pid > 0)	    // Parent

Error: GCC_ANALYZER_WARNING (CWE-775): [#def104]
vim91/src/gui.c:268:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[0]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  266|   	    // The read returns when the child closes the pipe (or when
#  267|   	    // the child dies for some reason).
#  268|-> 	    close(pipefd[1]);
#  269|   	    status = gui_read_child_pipe(pipefd[0]);
#  270|   	    if (status == GUI_CHILD_FAILED)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def105]
vim91/src/gui.c:268:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  266|   	    // The read returns when the child closes the pipe (or when
#  267|   	    // the child dies for some reason).
#  268|-> 	    close(pipefd[1]);
#  269|   	    status = gui_read_child_pipe(pipefd[0]);
#  270|   	    if (status == GUI_CHILD_FAILED)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def106]
vim91/src/gui.c:308:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[0]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  306|   # ifdef FEAT_GUI_GTK
#  307|       // Call gtk_init_check() here after fork(). See gui_init_check().
#  308|->     if (gui_mch_init_check() != OK)
#  309|   	getout_preserve_modified(1);
#  310|   # endif

Error: GCC_ANALYZER_WARNING (CWE-775): [#def107]
vim91/src/gui.c:308:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  306|   # ifdef FEAT_GUI_GTK
#  307|       // Call gtk_init_check() here after fork(). See gui_init_check().
#  308|->     if (gui_mch_init_check() != OK)
#  309|   	getout_preserve_modified(1);
#  310|   # endif

Error: GCC_ANALYZER_WARNING (CWE-775): [#def108]
vim91/src/gui.c:309:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[0]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  307|       // Call gtk_init_check() here after fork(). See gui_init_check().
#  308|       if (gui_mch_init_check() != OK)
#  309|-> 	getout_preserve_modified(1);
#  310|   # endif
#  311|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def109]
vim91/src/gui.c:309:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  307|       // Call gtk_init_check() here after fork(). See gui_init_check().
#  308|       if (gui_mch_init_check() != OK)
#  309|-> 	getout_preserve_modified(1);
#  310|   # endif
#  311|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def110]
vim91/src/gui.c:324:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[0]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  322|   # endif
#  323|       if (!pipe_error)
#  324|-> 	close(pipefd[0]);
#  325|   
#  326|   # if defined(FEAT_GUI_GNOME) && defined(FEAT_SESSION)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def111]
vim91/src/gui.c:324:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  322|   # endif
#  323|       if (!pipe_error)
#  324|-> 	close(pipefd[0]);
#  325|   
#  326|   # if defined(FEAT_GUI_GNOME) && defined(FEAT_SESSION)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def112]
vim91/src/gui.c:338:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  336|       {
#  337|   	if (gui.in_use)
#  338|-> 	    write_eintr(pipefd[1], "ok", 3);
#  339|   	else
#  340|   	    write_eintr(pipefd[1], "fail", 5);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def113]
vim91/src/gui.c:340:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  338|   	    write_eintr(pipefd[1], "ok", 3);
#  339|   	else
#  340|-> 	    write_eintr(pipefd[1], "fail", 5);
#  341|   	close(pipefd[1]);
#  342|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def114]
vim91/src/gui.c:365:18: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[0]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
#  363|       char	buffer[READ_BUFFER_SIZE];
#  364|   
#  365|->     bytes_read = read_eintr(fd, buffer, READ_BUFFER_SIZE - 1);
#  366|   # undef READ_BUFFER_SIZE
#  367|       close(fd);

Error: CPPCHECK_WARNING (CWE-457): [#def115]
vim91/src/gui.c:2338: warning[uninitvar]: Uninitialized variable: *s
# 2336|   
# 2337|   #ifdef FEAT_SIGN_ICONS
# 2338|->     if (*s == SIGN_BYTE
# 2339|   # ifdef FEAT_NETBEANS_INTG
# 2340|   	  || *s == MULTISIGN_BYTE

Error: GCC_ANALYZER_WARNING (CWE-775): [#def116]
vim91/src/gui.c:5089:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
# 5087|       if (isatty(2))
# 5088|       {
# 5089|-> 	fflush(stderr);
# 5090|   	return;
# 5091|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def117]
vim91/src/gui.c:5103:19: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
# 5101|   	    if (STRLEN(p) > 2000)
# 5102|   		STRCPY(p + 2000 - 14, "...(truncated)");
# 5103|-> 	    (void)do_dialog(VIM_ERROR, (char_u *)_("Error"),
# 5104|   		    p, (char_u *)_("&Ok"), 1, NULL, FALSE);
# 5105|   	    break;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def118]
vim91/src/gui.c:5107:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipefd[1]’
vim91/src/gui.c:4981:1: enter_function: entry to ‘ex_gui’
vim91/src/gui.c:4997:8: branch_true: following ‘true’ branch...
vim91/src/gui.c:5008:9: branch_true: ...to here
vim91/src/gui.c:5014:13: call_function: calling ‘gui_start’ from ‘ex_gui’
# 5105|   	    break;
# 5106|   	}
# 5107|->     ga_clear(&error_ga);
# 5108|   }
# 5109|   #endif

Error: COMPILER_WARNING: [#def119]
vim91/src/gui_beval.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def120]
vim91/src/gui_gtk.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def121]
vim91/src/gui_gtk_f.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def122]
vim91/src/gui_gtk_x11.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING (CWE-477): [#def123]
vim91/src/gui_gtk_x11.c: scope_hint: In function ‘mainwin_realize’
vim91/src/gui_gtk_x11.c:2763:13: warning[-Wdeprecated-declarations]: ‘gdk_pixbuf_new_from_xpm_data’ is deprecated
# 2763 |             icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim16x16));
#      |             ^~~~~
/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf.h:34: included_from: Included from here.
/usr/include/gtk-3.0/gdk/gdkpixbuf.h:33: included_from: Included from here.
/usr/include/gtk-3.0/gdk/gdkcairo.h:29: included_from: Included from here.
/usr/include/gtk-3.0/gdk/gdk.h:33: included_from: Included from here.
/usr/include/gtk-3.0/gtk/gtk.h:30: included_from: Included from here.
vim91/src/beval.h:15: included_from: Included from here.
vim91/src/vim.h:2059: included_from: Included from here.
vim91/src/gui_gtk_x11.c:28: included_from: Included from here.
/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h:292:12: note: declared here
#  292 | GdkPixbuf *gdk_pixbuf_new_from_xpm_data (const char **data);
#      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2761|   	    GList *icons = NULL;
# 2762|   
# 2763|-> 	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim16x16));
# 2764|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim32x32));
# 2765|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim48x48));

Error: COMPILER_WARNING (CWE-477): [#def124]
vim91/src/gui_gtk_x11.c:2763:13: warning[-Wdeprecated-declarations]: ‘gdk_pixbuf_new_from_xpm_data’ is deprecated
# 2761|   	    GList *icons = NULL;
# 2762|   
# 2763|-> 	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim16x16));
# 2764|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim32x32));
# 2765|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim48x48));

Error: COMPILER_WARNING (CWE-477): [#def125]
vim91/src/gui_gtk_x11.c:2764:13: warning[-Wdeprecated-declarations]: ‘gdk_pixbuf_new_from_xpm_data’ is deprecated
# 2764 |             icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim32x32));
#      |             ^~~~~
/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h:292:12: note: declared here
#  292 | GdkPixbuf *gdk_pixbuf_new_from_xpm_data (const char **data);
#      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2762|   
# 2763|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim16x16));
# 2764|-> 	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim32x32));
# 2765|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim48x48));
# 2766|   

Error: COMPILER_WARNING (CWE-477): [#def126]
vim91/src/gui_gtk_x11.c:2764:13: warning[-Wdeprecated-declarations]: ‘gdk_pixbuf_new_from_xpm_data’ is deprecated
# 2762|   
# 2763|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim16x16));
# 2764|-> 	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim32x32));
# 2765|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim48x48));
# 2766|   

Error: COMPILER_WARNING (CWE-477): [#def127]
vim91/src/gui_gtk_x11.c:2765:13: warning[-Wdeprecated-declarations]: ‘gdk_pixbuf_new_from_xpm_data’ is deprecated
# 2765 |             icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim48x48));
#      |             ^~~~~
/usr/include/gdk-pixbuf-2.0/gdk-pixbuf/gdk-pixbuf-core.h:292:12: note: declared here
#  292 | GdkPixbuf *gdk_pixbuf_new_from_xpm_data (const char **data);
#      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2763|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim16x16));
# 2764|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim32x32));
# 2765|-> 	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim48x48));
# 2766|   
# 2767|   	    gtk_window_set_icon_list(GTK_WINDOW(gui.mainwin), icons);

Error: COMPILER_WARNING (CWE-477): [#def128]
vim91/src/gui_gtk_x11.c:2765:13: warning[-Wdeprecated-declarations]: ‘gdk_pixbuf_new_from_xpm_data’ is deprecated
# 2763|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim16x16));
# 2764|   	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim32x32));
# 2765|-> 	    icons = g_list_prepend(icons, gdk_pixbuf_new_from_xpm_data((const char **)vim48x48));
# 2766|   
# 2767|   	    gtk_window_set_icon_list(GTK_WINDOW(gui.mainwin), icons);

Error: COMPILER_WARNING: [#def129]
vim91/src/gui_xim.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def130]
vim91/src/hardcopy.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def131]
vim91/src/hardcopy.c:2675:62: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(&*resource.filename, "r")’
vim91/src/hardcopy.c:2662:1: enter_function: entry to ‘prt_add_resource’
vim91/src/hardcopy.c:2668:19: acquire_resource: opened here
vim91/src/hardcopy.c:2669:8: branch_false: following ‘false’ branch...
vim91/src/hardcopy.c:2675:62: branch_false: ...to here
vim91/src/hardcopy.c:2674:5: call_function: calling ‘prt_dsc_resources’ from ‘prt_add_resource’
# 2673|       }
# 2674|       prt_dsc_resources("BeginResource", prt_resource_types[resource->type],
# 2675|-> 						     (char *)resource->title);
# 2676|   
# 2677|       prt_dsc_textline("BeginDocument", (char *)resource->filename);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def132]
vim91/src/hardcopy.c:2675:62: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(&*resource.filename, "r")’
vim91/src/hardcopy.c:2662:1: enter_function: entry to ‘prt_add_resource’
vim91/src/hardcopy.c:2668:19: acquire_memory: allocated here
vim91/src/hardcopy.c:2669:8: branch_false: following ‘false’ branch...
vim91/src/hardcopy.c:2675:62: branch_false: ...to here
vim91/src/hardcopy.c:2674:5: call_function: calling ‘prt_dsc_resources’ from ‘prt_add_resource’
# 2673|       }
# 2674|       prt_dsc_resources("BeginResource", prt_resource_types[resource->type],
# 2675|-> 						     (char *)resource->title);
# 2676|   
# 2677|       prt_dsc_textline("BeginDocument", (char *)resource->filename);

Error: COMPILER_WARNING: [#def133]
vim91/src/hashtab.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def134]
vim91/src/help.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-131): [#def135]
vim91/src/help.c:554:5: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size
#  552|       }
#  553|   
#  554|->     *matches = (char_u **)"";
#  555|       *num_matches = 0;
#  556|       flags = TAG_HELP | TAG_REGEXP | TAG_NAMES | TAG_VERBOSE | TAG_NO_TAGFUNC;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def136]
vim91/src/help.c:852:33: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(*<unknown>, "r")’
vim91/src/help.c:767:24: branch_true: following ‘true’ branch...
vim91/src/help.c:769:20: branch_true: ...to here
vim91/src/help.c:770:16: branch_false: following ‘false’ branch...
vim91/src/help.c:775:13: branch_false: ...to here
vim91/src/help.c:776:20: branch_true: following ‘true’ branch...
vim91/src/help.c:778:17: branch_true: ...to here
vim91/src/help.c:811:38: branch_true: following ‘true’ branch...
vim91/src/help.c:813:40: branch_true: ...to here
vim91/src/help.c:849:34: acquire_resource: opened here
vim91/src/help.c:852:33: throw: if ‘vim_fgets’ throws an exception...
vim91/src/help.c:852:33: danger: ‘fopen(*<unknown>, "r")’ leaks here; was opened at [(10)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/9)
#  850|   			    if (fd != NULL)
#  851|   			    {
#  852|-> 				vim_fgets(IObuff, IOSIZE, fd);
#  853|   				if (IObuff[0] == '*'
#  854|   					&& (s = vim_strchr(IObuff + 1, '*'))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def137]
vim91/src/help.c:852:33: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(*<unknown>, "r")’
vim91/src/help.c:767:24: branch_true: following ‘true’ branch...
vim91/src/help.c:769:20: branch_true: ...to here
vim91/src/help.c:770:16: branch_false: following ‘false’ branch...
vim91/src/help.c:775:13: branch_false: ...to here
vim91/src/help.c:776:20: branch_true: following ‘true’ branch...
vim91/src/help.c:778:17: branch_true: ...to here
vim91/src/help.c:811:38: branch_true: following ‘true’ branch...
vim91/src/help.c:813:40: branch_true: ...to here
vim91/src/help.c:849:34: acquire_memory: allocated here
vim91/src/help.c:852:33: throw: if ‘vim_fgets’ throws an exception...
vim91/src/help.c:852:33: danger: ‘fopen(*<unknown>, "r")’ leaks here; was allocated at [(10)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/9)
#  850|   			    if (fd != NULL)
#  851|   			    {
#  852|-> 				vim_fgets(IObuff, IOSIZE, fd);
#  853|   				if (IObuff[0] == '*'
#  854|   					&& (s = vim_strchr(IObuff + 1, '*'))

Error: GCC_ANALYZER_WARNING (CWE-775): [#def138]
vim91/src/help.c:1002:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_resource: opened here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1002:5: throw: if ‘ga_init2’ throws an exception...
vim91/src/help.c:1002:5: danger: ‘fopen(NameBuff, "w")’ leaks here; was opened at [(3)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/2)
# 1000|       // If using the "++t" argument or generating tags for "$VIMRUNTIME/doc"
# 1001|       // add the "help-tags" tag.
# 1002|->     ga_init2(&ga, sizeof(char_u *), 100);
# 1003|       if (add_help_tags || fullpathcmp((char_u *)"$VIMRUNTIME/doc",
# 1004|   						dir, FALSE, TRUE) == FPC_SAME)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def139]
vim91/src/help.c:1002:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_memory: allocated here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1002:5: throw: if ‘ga_init2’ throws an exception...
vim91/src/help.c:1002:5: danger: ‘fopen(NameBuff, "w")’ leaks here; was allocated at [(3)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/2)
# 1000|       // If using the "++t" argument or generating tags for "$VIMRUNTIME/doc"
# 1001|       // add the "help-tags" tag.
# 1002|->     ga_init2(&ga, sizeof(char_u *), 100);
# 1003|       if (add_help_tags || fullpathcmp((char_u *)"$VIMRUNTIME/doc",
# 1004|   						dir, FALSE, TRUE) == FPC_SAME)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def140]
vim91/src/help.c:1003:26: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_resource: opened here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1003:8: branch_false: following ‘false’ branch (when ‘add_help_tags == 0’)...
vim91/src/help.c:1003:26: branch_false: ...to here
vim91/src/help.c:1003:26: throw: if ‘fullpathcmp’ throws an exception...
vim91/src/help.c:1003:26: danger: ‘fopen(NameBuff, "w")’ leaks here; was opened at [(3)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/2)
# 1001|       // add the "help-tags" tag.
# 1002|       ga_init2(&ga, sizeof(char_u *), 100);
# 1003|->     if (add_help_tags || fullpathcmp((char_u *)"$VIMRUNTIME/doc",
# 1004|   						dir, FALSE, TRUE) == FPC_SAME)
# 1005|       {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def141]
vim91/src/help.c:1003:26: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_memory: allocated here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1003:8: branch_false: following ‘false’ branch (when ‘add_help_tags == 0’)...
vim91/src/help.c:1003:26: branch_false: ...to here
vim91/src/help.c:1003:26: throw: if ‘fullpathcmp’ throws an exception...
vim91/src/help.c:1003:26: danger: ‘fopen(NameBuff, "w")’ leaks here; was allocated at [(3)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/2)
# 1001|       // add the "help-tags" tag.
# 1002|       ga_init2(&ga, sizeof(char_u *), 100);
# 1003|->     if (add_help_tags || fullpathcmp((char_u *)"$VIMRUNTIME/doc",
# 1004|   						dir, FALSE, TRUE) == FPC_SAME)
# 1005|       {

Error: GCC_ANALYZER_WARNING (CWE-775): [#def142]
vim91/src/help.c:1006:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_resource: opened here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1006:13: throw: if ‘ga_grow’ throws an exception...
vim91/src/help.c:1006:13: danger: ‘fopen(NameBuff, "w")’ leaks here; was opened at [(3)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/2)
# 1004|   						dir, FALSE, TRUE) == FPC_SAME)
# 1005|       {
# 1006|-> 	if (ga_grow(&ga, 1) == FAIL)
# 1007|   	    got_int = TRUE;
# 1008|   	else

Error: GCC_ANALYZER_WARNING (CWE-401): [#def143]
vim91/src/help.c:1006:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_memory: allocated here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1006:13: throw: if ‘ga_grow’ throws an exception...
vim91/src/help.c:1006:13: danger: ‘fopen(NameBuff, "w")’ leaks here; was allocated at [(3)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/2)
# 1004|   						dir, FALSE, TRUE) == FPC_SAME)
# 1005|       {
# 1006|-> 	if (ga_grow(&ga, 1) == FAIL)
# 1007|   	    got_int = TRUE;
# 1008|   	else

Error: GCC_ANALYZER_WARNING (CWE-775): [#def144]
vim91/src/help.c:1010:28: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_resource: opened here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1006:12: branch_false: following ‘false’ branch...
vim91/src/help.c:1010:38: branch_false: ...to here
vim91/src/help.c:1010:17: throw: if ‘alloc’ throws an exception...
vim91/src/help.c:1010:28: danger: ‘fopen(NameBuff, "w")’ leaks here; was opened at [(3)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/2)
# 1008|   	else
# 1009|   	{
# 1010|-> 	    s = alloc(18 + (unsigned)STRLEN(tagfname));
# 1011|   	    if (s == NULL)
# 1012|   		got_int = TRUE;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def145]
vim91/src/help.c:1010:28: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_memory: allocated here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1006:12: branch_false: following ‘false’ branch...
vim91/src/help.c:1010:38: branch_false: ...to here
vim91/src/help.c:1010:17: throw: if ‘alloc’ throws an exception...
vim91/src/help.c:1010:28: danger: ‘fopen(NameBuff, "w")’ leaks here; was allocated at [(3)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/2)
# 1008|   	else
# 1009|   	{
# 1010|-> 	    s = alloc(18 + (unsigned)STRLEN(tagfname));
# 1011|   	    if (s == NULL)
# 1012|   		got_int = TRUE;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def146]
vim91/src/help.c:1023:18: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_resource: opened here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1135:5: throw: if ‘FreeWild’ throws an exception...
vim91/src/help.c:1023:18: danger: ‘fopen(NameBuff, "w")’ leaks here; was opened at [(3)](sarif:/runs/0/results/17/codeFlows/0/threadFlows/0/locations/2)
# 1021|   
# 1022|       // Go over all the files and extract the tags.
# 1023|->     for (fi = 0; fi < filecount && !got_int; ++fi)
# 1024|       {
# 1025|   	fd = mch_fopen((char *)files[fi], "r");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def147]
vim91/src/help.c:1023:18: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(NameBuff, "w")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:991:15: acquire_memory: allocated here
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1135:5: throw: if ‘FreeWild’ throws an exception...
vim91/src/help.c:1023:18: danger: ‘fopen(NameBuff, "w")’ leaks here; was allocated at [(3)](sarif:/runs/0/results/18/codeFlows/0/threadFlows/0/locations/2)
# 1021|   
# 1022|       // Go over all the files and extract the tags.
# 1023|->     for (fi = 0; fi < filecount && !got_int; ++fi)
# 1024|       {
# 1025|   	fd = mch_fopen((char *)files[fi], "r");

Error: GCC_ANALYZER_WARNING (CWE-775): [#def148]
vim91/src/help.c:1031:22: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(*<unknown>, "r")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1023:18: branch_true: following ‘true’ branch...
vim91/src/help.c:1025:14: acquire_resource: opened here
vim91/src/help.c:1035:17: throw: if ‘vim_fgets’ throws an exception...
vim91/src/help.c:1031:22: danger: ‘fopen(*<unknown>, "r")’ leaks here; was opened at [(7)](sarif:/runs/0/results/49/codeFlows/0/threadFlows/0/locations/6)
# 1029|   	    continue;
# 1030|   	}
# 1031|-> 	fname = files[fi] + dirlen + 1;
# 1032|   
# 1033|   	in_example = FALSE;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def149]
vim91/src/help.c:1031:22: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(*<unknown>, "r")’
vim91/src/help.c:977:8: branch_false: following ‘false’ branch...
vim91/src/help.c:992:8: branch_false: following ‘false’ branch...
vim91/src/help.c:1002:5: branch_false: ...to here
vim91/src/help.c:1023:18: branch_true: following ‘true’ branch...
vim91/src/help.c:1025:14: acquire_memory: allocated here
vim91/src/help.c:1035:17: throw: if ‘vim_fgets’ throws an exception...
vim91/src/help.c:1031:22: danger: ‘fopen(*<unknown>, "r")’ leaks here; was allocated at [(7)](sarif:/runs/0/results/50/codeFlows/0/threadFlows/0/locations/6)
# 1029|   	    continue;
# 1030|   	}
# 1031|-> 	fname = files[fi] + dirlen + 1;
# 1032|   
# 1033|   	in_example = FALSE;

Error: COMPILER_WARNING: [#def150]
vim91/src/highlight.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def151]
vim91/src/if_cscope.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def152]
vim91/src/if_lua.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-457): [#def153]
vim91/src/if_lua.c:1184:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘tv’
vim91/src/if_lua.c:1144:8: branch_false: following ‘false’ branch...
vim91/src/if_lua.c:1146:9: branch_false: ...to here
vim91/src/if_lua.c:1148:8: branch_false: following ‘false’ branch...
vim91/src/if_lua.c:1157:10: branch_false: ...to here
vim91/src/if_lua.c:1177:8: branch_false: following ‘false’ branch...
vim91/src/if_lua.c:1184:9: branch_false: ...to here
vim91/src/if_lua.c:1184:9: danger: use of uninitialized value ‘tv’ here
# 1182|       }
# 1183|       else
# 1184|-> 	di->di_tv = tv;
# 1185|       return 0;
# 1186|   }

Error: GCC_ANALYZER_WARNING (CWE-404): [#def154]
vim91/src/if_perl.xs:1484:5: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
vim91/src/if_perl.xs:1483:5: acquire_resource: ‘va_start’ called here
vim91/src/if_perl.xs:1484:5: throw: if the called function throws an exception...
vim91/src/if_perl.xs:1484:5: danger: missing call to ‘va_end’ to match ‘va_start’ at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
# 1482|       va_list args;
# 1483|       va_start(args, pat);
# 1484|->     (*dll_Perl_croak_nocontext)(pat, &args);
# 1485|       NOT_REACHED; /* NOTREACHED */
# 1486|       va_end(args);

Error: CPPCHECK_WARNING (CWE-562): [#def155]
vim91/src/if_py_both.h:236: error[returnDanglingLifetime]: Returning pointer to local variable 'type_spec' that will be invalid when returning.
#  234|   
#  235|       PyObject* newtype = PyType_FromSpec(&type_spec);
#  236|->     return (PyTypeObject*)newtype;
#  237|   }
#  238|   

Error: CPPCHECK_WARNING (CWE-562): [#def156]
vim91/src/if_py_both.h:1192: error[returnDanglingLifetime]: Returning pointer to local variable 'buf' that will be invalid when returning.
# 1190|       }
# 1191|   
# 1192|->     return ret;
# 1193|   }
# 1194|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def157]
vim91/src/if_py_both.h:5344:21: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘array’
vim91/src/if_python3.c:1830:1: enter_function: entry to ‘RangeAsSlice’
vim91/src/if_python3.c:1832:12: call_function: calling ‘RBAsSlice’ from ‘RangeAsSlice’
# 5342|   	{
# 5343|   	    for (i = 0; i < old_len && i < new_len; ++i)
# 5344|-> 		if (ml_replace((linenr_T)(lo+i), (char_u *)array[i], FALSE)
# 5345|   								      == FAIL)
# 5346|   		{

Error: COMPILER_WARNING: [#def158]
vim91/src/if_python3.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def159]
vim91/src/if_ruby.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def160]
vim91/src/if_xcmdsrv.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def161]
vim91/src/indent.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def162]
vim91/src/insexpand.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-465): [#def163]
vim91/src/insexpand.c:1779:12: warning[-Wanalyzer-deref-before-check]: check of ‘compl’ for NULL after already dereferencing it
vim91/src/insexpand.c:1806:1: enter_function: entry to ‘ins_compl_show_pum’
vim91/src/insexpand.c:1818:8: branch_true: following ‘true’ branch...
vim91/src/insexpand.c:1820:15: branch_true: ...to here
vim91/src/insexpand.c:1820:15: call_function: calling ‘ins_compl_build_pum’ from ‘ins_compl_show_pum’
# 1777|       compl = match_head;
# 1778|       i = 0;
# 1779|->     while (compl != NULL)
# 1780|       {
# 1781|   	compl_match_array[i].pum_text = compl->cp_text[CPT_ABBR] != NULL

Error: COMPILER_WARNING: [#def164]
vim91/src/job.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def165]
vim91/src/json.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def166]
vim91/src/libvterm/src/encoding.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def167]
vim91/src/libvterm/src/keyboard.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-787): [#def168]
vim91/src/libvterm/src/keyboard.c:168:5: warning[-Wanalyzer-out-of-bounds]: buffer over-read
vim91/src/libvterm/src/keyboard.c:156:5: branch_false: following ‘false’ branch (when ‘key != 0’)...
vim91/src/libvterm/src/keyboard.c:160:5: branch_false: ...to here
vim91/src/libvterm/src/keyboard.c:160:5: branch_false: following ‘false’ branch (when ‘key > 255’)...
vim91/src/libvterm/src/keyboard.c:165:11: branch_false: ...to here
vim91/src/libvterm/src/keyboard.c:165:10: branch_true: following ‘true’ branch...
vim91/src/libvterm/src/keyboard.c:166:7: branch_true: ...to here
vim91/src/libvterm/src/keyboard.c:166:7: branch_false: following ‘false’ branch...
vim91/src/libvterm/src/keyboard.c:168:5: branch_false: ...to here
vim91/src/libvterm/src/keyboard.c:168:5: danger: read of 4 bytes at offset ‘key * 12 + 51539604480’ exceeds ‘keycodes_fn’
#  166|       if((key - VTERM_KEY_FUNCTION_0) >= sizeof(keycodes_fn)/sizeof(keycodes_fn[0]))
#  167|         return;
#  168|->     k = keycodes_fn[key - VTERM_KEY_FUNCTION_0];
#  169|     }
#  170|     else if(key >= VTERM_KEY_KP_0) {

Error: GCC_ANALYZER_WARNING (CWE-787): [#def169]
vim91/src/libvterm/src/keyboard.c:173:5: warning[-Wanalyzer-out-of-bounds]: buffer over-read
vim91/src/libvterm/src/keyboard.c:156:5: branch_false: following ‘false’ branch (when ‘key != 0’)...
vim91/src/libvterm/src/keyboard.c:160:5: branch_false: ...to here
vim91/src/libvterm/src/keyboard.c:160:5: branch_false: following ‘false’ branch (when ‘key > 255’)...
vim91/src/libvterm/src/keyboard.c:165:11: branch_false: ...to here
vim91/src/libvterm/src/keyboard.c:165:10: branch_false: following ‘false’ branch...
vim91/src/libvterm/src/keyboard.c:171:8: branch_false: ...to here
vim91/src/libvterm/src/keyboard.c:171:7: branch_false: following ‘false’ branch...
vim91/src/libvterm/src/keyboard.c:173:5: branch_false: ...to here
vim91/src/libvterm/src/keyboard.c:173:5: danger: read of 4 bytes at offset ‘key * 12 + 51539601408’ exceeds ‘keycodes_kp’
#  171|       if((key - VTERM_KEY_KP_0) >= sizeof(keycodes_kp)/sizeof(keycodes_kp[0]))
#  172|         return;
#  173|->     k = keycodes_kp[key - VTERM_KEY_KP_0];
#  174|     }
#  175|   

Error: CPPCHECK_WARNING (CWE-909): [#def170]
vim91/src/libvterm/src/keyboard.c:176: error[uninitStructMember]: Uninitialized struct member: k.type
#  174|     }
#  175|   
#  176|->   switch(k.type) {
#  177|     case KEYCODE_NONE:
#  178|       break;

Error: COMPILER_WARNING: [#def171]
vim91/src/libvterm/src/mouse.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def172]
vim91/src/libvterm/src/parser.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def173]
vim91/src/libvterm/src/pen.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def174]
vim91/src/libvterm/src/screen.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def175]
vim91/src/libvterm/src/state.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def176]
vim91/src/libvterm/src/unicode.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def177]
vim91/src/libvterm/src/vterm.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def178]
vim91/src/linematch.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-457): [#def179]
vim91/src/linematch.c:321: warning[uninitvar]: Uninitialized variable: df_iters
#  319|   
#  320|   	int choice = 0;
#  321|-> 	size_t unwrapper_idx_to = unwrap_indexes(df_iters, diff_len, ndiffs);
#  322|   
#  323|   	diffcmppath[unwrapper_idx_to].df_lev_score = -1;

Error: CPPCHECK_WARNING (CWE-457): [#def180]
vim91/src/linematch.c:324: warning[uninitvar]: Uninitialized variable: paths
#  322|   
#  323|   	diffcmppath[unwrapper_idx_to].df_lev_score = -1;
#  324|-> 	try_possible_paths(df_iters, paths, npaths, 0, &choice, diffcmppath,
#  325|   					diff_len, ndiffs, diff_blk, iwhite);
#  326|   	return;

Error: COMPILER_WARNING: [#def181]
vim91/src/list.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-126): [#def182]
vim91/src/list.c:2037:15: warning[-Wanalyzer-out-of-bounds]: stack-based buffer over-read
vim91/src/list.c:2163:1: enter_function: entry to ‘do_uniq’
vim91/src/list.c:2175:8: branch_false: following ‘false’ branch...
vim91/src/list.c:2179:5: branch_false: ...to here
vim91/src/list.c:2181:29: branch_false: following ‘false’ branch...
vim91/src/list.c:2182:12: branch_false: ...to here
vim91/src/list.c:2181:29: branch_false: following ‘false’ branch...
vim91/src/list.c:2185:15: branch_false: ...to here
vim91/src/list.c:2185:28: branch_true: following ‘true’ branch...
vim91/src/list.c:2188:13: call_function: calling ‘item_compare’ from ‘do_uniq’
# 2035|       // sort stable.
# 2036|       if (res == 0 && !sortinfo->item_compare_keep_zero)
# 2037|-> 	res = si1->idx > si2->idx ? 1 : -1;
# 2038|   
# 2039|       vim_free(tofree1);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def183]
vim91/src/list.c:2148:13: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘l’
vim91/src/list.c:2107:1: enter_function: entry to ‘do_sort’
vim91/src/list.c:2114:11: call_function: inlined call to ‘list_len’ from ‘do_sort’
vim91/src/list.c:2117:12: branch_true: ...to here
vim91/src/list.c:2118:8: branch_false: following ‘false’ branch...
vim91/src/list.c:2122:5: branch_false: ...to here
vim91/src/list.c:2122:5: branch_false: following ‘false’ branch...
vim91/src/list.c:2132:8: branch_false: following ‘false’ branch...
vim91/src/list.c:2133:20: branch_false: ...to here
vim91/src/list.c:2132:9: branch_false: following ‘false’ branch...
vim91/src/list.c:2141:17: branch_false: ...to here
vim91/src/list.c:2145:12: branch_true: following ‘true’ branch...
vim91/src/list.c:2149:19: branch_true: ...to here
vim91/src/list.c:2149:19: release_memory: ‘l’ is NULL
vim91/src/list.c:2148:13: danger: dereference of NULL ‘l’
# 2146|   	{
# 2147|   	    // Clear the List and append the items in sorted order.
# 2148|-> 	    l->lv_first = l->lv_u.mat.lv_last
# 2149|   		= l->lv_u.mat.lv_idx_item = NULL;
# 2150|   	    l->lv_len = 0;

Error: COMPILER_WARNING: [#def184]
vim91/src/locale.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def185]
vim91/src/logfile.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def186]
vim91/src/logfile.c:54:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fname,  mode)’
vim91/src/logfile.c:32:8: branch_false: following ‘false’ branch...
vim91/src/logfile.c:42:9: branch_false: ...to here
vim91/src/logfile.c:46:8: branch_true: following ‘true’ branch...
vim91/src/logfile.c:48:16: branch_true: ...to here
vim91/src/logfile.c:48:16: acquire_resource: opened here
vim91/src/logfile.c:49:12: branch_false: following ‘false’ branch...
vim91/src/logfile.c:54:9: branch_false: ...to here
vim91/src/logfile.c:54:9: throw: if ‘vim_free’ throws an exception...
vim91/src/logfile.c:54:9: danger: ‘fopen(fname,  mode)’ leaks here; was opened at [(5)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/4)
#   52|   	    return;
#   53|   	}
#   54|-> 	vim_free(log_name);
#   55|   	log_name = vim_strsave(fname);
#   56|       }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def187]
vim91/src/logfile.c:54:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fname,  mode)’
vim91/src/logfile.c:32:8: branch_false: following ‘false’ branch...
vim91/src/logfile.c:42:9: branch_false: ...to here
vim91/src/logfile.c:46:8: branch_true: following ‘true’ branch...
vim91/src/logfile.c:48:16: branch_true: ...to here
vim91/src/logfile.c:48:16: acquire_memory: allocated here
vim91/src/logfile.c:49:12: branch_false: following ‘false’ branch...
vim91/src/logfile.c:54:9: branch_false: ...to here
vim91/src/logfile.c:54:9: throw: if ‘vim_free’ throws an exception...
vim91/src/logfile.c:54:9: danger: ‘fopen(fname,  mode)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#   52|   	    return;
#   53|   	}
#   54|-> 	vim_free(log_name);
#   55|   	log_name = vim_strsave(fname);
#   56|       }

Error: COMPILER_WARNING: [#def188]
vim91/src/main.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def189]
vim91/src/map.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-457): [#def190]
vim91/src/map.c:1087: warning[uninitvar]: Uninitialized variable: *mpp
# 1085|   		mpp = &maphash[hash];
# 1086|   	}
# 1087|-> 	while (*mpp != NULL)
# 1088|   	{
# 1089|   	    mp = *mpp;

Error: COMPILER_WARNING: [#def191]
vim91/src/mark.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def192]
vim91/src/match.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def193]
vim91/src/match.c:46:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘grp’
vim91/src/match.c:1367:1: enter_function: entry to ‘ex_match’
vim91/src/match.c:1375:8: branch_true: following ‘true’ branch...
vim91/src/match.c:1376:9: branch_true: ...to here
vim91/src/match.c:1387:8: branch_false: following ‘false’ branch...
vim91/src/match.c:1389:15: branch_false: ...to here
vim91/src/match.c:1396:12: branch_false: following ‘false’ branch...
vim91/src/match.c:1398:13: branch_false: ...to here
vim91/src/match.c:1399:12: branch_false: following ‘false’ branch...
vim91/src/match.c:1406:15: branch_false: ...to here
vim91/src/match.c:1407:12: branch_true: following ‘true’ branch...
vim91/src/match.c:1409:17: branch_true: ...to here
vim91/src/match.c:1409:17: branch_false: following ‘false’ branch...
vim91/src/match.c:1415:17: branch_false: ...to here
vim91/src/match.c:1415:16: branch_false: following ‘false’ branch...
vim91/src/match.c:1423:13: branch_false: ...to here
vim91/src/match.c:1424:13: call_function: calling ‘match_add’ from ‘ex_match’
#   44|       int		rtype = UPD_SOME_VALID;
#   45|   
#   46|->     if (*grp == NUL || (pat != NULL && *pat == NUL))
#   47|   	return -1;
#   48|       if (id < -1 || id == 0)

Error: COMPILER_WARNING: [#def194]
vim91/src/mbyte.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-835): [#def195]
vim91/src/mbyte.c:3932:12: warning[-Wanalyzer-infinite-loop]: infinite loop
vim91/src/mbyte.c:3932:12: danger: infinite loop here
vim91/src/mbyte.c:3932:12: branch_true: when ‘q < p’: always following ‘true’ branch...
vim91/src/mbyte.c:3933:14: call_function: inlined call to ‘dbcs_ptr2len’ from ‘dbcs_head_off’
vim91/src/mbyte.c:3933:14: branch_true: ...to here
# 3930|       // byte we are looking for.  Return 1 when we went past it, 0 otherwise.
# 3931|       q = base;
# 3932|->     while (q < p)
# 3933|   	q += dbcs_ptr2len(q);
# 3934|       return (q == p) ? 0 : 1;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def196]
vim91/src/mbyte.c:4825:8: warning[-Wanalyzer-malloc-leak]: leak of ‘iconv_open(enc_skip(to), enc_skip(from))’
vim91/src/mbyte.c:4823:10: acquire_memory: allocated here
vim91/src/mbyte.c:4825:8: danger: ‘iconv_open(enc_skip(to), enc_skip(from))’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
# 4823|       fd = iconv_open((char *)enc_skip(to), (char *)enc_skip(from));
# 4824|   
# 4825|->     if (fd != (iconv_t)-1 && iconv_ok == -1)
# 4826|       {
# 4827|   	/*

Error: GCC_ANALYZER_WARNING (CWE-401): [#def197]
vim91/src/mbyte.c:4825:30: warning[-Wanalyzer-malloc-leak]: leak of ‘iconv_open(enc_skip(to), enc_skip(from))’
vim91/src/mbyte.c:4823:10: acquire_memory: allocated here
vim91/src/mbyte.c:4825:8: branch_true: following ‘true’ branch...
vim91/src/mbyte.c:4836:15: throw: if ‘iconv’ throws an exception...
vim91/src/mbyte.c:4825:30: danger: ‘iconv_open(enc_skip(to), enc_skip(from))’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
# 4823|       fd = iconv_open((char *)enc_skip(to), (char *)enc_skip(from));
# 4824|   
# 4825|->     if (fd != (iconv_t)-1 && iconv_ok == -1)
# 4826|       {
# 4827|   	/*

Error: COMPILER_WARNING: [#def198]
vim91/src/memfile.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def199]
vim91/src/memline.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def200]
vim91/src/menu.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def201]
vim91/src/message.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-404): [#def202]
vim91/src/message.c:832:5: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
vim91/src/message.c:4124:1: enter_function: entry to ‘give_warning_with_source’
vim91/src/message.c:4142:8: branch_true: following ‘true’ branch (when ‘with_source != 0’)...
vim91/src/message.c:4146:9: branch_true: ...to here
vim91/src/message.c:4146:9: call_function: calling ‘msg_start’ from ‘give_warning_with_source’
#  830|   
#  831|       va_start(ap, s);
#  832|->     vim_vsnprintf((char *)IObuff, IOSIZE, s, ap);
#  833|       va_end(ap);
#  834|       return emsg_core((char *)IObuff);

Error: COMPILER_WARNING: [#def203]
vim91/src/misc1.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-401): [#def204]
vim91/src/misc1.c:907:13: warning[-Wanalyzer-malloc-leak]: leak of ‘buf’
vim91/src/misc1.c:885:12: branch_true: following ‘true’ branch (when ‘buf’ is NULL)...
vim91/src/misc1.c:886:19: branch_true: ...to here
vim91/src/misc1.c:899:12: branch_false: following ‘false’ branch (when ‘buf’ is non-NULL)...
vim91/src/misc1.c:907:42: branch_false: ...to here
vim91/src/misc1.c:907:13: branch_true: following ‘true’ branch...
vim91/src/misc1.c:907:13: branch_true: ...to here
vim91/src/misc1.c:908:12: branch_true: following ‘true’ branch...
vim91/src/misc1.c:911:17: branch_true: ...to here
vim91/src/misc1.c:919:12: branch_true: following ‘true’ branch...
vim91/src/misc1.c:920:20: branch_true: ...to here
vim91/src/misc1.c:919:13: branch_true: following ‘true’ branch...
vim91/src/misc1.c:919:12: branch_true: ...to here
vim91/src/misc1.c:885:12: branch_false: following ‘false’ branch (when ‘buf’ is non-NULL)...
vim91/src/misc1.c:887:17: branch_false: ...to here
vim91/src/misc1.c:887:17: branch_true: following ‘true’ branch...
vim91/src/misc1.c:893:13: branch_true: ...to here
vim91/src/misc1.c:895:16: branch_false: following ‘false’ branch (when ‘buf’ is non-NULL)...
vim91/src/misc1.c:897:23: branch_false: ...to here
vim91/src/misc1.c:899:12: branch_false: following ‘false’ branch (when ‘buf’ is non-NULL)...
vim91/src/misc1.c:907:42: branch_false: ...to here
vim91/src/misc1.c:907:13: branch_true: following ‘true’ branch...
vim91/src/misc1.c:907:13: branch_true: ...to here
vim91/src/misc1.c:907:13: throw: if ‘ui_inchar’ throws an exception...
vim91/src/misc1.c:907:13: danger: ‘buf’ leaks here; was allocated at [(17)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/16)
#  905|   	// First time: blocking wait.  Second time: wait up to 100ms for a
#  906|   	// terminal code to complete.
#  907|-> 	n = ui_inchar(buf + len, maxlen, len == 0 ? -1L : 100L, 0);
#  908|   	if (n > 0)
#  909|   	{

Error: GCC_ANALYZER_WARNING (CWE-775): [#def205]
vim91/src/misc1.c:2458:16: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_resource: opened here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2458:16: throw: if ‘fseek’ throws an exception...
vim91/src/misc1.c:2458:16: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was opened at [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6)
# 2456|       // Not being able to seek means we can't read the file.
# 2457|       if (fd == NULL
# 2458|-> 	    || fseek(fd, 0L, SEEK_END) == -1
# 2459|   	    || (len = ftell(fd)) == -1		// get size of temp file
# 2460|   	    || fseek(fd, 0L, SEEK_SET) == -1)	// back to the start

Error: GCC_ANALYZER_WARNING (CWE-401): [#def206]
vim91/src/misc1.c:2458:16: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_memory: allocated here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2458:16: throw: if ‘fseek’ throws an exception...
vim91/src/misc1.c:2458:16: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was allocated at [(7)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/6)
# 2456|       // Not being able to seek means we can't read the file.
# 2457|       if (fd == NULL
# 2458|-> 	    || fseek(fd, 0L, SEEK_END) == -1
# 2459|   	    || (len = ftell(fd)) == -1		// get size of temp file
# 2460|   	    || fseek(fd, 0L, SEEK_SET) == -1)	// back to the start

Error: GCC_ANALYZER_WARNING (CWE-775): [#def207]
vim91/src/misc1.c:2459:23: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_resource: opened here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2459:23: branch_false: ...to here
vim91/src/misc1.c:2459:23: throw: if ‘ftell’ throws an exception...
vim91/src/misc1.c:2459:23: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was opened at [(7)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/6)
# 2457|       if (fd == NULL
# 2458|   	    || fseek(fd, 0L, SEEK_END) == -1
# 2459|-> 	    || (len = ftell(fd)) == -1		// get size of temp file
# 2460|   	    || fseek(fd, 0L, SEEK_SET) == -1)	// back to the start
# 2461|       {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def208]
vim91/src/misc1.c:2459:23: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_memory: allocated here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2459:23: branch_false: ...to here
vim91/src/misc1.c:2459:23: throw: if ‘ftell’ throws an exception...
vim91/src/misc1.c:2459:23: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was allocated at [(7)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/6)
# 2457|       if (fd == NULL
# 2458|   	    || fseek(fd, 0L, SEEK_END) == -1
# 2459|-> 	    || (len = ftell(fd)) == -1		// get size of temp file
# 2460|   	    || fseek(fd, 0L, SEEK_SET) == -1)	// back to the start
# 2461|       {

Error: GCC_ANALYZER_WARNING (CWE-775): [#def209]
vim91/src/misc1.c:2460:16: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_resource: opened here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2459:23: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch (when ‘len != -1’)...
vim91/src/misc1.c:2460:16: branch_false: ...to here
vim91/src/misc1.c:2460:16: throw: if ‘fseek’ throws an exception...
vim91/src/misc1.c:2460:16: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was opened at [(7)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/6)
# 2458|   	    || fseek(fd, 0L, SEEK_END) == -1
# 2459|   	    || (len = ftell(fd)) == -1		// get size of temp file
# 2460|-> 	    || fseek(fd, 0L, SEEK_SET) == -1)	// back to the start
# 2461|       {
# 2462|   	semsg(_(e_cannot_read_from_str_2), tempname);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def210]
vim91/src/misc1.c:2460:16: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_memory: allocated here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2459:23: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch (when ‘len != -1’)...
vim91/src/misc1.c:2460:16: branch_false: ...to here
vim91/src/misc1.c:2460:16: throw: if ‘fseek’ throws an exception...
vim91/src/misc1.c:2460:16: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was allocated at [(7)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/6)
# 2458|   	    || fseek(fd, 0L, SEEK_END) == -1
# 2459|   	    || (len = ftell(fd)) == -1		// get size of temp file
# 2460|-> 	    || fseek(fd, 0L, SEEK_SET) == -1)	// back to the start
# 2461|       {
# 2462|   	semsg(_(e_cannot_read_from_str_2), tempname);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def211]
vim91/src/misc1.c:2462:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_resource: opened here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2462:9: throw: if ‘semsg’ throws an exception...
vim91/src/misc1.c:2462:9: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was opened at [(7)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/6)
# 2460|   	    || fseek(fd, 0L, SEEK_SET) == -1)	// back to the start
# 2461|       {
# 2462|-> 	semsg(_(e_cannot_read_from_str_2), tempname);
# 2463|   	if (fd != NULL)
# 2464|   	    fclose(fd);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def212]
vim91/src/misc1.c:2462:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_memory: allocated here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2462:9: throw: if ‘semsg’ throws an exception...
vim91/src/misc1.c:2462:9: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was allocated at [(7)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/6)
# 2460|   	    || fseek(fd, 0L, SEEK_SET) == -1)	// back to the start
# 2461|       {
# 2462|-> 	semsg(_(e_cannot_read_from_str_2), tempname);
# 2463|   	if (fd != NULL)
# 2464|   	    fclose(fd);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def213]
vim91/src/misc1.c:2468:20: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_resource: opened here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2459:23: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch (when ‘len != -1’)...
vim91/src/misc1.c:2460:16: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2468:20: branch_false: ...to here
vim91/src/misc1.c:2468:14: throw: if ‘alloc’ throws an exception...
vim91/src/misc1.c:2468:20: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was opened at [(7)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/6)
# 2466|       }
# 2467|   
# 2468|->     buffer = alloc(len + 1);
# 2469|       if (buffer != NULL)
# 2470|   	i = (int)fread((char *)buffer, (size_t)1, (size_t)len, fd);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def214]
vim91/src/misc1.c:2468:20: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(vim_tempname(111, 0), "r")’
vim91/src/misc1.c:2421:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2425:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2432:15: branch_false: ...to here
vim91/src/misc1.c:2433:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2440:5: branch_false: ...to here
vim91/src/misc1.c:2453:10: acquire_memory: allocated here
vim91/src/misc1.c:2457:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2458:16: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2459:23: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch (when ‘len != -1’)...
vim91/src/misc1.c:2460:16: branch_false: ...to here
vim91/src/misc1.c:2457:9: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2468:20: branch_false: ...to here
vim91/src/misc1.c:2468:14: throw: if ‘alloc’ throws an exception...
vim91/src/misc1.c:2468:20: danger: ‘fopen(vim_tempname(111, 0), "r")’ leaks here; was allocated at [(7)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/6)
# 2466|       }
# 2467|   
# 2468|->     buffer = alloc(len + 1);
# 2469|       if (buffer != NULL)
# 2470|   	i = (int)fread((char *)buffer, (size_t)1, (size_t)len, fd);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def215]
vim91/src/misc1.c:2545:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(vim_tempname(105, 1), "w")’
vim91/src/misc1.c:2518:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2527:8: branch_true: following ‘true’ branch...
vim91/src/misc1.c:2533:23: branch_true: ...to here
vim91/src/misc1.c:2533:12: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2539:14: branch_false: ...to here
vim91/src/misc1.c:2539:14: acquire_resource: opened here
vim91/src/misc1.c:2540:12: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2545:13: branch_false: ...to here
vim91/src/misc1.c:2545:12: branch_true: following ‘true’ branch...
vim91/src/misc1.c:2550:34: branch_true: ...to here
vim91/src/misc1.c:2550:19: throw: if ‘buflist_findnr’ throws an exception...
vim91/src/misc1.c:2545:13: danger: ‘fopen(vim_tempname(105, 1), "w")’ leaks here; was opened at [(7)](sarif:/runs/0/results/11/codeFlows/0/threadFlows/0/locations/6)
# 2543|   	    goto errret;
# 2544|   	}
# 2545|-> 	if (argvars[1].v_type == VAR_NUMBER)
# 2546|   	{
# 2547|   	    linenr_T	lnum;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def216]
vim91/src/misc1.c:2545:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(vim_tempname(105, 1), "w")’
vim91/src/misc1.c:2518:8: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2527:8: branch_true: following ‘true’ branch...
vim91/src/misc1.c:2533:23: branch_true: ...to here
vim91/src/misc1.c:2533:12: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2539:14: branch_false: ...to here
vim91/src/misc1.c:2539:14: acquire_memory: allocated here
vim91/src/misc1.c:2540:12: branch_false: following ‘false’ branch...
vim91/src/misc1.c:2545:13: branch_false: ...to here
vim91/src/misc1.c:2545:12: branch_true: following ‘true’ branch...
vim91/src/misc1.c:2550:34: branch_true: ...to here
vim91/src/misc1.c:2550:19: throw: if ‘buflist_findnr’ throws an exception...
vim91/src/misc1.c:2545:13: danger: ‘fopen(vim_tempname(105, 1), "w")’ leaks here; was allocated at [(7)](sarif:/runs/0/results/14/codeFlows/0/threadFlows/0/locations/6)
# 2543|   	    goto errret;
# 2544|   	}
# 2545|-> 	if (argvars[1].v_type == VAR_NUMBER)
# 2546|   	{
# 2547|   	    linenr_T	lnum;

Error: COMPILER_WARNING: [#def217]
vim91/src/misc2.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-457): [#def218]
vim91/src/misc2.c:1777: error[uninitvar]: Uninitialized variable: &target.is_alt
# 1775|   
# 1776|   	entry = (struct key_name_entry *)bsearch(
# 1777|-> 	    &target,
# 1778|   	    &key_names_table,
# 1779|   	    ARRAY_LENGTH(key_names_table),

Error: GCC_ANALYZER_WARNING (CWE-457): [#def219]
vim91/src/misc2.c:2389:13: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘p’
vim91/src/misc2.c:2202:21: branch_true: following ‘true’ branch (when ‘round != 3’)...
vim91/src/misc2.c:2212:13: branch_true: ...to here
vim91/src/misc2.c:2218:16: branch_false: following ‘false’ branch...
vim91/src/misc2.c:2220:16: branch_false: following ‘false’ branch...
vim91/src/misc2.c:2220:16: branch_false: ...to here
vim91/src/misc2.c:2228:20: branch_false: following ‘false’ branch...
vim91/src/misc2.c:2389:13: branch_false: ...to here
vim91/src/misc2.c:2389:13: danger: use of uninitialized value ‘p’ here
# 2387|   		}
# 2388|   	    }
# 2389|-> 	    modep = p;
# 2390|   	    if (*modep == ',')
# 2391|   		++modep;

Error: COMPILER_WARNING: [#def220]
vim91/src/mouse.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def221]
vim91/src/move.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-476): [#def222]
vim91/src/move.c:3354: warning[nullPointer]: Possible null pointer dereference: curwin
# 3352|       static pos_T	prev_cursor = {0, 0, 0};
# 3353|   
# 3354|->     if (curwin == prev_curwin && EQUAL_POS(curwin->w_cursor, prev_cursor))
# 3355|   	return;
# 3356|       prev_curwin = curwin;

Error: COMPILER_WARNING: [#def223]
vim91/src/netbeans.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-404): [#def224]
vim91/src/netbeans.c:2273:5: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
vim91/src/netbeans.c:2272:5: acquire_resource: ‘va_start’ called here
vim91/src/netbeans.c:2273:5: throw: if ‘vim_vsnprintf’ throws an exception...
vim91/src/netbeans.c:2273:5: danger: missing call to ‘va_end’ to match ‘va_start’ at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
# 2271|   
# 2272|       va_start(ap, cmd);
# 2273|->     vim_vsnprintf(buf, sizeof(buf), cmd, ap);
# 2274|       va_end(ap);
# 2275|   

Error: COMPILER_WARNING: [#def225]
vim91/src/normal.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def226]
vim91/src/ops.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-457): [#def227]
vim91/src/ops.c:1964:13: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘bd.textcol’
vim91/src/ops.c:1915:8: branch_true: following ‘true’ branch...
vim91/src/ops.c:1917:13: branch_true: ...to here
vim91/src/ops.c:1917:12: branch_false: following ‘false’ branch...
vim91/src/ops.c:1923:20: branch_false: ...to here
vim91/src/ops.c:1929:8: branch_false: following ‘false’ branch...
vim91/src/ops.c:1941:9: branch_false: ...to here
vim91/src/ops.c:1957:8: branch_true: following ‘true’ branch...
vim91/src/ops.c:1964:13: danger: use of uninitialized value ‘bd.textcol’ here
# 1962|   	// the indent, exclude that indent change from the inserted text.
# 1963|   	firstline = ml_get(oap->start.lnum);
# 1964|-> 	if (bd.textcol > (colnr_T)pre_indent)
# 1965|   	{
# 1966|   	    long new_indent = (long)getwhitecols(firstline);

Error: GCC_ANALYZER_WARNING (CWE-457): [#def228]
vim91/src/ops.c:2209:23: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘prev_was_comment’
vim91/src/ops.c:2175:8: branch_false: following ‘false’ branch...
vim91/src/ops.c:2177:8: branch_false: ...to here
vim91/src/ops.c:2177:8: branch_true: following ‘true’ branch...
vim91/src/ops.c:2179:33: branch_true: ...to here
vim91/src/ops.c:2180:12: branch_false: following ‘false’ branch...
vim91/src/ops.c:2192:5: branch_false: ...to here
vim91/src/ops.c:2192:17: branch_true: following ‘true’ branch (when ‘t < count’)...
vim91/src/ops.c:2194:53: branch_true: ...to here
vim91/src/ops.c:2205:12: branch_true: following ‘true’ branch...
vim91/src/ops.c:2209:23: branch_true: ...to here
vim91/src/ops.c:2209:23: danger: use of uninitialized value ‘prev_was_comment’ here
# 2207|   	    // We don't want to remove the comment leader if the
# 2208|   	    // previous line is not a comment.
# 2209|-> 	    if (t > 0 && prev_was_comment)
# 2210|   	    {
# 2211|   

Error: GCC_ANALYZER_WARNING (CWE-457): [#def229]
vim91/src/ops.c:2462:27: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*oap.start_vcol’
vim91/src/ops.c:3332:1: enter_function: entry to ‘cursor_pos_info’
vim91/src/ops.c:3355:8: branch_false: following ‘false’ branch...
vim91/src/ops.c:3365:13: branch_false: ...to here
vim91/src/ops.c:3370:12: branch_true: following ‘true’ branch...
vim91/src/ops.c:3372:17: branch_true: ...to here
vim91/src/ops.c:3382:16: branch_true: following ‘true’ branch...
vim91/src/ops.c:3385:16: branch_false: following ‘false’ branch...
vim91/src/ops.c:3414:35: branch_false: ...to here
vim91/src/ops.c:3417:24: branch_true: following ‘true’ branch...
vim91/src/ops.c:3420:16: branch_true: ...to here
vim91/src/ops.c:3420:16: branch_false: following ‘false’ branch (when ‘byte_count <= last_check’)...
vim91/src/ops.c:3429:17: branch_false: ...to here
vim91/src/ops.c:3429:16: branch_true: following ‘true’ branch...
vim91/src/ops.c:3430:32: branch_true: ...to here
vim91/src/ops.c:3429:17: branch_true: following ‘true’ branch...
vim91/src/ops.c:3439:25: call_function: calling ‘block_prep’ from ‘cursor_pos_info’
# 2460|       prev_pstart = line;
# 2461|       init_chartabsize_arg(&cts, curwin, lnum, bdp->start_vcol, line, line);
# 2462|->     while (cts.cts_vcol < oap->start_vcol && *cts.cts_ptr != NUL)
# 2463|       {
# 2464|   	// Count a tab for what it's worth (if list mode not on)

Error: COMPILER_WARNING: [#def230]
vim91/src/option.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def231]
vim91/src/option.c:827:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/option.c:8674:1: enter_function: entry to ‘compatible_set’
vim91/src/option.c:8678:24: call_function: inlined call to ‘istermoption_idx’ from ‘compatible_set’
vim91/src/option.c:8679:22: branch_false: ...to here
vim91/src/option.c:8679:12: branch_true: following ‘true’ branch...
vim91/src/option.c:8681:13: call_function: calling ‘set_option_default’ from ‘compatible_set’
vim91/src/option.c:8681:13: return_function: returning to ‘compatible_set’ from ‘set_option_default’
vim91/src/option.c:8678:24: call_function: inlined call to ‘istermoption_idx’ from ‘compatible_set’
vim91/src/option.c:8679:22: branch_false: ...to here
vim91/src/option.c:8679:12: branch_true: following ‘true’ branch...
vim91/src/option.c:8681:13: call_function: calling ‘set_option_default’ from ‘compatible_set’
#  825|   	    // May also set global value for local option.
#  826|   	    if (both)
#  827|-> 		*(int *)get_varp_scope(&(options[opt_idx]), OPT_GLOBAL) =
#  828|   								*(int *)varp;
#  829|   	}

Error: GCC_ANALYZER_WARNING (CWE-476): [#def232]
vim91/src/option.c:8366:13: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/option.c:8356:1: enter_function: entry to ‘ExpandSettingSubtract’
vim91/src/option.c:8362:8: branch_false: following ‘false’ branch...
vim91/src/option.c:8366:27: branch_false: ...to here
vim91/src/option.c:8366:37: call_function: inlined call to ‘get_option_varp_scope’ from ‘ExpandSettingSubtract’
vim91/src/option.c:8366:37: call_function: inlined call to ‘get_option_varp_scope’ from ‘ExpandSettingSubtract’
vim91/src/option.c:8366:13: danger: dereference of NULL ‘get_varp_scope(&options[<unknown>], expand_option_flags)’
# 8364|   	return ExpandOldSetting(numMatches, matches);
# 8365|   
# 8366|->     char_u *option_val = *(char_u**)get_option_varp_scope(
# 8367|   	expand_option_idx, expand_option_flags);
# 8368|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def233]
vim91/src/option.c:8518:13: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/option.c:8501:1: enter_function: entry to ‘option_value2string’
vim91/src/option.c:8507:12: call_function: calling ‘get_varp_scope’ from ‘option_value2string’
vim91/src/option.c:8507:12: return_function: returning to ‘option_value2string’ from ‘get_varp_scope’
vim91/src/option.c:8509:8: branch_true: following ‘true’ branch...
vim91/src/option.c:8511:14: branch_true: ...to here
vim91/src/option.c:8513:13: call_function: calling ‘wc_use_keyname’ from ‘option_value2string’
vim91/src/option.c:8513:13: return_function: returning to ‘option_value2string’ from ‘wc_use_keyname’
vim91/src/option.c:8513:12: branch_false: following ‘false’ branch...
vim91/src/option.c:8515:18: branch_false: ...to here
vim91/src/option.c:8515:17: branch_false: following ‘false’ branch...
vim91/src/option.c:8518:13: branch_false: ...to here
vim91/src/option.c:8518:13: danger: dereference of NULL ‘get_varp_scope(opp,  scope)’
# 8516|   	    STRCPY(NameBuff, transchar((int)wc));
# 8517|   	else
# 8518|-> 	    sprintf((char *)NameBuff, "%ld", *(long *)varp);
# 8519|       }
# 8520|       else    // P_STRING

Error: GCC_ANALYZER_WARNING (CWE-476): [#def234]
vim91/src/option.c:8518:13: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘args.oe_varp’
vim91/src/option.c:8308:1: enter_function: entry to ‘ExpandStringSetting’
vim91/src/option.c:8317:8: branch_false: following ‘false’ branch...
vim91/src/option.c:8318:13: branch_false: ...to here
vim91/src/option.c:8317:9: branch_false: following ‘false’ branch...
vim91/src/option.c:8326:20: branch_false: ...to here
vim91/src/option.c:8326:20: call_function: calling ‘get_varp_scope’ from ‘ExpandStringSetting’
vim91/src/option.c:8326:20: return_function: returning to ‘ExpandStringSetting’ from ‘get_varp_scope’
vim91/src/option.c:8338:5: call_function: calling ‘option_value2string’ from ‘ExpandStringSetting’
# 8516|   	    STRCPY(NameBuff, transchar((int)wc));
# 8517|   	else
# 8518|-> 	    sprintf((char *)NameBuff, "%ld", *(long *)varp);
# 8519|       }
# 8520|       else    // P_STRING

Error: GCC_ANALYZER_WARNING (CWE-476): [#def235]
vim91/src/option.c:8522:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
vim91/src/option.c:8501:1: enter_function: entry to ‘option_value2string’
vim91/src/option.c:8507:12: call_function: calling ‘get_varp_scope’ from ‘option_value2string’
vim91/src/option.c:8507:12: return_function: returning to ‘option_value2string’ from ‘get_varp_scope’
vim91/src/option.c:8509:8: branch_false: following ‘false’ branch...
vim91/src/option.c:8522:9: branch_false: ...to here
vim91/src/option.c:8522:9: danger: dereference of NULL ‘get_varp_scope(opp,  scope)’
# 8520|       else    // P_STRING
# 8521|       {
# 8522|-> 	varp = *(char_u **)(varp);
# 8523|   	if (varp == NULL)		    // just in case
# 8524|   	    NameBuff[0] = NUL;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def236]
vim91/src/option.c:8522:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘args.oe_varp’
vim91/src/option.c:8308:1: enter_function: entry to ‘ExpandStringSetting’
vim91/src/option.c:8317:8: branch_false: following ‘false’ branch...
vim91/src/option.c:8318:13: branch_false: ...to here
vim91/src/option.c:8317:9: branch_false: following ‘false’ branch...
vim91/src/option.c:8326:20: branch_false: ...to here
vim91/src/option.c:8326:20: call_function: calling ‘get_varp_scope’ from ‘ExpandStringSetting’
vim91/src/option.c:8326:20: return_function: returning to ‘ExpandStringSetting’ from ‘get_varp_scope’
vim91/src/option.c:8338:5: call_function: calling ‘option_value2string’ from ‘ExpandStringSetting’
# 8520|       else    // P_STRING
# 8521|       {
# 8522|-> 	varp = *(char_u **)(varp);
# 8523|   	if (varp == NULL)		    // just in case
# 8524|   	    NameBuff[0] = NUL;

Error: COMPILER_WARNING: [#def237]
vim91/src/optionstr.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def238]
vim91/src/os_unix.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def239]
vim91/src/os_unix.c:5136:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5136:21: branch_true: ...to here
vim91/src/os_unix.c:5136:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5136:21: danger: ‘fd_toshell[0]’ leaks here
# 5134|   		if (pipe_error)			    // pipe create failed
# 5135|   		{
# 5136|-> 		    close(fd_toshell[0]);
# 5137|   		    close(fd_toshell[1]);
# 5138|   		}

Error: GCC_ANALYZER_WARNING (CWE-775): [#def240]
vim91/src/os_unix.c:5136:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5136:21: branch_true: ...to here
vim91/src/os_unix.c:5136:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5136:21: danger: ‘fd_toshell[1]’ leaks here
# 5134|   		if (pipe_error)			    // pipe create failed
# 5135|   		{
# 5136|-> 		    close(fd_toshell[0]);
# 5137|   		    close(fd_toshell[1]);
# 5138|   		}

Error: GCC_ANALYZER_WARNING (CWE-775): [#def241]
vim91/src/os_unix.c:5137:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5136:21: branch_true: ...to here
vim91/src/os_unix.c:5137:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5137:21: danger: ‘fd_toshell[1]’ leaks here
# 5135|   		{
# 5136|   		    close(fd_toshell[0]);
# 5137|-> 		    close(fd_toshell[1]);
# 5138|   		}
# 5139|   	    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def242]
vim91/src/os_unix.c:5157:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5157:13: throw: if ‘msg_puts’ throws an exception...
vim91/src/os_unix.c:5157:13: danger: ‘fd_fromshell[0]’ leaks here
# 5155|   	    UNBLOCK_SIGNALS(&curset);
# 5156|   
# 5157|-> 	    msg_puts(_("\nCannot fork\n"));
# 5158|   	    if ((options & (SHELL_READ|SHELL_WRITE))
# 5159|   # ifdef FEAT_GUI

Error: GCC_ANALYZER_WARNING (CWE-775): [#def243]
vim91/src/os_unix.c:5157:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5157:13: throw: if ‘msg_puts’ throws an exception...
vim91/src/os_unix.c:5157:13: danger: ‘fd_fromshell[1]’ leaks here
# 5155|   	    UNBLOCK_SIGNALS(&curset);
# 5156|   
# 5157|-> 	    msg_puts(_("\nCannot fork\n"));
# 5158|   	    if ((options & (SHELL_READ|SHELL_WRITE))
# 5159|   # ifdef FEAT_GUI

Error: GCC_ANALYZER_WARNING (CWE-775): [#def244]
vim91/src/os_unix.c:5157:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5157:13: throw: if ‘msg_puts’ throws an exception...
vim91/src/os_unix.c:5157:13: danger: ‘fd_toshell[0]’ leaks here
# 5155|   	    UNBLOCK_SIGNALS(&curset);
# 5156|   
# 5157|-> 	    msg_puts(_("\nCannot fork\n"));
# 5158|   	    if ((options & (SHELL_READ|SHELL_WRITE))
# 5159|   # ifdef FEAT_GUI

Error: GCC_ANALYZER_WARNING (CWE-775): [#def245]
vim91/src/os_unix.c:5157:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5157:13: throw: if ‘msg_puts’ throws an exception...
vim91/src/os_unix.c:5157:13: danger: ‘fd_toshell[1]’ leaks here
# 5155|   	    UNBLOCK_SIGNALS(&curset);
# 5156|   
# 5157|-> 	    msg_puts(_("\nCannot fork\n"));
# 5158|   	    if ((options & (SHELL_READ|SHELL_WRITE))
# 5159|   # ifdef FEAT_GUI

Error: GCC_ANALYZER_WARNING (CWE-775): [#def246]
vim91/src/os_unix.c:5173:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5173:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5173:21: danger: ‘fd_fromshell[0]’ leaks here
# 5171|   # endif
# 5172|   		{
# 5173|-> 		    close(fd_toshell[0]);
# 5174|   		    close(fd_toshell[1]);
# 5175|   		    close(fd_fromshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def247]
vim91/src/os_unix.c:5173:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5173:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5173:21: danger: ‘fd_fromshell[1]’ leaks here
# 5171|   # endif
# 5172|   		{
# 5173|-> 		    close(fd_toshell[0]);
# 5174|   		    close(fd_toshell[1]);
# 5175|   		    close(fd_fromshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def248]
vim91/src/os_unix.c:5173:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5173:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5173:21: danger: ‘fd_toshell[0]’ leaks here
# 5171|   # endif
# 5172|   		{
# 5173|-> 		    close(fd_toshell[0]);
# 5174|   		    close(fd_toshell[1]);
# 5175|   		    close(fd_fromshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def249]
vim91/src/os_unix.c:5173:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5173:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5173:21: danger: ‘fd_toshell[1]’ leaks here
# 5171|   # endif
# 5172|   		{
# 5173|-> 		    close(fd_toshell[0]);
# 5174|   		    close(fd_toshell[1]);
# 5175|   		    close(fd_fromshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def250]
vim91/src/os_unix.c:5174:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5174:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5174:21: danger: ‘fd_fromshell[0]’ leaks here
# 5172|   		{
# 5173|   		    close(fd_toshell[0]);
# 5174|-> 		    close(fd_toshell[1]);
# 5175|   		    close(fd_fromshell[0]);
# 5176|   		    close(fd_fromshell[1]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def251]
vim91/src/os_unix.c:5174:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5174:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5174:21: danger: ‘fd_fromshell[1]’ leaks here
# 5172|   		{
# 5173|   		    close(fd_toshell[0]);
# 5174|-> 		    close(fd_toshell[1]);
# 5175|   		    close(fd_fromshell[0]);
# 5176|   		    close(fd_fromshell[1]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def252]
vim91/src/os_unix.c:5174:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5174:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5174:21: danger: ‘fd_toshell[1]’ leaks here
# 5172|   		{
# 5173|   		    close(fd_toshell[0]);
# 5174|-> 		    close(fd_toshell[1]);
# 5175|   		    close(fd_fromshell[0]);
# 5176|   		    close(fd_fromshell[1]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def253]
vim91/src/os_unix.c:5175:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5175:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5175:21: danger: ‘fd_fromshell[0]’ leaks here
# 5173|   		    close(fd_toshell[0]);
# 5174|   		    close(fd_toshell[1]);
# 5175|-> 		    close(fd_fromshell[0]);
# 5176|   		    close(fd_fromshell[1]);
# 5177|   		}

Error: GCC_ANALYZER_WARNING (CWE-775): [#def254]
vim91/src/os_unix.c:5175:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5175:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5175:21: danger: ‘fd_fromshell[1]’ leaks here
# 5173|   		    close(fd_toshell[0]);
# 5174|   		    close(fd_toshell[1]);
# 5175|-> 		    close(fd_fromshell[0]);
# 5176|   		    close(fd_fromshell[1]);
# 5177|   		}

Error: GCC_ANALYZER_WARNING (CWE-775): [#def255]
vim91/src/os_unix.c:5176:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5173:21: branch_true: ...to here
vim91/src/os_unix.c:5176:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5176:21: danger: ‘fd_fromshell[1]’ leaks here
# 5174|   		    close(fd_toshell[1]);
# 5175|   		    close(fd_fromshell[0]);
# 5176|-> 		    close(fd_fromshell[1]);
# 5177|   		}
# 5178|   	    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def256]
vim91/src/os_unix.c:5222:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘vim_ignored’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5219:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5221:35: branch_true: ...to here
vim91/src/os_unix.c:5221:35: acquire_resource: opened here
vim91/src/os_unix.c:5222:21: danger: ‘vim_ignored’ leaks here; was opened at [(21)](sarif:/runs/0/results/17/codeFlows/0/threadFlows/0/locations/20)
# 5220|   		{
# 5221|   		    vim_ignored = dup(fd); // To replace stdin  (fd 0)
# 5222|-> 		    vim_ignored = dup(fd); // To replace stdout (fd 1)
# 5223|   		    vim_ignored = dup(fd); // To replace stderr (fd 2)
# 5224|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def257]
vim91/src/os_unix.c:5223:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘vim_ignored’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5219:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5221:35: branch_true: ...to here
vim91/src/os_unix.c:5222:35: acquire_resource: opened here
vim91/src/os_unix.c:5223:21: danger: ‘vim_ignored’ leaks here; was opened at [(21)](sarif:/runs/0/results/18/codeFlows/0/threadFlows/0/locations/20)
# 5221|   		    vim_ignored = dup(fd); // To replace stdin  (fd 0)
# 5222|   		    vim_ignored = dup(fd); // To replace stdout (fd 1)
# 5223|-> 		    vim_ignored = dup(fd); // To replace stderr (fd 2)
# 5224|   
# 5225|   		    // Don't need this now that we've duplicated it

Error: GCC_ANALYZER_WARNING (CWE-775): [#def258]
vim91/src/os_unix.c:5226:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5219:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5221:35: branch_true: ...to here
vim91/src/os_unix.c:5226:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5226:21: danger: ‘fd_fromshell[0]’ leaks here
# 5224|   
# 5225|   		    // Don't need this now that we've duplicated it
# 5226|-> 		    close(fd);
# 5227|   		}
# 5228|   	    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def259]
vim91/src/os_unix.c:5226:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5219:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5221:35: branch_true: ...to here
vim91/src/os_unix.c:5226:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5226:21: danger: ‘fd_fromshell[1]’ leaks here
# 5224|   
# 5225|   		    // Don't need this now that we've duplicated it
# 5226|-> 		    close(fd);
# 5227|   		}
# 5228|   	    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def260]
vim91/src/os_unix.c:5226:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5219:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5221:35: branch_true: ...to here
vim91/src/os_unix.c:5226:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5226:21: danger: ‘fd_toshell[0]’ leaks here
# 5224|   
# 5225|   		    // Don't need this now that we've duplicated it
# 5226|-> 		    close(fd);
# 5227|   		}
# 5228|   	    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def261]
vim91/src/os_unix.c:5226:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5219:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5221:35: branch_true: ...to here
vim91/src/os_unix.c:5226:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5226:21: danger: ‘fd_toshell[1]’ leaks here
# 5224|   
# 5225|   		    // Don't need this now that we've duplicated it
# 5226|-> 		    close(fd);
# 5227|   		}
# 5228|   	    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def262]
vim91/src/os_unix.c:5294:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5294:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5294:21: danger: ‘fd_fromshell[0]’ leaks here
# 5292|   		{
# 5293|   		    // set up stdin for the child
# 5294|-> 		    close(fd_toshell[1]);
# 5295|   		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def263]
vim91/src/os_unix.c:5294:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5294:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5294:21: danger: ‘fd_fromshell[1]’ leaks here
# 5292|   		{
# 5293|   		    // set up stdin for the child
# 5294|-> 		    close(fd_toshell[1]);
# 5295|   		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def264]
vim91/src/os_unix.c:5294:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5294:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5294:21: danger: ‘fd_toshell[0]’ leaks here
# 5292|   		{
# 5293|   		    // set up stdin for the child
# 5294|-> 		    close(fd_toshell[1]);
# 5295|   		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def265]
vim91/src/os_unix.c:5294:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5294:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5294:21: danger: ‘fd_toshell[1]’ leaks here
# 5292|   		{
# 5293|   		    // set up stdin for the child
# 5294|-> 		    close(fd_toshell[1]);
# 5295|   		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def266]
vim91/src/os_unix.c:5295:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5295:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5295:21: danger: ‘fd_fromshell[0]’ leaks here
# 5293|   		    // set up stdin for the child
# 5294|   		    close(fd_toshell[1]);
# 5295|-> 		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);
# 5297|   		    close(fd_toshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def267]
vim91/src/os_unix.c:5295:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5295:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5295:21: danger: ‘fd_fromshell[1]’ leaks here
# 5293|   		    // set up stdin for the child
# 5294|   		    close(fd_toshell[1]);
# 5295|-> 		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);
# 5297|   		    close(fd_toshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def268]
vim91/src/os_unix.c:5295:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5295:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5295:21: danger: ‘fd_toshell[0]’ leaks here
# 5293|   		    // set up stdin for the child
# 5294|   		    close(fd_toshell[1]);
# 5295|-> 		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);
# 5297|   		    close(fd_toshell[0]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def269]
vim91/src/os_unix.c:5297:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5297:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5297:21: danger: ‘fd_fromshell[0]’ leaks here
# 5295|   		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);
# 5297|-> 		    close(fd_toshell[0]);
# 5298|   
# 5299|   		    // set up stdout for the child

Error: GCC_ANALYZER_WARNING (CWE-775): [#def270]
vim91/src/os_unix.c:5297:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5297:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5297:21: danger: ‘fd_fromshell[1]’ leaks here
# 5295|   		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);
# 5297|-> 		    close(fd_toshell[0]);
# 5298|   
# 5299|   		    // set up stdout for the child

Error: GCC_ANALYZER_WARNING (CWE-775): [#def271]
vim91/src/os_unix.c:5297:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5297:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5297:21: danger: ‘fd_toshell[0]’ leaks here
# 5295|   		    close(0);
# 5296|   		    vim_ignored = dup(fd_toshell[0]);
# 5297|-> 		    close(fd_toshell[0]);
# 5298|   
# 5299|   		    // set up stdout for the child

Error: GCC_ANALYZER_WARNING (CWE-775): [#def272]
vim91/src/os_unix.c:5300:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5300:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5300:21: danger: ‘fd_fromshell[0]’ leaks here
# 5298|   
# 5299|   		    // set up stdout for the child
# 5300|-> 		    close(fd_fromshell[0]);
# 5301|   		    close(1);
# 5302|   		    vim_ignored = dup(fd_fromshell[1]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def273]
vim91/src/os_unix.c:5300:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5300:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5300:21: danger: ‘fd_fromshell[1]’ leaks here
# 5298|   
# 5299|   		    // set up stdout for the child
# 5300|-> 		    close(fd_fromshell[0]);
# 5301|   		    close(1);
# 5302|   		    vim_ignored = dup(fd_fromshell[1]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def274]
vim91/src/os_unix.c:5301:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5301:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5301:21: danger: ‘fd_fromshell[1]’ leaks here
# 5299|   		    // set up stdout for the child
# 5300|   		    close(fd_fromshell[0]);
# 5301|-> 		    close(1);
# 5302|   		    vim_ignored = dup(fd_fromshell[1]);
# 5303|   		    close(fd_fromshell[1]);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def275]
vim91/src/os_unix.c:5302:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘vim_ignored’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5296:35: acquire_resource: opened here
vim91/src/os_unix.c:5302:21: danger: ‘vim_ignored’ leaks here; was opened at [(31)](sarif:/runs/0/results/36/codeFlows/0/threadFlows/0/locations/30)
# 5300|   		    close(fd_fromshell[0]);
# 5301|   		    close(1);
# 5302|-> 		    vim_ignored = dup(fd_fromshell[1]);
# 5303|   		    close(fd_fromshell[1]);
# 5304|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def276]
vim91/src/os_unix.c:5303:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5193:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5229:21: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5240:21: branch_true: ...to here
vim91/src/os_unix.c:5303:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5303:21: danger: ‘fd_fromshell[1]’ leaks here
# 5301|   		    close(1);
# 5302|   		    vim_ignored = dup(fd_fromshell[1]);
# 5303|-> 		    close(fd_fromshell[1]);
# 5304|   
# 5305|   # ifdef FEAT_GUI

Error: GCC_ANALYZER_WARNING (CWE-775): [#def277]
vim91/src/os_unix.c:5324:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5229:21: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5323:13: branch_false: ...to here
vim91/src/os_unix.c:5324:13: throw: if ‘_exit’ throws an exception...
vim91/src/os_unix.c:5324:13: danger: ‘fd_fromshell[0]’ leaks here
# 5322|   	     */
# 5323|   	    execvp(argv[0], argv);
# 5324|-> 	    _exit(EXEC_FAILED);	    // exec failed, return failure code
# 5325|   	}
# 5326|   	else			// parent

Error: GCC_ANALYZER_WARNING (CWE-775): [#def278]
vim91/src/os_unix.c:5324:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5229:21: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5323:13: branch_false: ...to here
vim91/src/os_unix.c:5324:13: throw: if ‘_exit’ throws an exception...
vim91/src/os_unix.c:5324:13: danger: ‘fd_fromshell[1]’ leaks here
# 5322|   	     */
# 5323|   	    execvp(argv[0], argv);
# 5324|-> 	    _exit(EXEC_FAILED);	    // exec failed, return failure code
# 5325|   	}
# 5326|   	else			// parent

Error: GCC_ANALYZER_WARNING (CWE-775): [#def279]
vim91/src/os_unix.c:5324:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5229:21: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5323:13: branch_false: ...to here
vim91/src/os_unix.c:5324:13: throw: if ‘_exit’ throws an exception...
vim91/src/os_unix.c:5324:13: danger: ‘fd_toshell[0]’ leaks here
# 5322|   	     */
# 5323|   	    execvp(argv[0], argv);
# 5324|-> 	    _exit(EXEC_FAILED);	    // exec failed, return failure code
# 5325|   	}
# 5326|   	else			// parent

Error: GCC_ANALYZER_WARNING (CWE-775): [#def280]
vim91/src/os_unix.c:5324:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_true: following ‘true’ branch (when ‘pid == 0’)...
vim91/src/os_unix.c:5182:13: branch_true: ...to here
vim91/src/os_unix.c:5229:21: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5323:13: branch_false: ...to here
vim91/src/os_unix.c:5324:13: throw: if ‘_exit’ throws an exception...
vim91/src/os_unix.c:5324:13: danger: ‘fd_toshell[1]’ leaks here
# 5322|   	     */
# 5323|   	    execvp(argv[0], argv);
# 5324|-> 	    _exit(EXEC_FAILED);	    // exec failed, return failure code
# 5325|   	}
# 5326|   	else			// parent

Error: GCC_ANALYZER_WARNING (CWE-775): [#def281]
vim91/src/os_unix.c:5375:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5375:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5375:21: danger: ‘fd_fromshell[0]’ leaks here
# 5373|   # endif
# 5374|   		{
# 5375|-> 		    close(fd_toshell[0]);
# 5376|   		    close(fd_fromshell[1]);
# 5377|   		    toshell_fd = fd_toshell[1];

Error: GCC_ANALYZER_WARNING (CWE-775): [#def282]
vim91/src/os_unix.c:5375:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5375:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5375:21: danger: ‘fd_fromshell[1]’ leaks here
# 5373|   # endif
# 5374|   		{
# 5375|-> 		    close(fd_toshell[0]);
# 5376|   		    close(fd_fromshell[1]);
# 5377|   		    toshell_fd = fd_toshell[1];

Error: GCC_ANALYZER_WARNING (CWE-775): [#def283]
vim91/src/os_unix.c:5375:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5375:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5375:21: danger: ‘fd_toshell[0]’ leaks here
# 5373|   # endif
# 5374|   		{
# 5375|-> 		    close(fd_toshell[0]);
# 5376|   		    close(fd_fromshell[1]);
# 5377|   		    toshell_fd = fd_toshell[1];

Error: GCC_ANALYZER_WARNING (CWE-775): [#def284]
vim91/src/os_unix.c:5375:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5375:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5375:21: danger: ‘fd_toshell[1]’ leaks here
# 5373|   # endif
# 5374|   		{
# 5375|-> 		    close(fd_toshell[0]);
# 5376|   		    close(fd_fromshell[1]);
# 5377|   		    toshell_fd = fd_toshell[1];

Error: GCC_ANALYZER_WARNING (CWE-775): [#def285]
vim91/src/os_unix.c:5376:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5376:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5376:21: danger: ‘fd_fromshell[0]’ leaks here
# 5374|   		{
# 5375|   		    close(fd_toshell[0]);
# 5376|-> 		    close(fd_fromshell[1]);
# 5377|   		    toshell_fd = fd_toshell[1];
# 5378|   		    fromshell_fd = fd_fromshell[0];

Error: GCC_ANALYZER_WARNING (CWE-775): [#def286]
vim91/src/os_unix.c:5376:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5376:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5376:21: danger: ‘fd_fromshell[1]’ leaks here
# 5374|   		{
# 5375|   		    close(fd_toshell[0]);
# 5376|-> 		    close(fd_fromshell[1]);
# 5377|   		    toshell_fd = fd_toshell[1];
# 5378|   		    fromshell_fd = fd_fromshell[0];

Error: GCC_ANALYZER_WARNING (CWE-775): [#def287]
vim91/src/os_unix.c:5376:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5376:21: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5376:21: danger: ‘fd_toshell[1]’ leaks here
# 5374|   		{
# 5375|   		    close(fd_toshell[0]);
# 5376|-> 		    close(fd_fromshell[1]);
# 5377|   		    toshell_fd = fd_toshell[1];
# 5378|   		    fromshell_fd = fd_fromshell[0];

Error: GCC_ANALYZER_WARNING (CWE-775): [#def288]
vim91/src/os_unix.c:5408:25: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fromshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_true: following ‘true’ branch (when ‘wpid == -1’)...
vim91/src/os_unix.c:5408:25: branch_true: ...to here
vim91/src/os_unix.c:5408:25: throw: if ‘msg_puts’ throws an exception...
vim91/src/os_unix.c:5408:25: danger: ‘fromshell_fd’ leaks here
# 5406|   		    if ((wpid = fork()) == -1)
# 5407|   		    {
# 5408|-> 			msg_puts(_("\nCannot fork\n"));
# 5409|   		    }
# 5410|   		    else if (wpid == 0) // child

Error: GCC_ANALYZER_WARNING (CWE-775): [#def289]
vim91/src/os_unix.c:5408:25: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_true: following ‘true’ branch (when ‘wpid == -1’)...
vim91/src/os_unix.c:5408:25: branch_true: ...to here
vim91/src/os_unix.c:5408:25: throw: if ‘msg_puts’ throws an exception...
vim91/src/os_unix.c:5408:25: danger: ‘toshell_fd’ leaks here
# 5406|   		    if ((wpid = fork()) == -1)
# 5407|   		    {
# 5408|-> 			msg_puts(_("\nCannot fork\n"));
# 5409|   		    }
# 5410|   		    else if (wpid == 0) // child

Error: GCC_ANALYZER_WARNING (CWE-775): [#def290]
vim91/src/os_unix.c:5414:43: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fromshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5414:43: throw: if ‘ml_get’ throws an exception...
vim91/src/os_unix.c:5414:43: danger: ‘fromshell_fd’ leaks here
# 5412|   			linenr_T    lnum = curbuf->b_op_start.lnum;
# 5413|   			size_t	    written = 0;
# 5414|-> 			char_u	    *lp = ml_get(lnum);
# 5415|   			size_t	    lplen = (size_t)ml_get_len(lnum);
# 5416|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def291]
vim91/src/os_unix.c:5414:43: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5414:43: throw: if ‘ml_get’ throws an exception...
vim91/src/os_unix.c:5414:43: danger: ‘toshell_fd’ leaks here
# 5412|   			linenr_T    lnum = curbuf->b_op_start.lnum;
# 5413|   			size_t	    written = 0;
# 5414|-> 			char_u	    *lp = ml_get(lnum);
# 5415|   			size_t	    lplen = (size_t)ml_get_len(lnum);
# 5416|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def292]
vim91/src/os_unix.c:5415:53: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fromshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5415:53: throw: if ‘ml_get_len’ throws an exception...
vim91/src/os_unix.c:5415:53: danger: ‘fromshell_fd’ leaks here
# 5413|   			size_t	    written = 0;
# 5414|   			char_u	    *lp = ml_get(lnum);
# 5415|-> 			size_t	    lplen = (size_t)ml_get_len(lnum);
# 5416|   
# 5417|   			close(fromshell_fd);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def293]
vim91/src/os_unix.c:5415:53: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5415:53: throw: if ‘ml_get_len’ throws an exception...
vim91/src/os_unix.c:5415:53: danger: ‘toshell_fd’ leaks here
# 5413|   			size_t	    written = 0;
# 5414|   			char_u	    *lp = ml_get(lnum);
# 5415|-> 			size_t	    lplen = (size_t)ml_get_len(lnum);
# 5416|   
# 5417|   			close(fromshell_fd);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def294]
vim91/src/os_unix.c:5417:25: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fromshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5417:25: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5417:25: danger: ‘fromshell_fd’ leaks here
# 5415|   			size_t	    lplen = (size_t)ml_get_len(lnum);
# 5416|   
# 5417|-> 			close(fromshell_fd);
# 5418|   			for (;;)
# 5419|   			{

Error: GCC_ANALYZER_WARNING (CWE-775): [#def295]
vim91/src/os_unix.c:5417:25: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5417:25: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5417:25: danger: ‘toshell_fd’ leaks here
# 5415|   			size_t	    lplen = (size_t)ml_get_len(lnum);
# 5416|   
# 5417|-> 			close(fromshell_fd);
# 5418|   			for (;;)
# 5419|   			{

Error: GCC_ANALYZER_WARNING (CWE-775): [#def296]
vim91/src/os_unix.c:5424:39: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5424:39: throw: if ‘write’ throws an exception...
vim91/src/os_unix.c:5424:39: danger: ‘toshell_fd’ leaks here
# 5422|   			    else if (lp[written] == NL)
# 5423|   				// NL -> NUL translation
# 5424|-> 				len = write(toshell_fd, "", (size_t)1);
# 5425|   			    else
# 5426|   			    {

Error: GCC_ANALYZER_WARNING (CWE-775): [#def297]
vim91/src/os_unix.c:5427:46: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5427:46: throw: if ‘vim_strchr’ throws an exception...
vim91/src/os_unix.c:5427:46: danger: ‘toshell_fd’ leaks here
# 5425|   			    else
# 5426|   			    {
# 5427|-> 				char_u	*s = vim_strchr(lp + written, NL);
# 5428|   
# 5429|   				len = write(toshell_fd, (char *)lp + written,

Error: GCC_ANALYZER_WARNING (CWE-775): [#def298]
vim91/src/os_unix.c:5429:39: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5429:39: throw: if ‘write’ throws an exception...
vim91/src/os_unix.c:5429:39: danger: ‘toshell_fd’ leaks here
# 5427|   				char_u	*s = vim_strchr(lp + written, NL);
# 5428|   
# 5429|-> 				len = write(toshell_fd, (char *)lp + written,
# 5430|   					   s == NULL ? lplen - written
# 5431|   					      : (size_t)(s - (lp + written)));

Error: GCC_ANALYZER_WARNING (CWE-775): [#def299]
vim91/src/os_unix.c:5443:51: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5420:32: branch_true: following ‘true’ branch (when ‘lplen == 0’)...
vim91/src/os_unix.c:5433:45: branch_true: ...to here
vim91/src/os_unix.c:5433:32: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5437:51: branch_true: ...to here
vim91/src/os_unix.c:5437:36: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5443:51: branch_true: ...to here
vim91/src/os_unix.c:5443:51: throw: if ‘write’ throws an exception...
vim91/src/os_unix.c:5443:51: danger: ‘toshell_fd’ leaks here
# 5441|   					    && (lnum != curbuf->b_ml.ml_line_count
# 5442|   						    || curbuf->b_p_eol)))
# 5443|-> 				    vim_ignored = write(toshell_fd, "\n",
# 5444|   								   (size_t)1);
# 5445|   				++lnum;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def300]
vim91/src/os_unix.c:5449:37: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5449:37: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5449:37: danger: ‘toshell_fd’ leaks here
# 5447|   				{
# 5448|   				    // finished all the lines, close pipe
# 5449|-> 				    close(toshell_fd);
# 5450|   				    break;
# 5451|   				}

Error: GCC_ANALYZER_WARNING (CWE-775): [#def301]
vim91/src/os_unix.c:5452:38: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5420:32: branch_true: following ‘true’ branch (when ‘lplen == 0’)...
vim91/src/os_unix.c:5433:45: branch_true: ...to here
vim91/src/os_unix.c:5433:32: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5437:51: branch_true: ...to here
vim91/src/os_unix.c:5437:36: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5443:51: branch_true: ...to here
vim91/src/os_unix.c:5446:36: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5452:38: branch_false: ...to here
vim91/src/os_unix.c:5452:38: throw: if ‘ml_get’ throws an exception...
vim91/src/os_unix.c:5452:38: danger: ‘toshell_fd’ leaks here
# 5450|   				    break;
# 5451|   				}
# 5452|-> 				lp = ml_get(lnum);
# 5453|   				lplen = ml_get_len(lnum);
# 5454|   				written = 0;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def302]
vim91/src/os_unix.c:5453:41: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_true: following ‘true’ branch (when ‘wpid == 0’)...
vim91/src/os_unix.c:5412:50: branch_true: ...to here
vim91/src/os_unix.c:5420:32: branch_true: following ‘true’ branch (when ‘lplen == 0’)...
vim91/src/os_unix.c:5433:45: branch_true: ...to here
vim91/src/os_unix.c:5433:32: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5437:51: branch_true: ...to here
vim91/src/os_unix.c:5437:36: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5443:51: branch_true: ...to here
vim91/src/os_unix.c:5446:36: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5452:38: branch_false: ...to here
vim91/src/os_unix.c:5453:41: throw: if ‘ml_get_len’ throws an exception...
vim91/src/os_unix.c:5453:41: danger: ‘toshell_fd’ leaks here
# 5451|   				}
# 5452|   				lp = ml_get(lnum);
# 5453|-> 				lplen = ml_get_len(lnum);
# 5454|   				written = 0;
# 5455|   			    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def303]
vim91/src/os_unix.c:5463:25: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fromshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_false: following ‘false’ branch (when ‘wpid != 0’)...
vim91/src/os_unix.c:5463:25: branch_false: ...to here
vim91/src/os_unix.c:5463:25: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5463:25: danger: ‘fromshell_fd’ leaks here
# 5461|   		    else // parent
# 5462|   		    {
# 5463|-> 			close(toshell_fd);
# 5464|   			toshell_fd = -1;
# 5465|   		    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def304]
vim91/src/os_unix.c:5463:25: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5402:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5406:24: branch_false: following ‘false’ branch (when ‘wpid != -1’)...
vim91/src/os_unix.c:5410:29: branch_false: ...to here
vim91/src/os_unix.c:5410:29: branch_false: following ‘false’ branch (when ‘wpid != 0’)...
vim91/src/os_unix.c:5463:25: branch_false: ...to here
vim91/src/os_unix.c:5463:25: throw: if ‘close’ throws an exception...
vim91/src/os_unix.c:5463:25: danger: ‘toshell_fd’ leaks here
# 5461|   		    else // parent
# 5462|   		    {
# 5463|-> 			close(toshell_fd);
# 5464|   			toshell_fd = -1;
# 5465|   		    }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def305]
vim91/src/os_unix.c:5469:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fromshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5468:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5469:21: branch_true: ...to here
vim91/src/os_unix.c:5469:21: throw: if ‘ga_init2’ throws an exception...
vim91/src/os_unix.c:5469:21: danger: ‘fromshell_fd’ leaks here
# 5467|   
# 5468|   		if (options & SHELL_READ)
# 5469|-> 		    ga_init2(&ga, 1, BUFLEN);
# 5470|   
# 5471|   		noread_cnt = 0;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def306]
vim91/src/os_unix.c:5469:21: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘toshell_fd’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_false: following ‘false’ branch (when ‘pid != -1’)...
vim91/src/os_unix.c:5180:17: branch_false: ...to here
vim91/src/os_unix.c:5180:17: branch_false: following ‘false’ branch (when ‘pid != 0’)...
vim91/src/os_unix.c:5332:13: branch_false: ...to here
vim91/src/os_unix.c:5343:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5375:21: branch_true: ...to here
vim91/src/os_unix.c:5468:20: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5469:21: branch_true: ...to here
vim91/src/os_unix.c:5469:21: throw: if ‘ga_init2’ throws an exception...
vim91/src/os_unix.c:5469:21: danger: ‘toshell_fd’ leaks here
# 5467|   
# 5468|   		if (options & SHELL_READ)
# 5469|-> 		    ga_init2(&ga, 1, BUFLEN);
# 5470|   
# 5471|   		noread_cnt = 0;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def307]
vim91/src/os_unix.c:5900:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5899:12: branch_true: following ‘true’ branch (when ‘tmode == 2’)...
vim91/src/os_unix.c:5900:13: branch_true: ...to here
vim91/src/os_unix.c:5900:13: throw: if ‘settmode’ throws an exception...
vim91/src/os_unix.c:5900:13: danger: ‘fd_fromshell[0]’ leaks here
# 5898|       if (!did_settmode)
# 5899|   	if (tmode == TMODE_RAW)
# 5900|-> 	    settmode(TMODE_RAW);	// set to raw mode
# 5901|       resettitle();
# 5902|       vim_free(argv);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def308]
vim91/src/os_unix.c:5900:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5899:12: branch_true: following ‘true’ branch (when ‘tmode == 2’)...
vim91/src/os_unix.c:5900:13: branch_true: ...to here
vim91/src/os_unix.c:5900:13: throw: if ‘settmode’ throws an exception...
vim91/src/os_unix.c:5900:13: danger: ‘fd_fromshell[1]’ leaks here
# 5898|       if (!did_settmode)
# 5899|   	if (tmode == TMODE_RAW)
# 5900|-> 	    settmode(TMODE_RAW);	// set to raw mode
# 5901|       resettitle();
# 5902|       vim_free(argv);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def309]
vim91/src/os_unix.c:5900:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5899:12: branch_true: following ‘true’ branch (when ‘tmode == 2’)...
vim91/src/os_unix.c:5900:13: branch_true: ...to here
vim91/src/os_unix.c:5900:13: throw: if ‘settmode’ throws an exception...
vim91/src/os_unix.c:5900:13: danger: ‘fd_toshell[0]’ leaks here
# 5898|       if (!did_settmode)
# 5899|   	if (tmode == TMODE_RAW)
# 5900|-> 	    settmode(TMODE_RAW);	// set to raw mode
# 5901|       resettitle();
# 5902|       vim_free(argv);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def310]
vim91/src/os_unix.c:5900:13: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5899:12: branch_true: following ‘true’ branch (when ‘tmode == 2’)...
vim91/src/os_unix.c:5900:13: branch_true: ...to here
vim91/src/os_unix.c:5900:13: throw: if ‘settmode’ throws an exception...
vim91/src/os_unix.c:5900:13: danger: ‘fd_toshell[1]’ leaks here
# 5898|       if (!did_settmode)
# 5899|   	if (tmode == TMODE_RAW)
# 5900|-> 	    settmode(TMODE_RAW);	// set to raw mode
# 5901|       resettitle();
# 5902|       vim_free(argv);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def311]
vim91/src/os_unix.c:5901:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5901:5: throw: if ‘resettitle’ throws an exception...
vim91/src/os_unix.c:5901:5: danger: ‘fd_fromshell[0]’ leaks here
# 5899|   	if (tmode == TMODE_RAW)
# 5900|   	    settmode(TMODE_RAW);	// set to raw mode
# 5901|->     resettitle();
# 5902|       vim_free(argv);
# 5903|       vim_free(tofree1);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def312]
vim91/src/os_unix.c:5901:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5901:5: throw: if ‘resettitle’ throws an exception...
vim91/src/os_unix.c:5901:5: danger: ‘fd_fromshell[1]’ leaks here
# 5899|   	if (tmode == TMODE_RAW)
# 5900|   	    settmode(TMODE_RAW);	// set to raw mode
# 5901|->     resettitle();
# 5902|       vim_free(argv);
# 5903|       vim_free(tofree1);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def313]
vim91/src/os_unix.c:5901:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5901:5: throw: if ‘resettitle’ throws an exception...
vim91/src/os_unix.c:5901:5: danger: ‘fd_toshell[0]’ leaks here
# 5899|   	if (tmode == TMODE_RAW)
# 5900|   	    settmode(TMODE_RAW);	// set to raw mode
# 5901|->     resettitle();
# 5902|       vim_free(argv);
# 5903|       vim_free(tofree1);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def314]
vim91/src/os_unix.c:5901:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5901:5: throw: if ‘resettitle’ throws an exception...
vim91/src/os_unix.c:5901:5: danger: ‘fd_toshell[1]’ leaks here
# 5899|   	if (tmode == TMODE_RAW)
# 5900|   	    settmode(TMODE_RAW);	// set to raw mode
# 5901|->     resettitle();
# 5902|       vim_free(argv);
# 5903|       vim_free(tofree1);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def315]
vim91/src/os_unix.c:5902:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5902:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5902:5: danger: ‘fd_fromshell[0]’ leaks here
# 5900|   	    settmode(TMODE_RAW);	// set to raw mode
# 5901|       resettitle();
# 5902|->     vim_free(argv);
# 5903|       vim_free(tofree1);
# 5904|       vim_free(tofree2);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def316]
vim91/src/os_unix.c:5902:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5902:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5902:5: danger: ‘fd_fromshell[1]’ leaks here
# 5900|   	    settmode(TMODE_RAW);	// set to raw mode
# 5901|       resettitle();
# 5902|->     vim_free(argv);
# 5903|       vim_free(tofree1);
# 5904|       vim_free(tofree2);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def317]
vim91/src/os_unix.c:5902:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5902:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5902:5: danger: ‘fd_toshell[0]’ leaks here
# 5900|   	    settmode(TMODE_RAW);	// set to raw mode
# 5901|       resettitle();
# 5902|->     vim_free(argv);
# 5903|       vim_free(tofree1);
# 5904|       vim_free(tofree2);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def318]
vim91/src/os_unix.c:5902:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5902:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5902:5: danger: ‘fd_toshell[1]’ leaks here
# 5900|   	    settmode(TMODE_RAW);	// set to raw mode
# 5901|       resettitle();
# 5902|->     vim_free(argv);
# 5903|       vim_free(tofree1);
# 5904|       vim_free(tofree2);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def319]
vim91/src/os_unix.c:5903:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5903:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5903:5: danger: ‘fd_fromshell[0]’ leaks here
# 5901|       resettitle();
# 5902|       vim_free(argv);
# 5903|->     vim_free(tofree1);
# 5904|       vim_free(tofree2);
# 5905|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def320]
vim91/src/os_unix.c:5903:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5903:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5903:5: danger: ‘fd_fromshell[1]’ leaks here
# 5901|       resettitle();
# 5902|       vim_free(argv);
# 5903|->     vim_free(tofree1);
# 5904|       vim_free(tofree2);
# 5905|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def321]
vim91/src/os_unix.c:5903:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5903:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5903:5: danger: ‘fd_toshell[0]’ leaks here
# 5901|       resettitle();
# 5902|       vim_free(argv);
# 5903|->     vim_free(tofree1);
# 5904|       vim_free(tofree2);
# 5905|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def322]
vim91/src/os_unix.c:5903:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5903:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5903:5: danger: ‘fd_toshell[1]’ leaks here
# 5901|       resettitle();
# 5902|       vim_free(argv);
# 5903|->     vim_free(tofree1);
# 5904|       vim_free(tofree2);
# 5905|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def323]
vim91/src/os_unix.c:5904:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5904:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5904:5: danger: ‘fd_fromshell[0]’ leaks here
# 5902|       vim_free(argv);
# 5903|       vim_free(tofree1);
# 5904|->     vim_free(tofree2);
# 5905|   
# 5906|       return retval;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def324]
vim91/src/os_unix.c:5904:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5904:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5904:5: danger: ‘fd_fromshell[1]’ leaks here
# 5902|       vim_free(argv);
# 5903|       vim_free(tofree1);
# 5904|->     vim_free(tofree2);
# 5905|   
# 5906|       return retval;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def325]
vim91/src/os_unix.c:5904:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5904:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5904:5: danger: ‘fd_toshell[0]’ leaks here
# 5902|       vim_free(argv);
# 5903|       vim_free(tofree1);
# 5904|->     vim_free(tofree2);
# 5905|   
# 5906|       return retval;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def326]
vim91/src/os_unix.c:5904:5: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5904:5: throw: if ‘vim_free’ throws an exception...
vim91/src/os_unix.c:5904:5: danger: ‘fd_toshell[1]’ leaks here
# 5902|       vim_free(argv);
# 5903|       vim_free(tofree1);
# 5904|->     vim_free(tofree2);
# 5905|   
# 5906|       return retval;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def327]
vim91/src/os_unix.c:5906:12: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5906:12: danger: ‘fd_fromshell[0]’ leaks here
# 5904|       vim_free(tofree2);
# 5905|   
# 5906|->     return retval;
# 5907|   }
# 5908|   #endif // USE_SYSTEM

Error: GCC_ANALYZER_WARNING (CWE-775): [#def328]
vim91/src/os_unix.c:5906:12: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_fromshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5906:12: danger: ‘fd_fromshell[1]’ leaks here
# 5904|       vim_free(tofree2);
# 5905|   
# 5906|->     return retval;
# 5907|   }
# 5908|   #endif // USE_SYSTEM

Error: GCC_ANALYZER_WARNING (CWE-775): [#def329]
vim91/src/os_unix.c:5906:12: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[0]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5906:12: danger: ‘fd_toshell[0]’ leaks here
# 5904|       vim_free(tofree2);
# 5905|   
# 5906|->     return retval;
# 5907|   }
# 5908|   #endif // USE_SYSTEM

Error: GCC_ANALYZER_WARNING (CWE-775): [#def330]
vim91/src/os_unix.c:5906:12: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘fd_toshell[1]’
vim91/src/os_unix.c:5068:1: enter_function: entry to ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: call_function: calling ‘unix_build_argv’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5102:9: return_function: returning to ‘mch_call_shell_fork’ from ‘unix_build_argv’
vim91/src/os_unix.c:5102:8: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5110:9: branch_false: ...to here
vim91/src/os_unix.c:5110:8: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5130:27: branch_true: ...to here
vim91/src/os_unix.c:5131:16: branch_true: following ‘true’ branch...
vim91/src/os_unix.c:5133:31: branch_true: ...to here
vim91/src/os_unix.c:5134:20: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5140:16: branch_false: ...to here
vim91/src/os_unix.c:5140:16: branch_false: following ‘false’ branch (when ‘pipe_error == 0’)...
vim91/src/os_unix.c:5151:9: branch_false: ...to here
vim91/src/os_unix.c:5153:12: branch_true: following ‘true’ branch (when ‘pid == -1’)...
vim91/src/os_unix.c:5155:13: call_function: inlined call to ‘unblock_signals’ from ‘mch_call_shell_fork’
vim91/src/os_unix.c:5158:16: branch_false: following ‘false’ branch...
vim91/src/os_unix.c:5907:1: branch_false: ...to here
vim91/src/os_unix.c:5906:12: danger: ‘fd_toshell[1]’ leaks here
# 5904|       vim_free(tofree2);
# 5905|   
# 5906|->     return retval;
# 5907|   }
# 5908|   #endif // USE_SYSTEM

Error: COMPILER_WARNING: [#def331]
vim91/src/popupmenu.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def332]
vim91/src/popupwin.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def333]
vim91/src/profiler.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def334]
vim91/src/profiler.c:935:24: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(profile_fname, "w")’
vim91/src/profiler.c:1005:1: enter_function: entry to ‘profile_dump’
vim91/src/profiler.c:1009:8: branch_false: following ‘false’ branch...
vim91/src/profiler.c:1012:10: branch_false: ...to here
vim91/src/profiler.c:1012:10: acquire_resource: opened here
vim91/src/profiler.c:1013:8: branch_false: following ‘false’ branch...
vim91/src/profiler.c:1017:9: branch_false: ...to here
vim91/src/profiler.c:1018:9: call_function: calling ‘func_dump_profile’ from ‘profile_dump’
#  933|       sn_prl_T	    *pp;
#  934|   
#  935|->     for (id = 1; id <= script_items.ga_len; ++id)
#  936|       {
#  937|   	si = SCRIPT_ITEM(id);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def335]
vim91/src/profiler.c:935:24: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(profile_fname, "w")’
vim91/src/profiler.c:1005:1: enter_function: entry to ‘profile_dump’
vim91/src/profiler.c:1009:8: branch_false: following ‘false’ branch...
vim91/src/profiler.c:1012:10: branch_false: ...to here
vim91/src/profiler.c:1012:10: acquire_memory: allocated here
vim91/src/profiler.c:1013:8: branch_false: following ‘false’ branch...
vim91/src/profiler.c:1017:9: branch_false: ...to here
vim91/src/profiler.c:1018:9: call_function: calling ‘func_dump_profile’ from ‘profile_dump’
#  933|       sn_prl_T	    *pp;
#  934|   
#  935|->     for (id = 1; id <= script_items.ga_len; ++id)
#  936|       {
#  937|   	si = SCRIPT_ITEM(id);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def336]
vim91/src/profiler.c:959:25: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(*si.sn_name, "r")’
vim91/src/profiler.c:935:18: branch_true: following ‘true’ branch...
vim91/src/profiler.c:937:14: branch_true: ...to here
vim91/src/profiler.c:938:12: branch_true: following ‘true’ branch...
vim91/src/profiler.c:940:13: branch_true: ...to here
vim91/src/profiler.c:950:19: acquire_resource: opened here
vim91/src/profiler.c:951:16: branch_false: following ‘false’ branch...
vim91/src/profiler.c:951:16: branch_false: ...to here
vim91/src/profiler.c:959:25: throw: if ‘vim_fgets’ throws an exception...
vim91/src/profiler.c:959:25: danger: ‘fopen(*si.sn_name, "r")’ leaks here; was opened at [(5)](sarif:/runs/0/results/14/codeFlows/0/threadFlows/0/locations/4)
#  957|   		for (i = 0; ; ++i)
#  958|   		{
#  959|-> 		    if (vim_fgets(IObuff, IOSIZE, sfd))
#  960|   			break;
#  961|   		    // When a line has been truncated, append NL, taking care

Error: GCC_ANALYZER_WARNING (CWE-401): [#def337]
vim91/src/profiler.c:959:25: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(*si.sn_name, "r")’
vim91/src/profiler.c:935:18: branch_true: following ‘true’ branch...
vim91/src/profiler.c:937:14: branch_true: ...to here
vim91/src/profiler.c:938:12: branch_true: following ‘true’ branch...
vim91/src/profiler.c:940:13: branch_true: ...to here
vim91/src/profiler.c:950:19: acquire_memory: allocated here
vim91/src/profiler.c:951:16: branch_false: following ‘false’ branch...
vim91/src/profiler.c:951:16: branch_false: ...to here
vim91/src/profiler.c:959:25: throw: if ‘vim_fgets’ throws an exception...
vim91/src/profiler.c:959:25: danger: ‘fopen(*si.sn_name, "r")’ leaks here; was allocated at [(5)](sarif:/runs/0/results/15/codeFlows/0/threadFlows/0/locations/4)
#  957|   		for (i = 0; ; ++i)
#  958|   		{
#  959|-> 		    if (vim_fgets(IObuff, IOSIZE, sfd))
#  960|   			break;
#  961|   		    // When a line has been truncated, append NL, taking care

Error: COMPILER_WARNING: [#def338]
vim91/src/pty.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def339]
vim91/src/quickfix.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def340]
vim91/src/regexp.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-909): [#def341]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.input
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def342]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.line
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def343]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.lnum
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def344]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.need_clear_subexpr
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def345]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.need_clear_zsubexpr
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def346]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_alt_listid
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def347]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_backref
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def348]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_zend
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def349]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_zsubexpr
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def350]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_listid
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def351]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_nsubexpr
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def352]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_buf
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def353]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_endp
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def354]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_endpos
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def355]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_firstlnum
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def356]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_ic
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def357]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_icombine
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def358]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_line_lbr
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def359]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_match
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def360]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_maxcol
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def361]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_maxline
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def362]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_mmatch
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def363]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_startp
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def364]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_startpos
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def365]
vim91/src/regexp.c:2109: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_win
# 2107|       rex_in_use = rex_in_use_save;
# 2108|       if (rex_in_use)
# 2109|-> 	rex = rex_save;
# 2110|   
# 2111|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def366]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.input
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def367]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.line
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def368]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.lnum
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def369]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.need_clear_subexpr
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def370]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.need_clear_zsubexpr
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def371]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_alt_listid
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def372]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_backref
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def373]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_zend
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def374]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_zsubexpr
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def375]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_listid
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def376]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_nsubexpr
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def377]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_buf
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def378]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_endp
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def379]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_endpos
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def380]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_firstlnum
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def381]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_ic
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def382]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_icombine
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def383]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_line_lbr
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def384]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_match
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def385]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_maxcol
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def386]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_maxline
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def387]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_mmatch
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def388]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_startp
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def389]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_startpos
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def390]
vim91/src/regexp.c:2142: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_win
# 2140|       rex_in_use = rex_in_use_save;
# 2141|       if (rex_in_use)
# 2142|-> 	rex = rex_save;
# 2143|   
# 2144|       return result;

Error: CPPCHECK_WARNING (CWE-909): [#def391]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.input
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def392]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.line
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def393]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.lnum
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def394]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.need_clear_subexpr
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def395]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.need_clear_zsubexpr
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def396]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_alt_listid
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def397]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_backref
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def398]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_zend
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def399]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_zsubexpr
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def400]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_listid
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def401]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_nsubexpr
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def402]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_buf
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def403]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_endp
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def404]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_endpos
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def405]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_firstlnum
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def406]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_ic
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def407]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_icombine
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def408]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_line_lbr
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def409]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_match
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def410]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_maxcol
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def411]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_maxline
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def412]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_mmatch
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def413]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_startp
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def414]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_startpos
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def415]
vim91/src/regexp.c:3135: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_win
# 3133|       rex_in_use = rex_in_use_save;
# 3134|       if (rex_in_use)
# 3135|-> 	rex = rex_save;
# 3136|   
# 3137|       return result > 0;

Error: CPPCHECK_WARNING (CWE-909): [#def416]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.input
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def417]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.line
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def418]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.lnum
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def419]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.need_clear_subexpr
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def420]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.need_clear_zsubexpr
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def421]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_alt_listid
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def422]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_backref
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def423]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_zend
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def424]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_has_zsubexpr
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def425]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_listid
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def426]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.nfa_nsubexpr
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def427]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_buf
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def428]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_endp
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def429]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_endpos
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def430]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_firstlnum
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def431]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_ic
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def432]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_icombine
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def433]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_line_lbr
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def434]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_match
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def435]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_maxcol
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def436]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_maxline
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def437]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_mmatch
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def438]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_startp
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def439]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_startpos
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: CPPCHECK_WARNING (CWE-909): [#def440]
vim91/src/regexp.c:3270: error[uninitStructMember]: Uninitialized struct member: rex_save.reg_win
# 3268|       rex_in_use = rex_in_use_save;
# 3269|       if (rex_in_use)
# 3270|-> 	rex = rex_save;
# 3271|   
# 3272|       return result <= 0 ? 0 : result;

Error: COMPILER_WARNING: [#def441]
vim91/src/register.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def442]
vim91/src/screen.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def443]
vim91/src/scriptfile.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-401): [#def444]
vim91/src/scriptfile.c:59:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1655:9: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1878:5: call_function: calling ‘estack_push’ from ‘do_source_ext’
#   57|       // If memory allocation fails then we'll pop more than we push, eventually
#   58|       // at the top level it will be OK again.
#   59|->     if (ga_grow(&exestack, 1) == FAIL)
#   60|   	return NULL;
#   61|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def445]
vim91/src/scriptfile.c:439:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1346:1: enter_function: entry to ‘cmd_source’
vim91/src/scriptfile.c:1393:14: call_function: inlined call to ‘do_source’ from ‘cmd_source’
#  437|       scriptitem_T    *si = NULL;
#  438|   
#  439|->     if (ga_grow(&script_items, (int)(sid - script_items.ga_len)) == FAIL)
#  440|       {
#  441|   	*error = FAIL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def446]
vim91/src/scriptfile.c:446:14: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1346:1: enter_function: entry to ‘cmd_source’
vim91/src/scriptfile.c:1393:14: call_function: inlined call to ‘do_source’ from ‘cmd_source’
#  444|       while (script_items.ga_len < sid)
#  445|       {
#  446|-> 	si = ALLOC_CLEAR_ONE(scriptitem_T);
#  447|   	if (si == NULL)
#  448|   	{

Error: GCC_ANALYZER_WARNING (CWE-476): [#def447]
vim91/src/scriptfile.c:1357:13: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘eap’
vim91/src/scriptfile.c:1427:1: enter_function: entry to ‘ex_options’
vim91/src/scriptfile.c:1437:5: call_function: calling ‘cmd_source’ from ‘ex_options’
# 1355|   	if (*fname != NUL)
# 1356|   	{
# 1357|-> 	    semsg(_(e_invalid_argument_str), eap->arg);
# 1358|   	    return;
# 1359|   	}

Error: GCC_ANALYZER_WARNING (CWE-476): [#def448]
vim91/src/scriptfile.c:1544:10: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘eap’
vim91/src/scriptfile.c:2041:1: enter_function: entry to ‘do_source’
vim91/src/scriptfile.c:2047:12: call_function: calling ‘do_source_ext’ from ‘do_source’
# 1542|   
# 1543|       // Copy the lines from the buffer into a grow array
# 1544|->     for (curr_lnum = eap->line1; curr_lnum <= eap->line2; curr_lnum++)
# 1545|       {
# 1546|   	line = vim_strsave(ml_get(curr_lnum));

Error: GCC_ANALYZER_WARNING (CWE-401): [#def449]
vim91/src/scriptfile.c:1724:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1722:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1724:9: branch_true: ...to here
vim91/src/scriptfile.c:1724:9: throw: if ‘verbose_enter’ throws an exception...
vim91/src/scriptfile.c:1724:9: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/15)
# 1722|       if (p_verbose > 1)
# 1723|       {
# 1724|-> 	verbose_enter();
# 1725|   	if (SOURCING_NAME == NULL)
# 1726|   	    smsg(_("sourcing \"%s\""), fname);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def450]
vim91/src/scriptfile.c:1726:13: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1722:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1724:9: branch_true: ...to here
vim91/src/scriptfile.c:1725:12: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1726:18: branch_true: ...to here
vim91/src/scriptfile.c:1726:13: throw: if ‘smsg’ throws an exception...
vim91/src/scriptfile.c:1726:13: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/15)
# 1724|   	verbose_enter();
# 1725|   	if (SOURCING_NAME == NULL)
# 1726|-> 	    smsg(_("sourcing \"%s\""), fname);
# 1727|   	else
# 1728|   	    smsg(_("line %ld: sourcing \"%s\""), SOURCING_LNUM, fname);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def451]
vim91/src/scriptfile.c:1728:13: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1722:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1724:9: branch_true: ...to here
vim91/src/scriptfile.c:1725:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1728:13: branch_false: ...to here
vim91/src/scriptfile.c:1728:13: throw: if ‘smsg’ throws an exception...
vim91/src/scriptfile.c:1728:13: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/15)
# 1726|   	    smsg(_("sourcing \"%s\""), fname);
# 1727|   	else
# 1728|-> 	    smsg(_("line %ld: sourcing \"%s\""), SOURCING_LNUM, fname);
# 1729|   	verbose_leave();
# 1730|       }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def452]
vim91/src/scriptfile.c:1729:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1722:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1724:9: branch_true: ...to here
vim91/src/scriptfile.c:1729:9: throw: if ‘verbose_leave’ throws an exception...
vim91/src/scriptfile.c:1729:9: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/15)
# 1727|   	else
# 1728|   	    smsg(_("line %ld: sourcing \"%s\""), SOURCING_LNUM, fname);
# 1729|-> 	verbose_leave();
# 1730|       }
# 1731|       if (is_vimrc == DOSO_VIMRC)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def453]
vim91/src/scriptfile.c:1732:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1731:8: branch_true: following ‘true’ branch (when ‘is_vimrc == 1’)...
vim91/src/scriptfile.c:1732:9: branch_true: ...to here
vim91/src/scriptfile.c:1732:9: throw: if ‘vimrc_found’ throws an exception...
vim91/src/scriptfile.c:1732:9: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/15)
# 1730|       }
# 1731|       if (is_vimrc == DOSO_VIMRC)
# 1732|-> 	vimrc_found(fname_exp, (char_u *)"MYVIMRC");
# 1733|       else if (is_vimrc == DOSO_GVIMRC)
# 1734|   	vimrc_found(fname_exp, (char_u *)"MYGVIMRC");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def454]
vim91/src/scriptfile.c:1734:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1731:8: branch_false: following ‘false’ branch (when ‘is_vimrc != 1’)...
vim91/src/scriptfile.c:1733:13: branch_false: ...to here
vim91/src/scriptfile.c:1733:13: branch_true: following ‘true’ branch (when ‘is_vimrc == 2’)...
vim91/src/scriptfile.c:1734:9: branch_true: ...to here
vim91/src/scriptfile.c:1734:9: throw: if ‘vimrc_found’ throws an exception...
vim91/src/scriptfile.c:1734:9: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/15)
# 1732|   	vimrc_found(fname_exp, (char_u *)"MYVIMRC");
# 1733|       else if (is_vimrc == DOSO_GVIMRC)
# 1734|-> 	vimrc_found(fname_exp, (char_u *)"MYGVIMRC");
# 1735|   
# 1736|   #ifdef USE_CRNL

Error: GCC_ANALYZER_WARNING (CWE-401): [#def455]
vim91/src/scriptfile.c:1746:25: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1746:25: throw: if ‘dbg_find_breakpoint’ throws an exception...
vim91/src/scriptfile.c:1746:25: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/15)
# 1744|   #ifdef FEAT_EVAL
# 1745|       // Check if this script has a breakpoint.
# 1746|->     cookie.breakpoint = dbg_find_breakpoint(TRUE, fname_exp, (linenr_T)0);
# 1747|       cookie.fname = fname_exp;
# 1748|       cookie.dbg_tick = debug_tick;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def456]
vim91/src/scriptfile.c:1755:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1754:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1755:9: branch_true: ...to here
vim91/src/scriptfile.c:1755:9: throw: if ‘time_push’ throws an exception...
vim91/src/scriptfile.c:1755:9: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/11/codeFlows/0/threadFlows/0/locations/15)
# 1753|   #ifdef STARTUPTIME
# 1754|       if (time_fd != NULL)
# 1755|-> 	time_push(&tv_rel, &tv_start);
# 1756|   #endif
# 1757|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def457]
vim91/src/scriptfile.c:1774:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1773:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1774:9: branch_true: ...to here
vim91/src/scriptfile.c:1774:9: throw: if ‘prof_child_enter’ throws an exception...
vim91/src/scriptfile.c:1774:9: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/12/codeFlows/0/threadFlows/0/locations/15)
# 1772|   # ifdef FEAT_PROFILE
# 1773|       if (do_profiling == PROF_YES)
# 1774|-> 	prof_child_enter(&wait_start);		// entering a child now
# 1775|   # endif
# 1776|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def458]
vim91/src/scriptfile.c:1779:5: warning[-Wanalyzer-malloc-leak]: leak of ‘cookie.fp’
vim91/src/scriptfile.c:1584:1: enter_function: entry to ‘do_source_ext’
vim91/src/scriptfile.c:1618:8: branch_false: following ‘false’ branch (when ‘fname’ is non-NULL)...
vim91/src/scriptfile.c:1627:27: branch_false: ...to here
vim91/src/scriptfile.c:1628:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1630:21: branch_false: ...to here
vim91/src/scriptfile.c:1631:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1633:13: branch_false: ...to here
vim91/src/scriptfile.c:1633:12: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1640:5: branch_false: ...to here
vim91/src/scriptfile.c:1674:8: branch_true: following ‘true’ branch...
vim91/src/scriptfile.c:1677:21: branch_true: ...to here
vim91/src/scriptfile.c:1677:21: call_function: calling ‘fopen_noinh_readbin’ from ‘do_source_ext’
vim91/src/scriptfile.c:1677:21: return_function: returning to ‘do_source_ext’ from ‘fopen_noinh_readbin’
vim91/src/scriptfile.c:1682:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1704:9: branch_false: ...to here
vim91/src/scriptfile.c:1704:8: branch_false: following ‘false’ branch...
vim91/src/scriptfile.c:1722:9: branch_false: ...to here
vim91/src/scriptfile.c:1779:5: throw: if ‘save_funccal’ throws an exception...
vim91/src/scriptfile.c:1779:5: danger: ‘cookie.fp’ leaks here; was allocated at [(16)](sarif:/runs/0/results/13/codeFlows/0/threadFlows/0/locations/15)
# 1777|       // Don't use local function variables, if called from a function.
# 1778|       // Also starts profiling timer for nested script.
# 1779|->     save_funccal(&funccalp_entry);
# 1780|   
# 1781|       // Reset "KeyTyped" to avoid some commands thinking they are invoked

Error: COMPILER_WARNING: [#def459]
vim91/src/search.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-457): [#def460]
vim91/src/search.c:2866: warning[uninitvar]: Uninitialized variable: vcol
# 2864|   
# 2865|       int col_visible = (curwin->w_p_wrap
# 2866|-> 	    || (vcol >= curwin->w_leftcol
# 2867|   		&& vcol < curwin->w_leftcol + curwin->w_width));
# 2868|       if (!col_visible)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def461]
vim91/src/search.c:3679:33: warning[-Wanalyzer-file-leak]: leak of FILE
vim91/src/search.c:3444:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3447:9: branch_false: ...to here
vim91/src/search.c:3464:8: branch_true: following ‘true’ branch...
vim91/src/search.c:3467:50: branch_true: ...to here
vim91/src/search.c:3468:12: branch_false: following ‘false’ branch...
vim91/src/search.c:3470:9: branch_false: ...to here
vim91/src/search.c:3481:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3486:5: branch_false: ...to here
vim91/src/search.c:3495:12: branch_true: following ‘true’ branch...
vim91/src/search.c:3496:20: branch_true: ...to here
vim91/src/search.c:3495:13: branch_true: following ‘true’ branch...
vim91/src/search.c:3498:52: branch_true: ...to here
vim91/src/search.c:3501:17: branch_false: following ‘false’ branch...
vim91/src/search.c:3508:29: branch_false: ...to here
vim91/src/search.c:3511:16: branch_true: following ‘true’ branch (when ‘new_fname’ is non-NULL)...
vim91/src/search.c:3511:16: branch_true: ...to here
vim91/src/search.c:3516:24: branch_true: following ‘true’ branch...
vim91/src/search.c:3516:24: branch_true: ...to here
vim91/src/search.c:3518:24: branch_true: following ‘true’ branch (when ‘max_path_depth == i’)...
vim91/src/search.c:3544:16: branch_true: ...to here
vim91/src/search.c:3636:16: branch_true: following ‘true’ branch (when ‘new_fname’ is non-NULL)...
vim91/src/search.c:3639:21: branch_true: ...to here
vim91/src/search.c:3639:20: branch_false: following ‘false’ branch...
vim91/src/search.c:3639:20: branch_false: ...to here
vim91/src/search.c:3661:44: acquire_resource: opened here
vim91/src/search.c:3661:20: branch_false: following ‘false’ branch...
vim91/src/search.c:3666:24: branch_false: ...to here
vim91/src/search.c:3666:24: branch_false: following ‘false’ branch...
vim91/src/search.c:3675:21: branch_false: ...to here
vim91/src/search.c:3678:24: branch_true: following ‘true’ branch (when ‘action == 5’)...
vim91/src/search.c:3679:33: branch_true: ...to here
vim91/src/search.c:3679:33: throw: if ‘shortmess’ throws an exception...
vim91/src/search.c:3679:33: danger: leaks here; was opened at [(26)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/25)
# 3677|   		    files[depth].matched = FALSE;
# 3678|   		    if (action == ACTION_EXPAND
# 3679|-> 			    && !shortmess(SHM_COMPLETIONSCAN) && !silent)
# 3680|   		    {
# 3681|   			msg_hist_off = TRUE;	// reset in msg_trunc_attr()

Error: GCC_ANALYZER_WARNING (CWE-401): [#def462]
vim91/src/search.c:3679:33: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
vim91/src/search.c:3444:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3447:9: branch_false: ...to here
vim91/src/search.c:3464:8: branch_true: following ‘true’ branch...
vim91/src/search.c:3467:50: branch_true: ...to here
vim91/src/search.c:3468:12: branch_false: following ‘false’ branch...
vim91/src/search.c:3470:9: branch_false: ...to here
vim91/src/search.c:3481:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3486:5: branch_false: ...to here
vim91/src/search.c:3495:12: branch_true: following ‘true’ branch...
vim91/src/search.c:3496:20: branch_true: ...to here
vim91/src/search.c:3495:13: branch_true: following ‘true’ branch...
vim91/src/search.c:3498:52: branch_true: ...to here
vim91/src/search.c:3501:17: branch_false: following ‘false’ branch...
vim91/src/search.c:3508:29: branch_false: ...to here
vim91/src/search.c:3511:16: branch_true: following ‘true’ branch (when ‘new_fname’ is non-NULL)...
vim91/src/search.c:3511:16: branch_true: ...to here
vim91/src/search.c:3516:24: branch_true: following ‘true’ branch...
vim91/src/search.c:3516:24: branch_true: ...to here
vim91/src/search.c:3518:24: branch_true: following ‘true’ branch (when ‘max_path_depth == i’)...
vim91/src/search.c:3544:16: branch_true: ...to here
vim91/src/search.c:3636:16: branch_true: following ‘true’ branch (when ‘new_fname’ is non-NULL)...
vim91/src/search.c:3639:21: branch_true: ...to here
vim91/src/search.c:3639:20: branch_false: following ‘false’ branch...
vim91/src/search.c:3639:20: branch_false: ...to here
vim91/src/search.c:3661:44: acquire_memory: allocated here
vim91/src/search.c:3661:20: branch_false: following ‘false’ branch...
vim91/src/search.c:3666:24: branch_false: ...to here
vim91/src/search.c:3666:24: branch_false: following ‘false’ branch...
vim91/src/search.c:3675:21: branch_false: ...to here
vim91/src/search.c:3678:24: branch_true: following ‘true’ branch (when ‘action == 5’)...
vim91/src/search.c:3679:33: branch_true: ...to here
vim91/src/search.c:3679:33: throw: if ‘shortmess’ throws an exception...
vim91/src/search.c:3679:33: danger: ‘<unknown>’ leaks here; was allocated at [(26)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/25)
# 3677|   		    files[depth].matched = FALSE;
# 3678|   		    if (action == ACTION_EXPAND
# 3679|-> 			    && !shortmess(SHM_COMPLETIONSCAN) && !silent)
# 3680|   		    {
# 3681|   			msg_hist_off = TRUE;	// reset in msg_trunc_attr()

Error: GCC_ANALYZER_WARNING (CWE-775): [#def463]
vim91/src/search.c:3689:25: warning[-Wanalyzer-file-leak]: leak of FILE
vim91/src/search.c:3444:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3447:9: branch_false: ...to here
vim91/src/search.c:3464:8: branch_true: following ‘true’ branch...
vim91/src/search.c:3467:50: branch_true: ...to here
vim91/src/search.c:3468:12: branch_false: following ‘false’ branch...
vim91/src/search.c:3470:9: branch_false: ...to here
vim91/src/search.c:3481:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3486:5: branch_false: ...to here
vim91/src/search.c:3495:12: branch_true: following ‘true’ branch...
vim91/src/search.c:3496:20: branch_true: ...to here
vim91/src/search.c:3495:13: branch_true: following ‘true’ branch...
vim91/src/search.c:3498:52: branch_true: ...to here
vim91/src/search.c:3501:17: branch_false: following ‘false’ branch...
vim91/src/search.c:3508:29: branch_false: ...to here
vim91/src/search.c:3511:16: branch_true: following ‘true’ branch (when ‘new_fname’ is non-NULL)...
vim91/src/search.c:3511:16: branch_true: ...to here
vim91/src/search.c:3516:24: branch_true: following ‘true’ branch...
vim91/src/search.c:3516:24: branch_true: ...to here
vim91/src/search.c:3518:24: branch_true: following ‘true’ branch (when ‘max_path_depth == i’)...
vim91/src/search.c:3544:16: branch_true: ...to here
vim91/src/search.c:3636:16: branch_true: following ‘true’ branch (when ‘new_fname’ is non-NULL)...
vim91/src/search.c:3639:21: branch_true: ...to here
vim91/src/search.c:3639:20: branch_false: following ‘false’ branch...
vim91/src/search.c:3639:20: branch_false: ...to here
vim91/src/search.c:3661:44: acquire_resource: opened here
vim91/src/search.c:3661:20: branch_false: following ‘false’ branch...
vim91/src/search.c:3666:24: branch_false: ...to here
vim91/src/search.c:3666:24: branch_false: following ‘false’ branch...
vim91/src/search.c:3675:21: branch_false: ...to here
vim91/src/search.c:3678:24: branch_false: following ‘false’ branch (when ‘action != 5’)...
vim91/src/search.c:3687:30: branch_false: ...to here
vim91/src/search.c:3687:29: branch_true: following ‘true’ branch...
vim91/src/search.c:3689:25: branch_true: ...to here
vim91/src/search.c:3689:25: throw: if ‘verbose_enter’ throws an exception...
vim91/src/search.c:3689:25: danger: leaks here; was opened at [(26)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/25)
# 3687|   		    else if (p_verbose >= 5)
# 3688|   		    {
# 3689|-> 			verbose_enter();
# 3690|   			smsg(_("Searching included file %s"),
# 3691|   							   (char *)new_fname);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def464]
vim91/src/search.c:3689:25: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
vim91/src/search.c:3444:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3447:9: branch_false: ...to here
vim91/src/search.c:3464:8: branch_true: following ‘true’ branch...
vim91/src/search.c:3467:50: branch_true: ...to here
vim91/src/search.c:3468:12: branch_false: following ‘false’ branch...
vim91/src/search.c:3470:9: branch_false: ...to here
vim91/src/search.c:3481:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3486:5: branch_false: ...to here
vim91/src/search.c:3495:12: branch_true: following ‘true’ branch...
vim91/src/search.c:3496:20: branch_true: ...to here
vim91/src/search.c:3495:13: branch_true: following ‘true’ branch...
vim91/src/search.c:3498:52: branch_true: ...to here
vim91/src/search.c:3501:17: branch_false: following ‘false’ branch...
vim91/src/search.c:3508:29: branch_false: ...to here
vim91/src/search.c:3511:16: branch_true: following ‘true’ branch (when ‘new_fname’ is non-NULL)...
vim91/src/search.c:3511:16: branch_true: ...to here
vim91/src/search.c:3516:24: branch_true: following ‘true’ branch...
vim91/src/search.c:3516:24: branch_true: ...to here
vim91/src/search.c:3518:24: branch_true: following ‘true’ branch (when ‘max_path_depth == i’)...
vim91/src/search.c:3544:16: branch_true: ...to here
vim91/src/search.c:3636:16: branch_true: following ‘true’ branch (when ‘new_fname’ is non-NULL)...
vim91/src/search.c:3639:21: branch_true: ...to here
vim91/src/search.c:3639:20: branch_false: following ‘false’ branch...
vim91/src/search.c:3639:20: branch_false: ...to here
vim91/src/search.c:3661:44: acquire_memory: allocated here
vim91/src/search.c:3661:20: branch_false: following ‘false’ branch...
vim91/src/search.c:3666:24: branch_false: ...to here
vim91/src/search.c:3666:24: branch_false: following ‘false’ branch...
vim91/src/search.c:3675:21: branch_false: ...to here
vim91/src/search.c:3678:24: branch_false: following ‘false’ branch (when ‘action != 5’)...
vim91/src/search.c:3687:30: branch_false: ...to here
vim91/src/search.c:3687:29: branch_true: following ‘true’ branch...
vim91/src/search.c:3689:25: branch_true: ...to here
vim91/src/search.c:3689:25: throw: if ‘verbose_enter’ throws an exception...
vim91/src/search.c:3689:25: danger: ‘<unknown>’ leaks here; was allocated at [(26)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/25)
# 3687|   		    else if (p_verbose >= 5)
# 3688|   		    {
# 3689|-> 			verbose_enter();
# 3690|   			smsg(_("Searching included file %s"),
# 3691|   							   (char *)new_fname);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def465]
vim91/src/search.c:3939:34: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘curwin_save’
vim91/src/search.c:3444:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3447:9: branch_false: ...to here
vim91/src/search.c:3464:8: branch_true: following ‘true’ branch...
vim91/src/search.c:3467:50: branch_true: ...to here
vim91/src/search.c:3468:12: branch_false: following ‘false’ branch...
vim91/src/search.c:3470:9: branch_false: ...to here
vim91/src/search.c:3481:8: branch_false: following ‘false’ branch...
vim91/src/search.c:3486:5: branch_false: ...to here
vim91/src/search.c:3495:12: branch_true: following ‘true’ branch...
vim91/src/search.c:3496:20: branch_true: ...to here
vim91/src/search.c:3495:13: branch_false: following ‘false’ branch...
vim91/src/search.c:3704:1: branch_false: ...to here
vim91/src/search.c:3706:16: branch_false: following ‘false’ branch...
vim91/src/search.c:3724:17: branch_false: ...to here
vim91/src/search.c:3724:16: branch_true: following ‘true’ branch...
vim91/src/search.c:3726:20: branch_true: ...to here
vim91/src/search.c:3726:20: branch_false: following ‘false’ branch (when ‘define_matched == 0’)...
vim91/src/search.c:3726:39: branch_false: ...to here
vim91/src/search.c:3726:21: branch_true: following ‘true’ branch...
vim91/src/search.c:3729:30: branch_true: ...to here
vim91/src/search.c:3730:24: branch_true: following ‘true’ branch...
vim91/src/search.c:3731:36: branch_true: ...to here
vim91/src/search.c:3734:24: branch_false: following ‘false’ branch...
vim91/src/search.c:3787:12: branch_false: ...to here
vim91/src/search.c:3787:12: branch_true: following ‘true’ branch (when ‘matched != 0’)...
vim91/src/search.c:3789:16: branch_true: ...to here
vim91/src/search.c:3789:16: branch_false: following ‘false’ branch (when ‘action != 5’)...
vim91/src/search.c:3870:21: branch_false: ...to here
vim91/src/search.c:3870:21: branch_false: following ‘false’ branch (when ‘action != 4’)...
vim91/src/search.c:3896:21: branch_false: ...to here
vim91/src/search.c:3896:21: branch_true: following ‘true’ branch (when ‘count <= 0’)...
vim91/src/search.c:3899:20: branch_true: ...to here
vim91/src/search.c:3899:20: branch_true: following ‘true’ branch (when ‘depth == -1’)...
vim91/src/search.c:3899:50: branch_true: ...to here
vim91/src/search.c:3905:25: branch_false: following ‘false’ branch (when ‘action != 1’)...
vim91/src/search.c:3919:25: branch_false: ...to here
vim91/src/search.c:3919:24: branch_false: following ‘false’ branch...
vim91/src/search.c:3925:24: branch_false: ...to here
vim91/src/search.c:3925:24: branch_false: following ‘false’ branch (when ‘action != 3’)...
vim91/src/search.c:3931:24: branch_false: ...to here
vim91/src/search.c:3931:24: branch_true: following ‘true’ branch (when ‘depth == -1’)...
vim91/src/search.c:3935:29: branch_true: ...to here
vim91/src/search.c:3935:28: branch_true: following ‘true’ branch...
vim91/src/search.c:3937:34: branch_true: ...to here
vim91/src/search.c:3937:32: branch_false: following ‘false’ branch...
vim91/src/search.c:3939:34: branch_false: ...to here
vim91/src/search.c:3939:34: danger: dereference of NULL ‘curwin_save’
# 3937|   			    if (!win_valid(curwin_save))
# 3938|   				break;
# 3939|-> 			    if (!GETFILE_SUCCESS(getfile(
# 3940|   					   curwin_save->w_buffer->b_fnum, NULL,
# 3941|   						     NULL, TRUE, lnum, forceit)))

Error: COMPILER_WARNING: [#def466]
vim91/src/session.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def467]
vim91/src/sha256.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def468]
vim91/src/sign.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def469]
vim91/src/sound.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def470]
vim91/src/spell.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def471]
vim91/src/spellfile.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-758): [#def472]
vim91/src/spellfile.c:5939: warning[objectIndex]: The address of variable 'fname' might be accessed at non-zero index.
# 5937|       // default: fnames[0] is output file, following are input files
# 5938|       // When "fcount" is 1 there is only one file.
# 5939|->     innames = &fnames[fcount == 1 ? 0 : 1];
# 5940|       incount = fcount - 1;
# 5941|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def473]
vim91/src/spellfile.c:6281:21: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6278:14: acquire_resource: opened here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:21: throw: if ‘vim_fgets’ throws an exception...
vim91/src/spellfile.c:6281:21: danger: ‘fd’ leaks here; was opened at [(7)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/6)
# 6279|   	if (fd != NULL)
# 6280|   	{
# 6281|-> 	    while (!vim_fgets(line, MAXWLEN * 2, fd))
# 6282|   	    {
# 6283|   		fpos = fpos_next;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def474]
vim91/src/spellfile.c:6281:21: warning[-Wanalyzer-malloc-leak]: leak of ‘fd’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6278:14: acquire_memory: allocated here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:21: throw: if ‘vim_fgets’ throws an exception...
vim91/src/spellfile.c:6281:21: danger: ‘fd’ leaks here; was allocated at [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6)
# 6279|   	if (fd != NULL)
# 6280|   	{
# 6281|-> 	    while (!vim_fgets(line, MAXWLEN * 2, fd))
# 6282|   	    {
# 6283|   		fpos = fpos_next;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def475]
vim91/src/spellfile.c:6297:25: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fname, "r+")’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6284:29: branch_true: ...to here
vim91/src/spellfile.c:6285:20: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6287:21: branch_false: ...to here
vim91/src/spellfile.c:6287:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6288:29: branch_true: ...to here
vim91/src/spellfile.c:6287:21: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6293:21: branch_true: ...to here
vim91/src/spellfile.c:6294:26: acquire_resource: opened here
vim91/src/spellfile.c:6295:24: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6297:25: branch_false: ...to here
vim91/src/spellfile.c:6297:25: throw: if ‘fseek’ throws an exception...
vim91/src/spellfile.c:6297:25: danger: ‘fopen(fname, "r+")’ leaks here; was opened at [(17)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/16)
# 6295|   		    if (fd == NULL)
# 6296|   			break;
# 6297|-> 		    if (fseek(fd, fpos, SEEK_SET) == 0)
# 6298|   		    {
# 6299|   			fputc('#', fd);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def476]
vim91/src/spellfile.c:6297:25: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fname, "r+")’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6284:29: branch_true: ...to here
vim91/src/spellfile.c:6285:20: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6287:21: branch_false: ...to here
vim91/src/spellfile.c:6287:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6288:29: branch_true: ...to here
vim91/src/spellfile.c:6287:21: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6293:21: branch_true: ...to here
vim91/src/spellfile.c:6294:26: acquire_memory: allocated here
vim91/src/spellfile.c:6295:24: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6297:25: branch_false: ...to here
vim91/src/spellfile.c:6297:25: throw: if ‘fseek’ throws an exception...
vim91/src/spellfile.c:6297:25: danger: ‘fopen(fname, "r+")’ leaks here; was allocated at [(17)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/16)
# 6295|   		    if (fd == NULL)
# 6296|   			break;
# 6297|-> 		    if (fseek(fd, fpos, SEEK_SET) == 0)
# 6298|   		    {
# 6299|   			fputc('#', fd);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def477]
vim91/src/spellfile.c:6302:29: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fname, "r+")’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6284:29: branch_true: ...to here
vim91/src/spellfile.c:6285:20: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6287:21: branch_false: ...to here
vim91/src/spellfile.c:6287:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6288:29: branch_true: ...to here
vim91/src/spellfile.c:6287:21: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6293:21: branch_true: ...to here
vim91/src/spellfile.c:6294:26: acquire_resource: opened here
vim91/src/spellfile.c:6295:24: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6297:25: branch_false: ...to here
vim91/src/spellfile.c:6297:24: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6299:25: branch_true: ...to here
vim91/src/spellfile.c:6300:28: branch_true: following ‘true’ branch (when ‘undo != 0’)...
vim91/src/spellfile.c:6302:29: branch_true: ...to here
vim91/src/spellfile.c:6302:29: throw: if ‘home_replace’ throws an exception...
vim91/src/spellfile.c:6302:29: danger: ‘fopen(fname, "r+")’ leaks here; was opened at [(17)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/16)
# 6300|   			if (undo)
# 6301|   			{
# 6302|-> 			    home_replace(NULL, fname, NameBuff, MAXPATHL, TRUE);
# 6303|   			    smsg(_("Word '%.*s' removed from %s"),
# 6304|   							 len, word, NameBuff);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def478]
vim91/src/spellfile.c:6302:29: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fname, "r+")’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6284:29: branch_true: ...to here
vim91/src/spellfile.c:6285:20: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6287:21: branch_false: ...to here
vim91/src/spellfile.c:6287:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6288:29: branch_true: ...to here
vim91/src/spellfile.c:6287:21: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6293:21: branch_true: ...to here
vim91/src/spellfile.c:6294:26: acquire_memory: allocated here
vim91/src/spellfile.c:6295:24: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6297:25: branch_false: ...to here
vim91/src/spellfile.c:6297:24: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6299:25: branch_true: ...to here
vim91/src/spellfile.c:6300:28: branch_true: following ‘true’ branch (when ‘undo != 0’)...
vim91/src/spellfile.c:6302:29: branch_true: ...to here
vim91/src/spellfile.c:6302:29: throw: if ‘home_replace’ throws an exception...
vim91/src/spellfile.c:6302:29: danger: ‘fopen(fname, "r+")’ leaks here; was allocated at [(17)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/16)
# 6300|   			if (undo)
# 6301|   			{
# 6302|-> 			    home_replace(NULL, fname, NameBuff, MAXPATHL, TRUE);
# 6303|   			    smsg(_("Word '%.*s' removed from %s"),
# 6304|   							 len, word, NameBuff);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def479]
vim91/src/spellfile.c:6307:25: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fname, "r+")’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6284:29: branch_true: ...to here
vim91/src/spellfile.c:6285:20: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6287:21: branch_false: ...to here
vim91/src/spellfile.c:6287:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6288:29: branch_true: ...to here
vim91/src/spellfile.c:6287:21: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6293:21: branch_true: ...to here
vim91/src/spellfile.c:6294:26: acquire_resource: opened here
vim91/src/spellfile.c:6295:24: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6297:25: branch_false: ...to here
vim91/src/spellfile.c:6307:25: throw: if ‘fseek’ throws an exception...
vim91/src/spellfile.c:6307:25: danger: ‘fopen(fname, "r+")’ leaks here; was opened at [(17)](sarif:/runs/0/results/12/codeFlows/0/threadFlows/0/locations/16)
# 6305|   			}
# 6306|   		    }
# 6307|-> 		    if (fseek(fd, fpos_next, SEEK_SET) != 0)
# 6308|   		    {
# 6309|   			PERROR(_("Seek error in spellfile"));

Error: GCC_ANALYZER_WARNING (CWE-401): [#def480]
vim91/src/spellfile.c:6307:25: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fname, "r+")’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6284:29: branch_true: ...to here
vim91/src/spellfile.c:6285:20: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6287:21: branch_false: ...to here
vim91/src/spellfile.c:6287:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6288:29: branch_true: ...to here
vim91/src/spellfile.c:6287:21: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6293:21: branch_true: ...to here
vim91/src/spellfile.c:6294:26: acquire_memory: allocated here
vim91/src/spellfile.c:6295:24: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6297:25: branch_false: ...to here
vim91/src/spellfile.c:6307:25: throw: if ‘fseek’ throws an exception...
vim91/src/spellfile.c:6307:25: danger: ‘fopen(fname, "r+")’ leaks here; was allocated at [(17)](sarif:/runs/0/results/13/codeFlows/0/threadFlows/0/locations/16)
# 6305|   			}
# 6306|   		    }
# 6307|-> 		    if (fseek(fd, fpos_next, SEEK_SET) != 0)
# 6308|   		    {
# 6309|   			PERROR(_("Seek error in spellfile"));

Error: GCC_ANALYZER_WARNING (CWE-775): [#def481]
vim91/src/spellfile.c:6309:25: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(fname, "r+")’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6284:29: branch_true: ...to here
vim91/src/spellfile.c:6285:20: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6287:21: branch_false: ...to here
vim91/src/spellfile.c:6287:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6288:29: branch_true: ...to here
vim91/src/spellfile.c:6287:21: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6293:21: branch_true: ...to here
vim91/src/spellfile.c:6294:26: acquire_resource: opened here
vim91/src/spellfile.c:6295:24: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6297:25: branch_false: ...to here
vim91/src/spellfile.c:6307:24: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6309:25: branch_true: ...to here
vim91/src/spellfile.c:6309:25: throw: if ‘semsg’ throws an exception...
vim91/src/spellfile.c:6309:25: danger: ‘fopen(fname, "r+")’ leaks here; was opened at [(17)](sarif:/runs/0/results/14/codeFlows/0/threadFlows/0/locations/16)
# 6307|   		    if (fseek(fd, fpos_next, SEEK_SET) != 0)
# 6308|   		    {
# 6309|-> 			PERROR(_("Seek error in spellfile"));
# 6310|   			break;
# 6311|   		    }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def482]
vim91/src/spellfile.c:6309:25: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(fname, "r+")’
vim91/src/spellfile.c:6213:8: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6219:8: branch_false: ...to here
vim91/src/spellfile.c:6219:8: branch_true: following ‘true’ branch (when ‘idx == 0’)...
vim91/src/spellfile.c:6221:13: branch_true: ...to here
vim91/src/spellfile.c:6274:8: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6278:14: branch_true: ...to here
vim91/src/spellfile.c:6279:12: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6279:12: branch_true: ...to here
vim91/src/spellfile.c:6281:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6284:29: branch_true: ...to here
vim91/src/spellfile.c:6285:20: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6287:21: branch_false: ...to here
vim91/src/spellfile.c:6287:20: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6288:29: branch_true: ...to here
vim91/src/spellfile.c:6287:21: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6293:21: branch_true: ...to here
vim91/src/spellfile.c:6294:26: acquire_memory: allocated here
vim91/src/spellfile.c:6295:24: branch_false: following ‘false’ branch...
vim91/src/spellfile.c:6297:25: branch_false: ...to here
vim91/src/spellfile.c:6307:24: branch_true: following ‘true’ branch...
vim91/src/spellfile.c:6309:25: branch_true: ...to here
vim91/src/spellfile.c:6309:25: throw: if ‘semsg’ throws an exception...
vim91/src/spellfile.c:6309:25: danger: ‘fopen(fname, "r+")’ leaks here; was allocated at [(17)](sarif:/runs/0/results/15/codeFlows/0/threadFlows/0/locations/16)
# 6307|   		    if (fseek(fd, fpos_next, SEEK_SET) != 0)
# 6308|   		    {
# 6309|-> 			PERROR(_("Seek error in spellfile"));
# 6310|   			break;
# 6311|   		    }

Error: COMPILER_WARNING: [#def483]
vim91/src/spellsuggest.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def484]
vim91/src/strings.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING (CWE-704): [#def485]
vim91/src/strings.c: scope_hint: In function ‘parse_fmt_types’
vim91/src/strings.c:2993:26: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
# 2993 |             char    *q = strchr(p + 1, '%');
#      |                          ^~~~~~
# 2991|   	if (*p != '%')
# 2992|   	{
# 2993|-> 	    char    *q = strchr(p + 1, '%');
# 2994|   	    size_t  n = (q == NULL) ? STRLEN(p) : (size_t)(q - p);
# 2995|   

Error: COMPILER_WARNING (CWE-704): [#def486]
vim91/src/strings.c:2993:26: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
# 2991|   	if (*p != '%')
# 2992|   	{
# 2993|-> 	    char    *q = strchr(p + 1, '%');
# 2994|   	    size_t  n = (q == NULL) ? STRLEN(p) : (size_t)(q - p);
# 2995|   

Error: COMPILER_WARNING (CWE-704): [#def487]
vim91/src/strings.c: scope_hint: In function ‘vim_vsnprintf_typval’
vim91/src/strings.c:3394:26: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
# 3394 |             char    *q = strchr(p + 1, '%');
#      |                          ^~~~~~
# 3392|   	if (*p != '%')
# 3393|   	{
# 3394|-> 	    char    *q = strchr(p + 1, '%');
# 3395|   	    size_t  n = (q == NULL) ? STRLEN(p) : (size_t)(q - p);
# 3396|   

Error: COMPILER_WARNING (CWE-704): [#def488]
vim91/src/strings.c:3394:26: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
# 3392|   	if (*p != '%')
# 3393|   	{
# 3394|-> 	    char    *q = strchr(p + 1, '%');
# 3395|   	    size_t  n = (q == NULL) ? STRLEN(p) : (size_t)(q - p);
# 3396|   

Error: COMPILER_WARNING (CWE-704): [#def489]
vim91/src/strings.c:3722:35: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
# 3722 |                         char *q = memchr(str_arg, '\0',
#      |                                   ^~~~~~
# 3720|   		    {
# 3721|   			// memchr on HP does not like n > 2^31  !!!
# 3722|-> 			char *q = memchr(str_arg, '\0',
# 3723|   				  precision <= (size_t)0x7fffffffL ? precision
# 3724|   						       : (size_t)0x7fffffffL);

Error: COMPILER_WARNING (CWE-704): [#def490]
vim91/src/strings.c:3722:35: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
# 3720|   		    {
# 3721|   			// memchr on HP does not like n > 2^31  !!!
# 3722|-> 			char *q = memchr(str_arg, '\0',
# 3723|   				  precision <= (size_t)0x7fffffffL ? precision
# 3724|   						       : (size_t)0x7fffffffL);

Error: GCC_ANALYZER_WARNING (CWE-404): [#def491]
vim91/src/strings.c:4400:9: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
vim91/src/strings.c:3368:1: enter_function: entry to ‘vim_vsnprintf_typval’
vim91/src/strings.c:3383:9: call_function: calling ‘parse_fmt_types’ from ‘vim_vsnprintf_typval’
vim91/src/strings.c:3383:9: return_function: returning to ‘vim_vsnprintf_typval’ from ‘parse_fmt_types’
vim91/src/strings.c:3383:8: branch_false: following ‘false’ branch...
vim91/src/strings.c:3386:5: branch_false: ...to here
vim91/src/strings.c:3386:5: acquire_resource: ‘va_copy’ called here
vim91/src/strings.c:3388:8: branch_true: following ‘true’ branch...
vim91/src/strings.c:3389:9: branch_true: ...to here
vim91/src/strings.c:3390:12: branch_false: following ‘false’ branch...
vim91/src/strings.c:4391:8: branch_false: ...to here
vim91/src/strings.c:4399:8: branch_true: following ‘true’ branch (when ‘tvs’ is non-NULL)...
vim91/src/strings.c:4399:28: branch_true: ...to here
vim91/src/strings.c:4399:27: branch_false: following ‘false’ branch...
vim91/src/strings.c:4399:59: branch_false: ...to here
vim91/src/strings.c:4399:9: branch_true: following ‘true’ branch...
vim91/src/strings.c:4400:9: branch_true: ...to here
vim91/src/strings.c:4400:9: throw: if ‘emsg’ throws an exception...
vim91/src/strings.c:4400:9: danger: missing call to ‘va_end’ to match ‘va_copy’ at [(9)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/8)
# 4398|   
# 4399|       if (tvs != NULL && tvs[num_posarg != 0 ? num_posarg : arg_idx - 1].v_type != VAR_UNKNOWN)
# 4400|-> 	emsg(_(e_too_many_arguments_to_printf));
# 4401|   
# 4402|   error:

Error: GCC_ANALYZER_WARNING (CWE-404): [#def492]
vim91/src/strings.c:4403:5: warning[-Wanalyzer-va-list-leak]: missing call to ‘va_end’
vim91/src/strings.c:3368:1: enter_function: entry to ‘vim_vsnprintf_typval’
vim91/src/strings.c:3383:9: call_function: calling ‘parse_fmt_types’ from ‘vim_vsnprintf_typval’
vim91/src/strings.c:3383:9: return_function: returning to ‘vim_vsnprintf_typval’ from ‘parse_fmt_types’
vim91/src/strings.c:3383:8: branch_false: following ‘false’ branch...
vim91/src/strings.c:3386:5: branch_false: ...to here
vim91/src/strings.c:3386:5: acquire_resource: ‘va_copy’ called here
vim91/src/strings.c:3388:8: branch_true: following ‘true’ branch...
vim91/src/strings.c:3389:9: branch_true: ...to here
vim91/src/strings.c:3390:12: branch_false: following ‘false’ branch...
vim91/src/strings.c:4391:8: branch_false: ...to here
vim91/src/strings.c:4403:5: throw: if ‘vim_free’ throws an exception...
vim91/src/strings.c:4403:5: danger: missing call to ‘va_end’ to match ‘va_copy’ at [(9)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/8)
# 4401|   
# 4402|   error:
# 4403|->     vim_free((char*)ap_types);
# 4404|       va_end(ap);
# 4405|   

Error: COMPILER_WARNING: [#def493]
vim91/src/syntax.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def494]
vim91/src/tabpanel.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def495]
vim91/src/tag.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def496]
vim91/src/term.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def497]
vim91/src/terminal.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def498]
vim91/src/terminal.c:349:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
#  347|   init_job_options(jobopt_T *opt)
#  348|   {
#  349|->     clear_job_options(opt);
#  350|   
#  351|       opt->jo_mode = CH_MODE_RAW;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def499]
vim91/src/terminal.c:349:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(tv_get_string_buf_chk(argvars, & buf1), "r")’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5708:8: branch_false: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5713:11: acquire_resource: opened here
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
#  347|   init_job_options(jobopt_T *opt)
#  348|   {
#  349|->     clear_job_options(opt);
#  350|   
#  351|       opt->jo_mode = CH_MODE_RAW;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def500]
vim91/src/terminal.c:349:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
#  347|   init_job_options(jobopt_T *opt)
#  348|   {
#  349|->     clear_job_options(opt);
#  350|   
#  351|       opt->jo_mode = CH_MODE_RAW;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def501]
vim91/src/terminal.c:349:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(tv_get_string_buf_chk(argvars, & buf1), "r")’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5708:8: branch_false: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5713:11: acquire_memory: allocated here
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
#  347|   init_job_options(jobopt_T *opt)
#  348|   {
#  349|->     clear_job_options(opt);
#  350|   
#  351|       opt->jo_mode = CH_MODE_RAW;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def502]
vim91/src/terminal.c:452:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  450|       pos_T	save_cursor;
#  451|   
#  452|->     if (check_restricted() || check_secure())
#  453|   	return NULL;
#  454|       if (cmdwin_type != 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def503]
vim91/src/terminal.c:452:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  450|       pos_T	save_cursor;
#  451|   
#  452|->     if (check_restricted() || check_secure())
#  453|   	return NULL;
#  454|       if (cmdwin_type != 0)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def504]
vim91/src/terminal.c:452:31: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  450|       pos_T	save_cursor;
#  451|   
#  452|->     if (check_restricted() || check_secure())
#  453|   	return NULL;
#  454|       if (cmdwin_type != 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def505]
vim91/src/terminal.c:452:31: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  450|       pos_T	save_cursor;
#  451|   
#  452|->     if (check_restricted() || check_secure())
#  453|   	return NULL;
#  454|       if (cmdwin_type != 0)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def506]
vim91/src/terminal.c:456:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  454|       if (cmdwin_type != 0)
#  455|       {
#  456|-> 	emsg(_(e_cannot_open_terminal_from_command_line_window));
#  457|   	return NULL;
#  458|       }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def507]
vim91/src/terminal.c:456:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  454|       if (cmdwin_type != 0)
#  455|       {
#  456|-> 	emsg(_(e_cannot_open_terminal_from_command_line_window));
#  457|   	return NULL;
#  458|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def508]
vim91/src/terminal.c:469:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  467|   	    && argvar->vval.v_list->lv_first == &range_list_item))
#  468|       {
#  469|-> 	emsg(_(e_invalid_argument));
#  470|   	return NULL;
#  471|       }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def509]
vim91/src/terminal.c:469:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  467|   	    && argvar->vval.v_list->lv_first == &range_list_item))
#  468|       {
#  469|-> 	emsg(_(e_invalid_argument));
#  470|   	return NULL;
#  471|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def510]
vim91/src/terminal.c:473:12: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  471|       }
#  472|   
#  473|->     term = ALLOC_CLEAR_ONE(term_T);
#  474|       if (term == NULL)
#  475|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def511]
vim91/src/terminal.c:473:12: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  471|       }
#  472|   
#  473|->     term = ALLOC_CLEAR_ONE(term_T);
#  474|       if (term == NULL)
#  475|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def512]
vim91/src/terminal.c:483:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  481|       term->tl_system = (flags & TERM_START_SYSTEM);
#  482|   #endif
#  483|->     ga_init2(&term->tl_scrollback, sizeof(sb_line_T), 300);
#  484|       ga_init2(&term->tl_scrollback_postponed, sizeof(sb_line_T), 300);
#  485|       ga_init2(&term->tl_osc_buf, sizeof(char), 300);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def513]
vim91/src/terminal.c:483:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  481|       term->tl_system = (flags & TERM_START_SYSTEM);
#  482|   #endif
#  483|->     ga_init2(&term->tl_scrollback, sizeof(sb_line_T), 300);
#  484|       ga_init2(&term->tl_scrollback_postponed, sizeof(sb_line_T), 300);
#  485|       ga_init2(&term->tl_osc_buf, sizeof(char), 300);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def514]
vim91/src/terminal.c:484:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  482|   #endif
#  483|       ga_init2(&term->tl_scrollback, sizeof(sb_line_T), 300);
#  484|->     ga_init2(&term->tl_scrollback_postponed, sizeof(sb_line_T), 300);
#  485|       ga_init2(&term->tl_osc_buf, sizeof(char), 300);
#  486|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def515]
vim91/src/terminal.c:484:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  482|   #endif
#  483|       ga_init2(&term->tl_scrollback, sizeof(sb_line_T), 300);
#  484|->     ga_init2(&term->tl_scrollback_postponed, sizeof(sb_line_T), 300);
#  485|       ga_init2(&term->tl_osc_buf, sizeof(char), 300);
#  486|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def516]
vim91/src/terminal.c:485:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  483|       ga_init2(&term->tl_scrollback, sizeof(sb_line_T), 300);
#  484|       ga_init2(&term->tl_scrollback_postponed, sizeof(sb_line_T), 300);
#  485|->     ga_init2(&term->tl_osc_buf, sizeof(char), 300);
#  486|   
#  487|       setpcmark();

Error: GCC_ANALYZER_WARNING (CWE-401): [#def517]
vim91/src/terminal.c:485:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
#  483|       ga_init2(&term->tl_scrollback, sizeof(sb_line_T), 300);
#  484|       ga_init2(&term->tl_scrollback_postponed, sizeof(sb_line_T), 300);
#  485|->     ga_init2(&term->tl_osc_buf, sizeof(char), 300);
#  486|   
#  487|       setpcmark();

Error: GCC_ANALYZER_WARNING (CWE-775): [#def518]
vim91/src/terminal.c:1158:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 1156|   
# 1157|       for (i = 0; i < term->tl_scrollback.ga_len; ++i)
# 1158|-> 	vim_free(((sb_line_T *)term->tl_scrollback.ga_data + i)->sb_cells);
# 1159|       ga_clear(&term->tl_scrollback);
# 1160|       for (i = 0; i < term->tl_scrollback_postponed.ga_len; ++i)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def519]
vim91/src/terminal.c:1158:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 1156|   
# 1157|       for (i = 0; i < term->tl_scrollback.ga_len; ++i)
# 1158|-> 	vim_free(((sb_line_T *)term->tl_scrollback.ga_data + i)->sb_cells);
# 1159|       ga_clear(&term->tl_scrollback);
# 1160|       for (i = 0; i < term->tl_scrollback_postponed.ga_len; ++i)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def520]
vim91/src/terminal.c:1159:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 1157|       for (i = 0; i < term->tl_scrollback.ga_len; ++i)
# 1158|   	vim_free(((sb_line_T *)term->tl_scrollback.ga_data + i)->sb_cells);
# 1159|->     ga_clear(&term->tl_scrollback);
# 1160|       for (i = 0; i < term->tl_scrollback_postponed.ga_len; ++i)
# 1161|   	vim_free(((sb_line_T *)term->tl_scrollback_postponed.ga_data + i)->sb_cells);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def521]
vim91/src/terminal.c:1159:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 1157|       for (i = 0; i < term->tl_scrollback.ga_len; ++i)
# 1158|   	vim_free(((sb_line_T *)term->tl_scrollback.ga_data + i)->sb_cells);
# 1159|->     ga_clear(&term->tl_scrollback);
# 1160|       for (i = 0; i < term->tl_scrollback_postponed.ga_len; ++i)
# 1161|   	vim_free(((sb_line_T *)term->tl_scrollback_postponed.ga_data + i)->sb_cells);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def522]
vim91/src/terminal.c:1161:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 1159|       ga_clear(&term->tl_scrollback);
# 1160|       for (i = 0; i < term->tl_scrollback_postponed.ga_len; ++i)
# 1161|-> 	vim_free(((sb_line_T *)term->tl_scrollback_postponed.ga_data + i)->sb_cells);
# 1162|       ga_clear(&term->tl_scrollback_postponed);
# 1163|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def523]
vim91/src/terminal.c:1161:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 1159|       ga_clear(&term->tl_scrollback);
# 1160|       for (i = 0; i < term->tl_scrollback_postponed.ga_len; ++i)
# 1161|-> 	vim_free(((sb_line_T *)term->tl_scrollback_postponed.ga_data + i)->sb_cells);
# 1162|       ga_clear(&term->tl_scrollback_postponed);
# 1163|   }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def524]
vim91/src/terminal.c:1162:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 1160|       for (i = 0; i < term->tl_scrollback_postponed.ga_len; ++i)
# 1161|   	vim_free(((sb_line_T *)term->tl_scrollback_postponed.ga_data + i)->sb_cells);
# 1162|->     ga_clear(&term->tl_scrollback_postponed);
# 1163|   }
# 1164|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def525]
vim91/src/terminal.c:1162:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 1160|       for (i = 0; i < term->tl_scrollback_postponed.ga_len; ++i)
# 1161|   	vim_free(((sb_line_T *)term->tl_scrollback_postponed.ga_data + i)->sb_cells);
# 1162|->     ga_clear(&term->tl_scrollback_postponed);
# 1163|   }
# 1164|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def526]
vim91/src/terminal.c:2594:12: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 2592|   	name = (char_u*)"Terminal";
# 2593|   
# 2594|->     return syn_name2id(name);
# 2595|   }
# 2596|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def527]
vim91/src/terminal.c:2594:12: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 2592|   	name = (char_u*)"Terminal";
# 2593|   
# 2594|->     return syn_name2id(name);
# 2595|   }
# 2596|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def528]
vim91/src/terminal.c:4222:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4220|   cterm_color2vterm(int nr, VTermColor *rgb)
# 4221|   {
# 4222|->     cterm_color2rgb(nr, &rgb->red, &rgb->green, &rgb->blue, &rgb->index);
# 4223|       if (rgb->index == 0)
# 4224|   	rgb->type = VTERM_COLOR_RGB;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def529]
vim91/src/terminal.c:4222:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4220|   cterm_color2vterm(int nr, VTermColor *rgb)
# 4221|   {
# 4222|->     cterm_color2rgb(nr, &rgb->red, &rgb->green, &rgb->blue, &rgb->index);
# 4223|       if (rgb->index == 0)
# 4224|   	rgb->type = VTERM_COLOR_RGB;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def530]
vim91/src/terminal.c:4259:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4257|   
# 4258|   	if (id > 0)
# 4259|-> 	    syn_id2colors(id, &fg_rgb, &bg_rgb);
# 4260|   
# 4261|   	if (fg_rgb != INVALCOLOR)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def531]
vim91/src/terminal.c:4259:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4257|   
# 4258|   	if (id > 0)
# 4259|-> 	    syn_id2colors(id, &fg_rgb, &bg_rgb);
# 4260|   
# 4261|   	if (fg_rgb != INVALCOLOR)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def532]
vim91/src/terminal.c:4263:26: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4261|   	if (fg_rgb != INVALCOLOR)
# 4262|   	{
# 4263|-> 	    long_u rgb = GUI_MCH_GET_RGB(fg_rgb);
# 4264|   	    fg->red = (unsigned)(rgb >> 16);
# 4265|   	    fg->green = (unsigned)(rgb >> 8) & 255;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def533]
vim91/src/terminal.c:4263:26: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4261|   	if (fg_rgb != INVALCOLOR)
# 4262|   	{
# 4263|-> 	    long_u rgb = GUI_MCH_GET_RGB(fg_rgb);
# 4264|   	    fg->red = (unsigned)(rgb >> 16);
# 4265|   	    fg->green = (unsigned)(rgb >> 8) & 255;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def534]
vim91/src/terminal.c:4293:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4291|   
# 4292|   	if (id > 0)
# 4293|-> 	    syn_id2cterm_bg(id, &cterm_fg, &cterm_bg);
# 4294|   
# 4295|   	if (cterm_fg >= 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def535]
vim91/src/terminal.c:4293:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4291|   
# 4292|   	if (id > 0)
# 4293|-> 	    syn_id2cterm_bg(id, &cterm_fg, &cterm_bg);
# 4294|   
# 4295|   	if (cterm_fg >= 0)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def536]
vim91/src/terminal.c:4411:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4409|   # ifdef FEAT_TERMRESPONSE
# 4410|   	else
# 4411|-> 	    term_get_fg_color(&fg->red, &fg->green, &fg->blue);
# 4412|   # endif
# 4413|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def537]
vim91/src/terminal.c:4411:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4409|   # ifdef FEAT_TERMRESPONSE
# 4410|   	else
# 4411|-> 	    term_get_fg_color(&fg->red, &fg->green, &fg->blue);
# 4412|   # endif
# 4413|   

Error: GCC_ANALYZER_WARNING (CWE-775): [#def538]
vim91/src/terminal.c:4430:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4428|   # ifdef FEAT_TERMRESPONSE
# 4429|   	else
# 4430|-> 	    term_get_bg_color(&bg->red, &bg->green, &bg->blue);
# 4431|   # endif
# 4432|       }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def539]
vim91/src/terminal.c:4430:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 4428|   # ifdef FEAT_TERMRESPONSE
# 4429|   	else
# 4430|-> 	    term_get_bg_color(&bg->red, &bg->green, &bg->blue);
# 4431|   # endif
# 4432|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def540]
vim91/src/terminal.c:5242:14: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(tv_get_string_chk(argvars + 16), "w")’
vim91/src/terminal.c:5177:1: enter_function: entry to ‘f_term_dumpwrite’
vim91/src/terminal.c:5192:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5201:11: call_function: calling ‘term_get_buf’ from ‘f_term_dumpwrite’
vim91/src/terminal.c:5201:11: return_function: returning to ‘f_term_dumpwrite’ from ‘term_get_buf’
vim91/src/terminal.c:5202:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5204:5: branch_false: ...to here
vim91/src/terminal.c:5205:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5211:9: branch_false: ...to here
vim91/src/terminal.c:5226:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5228:9: branch_false: ...to here
vim91/src/terminal.c:5228:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5234:9: branch_false: ...to here
vim91/src/terminal.c:5234:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5234:32: branch_false: ...to here
vim91/src/terminal.c:5234:32: acquire_resource: opened here
vim91/src/terminal.c:5234:9: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5240:5: branch_false: ...to here
vim91/src/terminal.c:5242:14: throw: if ‘vterm_obtain_screen’ throws an exception...
vim91/src/terminal.c:5242:14: danger: ‘fopen(tv_get_string_chk(argvars + 16), "w")’ leaks here; was opened at [(19)](sarif:/runs/0/results/42/codeFlows/0/threadFlows/0/locations/18)
# 5240|       clear_cell(&prev_cell);
# 5241|   
# 5242|->     screen = vterm_obtain_screen(term->tl_vterm);
# 5243|       state = vterm_obtain_state(term->tl_vterm);
# 5244|       vterm_state_get_cursorpos(state, &cursor_pos);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def541]
vim91/src/terminal.c:5242:14: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(tv_get_string_chk(argvars + 16), "w")’
vim91/src/terminal.c:5177:1: enter_function: entry to ‘f_term_dumpwrite’
vim91/src/terminal.c:5192:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5201:11: call_function: calling ‘term_get_buf’ from ‘f_term_dumpwrite’
vim91/src/terminal.c:5201:11: return_function: returning to ‘f_term_dumpwrite’ from ‘term_get_buf’
vim91/src/terminal.c:5202:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5204:5: branch_false: ...to here
vim91/src/terminal.c:5205:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5211:9: branch_false: ...to here
vim91/src/terminal.c:5226:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5228:9: branch_false: ...to here
vim91/src/terminal.c:5228:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5234:9: branch_false: ...to here
vim91/src/terminal.c:5234:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5234:32: branch_false: ...to here
vim91/src/terminal.c:5234:32: acquire_memory: allocated here
vim91/src/terminal.c:5234:9: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5240:5: branch_false: ...to here
vim91/src/terminal.c:5242:14: throw: if ‘vterm_obtain_screen’ throws an exception...
vim91/src/terminal.c:5242:14: danger: ‘fopen(tv_get_string_chk(argvars + 16), "w")’ leaks here; was allocated at [(19)](sarif:/runs/0/results/43/codeFlows/0/threadFlows/0/locations/18)
# 5240|       clear_cell(&prev_cell);
# 5241|   
# 5242|->     screen = vterm_obtain_screen(term->tl_vterm);
# 5243|       state = vterm_obtain_state(term->tl_vterm);
# 5244|       vterm_state_get_cursorpos(state, &cursor_pos);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def542]
vim91/src/terminal.c:5731:16: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(tv_get_string_buf_chk(argvars, & buf1), "r")’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5708:8: branch_false: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5713:11: acquire_resource: opened here
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5731:16: branch_false: ...to here
vim91/src/terminal.c:5731:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5732:16: branch_true: ...to here
vim91/src/terminal.c:5732:16: throw: if ‘get_job_options’ throws an exception...
vim91/src/terminal.c:5731:16: danger: ‘fopen(tv_get_string_buf_chk(argvars, & buf1), "r")’ leaks here; was opened at [(6)](sarif:/runs/0/results/60/codeFlows/0/threadFlows/0/locations/5)
# 5729|   
# 5730|       init_job_options(&opt);
# 5731|->     if (argvars[do_diff ? 2 : 1].v_type != VAR_UNKNOWN
# 5732|   	    && get_job_options(&argvars[do_diff ? 2 : 1], &opt, 0,
# 5733|   		    JO2_TERM_NAME + JO2_TERM_COLS + JO2_TERM_ROWS

Error: GCC_ANALYZER_WARNING (CWE-401): [#def543]
vim91/src/terminal.c:5731:16: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(tv_get_string_buf_chk(argvars, & buf1), "r")’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5708:8: branch_false: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5713:11: acquire_memory: allocated here
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_false: following ‘false’ branch (when ‘do_diff == 0’)...
vim91/src/terminal.c:5731:16: branch_false: ...to here
vim91/src/terminal.c:5731:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5732:16: branch_true: ...to here
vim91/src/terminal.c:5732:16: throw: if ‘get_job_options’ throws an exception...
vim91/src/terminal.c:5731:16: danger: ‘fopen(tv_get_string_buf_chk(argvars, & buf1), "r")’ leaks here; was allocated at [(6)](sarif:/runs/0/results/61/codeFlows/0/threadFlows/0/locations/5)
# 5729|   
# 5730|       init_job_options(&opt);
# 5731|->     if (argvars[do_diff ? 2 : 1].v_type != VAR_UNKNOWN
# 5732|   	    && get_job_options(&argvars[do_diff ? 2 : 1], &opt, 0,
# 5733|   		    JO2_TERM_NAME + JO2_TERM_COLS + JO2_TERM_ROWS

Error: GCC_ANALYZER_WARNING (CWE-775): [#def544]
vim91/src/terminal.c:5732:16: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5732:16: throw: if ‘get_job_options’ throws an exception...
vim91/src/terminal.c:5732:16: danger: ‘fd2’ leaks here; was opened at [(10)](sarif:/runs/0/results/118/codeFlows/0/threadFlows/0/locations/9)
# 5730|       init_job_options(&opt);
# 5731|       if (argvars[do_diff ? 2 : 1].v_type != VAR_UNKNOWN
# 5732|-> 	    && get_job_options(&argvars[do_diff ? 2 : 1], &opt, 0,
# 5733|   		    JO2_TERM_NAME + JO2_TERM_COLS + JO2_TERM_ROWS
# 5734|   		    + JO2_VERTICAL + JO2_CURWIN + JO2_NORESTORE) == FAIL)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def545]
vim91/src/terminal.c:5732:16: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5732:16: throw: if ‘get_job_options’ throws an exception...
vim91/src/terminal.c:5732:16: danger: ‘fd2’ leaks here; was allocated at [(10)](sarif:/runs/0/results/119/codeFlows/0/threadFlows/0/locations/9)
# 5730|       init_job_options(&opt);
# 5731|       if (argvars[do_diff ? 2 : 1].v_type != VAR_UNKNOWN
# 5732|-> 	    && get_job_options(&argvars[do_diff ? 2 : 1], &opt, 0,
# 5733|   		    JO2_TERM_NAME + JO2_TERM_COLS + JO2_TERM_ROWS
# 5734|   		    + JO2_VERTICAL + JO2_CURWIN + JO2_NORESTORE) == FAIL)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def546]
vim91/src/terminal.c:5741:24: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5731:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5737:9: branch_false: ...to here
vim91/src/terminal.c:5737:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5739:22: branch_true: ...to here
vim91/src/terminal.c:5741:24: throw: if ‘alloc’ throws an exception...
vim91/src/terminal.c:5741:24: danger: ‘fd2’ leaks here; was opened at [(10)](sarif:/runs/0/results/120/codeFlows/0/threadFlows/0/locations/9)
# 5739|   	size_t len = STRLEN(fname1) + 12;
# 5740|   
# 5741|-> 	fname_tofree = alloc(len);
# 5742|   	if (fname_tofree != NULL)
# 5743|   	{

Error: GCC_ANALYZER_WARNING (CWE-401): [#def547]
vim91/src/terminal.c:5741:24: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5731:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5737:9: branch_false: ...to here
vim91/src/terminal.c:5737:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5739:22: branch_true: ...to here
vim91/src/terminal.c:5741:24: throw: if ‘alloc’ throws an exception...
vim91/src/terminal.c:5741:24: danger: ‘fd2’ leaks here; was allocated at [(10)](sarif:/runs/0/results/121/codeFlows/0/threadFlows/0/locations/9)
# 5739|   	size_t len = STRLEN(fname1) + 12;
# 5740|   
# 5741|-> 	fname_tofree = alloc(len);
# 5742|   	if (fname_tofree != NULL)
# 5743|   	{

Error: GCC_ANALYZER_WARNING (CWE-775): [#def548]
vim91/src/terminal.c:5744:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5737:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5739:22: branch_true: ...to here
vim91/src/terminal.c:5742:12: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5744:13: branch_true: ...to here
vim91/src/terminal.c:5744:13: throw: if ‘vim_snprintf’ throws an exception...
vim91/src/terminal.c:5744:13: danger: ‘fd2’ leaks here; was opened at [(10)](sarif:/runs/0/results/122/codeFlows/0/threadFlows/0/locations/9)
# 5742|   	if (fname_tofree != NULL)
# 5743|   	{
# 5744|-> 	    vim_snprintf((char *)fname_tofree, len, "dump diff %s", fname1);
# 5745|   	    opt.jo_term_name = fname_tofree;
# 5746|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def549]
vim91/src/terminal.c:5744:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5737:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5739:22: branch_true: ...to here
vim91/src/terminal.c:5742:12: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5744:13: branch_true: ...to here
vim91/src/terminal.c:5744:13: throw: if ‘vim_snprintf’ throws an exception...
vim91/src/terminal.c:5744:13: danger: ‘fd2’ leaks here; was allocated at [(10)](sarif:/runs/0/results/123/codeFlows/0/threadFlows/0/locations/9)
# 5742|   	if (fname_tofree != NULL)
# 5743|   	{
# 5744|-> 	    vim_snprintf((char *)fname_tofree, len, "dump diff %s", fname1);
# 5745|   	    opt.jo_term_name = fname_tofree;
# 5746|   	}

Error: GCC_ANALYZER_WARNING (CWE-775): [#def550]
vim91/src/terminal.c:5751:21: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5731:9: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5737:9: branch_false: ...to here
vim91/src/terminal.c:5749:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5751:21: branch_true: ...to here
vim91/src/terminal.c:5751:21: throw: if ‘buf_jump_open_win’ throws an exception...
vim91/src/terminal.c:5751:21: danger: ‘fd2’ leaks here; was opened at [(10)](sarif:/runs/0/results/124/codeFlows/0/threadFlows/0/locations/9)
# 5749|       if (opt.jo_bufnr_buf != NULL)
# 5750|       {
# 5751|-> 	win_T *wp = buf_jump_open_win(opt.jo_bufnr_buf);
# 5752|   
# 5753|   	// With "bufnr" argument: enter the window with this buffer and make it

Error: GCC_ANALYZER_WARNING (CWE-401): [#def551]
vim91/src/terminal.c:5751:21: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5731:9: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5737:9: branch_false: ...to here
vim91/src/terminal.c:5749:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5751:21: branch_true: ...to here
vim91/src/terminal.c:5751:21: throw: if ‘buf_jump_open_win’ throws an exception...
vim91/src/terminal.c:5751:21: danger: ‘fd2’ leaks here; was allocated at [(10)](sarif:/runs/0/results/125/codeFlows/0/threadFlows/0/locations/9)
# 5749|       if (opt.jo_bufnr_buf != NULL)
# 5750|       {
# 5751|-> 	win_T *wp = buf_jump_open_win(opt.jo_bufnr_buf);
# 5752|   
# 5753|   	// With "bufnr" argument: enter the window with this buffer and make it

Error: GCC_ANALYZER_WARNING (CWE-775): [#def552]
vim91/src/terminal.c:5756:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5731:9: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5737:9: branch_false: ...to here
vim91/src/terminal.c:5749:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5751:21: branch_true: ...to here
vim91/src/terminal.c:5755:12: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5756:19: branch_true: ...to here
vim91/src/terminal.c:5756:13: throw: if ‘semsg’ throws an exception...
vim91/src/terminal.c:5756:13: danger: ‘fd2’ leaks here; was opened at [(10)](sarif:/runs/0/results/126/codeFlows/0/threadFlows/0/locations/9)
# 5754|   	// empty.
# 5755|   	if (wp == NULL)
# 5756|-> 	    semsg(_(e_invalid_argument_str), "bufnr");
# 5757|   	else
# 5758|   	{

Error: GCC_ANALYZER_WARNING (CWE-401): [#def553]
vim91/src/terminal.c:5756:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5731:9: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5737:9: branch_false: ...to here
vim91/src/terminal.c:5749:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5751:21: branch_true: ...to here
vim91/src/terminal.c:5755:12: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5756:19: branch_true: ...to here
vim91/src/terminal.c:5756:13: throw: if ‘semsg’ throws an exception...
vim91/src/terminal.c:5756:13: danger: ‘fd2’ leaks here; was allocated at [(10)](sarif:/runs/0/results/127/codeFlows/0/threadFlows/0/locations/9)
# 5754|   	// empty.
# 5755|   	if (wp == NULL)
# 5756|-> 	    semsg(_(e_invalid_argument_str), "bufnr");
# 5757|   	else
# 5758|   	{

Error: GCC_ANALYZER_WARNING (CWE-775): [#def554]
vim91/src/terminal.c:5761:17: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5731:9: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5737:9: branch_false: ...to here
vim91/src/terminal.c:5749:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5751:21: branch_true: ...to here
vim91/src/terminal.c:5755:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5759:13: branch_false: ...to here
vim91/src/terminal.c:5760:20: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5761:17: branch_true: ...to here
vim91/src/terminal.c:5761:17: throw: if ‘ml_delete’ throws an exception...
vim91/src/terminal.c:5761:17: danger: ‘fd2’ leaks here; was opened at [(10)](sarif:/runs/0/results/128/codeFlows/0/threadFlows/0/locations/9)
# 5759|   	    buf = curbuf;
# 5760|   	    while (!(curbuf->b_ml.ml_flags & ML_EMPTY))
# 5761|-> 		ml_delete((linenr_T)1);
# 5762|   	    free_scrollback(curbuf->b_term);
# 5763|   	    redraw_later(UPD_NOT_VALID);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def555]
vim91/src/terminal.c:5761:17: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5731:9: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5737:9: branch_false: ...to here
vim91/src/terminal.c:5749:8: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5751:21: branch_true: ...to here
vim91/src/terminal.c:5755:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5759:13: branch_false: ...to here
vim91/src/terminal.c:5760:20: branch_true: following ‘true’ branch...
vim91/src/terminal.c:5761:17: branch_true: ...to here
vim91/src/terminal.c:5761:17: throw: if ‘ml_delete’ throws an exception...
vim91/src/terminal.c:5761:17: danger: ‘fd2’ leaks here; was allocated at [(10)](sarif:/runs/0/results/129/codeFlows/0/threadFlows/0/locations/9)
# 5759|   	    buf = curbuf;
# 5760|   	    while (!(curbuf->b_ml.ml_flags & ML_EMPTY))
# 5761|-> 		ml_delete((linenr_T)1);
# 5762|   	    free_scrollback(curbuf->b_term);
# 5763|   	    redraw_later(UPD_NOT_VALID);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def556]
vim91/src/terminal.c:5763:13: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 5761|   		ml_delete((linenr_T)1);
# 5762|   	    free_scrollback(curbuf->b_term);
# 5763|-> 	    redraw_later(UPD_NOT_VALID);
# 5764|   	}
# 5765|       }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def557]
vim91/src/terminal.c:5763:13: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:6064:1: enter_function: entry to ‘f_term_dumpdiff’
vim91/src/terminal.c:6072:5: call_function: calling ‘term_load_dump’ from ‘f_term_dumpdiff’
# 5761|   		ml_delete((linenr_T)1);
# 5762|   	    free_scrollback(curbuf->b_term);
# 5763|-> 	    redraw_later(UPD_NOT_VALID);
# 5764|   	}
# 5765|       }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def558]
vim91/src/terminal.c:5944:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5944:5: throw: if ‘vim_free’ throws an exception...
vim91/src/terminal.c:5944:5: danger: ‘fd2’ leaks here; was opened at [(10)](sarif:/runs/0/results/132/codeFlows/0/threadFlows/0/locations/9)
# 5942|   
# 5943|   theend:
# 5944|->     vim_free(textline);
# 5945|       vim_free(fname_tofree);
# 5946|       fclose(fd1);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def559]
vim91/src/terminal.c:5944:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5944:5: throw: if ‘vim_free’ throws an exception...
vim91/src/terminal.c:5944:5: danger: ‘fd2’ leaks here; was allocated at [(10)](sarif:/runs/0/results/133/codeFlows/0/threadFlows/0/locations/9)
# 5942|   
# 5943|   theend:
# 5944|->     vim_free(textline);
# 5945|       vim_free(fname_tofree);
# 5946|       fclose(fd1);

Error: GCC_ANALYZER_WARNING (CWE-775): [#def560]
vim91/src/terminal.c:5945:5: warning[-Wanalyzer-file-leak]: leak of FILE ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_resource: opened here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5945:5: throw: if ‘vim_free’ throws an exception...
vim91/src/terminal.c:5945:5: danger: ‘fd2’ leaks here; was opened at [(10)](sarif:/runs/0/results/134/codeFlows/0/threadFlows/0/locations/9)
# 5943|   theend:
# 5944|       vim_free(textline);
# 5945|->     vim_free(fname_tofree);
# 5946|       fclose(fd1);
# 5947|       if (fd2 != NULL)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def561]
vim91/src/terminal.c:5945:5: warning[-Wanalyzer-malloc-leak]: leak of ‘fd2’
vim91/src/terminal.c:5691:1: enter_function: entry to ‘term_load_dump’
vim91/src/terminal.c:5706:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5707:18: branch_true: ...to here
vim91/src/terminal.c:5708:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5714:8: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5719:8: branch_false: ...to here
vim91/src/terminal.c:5719:8: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5721:15: branch_true: ...to here
vim91/src/terminal.c:5721:15: acquire_memory: allocated here
vim91/src/terminal.c:5722:12: branch_false: following ‘false’ branch...
vim91/src/terminal.c:5730:5: call_function: inlined call to ‘init_job_options’ from ‘term_load_dump’
vim91/src/terminal.c:5731:16: branch_true: following ‘true’ branch (when ‘do_diff != 0’)...
vim91/src/terminal.c:5731:16: branch_true: ...to here
vim91/src/terminal.c:5945:5: throw: if ‘vim_free’ throws an exception...
vim91/src/terminal.c:5945:5: danger: ‘fd2’ leaks here; was allocated at [(10)](sarif:/runs/0/results/135/codeFlows/0/threadFlows/0/locations/9)
# 5943|   theend:
# 5944|       vim_free(textline);
# 5945|->     vim_free(fname_tofree);
# 5946|       fclose(fd1);
# 5947|       if (fd2 != NULL)

Error: COMPILER_WARNING: [#def562]
vim91/src/testing.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def563]
vim91/src/textformat.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-476): [#def564]
vim91/src/textformat.c:522:36: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘flags’
vim91/src/textformat.c:513:8: branch_false: following ‘false’ branch...
vim91/src/textformat.c:521:30: branch_false: ...to here
vim91/src/textformat.c:521:12: branch_false: following ‘false’ branch...
vim91/src/textformat.c:522:17: branch_false: ...to here
vim91/src/textformat.c:521:13: branch_true: following ‘true’ branch...
vim91/src/textformat.c:522:36: branch_true: ...to here
vim91/src/textformat.c:522:36: danger: dereference of NULL ‘flags’
#  520|   
#  521|       return (*skipwhite(ptr + *leader_len) == NUL
#  522|-> 	    || (*leader_len > 0 && *flags == COM_END)
#  523|   	    || startPS(lnum, NUL, FALSE));
#  524|   }

Error: GCC_ANALYZER_WARNING (CWE-457): [#def565]
vim91/src/textformat.c:650:10: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘next_leader_flags’
vim91/src/textformat.c:621:1: enter_function: entry to ‘paragraph_start’
vim91/src/textformat.c:630:8: branch_false: following ‘false’ branch (when ‘lnum > 1’)...
vim91/src/textformat.c:633:9: branch_false: ...to here
vim91/src/textformat.c:634:8: branch_false: following ‘false’ branch...
vim91/src/textformat.c:637:19: call_function: inlined call to ‘has_format_option’ from ‘paragraph_start’
vim91/src/textformat.c:638:9: branch_true: ...to here
vim91/src/textformat.c:638:9: call_function: calling ‘fmt_check_par’ from ‘paragraph_start’
vim91/src/textformat.c:638:9: return_function: returning to ‘paragraph_start’ from ‘fmt_check_par’
vim91/src/textformat.c:638:8: branch_false: following ‘false’ branch...
vim91/src/textformat.c:641:9: branch_false: ...to here
vim91/src/textformat.c:641:9: call_function: calling ‘fmt_check_par’ from ‘paragraph_start’
vim91/src/textformat.c:641:9: return_function: returning to ‘paragraph_start’ from ‘fmt_check_par’
vim91/src/textformat.c:641:8: branch_false: following ‘false’ branch...
vim91/src/textformat.c:644:9: call_function: inlined call to ‘has_format_option’ from ‘paragraph_start’
vim91/src/textformat.c:650:10: danger: use of uninitialized value ‘next_leader_flags’ here
#  648|   	return TRUE;		// numbered item starts in "lnum".
#  649|   
#  650|->     if (!same_leader(lnum - 1, leader_len, leader_flags,
#  651|   					  next_leader_len, next_leader_flags))
#  652|   	return TRUE;		// change of comment leader.

Error: COMPILER_WARNING: [#def566]
vim91/src/textobject.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def567]
vim91/src/textprop.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def568]
vim91/src/time.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def569]
vim91/src/tuple.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def570]
vim91/src/typval.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def571]
vim91/src/ui.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-1341): [#def572]
vim91/src/ui.c:1004:13: warning[-Wanalyzer-fd-double-close]: double ‘close’ of file descriptor ‘0’
vim91/src/ui.c:941:8: branch_false: following ‘false’ branch...
vim91/src/ui.c:949:9: branch_false: ...to here
vim91/src/ui.c:971:19: branch_true: following ‘true’ branch (when ‘try != 100’)...
vim91/src/ui.c:973:35: branch_true: ...to here
vim91/src/ui.c:981:12: branch_false: following ‘false’ branch (when ‘len <= 0’)...
vim91/src/ui.c:988:21: branch_false: ...to here
vim91/src/ui.c:988:13: branch_false: following ‘false’ branch...
vim91/src/ui.c:994:13: branch_false: ...to here
vim91/src/ui.c:994:12: branch_true: following ‘true’ branch...
vim91/src/ui.c:994:37: branch_true: ...to here
vim91/src/ui.c:994:13: branch_true: following ‘true’ branch...
vim91/src/ui.c:1004:13: release_resource: first ‘close’ here
vim91/src/ui.c:1011:12: branch_false: following ‘false’ branch (when ‘exit_on_error != 0’)...
vim91/src/ui.c:971:30: branch_false: ...to here
vim91/src/ui.c:971:19: branch_true: following ‘true’ branch (when ‘try != 100’)...
vim91/src/ui.c:973:35: branch_true: ...to here
vim91/src/ui.c:981:12: branch_false: following ‘false’ branch (when ‘len <= 0’)...
vim91/src/ui.c:988:21: branch_false: ...to here
vim91/src/ui.c:988:13: branch_false: following ‘false’ branch...
vim91/src/ui.c:994:13: branch_false: ...to here
vim91/src/ui.c:994:12: branch_true: following ‘true’ branch...
vim91/src/ui.c:994:37: branch_true: ...to here
vim91/src/ui.c:994:13: branch_true: following ‘true’ branch...
vim91/src/ui.c:1004:13: danger: second ‘close’ here; first ‘close’ was at [(14)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/13)
# 1002|   #ifdef HAVE_DUP
# 1003|   	    // Use stderr for stdin, also works for shell commands.
# 1004|-> 	    close(0);
# 1005|   	    vim_ignored = dup(2);
# 1006|   #else

Error: COMPILER_WARNING: [#def573]
vim91/src/undo.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def574]
vim91/src/usercmd.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def575]
vim91/src/userfunc.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-476): [#def576]
vim91/src/userfunc.c:535: error[ctunullpointer]: Null pointer dereference: argtypes
#  533|   
#  534|       ga_init2(&fp->uf_type_list, sizeof(type_T *), 10);
#  535|->     if (argtypes->ga_len > 0)
#  536|       {
#  537|   	// When "varargs" is set the last name/type goes into uf_va_name

Error: GCC_ANALYZER_WARNING (CWE-476): [#def577]
vim91/src/userfunc.c:2386:46: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘name’
vim91/src/userfunc.c:7556:1: enter_function: entry to ‘set_ref_in_func’
vim91/src/userfunc.c:7562:18: release_memory: ‘tofree’ is NULL
vim91/src/userfunc.c:7566:8: branch_false: following ‘false’ branch...
vim91/src/userfunc.c:7569:8: branch_false: ...to here
vim91/src/userfunc.c:7569:8: branch_true: following ‘true’ branch (when ‘fp_in’ is NULL)...
vim91/src/userfunc.c:7571:17: branch_true: ...to here
vim91/src/userfunc.c:7571:17: call_function: calling ‘fname_trans_sid’ from ‘set_ref_in_func’
vim91/src/userfunc.c:7571:17: return_function: returning to ‘set_ref_in_func’ from ‘fname_trans_sid’
vim91/src/userfunc.c:7572:14: call_function: calling ‘find_func’ from ‘set_ref_in_func’
# 2384|       {
# 2385|   	// Find script-local function before global one.
# 2386|-> 	if (in_vim9script() && eval_isnamec1(*name)
# 2387|   					   && (name[1] != ':' || *name == 's'))
# 2388|   	{

Error: GCC_ANALYZER_WARNING (CWE-688): [#def578]
vim91/src/userfunc.c:2394:32: warning[-Wanalyzer-null-argument]: use of NULL ‘name’ where non-null expected
vim91/src/userfunc.c:7556:1: enter_function: entry to ‘set_ref_in_func’
vim91/src/userfunc.c:7562:18: release_memory: ‘tofree’ is NULL
vim91/src/userfunc.c:7566:8: branch_false: following ‘false’ branch...
vim91/src/userfunc.c:7569:8: branch_false: ...to here
vim91/src/userfunc.c:7569:8: branch_true: following ‘true’ branch (when ‘fp_in’ is NULL)...
vim91/src/userfunc.c:7571:17: branch_true: ...to here
vim91/src/userfunc.c:7571:17: call_function: calling ‘fname_trans_sid’ from ‘set_ref_in_func’
vim91/src/userfunc.c:7571:17: return_function: returning to ‘set_ref_in_func’ from ‘fname_trans_sid’
vim91/src/userfunc.c:7572:14: call_function: calling ‘find_func’ from ‘set_ref_in_func’
# 2392|   		return func;
# 2393|   	}
# 2394|-> 	if (in_vim9script() && STRNCMP(name, "<SNR>", 5) == 0)
# 2395|   	{
# 2396|   	    char_u  *p = name + 5;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def579]
vim91/src/userfunc.c:2413:33: warning[-Wanalyzer-null-argument]: use of NULL ‘name’ where non-null expected
vim91/src/userfunc.c:7556:1: enter_function: entry to ‘set_ref_in_func’
vim91/src/userfunc.c:7562:18: release_memory: ‘tofree’ is NULL
vim91/src/userfunc.c:7566:8: branch_false: following ‘false’ branch...
vim91/src/userfunc.c:7569:8: branch_false: ...to here
vim91/src/userfunc.c:7569:8: branch_true: following ‘true’ branch (when ‘fp_in’ is NULL)...
vim91/src/userfunc.c:7571:17: branch_true: ...to here
vim91/src/userfunc.c:7571:17: call_function: calling ‘fname_trans_sid’ from ‘set_ref_in_func’
vim91/src/userfunc.c:7571:17: return_function: returning to ‘set_ref_in_func’ from ‘fname_trans_sid’
vim91/src/userfunc.c:7572:14: call_function: calling ‘find_func’ from ‘set_ref_in_func’
# 2411|       {
# 2412|   	hi = hash_find(&func_hashtab,
# 2413|-> 				STRNCMP(name, "g:", 2) == 0 ? name + 2 : name);
# 2414|   	if (!HASHITEM_EMPTY(hi))
# 2415|   	    return HI2UF(hi);

Error: CPPCHECK_WARNING (CWE-457): [#def580]
vim91/src/userfunc.c:3193: error[legacyUninitvar]: Uninitialized variable: def_rettv
# 3191|   	// Note: the values are copied directly to avoid alloc/free.
# 3192|   	// "argvars" must have VAR_FIXED for v_lock.
# 3193|-> 	v->di_tv = isdefault ? def_rettv : argvars[i];
# 3194|   	v->di_tv.v_lock = VAR_FIXED;
# 3195|   

Error: CPPCHECK_WARNING (CWE-562): [#def581]
vim91/src/userfunc.c:4030: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
# 4028|   		// make a copy of the type with the correction.
# 4029|   		check_type = *funcexe->fe_check_type;
# 4030|-> 		funcexe->fe_check_type = &check_type;
# 4031|   		check_type.tt_args = check_type_args;
# 4032|   		CLEAR_FIELD(check_type_args);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def582]
vim91/src/userfunc.c:6045:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘p’
vim91/src/userfunc.c:7515:1: enter_function: entry to ‘set_ref_in_functions’
vim91/src/userfunc.c:7522:38: branch_true: following ‘true’ branch...
vim91/src/userfunc.c:7528:16: branch_false: following ‘false’ branch...
vim91/src/userfunc.c:7522:60: branch_false: ...to here
vim91/src/userfunc.c:7522:38: branch_true: following ‘true’ branch...
vim91/src/userfunc.c:7529:46: call_function: calling ‘set_ref_in_func’ from ‘set_ref_in_functions’
# 6043|       // Use MB_STRICMP() because in Turkish comparing the "I" may not work with
# 6044|       // the standard library function.
# 6045|->     if (p[0] == '<' && (MB_STRNICMP(p + 1, "SID>", 4) == 0
# 6046|   				       || MB_STRNICMP(p + 1, "SNR>", 4) == 0))
# 6047|   	return 5;

Error: COMPILER_WARNING: [#def583]
vim91/src/version.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def584]
vim91/src/vim9class.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def585]
vim91/src/vim9cmds.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def586]
vim91/src/vim9compile.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def587]
vim91/src/vim9execute.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-562): [#def588]
vim91/src/vim9execute.c:6852: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
# 6850|       // Store the execution context in funccal, used by invoke_all_defer().
# 6851|       if (funccal != NULL)
# 6852|-> 	funccal->fc_ectx = &ectx;
# 6853|   
# 6854|       // Following errors are in the function, not the caller.

Error: COMPILER_WARNING: [#def589]
vim91/src/vim9expr.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def590]
vim91/src/vim9generics.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def591]
vim91/src/vim9instr.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-476): [#def592]
vim91/src/vim9instr.c:503: warning[nullPointer]: Possible null pointer dereference: type1
#  501|   {
#  502|       isntype_T	isntype = ISN_DROP;
#  503|->     vartype_T	vartype1 = tv1 != NULL ? tv1->v_type : type1->tt_type;
#  504|       vartype_T	vartype2 = tv2 != NULL ? tv2->v_type : type2->tt_type;
#  505|   

Error: CPPCHECK_WARNING (CWE-476): [#def593]
vim91/src/vim9instr.c:504: warning[nullPointer]: Possible null pointer dereference: type2
#  502|       isntype_T	isntype = ISN_DROP;
#  503|       vartype_T	vartype1 = tv1 != NULL ? tv1->v_type : type1->tt_type;
#  504|->     vartype_T	vartype2 = tv2 != NULL ? tv2->v_type : type2->tt_type;
#  505|   
#  506|       if (vartype1 == VAR_CLASS || vartype1 == VAR_TYPEALIAS)

Error: COMPILER_WARNING: [#def594]
vim91/src/vim9script.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def595]
vim91/src/vim9type.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def596]
vim91/src/viminfo.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: CPPCHECK_WARNING (CWE-457): [#def597]
vim91/src/viminfo.c:661: warning[uninitvar]: Uninitialized variable: p
#  659|       else
#  660|   	len = 0; // for picky compilers
#  661|->     if (p != NULL)
#  662|       {
#  663|   	viminfo_history[type][idx].time_set = vp[1].bv_nr;

Error: GCC_ANALYZER_WARNING (CWE-775): [#def598]
vim91/src/viminfo.c:3067:9: warning[-Wanalyzer-file-leak]: leak of FILE ‘fopen(viminfo_filename(file), "r")’
vim91/src/viminfo.c:3063:8: branch_false: following ‘false’ branch...
vim91/src/viminfo.c:3065:10: branch_false: ...to here
vim91/src/viminfo.c:3065:10: acquire_resource: opened here
vim91/src/viminfo.c:3067:8: branch_true: following ‘true’ branch...
vim91/src/viminfo.c:3069:9: branch_true: ...to here
vim91/src/viminfo.c:3069:9: throw: if ‘verbose_enter’ throws an exception...
vim91/src/viminfo.c:3067:9: danger: ‘fopen(viminfo_filename(file), "r")’ leaks here; was opened at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
# 3065|       fp = mch_fopen((char *)fname, READBIN);
# 3066|   
# 3067|->     if (p_verbose > 0)
# 3068|       {
# 3069|   	verbose_enter();

Error: GCC_ANALYZER_WARNING (CWE-401): [#def599]
vim91/src/viminfo.c:3067:9: warning[-Wanalyzer-malloc-leak]: leak of ‘fopen(viminfo_filename(file), "r")’
vim91/src/viminfo.c:3063:8: branch_false: following ‘false’ branch...
vim91/src/viminfo.c:3065:10: branch_false: ...to here
vim91/src/viminfo.c:3065:10: acquire_memory: allocated here
vim91/src/viminfo.c:3067:8: branch_true: following ‘true’ branch...
vim91/src/viminfo.c:3069:9: branch_true: ...to here
vim91/src/viminfo.c:3069:9: throw: if ‘verbose_enter’ throws an exception...
vim91/src/viminfo.c:3067:9: danger: ‘fopen(viminfo_filename(file), "r")’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
# 3065|       fp = mch_fopen((char *)fname, READBIN);
# 3066|   
# 3067|->     if (p_verbose > 0)
# 3068|       {
# 3069|   	verbose_enter();

Error: COMPILER_WARNING: [#def600]
vim91/src/wayland.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def601]
vim91/src/window.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def602]
vim91/src/xdiff/xdiffi.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def603]
vim91/src/xdiff/xemit.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def604]
vim91/src/xdiff/xhistogram.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def605]
vim91/src/xdiff/xpatience.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def606]
vim91/src/xdiff/xprepare.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def607]
vim91/src/xdiff/xutils.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: COMPILER_WARNING: [#def608]
vim91/src/xxd/xxd.c: warning: -D_FORTIFY_SOURCE defined but value is too low

Error: GCC_ANALYZER_WARNING (CWE-775): [#def609]
vim91/src/xxd/xxd.c:311:3: warning[-Wanalyzer-file-leak]: leak of FILE ‘fp’
vim91/src/xxd/xxd.c:731:1: enter_function: entry to ‘main’
vim91/src/xxd/xxd.c:752:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:942:6: branch_true: following ‘true’ branch (when ‘hextype != 6’)...
vim91/src/xxd/xxd.c:945:23: branch_true: ...to here
vim91/src/xxd/xxd.c:945:12: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:949:6: branch_false: ...to here
vim91/src/xxd/xxd.c:949:6: branch_true: following ‘true’ branch (when ‘colsgiven == 0’)...
vim91/src/xxd/xxd.c:950:5: branch_true: ...to here
vim91/src/xxd/xxd.c:950:5: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:961:6: branch_false: ...to here
vim91/src/xxd/xxd.c:961:6: branch_true: following ‘true’ branch...
vim91/src/xxd/xxd.c:973:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:974:8: branch_false: ...to here
vim91/src/xxd/xxd.c:973:7: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:975:9: branch_false: ...to here
vim91/src/xxd/xxd.c:975:7: branch_false: following ‘false’ branch (when ‘cols <= 256’)...
vim91/src/xxd/xxd.c:982:7: branch_false: ...to here
vim91/src/xxd/xxd.c:982:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:984:11: branch_false: ...to here
vim91/src/xxd/xxd.c:984:11: branch_false: following ‘false’ branch (when ‘hextype != 8’)...
vim91/src/xxd/xxd.c:987:6: branch_false: ...to here
vim91/src/xxd/xxd.c:987:6: branch_false: following ‘false’ branch (when ‘argc <= 3’)...
vim91/src/xxd/xxd.c:990:6: branch_false: ...to here
vim91/src/xxd/xxd.c:990:6: branch_false: following ‘false’ branch (when ‘argc != 1’)...
vim91/src/xxd/xxd.c:990:21: branch_false: ...to here
vim91/src/xxd/xxd.c:994:17: acquire_resource: opened here
vim91/src/xxd/xxd.c:994:10: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:1002:6: branch_false: ...to here
vim91/src/xxd/xxd.c:1019:6: branch_false: following ‘false’ branch (when ‘revert == 0’)...
vim91/src/xxd/xxd.c:1032:7: branch_false: ...to here
vim91/src/xxd/xxd.c:1032:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:1057:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:1112:6: branch_false: ...to here
vim91/src/xxd/xxd.c:1112:6: branch_false: following ‘false’ branch (when ‘hextype != 1’)...
vim91/src/xxd/xxd.c:1134:6: branch_false: ...to here
vim91/src/xxd/xxd.c:1134:6: branch_true: following ‘true’ branch (when ‘hextype != 4’)...
vim91/src/xxd/xxd.c:1136:16: branch_true: ...to here
vim91/src/xxd/xxd.c:1141:10: branch_true: following ‘true’ branch...
vim91/src/xxd/xxd.c:1141:45: branch_true: ...to here
vim91/src/xxd/xxd.c:1141:45: call_function: calling ‘getc_or_die’ from ‘main’
#  309|   {
#  310|     fprintf(stderr, "%s: ", pname);
#  311|->   perror(NULL);
#  312|     exit(ret);
#  313|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def610]
vim91/src/xxd/xxd.c:311:3: warning[-Wanalyzer-malloc-leak]: leak of ‘fp’
vim91/src/xxd/xxd.c:731:1: enter_function: entry to ‘main’
vim91/src/xxd/xxd.c:752:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:942:6: branch_true: following ‘true’ branch (when ‘hextype != 6’)...
vim91/src/xxd/xxd.c:945:23: branch_true: ...to here
vim91/src/xxd/xxd.c:945:12: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:949:6: branch_false: ...to here
vim91/src/xxd/xxd.c:949:6: branch_true: following ‘true’ branch (when ‘colsgiven == 0’)...
vim91/src/xxd/xxd.c:950:5: branch_true: ...to here
vim91/src/xxd/xxd.c:950:5: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:961:6: branch_false: ...to here
vim91/src/xxd/xxd.c:961:6: branch_true: following ‘true’ branch...
vim91/src/xxd/xxd.c:973:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:974:8: branch_false: ...to here
vim91/src/xxd/xxd.c:973:7: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:975:9: branch_false: ...to here
vim91/src/xxd/xxd.c:975:7: branch_false: following ‘false’ branch (when ‘cols <= 256’)...
vim91/src/xxd/xxd.c:982:7: branch_false: ...to here
vim91/src/xxd/xxd.c:982:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:984:11: branch_false: ...to here
vim91/src/xxd/xxd.c:984:11: branch_false: following ‘false’ branch (when ‘hextype != 8’)...
vim91/src/xxd/xxd.c:987:6: branch_false: ...to here
vim91/src/xxd/xxd.c:987:6: branch_false: following ‘false’ branch (when ‘argc <= 3’)...
vim91/src/xxd/xxd.c:990:6: branch_false: ...to here
vim91/src/xxd/xxd.c:990:6: branch_false: following ‘false’ branch (when ‘argc != 1’)...
vim91/src/xxd/xxd.c:990:21: branch_false: ...to here
vim91/src/xxd/xxd.c:994:17: acquire_memory: allocated here
vim91/src/xxd/xxd.c:994:10: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:1002:6: branch_false: ...to here
vim91/src/xxd/xxd.c:1019:6: branch_false: following ‘false’ branch (when ‘revert == 0’)...
vim91/src/xxd/xxd.c:1032:7: branch_false: ...to here
vim91/src/xxd/xxd.c:1032:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:1057:6: branch_false: following ‘false’ branch...
vim91/src/xxd/xxd.c:1112:6: branch_false: ...to here
vim91/src/xxd/xxd.c:1112:6: branch_false: following ‘false’ branch (when ‘hextype != 1’)...
vim91/src/xxd/xxd.c:1134:6: branch_false: ...to here
vim91/src/xxd/xxd.c:1134:6: branch_true: following ‘true’ branch (when ‘hextype != 4’)...
vim91/src/xxd/xxd.c:1136:16: branch_true: ...to here
vim91/src/xxd/xxd.c:1141:10: branch_true: following ‘true’ branch...
vim91/src/xxd/xxd.c:1141:45: branch_true: ...to here
vim91/src/xxd/xxd.c:1141:45: call_function: calling ‘getc_or_die’ from ‘main’
#  309|   {
#  310|     fprintf(stderr, "%s: ", pname);
#  311|->   perror(NULL);
#  312|     exit(ret);
#  313|   }

Scan Properties

analyzer-version-clippy1.92.0
analyzer-version-cppcheck2.19.1
analyzer-version-gcc16.0.0
analyzer-version-gcc-analyzer16.0.0
analyzer-version-shellcheck0.11.0
analyzer-version-unicontrol0.0.2
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-59.us-west-2.compute.internal
known-false-positives/usr/share/csmock/known-false-positives.js
known-false-positives-rpmknown-false-positives-0.0.0.20250521.132812.g8eff701.main-1.el9.noarch
mock-configfedora-rawhide-x86_64
project-namevim-9.1.1972-1.fc44
store-results-to/tmp/tmporgaqkk_/vim-9.1.1972-1.fc44.tar.xz
time-created2026-01-08 22:38:32
time-finished2026-01-08 23:20:15
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'gcc,cppcheck,clippy,shellcheck,unicontrol' '-o' '/tmp/tmporgaqkk_/vim-9.1.1972-1.fc44.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmporgaqkk_/vim-9.1.1972-1.fc44.src.rpm'
tool-versioncsmock-3.8.3.20251215.161544.g62de9a5-1.el9