Skip to content

Commit

Permalink
Make 1-bit bitfields unsigned
Browse files Browse the repository at this point in the history
This fixes -Wsingle-bit-bitfield-constant-conversion warning from
clang-16 like:

lib/libzfs/libzfs_dataset.c:4529:19: error: implicit truncation
  from 'int' to a one-bit wide bit-field changes value from
  1 to -1 [-Werror,-Wsingle-bit-bitfield-constant-conversion]
                flags.nounmount = B_TRUE;
				^ ~~~~~~

Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Signed-off-by: Brooks Davis <brooks.davis@sri.com>
Closes openzfs#14125
  • Loading branch information
brooksdavis authored and tonyhutter committed Dec 1, 2022
1 parent 256b74d commit 572bd18
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
10 changes: 5 additions & 5 deletions include/libzfs.h
Original file line number Diff line number Diff line change
Expand Up @@ -258,10 +258,10 @@ extern int zpool_add(zpool_handle_t *, nvlist_t *);

typedef struct splitflags {
/* do not split, but return the config that would be split off */
int dryrun : 1;
unsigned int dryrun : 1;

/* after splitting, import the pool */
int import : 1;
unsigned int import : 1;
int name_flags;
} splitflags_t;

Expand Down Expand Up @@ -650,13 +650,13 @@ extern int zfs_rollback(zfs_handle_t *, zfs_handle_t *, boolean_t);

typedef struct renameflags {
/* recursive rename */
int recursive : 1;
unsigned int recursive : 1;

/* don't unmount file systems */
int nounmount : 1;
unsigned int nounmount : 1;

/* force unmount file systems */
int forceunmount : 1;
unsigned int forceunmount : 1;
} renameflags_t;

extern int zfs_rename(zfs_handle_t *, const char *, renameflags_t);
Expand Down
4 changes: 2 additions & 2 deletions lib/libzfs/libzfs_pool.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,8 @@
static boolean_t zpool_vdev_is_interior(const char *name);

typedef struct prop_flags {
int create:1; /* Validate property on creation */
int import:1; /* Validate property on import */
unsigned int create:1; /* Validate property on creation */
unsigned int import:1; /* Validate property on import */
} prop_flags_t;

/*
Expand Down

0 comments on commit 572bd18

Please sign in to comment.