[asterisk-bugs] [JIRA] (ASTERISK-29144) GCC Warnings with OPTIMIZE=-Og make
Alexander Traud (JIRA)
noreply at issues.asterisk.org
Thu Oct 29 08:18:15 CDT 2020
Alexander Traud created ASTERISK-29144:
------------------------------------------
Summary: GCC Warnings with OPTIMIZE=-Og make
Key: ASTERISK-29144
URL: https://issues.asterisk.org/jira/browse/ASTERISK-29144
Project: Asterisk
Issue Type: Bug
Security Level: None
Components: . I did not set the category correctly.
Affects Versions: 18.0.0, 16.14.0
Reporter: Alexander Traud
Severity: Trivial
{code}./configure
OPTIMIZE=-Og make{code}gives the following five warnings in Ubuntu 20.10 with GCC 10.2:{code}chan_audiosocket.c: In function ‘audiosocket_request’:
chan_audiosocket.c:261:4: warning: ‘fd’ may be used uninitialized in this function [-Wmaybe-uninitialized]
261 | close(fd);
| ^~~~~~~~~
app_directory.c: In function ‘select_item_menu’:
app_directory.c:412:39: warning: ‘%d’ directive output may be truncated writing between 1 and 10 bytes into a region of size 2 [-Wformat-truncation=]
412 | snprintf(buf, sizeof(buf), "digits/%d", i + 1);
| ^~
app_directory.c:412:31: note: directive argument in the range [1, 2147483647]
412 | snprintf(buf, sizeof(buf), "digits/%d", i + 1);
| ^~~~~~~~~~~
In file included from /usr/include/stdio.h:866,
from .../asterisk-18.0.0/include/asterisk/compat.h:49,
from .../asterisk-18.0.0/include/asterisk.h:22,
from app_directory.c:31:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:70:10: note: ‘__builtin___snprintf_chk’ output between 9 and 18 bytes into a destination of size 9
70 | return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
71 | __bos (__s), __fmt, __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
app_voicemail.c: In function ‘vm_authenticate’:
app_voicemail.c:11284:15: warning: ‘passptr’ may be used uninitialized in this function [-Wmaybe-uninitialized]
11284 | if (vmu && !strcmp(passptr, password))
| ^~~~~~~~~~~~~~~~~~~~~~~~~
func_odbc.c: In function ‘init_acf_query’:
.../asterisk-18.0.0/include/asterisk/astmm.h:244:2: warning: ‘tmp2’ may be used uninitialized in this function [-Wmaybe-uninitialized]
244 | __ast_strdup((str), __FILE__, __LINE__, __PRETTY_FUNCTION__)
| ^~~~~~~~~~~~
func_odbc.c:1184:14: note: ‘tmp2’ was declared here
1184 | const char *tmp2;
| ^~~~
ooh323c/src/ooq931.c: In function ‘ooDecodeUUIE’:
ooh323c/src/ooq931.c:620:27: error: ‘ie’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
620 | setPERBuffer (pctxt, ie->data, ie->length, aligned);
| ~~^~~~~~{code}The workaround is trivial because these warnings can be ignored. However, when using {{./configure --enable-developer-mode}} those warnings turn into errors. Surprisingly, those warnings do not happen with any other [optimization options|http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html] like ones normally used in Asterisk: {{-O0}} and {{-O3}}. Only {{./apps/app_directory.c}} also warns not only at {{-Og}} but also on {{-O1}}.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list