]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUILD: cache: fix a build warning regarding too large an integer for the age
authorWilly Tarreau <w@1wt.eu>
Sun, 11 Nov 2018 13:00:28 +0000 (14:00 +0100)
committerWilly Tarreau <w@1wt.eu>
Sun, 11 Nov 2018 13:03:02 +0000 (14:03 +0100)
Building on 32 bit gives this :

  src/cache.c: In function 'http_action_store_cache':
  src/cache.c:466:4: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
  src/cache.c:467:5: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
  src/cache.c: In function 'cache_channel_append_age_header':
  src/cache.c:578:2: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]
  src/cache.c:579:3: warning: this decimal constant is unsigned only in ISO C90 [enabled by default]

It's because of the definition below added in commit e7a770c ("MINOR:
cache: Add "Age" header.") :

  #define CACHE_ENTRY_MAX_AGE 2147483648

Just appending "U" to mark it unsigned is enough to fix it. This only
affects 1.9, no backport is needed.

src/cache.c

index 6988b15bec9237cba8b26af8b81bfdfc12ee8c82..35568bc5577958d8c8c21e77c1248ce67c1dc985 100644 (file)
@@ -73,7 +73,7 @@ struct cache_entry {
 };
 
 #define CACHE_BLOCKSIZE 1024
-#define CACHE_ENTRY_MAX_AGE 2147483648
+#define CACHE_ENTRY_MAX_AGE 2147483648U
 
 static struct list caches = LIST_HEAD_INIT(caches);
 static struct cache *tmp_cache_config = NULL;