diff --git a/lib/cmp_chunk.h b/lib/cmp_chunk.h
index c60fd87bfa2e604d03e5a9b340b6510b99eb2c7d..472e8b0db52eb1b0af80306a77a82879738cbd2a 100644
--- a/lib/cmp_chunk.h
+++ b/lib/cmp_chunk.h
@@ -107,7 +107,7 @@ struct cmp_par {
  * @returns maximum compressed size for a chunk compression; 0 on error
  */
 
-uint32_t compress_chunk_cmp_size_bound(void *chunk, uint32_t chunk_size);
+uint32_t compress_chunk_cmp_size_bound(const void *chunk, size_t chunk_size);
 
 
 /**
@@ -156,6 +156,7 @@ int32_t compress_chunk(void *chunk, uint32_t chunk_size,
 		       uint32_t *dst, uint32_t dst_capacity,
 		       const struct cmp_par *cmp_par);
 
+
 /**
  * @brief set the model id and model counter in the compression entity header
  *
diff --git a/lib/icu_compress/cmp_icu.c b/lib/icu_compress/cmp_icu.c
index e75ccfadd62ed6ef5284e9f248b1d5f84a885ef4..a51b1650eea9d3a07a2f08d73b606b36daa05f40 100644
--- a/lib/icu_compress/cmp_icu.c
+++ b/lib/icu_compress/cmp_icu.c
@@ -2714,7 +2714,7 @@ int32_t compress_chunk(void *chunk, uint32_t chunk_size,
  * @returns maximum compressed size for a chunk compression; 0 on error
  */
 
-uint32_t compress_chunk_cmp_size_bound(void *chunk, uint32_t chunk_size)
+uint32_t compress_chunk_cmp_size_bound(const void *chunk, size_t chunk_size)
 {
 	int32_t read_bytes;
 	uint32_t num_col = 0;
@@ -2726,7 +2726,7 @@ uint32_t compress_chunk_cmp_size_bound(void *chunk, uint32_t chunk_size)
 
 	for (read_bytes = 0;
 	     read_bytes < (int32_t)chunk_size-COLLECTION_HDR_SIZE;
-	     read_bytes += cmp_col_get_size((struct collection_hdr *)((uint8_t *)chunk + read_bytes)))
+	     read_bytes += cmp_col_get_size((const struct collection_hdr *)((const uint8_t *)chunk + read_bytes)))
 		num_col++;
 
 
@@ -2735,7 +2735,7 @@ uint32_t compress_chunk_cmp_size_bound(void *chunk, uint32_t chunk_size)
 		return 0;
 	}
 
-	return COMPRESS_CHUNK_BOUND(chunk_size, num_col);
+	return COMPRESS_CHUNK_BOUND((uint32_t)chunk_size, num_col);
 }