diff options
author | Bart Van Assche <bvanassche@acm.org> | 2022-04-21 15:18:33 -0700 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2022-04-22 12:42:52 -0700 |
commit | 70e4139665cbcb7bde42cf004267dd97268f61b7 (patch) | |
tree | 2d9e210649c48969d27c1e023d824d60d4f761ec | |
parent | 7a1206adf33595a50b669d4027b72ad0786fb12f (diff) | |
download | f2fs-tools-70e4139665cbcb7bde42cf004267dd97268f61b7.tar.gz |
Suppress a compiler warning about integer truncation
This patch prevents that older compilers report the following warning:
f2fs_format.c: In function ‘f2fs_prepare_super_block’:
../include/f2fs_fs.h:350:26: error: conversion from ‘unsigned int’ to ‘__uint16_t’ {aka ‘short unsigned int’} changes value from ‘4076150800’ to ‘8208’ [-Werror=overflow]
350 | #define F2FS_SUPER_MAGIC 0xF2F52010 /* F2FS Magic Number */
| ^~~~~~~~~~
../include/f2fs_fs.h:574:49: note: in expansion of macro ‘cpu_to_le16’
574 | #define set_sb_le16(member, val) (sb->member = cpu_to_le16(val))
| ^~~~~~~~~~~
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
-rw-r--r-- | include/f2fs_fs.h | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/include/f2fs_fs.h b/include/f2fs_fs.h index e96394f..88acd4c 100644 --- a/include/f2fs_fs.h +++ b/include/f2fs_fs.h @@ -580,14 +580,14 @@ struct f2fs_configuration { #define get_newsb_le32(member) le32_to_cpu(new_sb->member) #define get_newsb_le16(member) le16_to_cpu(new_sb->member) -#define set_sb(member, val) \ +#define set_sb(member, val) \ do { \ - typeof(sb->member) t; \ + typeof(sb->member) t = (val); \ switch (sizeof(t)) { \ - case 8: set_sb_le64(member, val); break; \ - case 4: set_sb_le32(member, val); break; \ - case 2: set_sb_le16(member, val); break; \ - } \ + case 8: set_sb_le64(member, t); break; \ + case 4: set_sb_le32(member, t); break; \ + case 2: set_sb_le16(member, t); break; \ + } \ } while(0) #define get_sb(member) \ @@ -618,14 +618,14 @@ struct f2fs_configuration { #define get_cp_le32(member) le32_to_cpu(cp->member) #define get_cp_le16(member) le16_to_cpu(cp->member) -#define set_cp(member, val) \ +#define set_cp(member, val) \ do { \ - typeof(cp->member) t; \ + typeof(cp->member) t = (val); \ switch (sizeof(t)) { \ - case 8: set_cp_le64(member, val); break; \ - case 4: set_cp_le32(member, val); break; \ - case 2: set_cp_le16(member, val); break; \ - } \ + case 8: set_cp_le64(member, t); break; \ + case 4: set_cp_le32(member, t); break; \ + case 2: set_cp_le16(member, t); break; \ + } \ } while(0) #define get_cp(member) \ |