[Home]

Summary:ASTERISK-18833: CLONE -Fix misleading gcc warning messages
Reporter:Nenad Kljajic (foundanswer)Labels:
Date Opened:2011-11-07 11:01:09.000-0600Date Closed:2011-11-28 18:09:18.000-0600
Priority:TrivialRegression?No
Status:Closed/CompleteComponents:Core/BuildSystem
Versions:1.8.7.1 Frequency of
Occurrence
Related
Issues:
is a clone ofASTERISK-18813 Fix misleading gcc warning messages
Environment:Linux Fedora 15 x64Attachments:
Description:gcc compiler throws somewhat misleading warning (gcc issue 28488):
/usr/local/include/asterisk/strings.h:504:1: warning: signed and unsigned type in conditional expression [-Wsign-compare]


{code}
--- include/asterisk/strings.h  2010-06-22 14:58:28.000000000 +0200
+++ /opt/asterisk/include/asterisk/strings.h    2011-11-03 18:33:25.628764067 +0100
@@ -505,7 +505,7 @@ AST_INLINE_API(
char *ast_str_truncate(struct ast_str *buf, ssize_t len),
{
       if (len < 0) {
-               buf->__AST_STR_USED += ((ssize_t) abs(len)) > (ssize_t) buf->__AST_STR_USED ? -buf->__AST_STR_USED : len;
+               buf->__AST_STR_USED += ((ssize_t) abs(len)) > (ssize_t) buf->__AST_STR_USED ? (ssize_t) -buf->__AST_STR_USED : len; //gcc 28488
       } else {
               buf->__AST_STR_USED = len;
       }
{code}
Comments:By: Richard Mudgett (rmudgett) 2011-11-28 18:09:18.439-0600

Fixed by https://reviewboard.asterisk.org/r/1594