Fix a bitwise negation assignment issue spotted by Sun Studio
Change direct and indirect assignments of the bitwise negation of 0 to uint32_t variables to have a "U" suffix. I.e. ~0U instead of ~0. This eliminates warnings under Sun Studio 12 Update 1: "vcs-svn/string_pool.c", line 11: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND) "vcs-svn/string_pool.c", line 81: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND) "vcs-svn/repo_tree.c", line 112: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND) "vcs-svn/repo_tree.c", line 112: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND) "test-treap.c", line 34: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND) The semantics are still the same as demonstrated by this program: $ cat test.c && make test && ./test #include <stdio.h> #include <stdint.h> int main(void) { uint32_t foo = ~0; uint32_t bar = ~0U; printf("foo = <%u> bar = <%u>\n", foo, bar); return 0; } cc test.c -o test "test.c", line 5: warning: initializer will be sign-extended: -1 foo = <4294967295> bar = <4294967295> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
d7a10c3140
commit
952fba9c63
@ -31,7 +31,7 @@ static void strtonode(struct int_node *item, const char *s)
|
|||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
struct strbuf sb = STRBUF_INIT;
|
struct strbuf sb = STRBUF_INIT;
|
||||||
struct trp_root root = { ~0 };
|
struct trp_root root = { ~0U };
|
||||||
uint32_t item;
|
uint32_t item;
|
||||||
|
|
||||||
if (argc != 1)
|
if (argc != 1)
|
||||||
|
@ -109,7 +109,7 @@ static struct repo_dirent *repo_read_dirent(uint32_t revision,
|
|||||||
static void repo_write_dirent(const uint32_t *path, uint32_t mode,
|
static void repo_write_dirent(const uint32_t *path, uint32_t mode,
|
||||||
uint32_t content_offset, uint32_t del)
|
uint32_t content_offset, uint32_t del)
|
||||||
{
|
{
|
||||||
uint32_t name, revision, dir_o = ~0, parent_dir_o = ~0;
|
uint32_t name, revision, dir_o = ~0U, parent_dir_o = ~0U;
|
||||||
struct repo_dir *dir;
|
struct repo_dir *dir;
|
||||||
struct repo_dirent *key;
|
struct repo_dirent *key;
|
||||||
struct repo_dirent *dent = NULL;
|
struct repo_dirent *dent = NULL;
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
#include "obj_pool.h"
|
#include "obj_pool.h"
|
||||||
#include "string_pool.h"
|
#include "string_pool.h"
|
||||||
|
|
||||||
static struct trp_root tree = { ~0 };
|
static struct trp_root tree = { ~0U };
|
||||||
|
|
||||||
struct node {
|
struct node {
|
||||||
uint32_t offset;
|
uint32_t offset;
|
||||||
@ -78,7 +78,7 @@ void pool_print_seq(uint32_t len, uint32_t *seq, char delim, FILE *stream)
|
|||||||
uint32_t pool_tok_seq(uint32_t sz, uint32_t *seq, const char *delim, char *str)
|
uint32_t pool_tok_seq(uint32_t sz, uint32_t *seq, const char *delim, char *str)
|
||||||
{
|
{
|
||||||
char *context = NULL;
|
char *context = NULL;
|
||||||
uint32_t token = ~0;
|
uint32_t token = ~0U;
|
||||||
uint32_t length;
|
uint32_t length;
|
||||||
|
|
||||||
if (sz == 0)
|
if (sz == 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user