Work around -Werror=format-truncation compilation errors.#27
Open
hlein wants to merge 1 commit intocodeghar:masterfrom
Open
Work around -Werror=format-truncation compilation errors.#27hlein wants to merge 1 commit intocodeghar:masterfrom
hlein wants to merge 1 commit intocodeghar:masterfrom
Conversation
When -Werror=format-truncation is enabled, various warnings break the
build like:
[Compiling library-trans-ip/C_TransIP.cpp]
library-trans-ip/C_TransIP.cpp: In member function 'void C_TransIP::analyze_optional_init_string(char*)':
library-trans-ip/C_TransIP.cpp:676:6: error: '%s' directive output may be truncated writing up to 254 bytes into a region of size 56 [-Werror=format-truncation=]
void C_TransIP::analyze_optional_init_string(char *P_buf) {
^~~~~~~~~
library-trans-ip/C_TransIP.cpp:66:10: note: 'snprintf' output between 46 and 300 bytes into a destination of size 100
snprintf(L_msg, 100, (char*)(m), (P1)) ; \
~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
library-trans-ip/C_TransIP.cpp:710:9: note: in expansion of macro 'LOG_ALL_P1'
LOG_ALL_P1("Unknown parameter value for close-wait-ms: [%s]", L_tmp);
^~~~~~~~~~
library-trans-ip/C_TransIP.cpp: In member function 'int C_TransIP::extract_ip_addr(T_pIpAddr)':
library-trans-ip/C_TransIP.cpp:846:5: error: '%s' directive output may be truncated writing up to 1023 bytes into a region of size 84 [-Werror=format-truncation=]
int C_TransIP::extract_ip_addr(T_pIpAddr P_pIpAddr) {
^~~~~~~~~
library-trans-ip/C_TransIP.cpp:66:10: note: 'snprintf' output between 18 and 1041 bytes into a destination of size 100
...
cc1plus: all warnings being treated as errors
make[1]: *** [.../seagull/trunk/src/work-1.8.3/dep-libtrans_ip.so.mk:55: .../seagull/trunk/src/work-1.8.3/C_TransIP.o] Error 1
The longest string being snprintf'ed is up to just over 1000 bytes,
so this simply defines the error/log message size to 1200 bytes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When -Werror=format-truncation is enabled, various warnings break the
build like:
[Compiling library-trans-ip/C_TransIP.cpp]
library-trans-ip/C_TransIP.cpp: In member function 'void C_TransIP::analyze_optional_init_string(char*)':
library-trans-ip/C_TransIP.cpp:676:6: error: '%s' directive output may be truncated writing up to 254 bytes into a region of size 56 [-Werror=format-truncation=]
void C_TransIP::analyze_optional_init_string(char P_buf) {
^~~~~~~~~
library-trans-ip/C_TransIP.cpp:66:10: note: 'snprintf' output between 46 and 300 bytes into a destination of size 100
snprintf(L_msg, 100, (char)(m), (P1)) ; \