Review Board 1.7.16

clang compiler warning: -Wtautological-compare

Review Request #4533 - Created March 26, 2015 and submitted

Diederik de Groot
clang's static analyzer will throw quite a number warnings / errors during compilation, some of which can be very helpfull in finding corner-case bugs

clang compiler warning:-Wtautological-compare

len is of type size_t, which is unsigned. It will not be able to hold a value < 0

Not a 100% sure how to do this correctly. But assiging a negative value is problematic. Extending the enum in curl/curl.h is not possible either. I opted to use the enum last entry (CURL_LAST) which is currently not used for any thing. Another option would be to use one of the OBSOLETE VALUES like 16. Neither way is very nice though.

Needed to convey the error state returned by res/res_stasis_recording.c:stasis_app_recording_if_exists_parse

Added to convey not-found or error state. Not sure which name would be prefered for such an enum value.

Return actual enum instead of -1,l which can not be conveyed by this enum.

dn_expand return signed int

enum type cannot be < 0

tone_data.freq1 and freq2 are unsigned int's so no need to check if < 0. Not sure what should happend when freq1 / freq2 are 0 already... (needs recheck by source owner)

Should use the actual enum value for INVALID State

enum event_type cannot be <0

encode_length returns and unsigned int, so checking if < 0 does not make sence. Not 100% if encode_length has side effects, so left the actual call the this function in place. (Needs to be rechecked by code-owner)

Used a temporary int variable to be able to check the return value from ast_hint_presence_state.. Not very nice, but did not want to change the signature of this function.

operation is enum and cannot be < 0

recording->state / operation is enum and cannot be < 0

enum event_type cannot be <0

use of ARRAY_IN_BOUNDS with enum results in tautological comparison for the lower limit which is always true.
Compiles without warning
Description From Last Updated Status
Review request changed
Updated (April 9, 2015, 8:27 a.m.)
  • changed from pending to submitted
Committed in revision 434489 runs on a server provided by Digium, Inc. and uses bandwidth donated to the open source Asterisk community by API Digital Communications in Huntsville, AL USA.
Please report problems with this site to