From: Martin Quinson Date: Mon, 12 Dec 2016 07:57:07 +0000 (+0100) Subject: please sonar: dont apply binary operators to signed ints X-Git-Tag: v3_14~71 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/479a2412c9a12c28c80e1ee08fb2b5d04c2e88fc?hp=85bf1fb563ae7e47c7bfa232aa09147aa917083c please sonar: dont apply binary operators to signed ints --- diff --git a/examples/msg/dht-kademlia/node.c b/examples/msg/dht-kademlia/node.c index 97a89a2a06..e854b52732 100644 --- a/examples/msg/dht-kademlia/node.c +++ b/examples/msg/dht-kademlia/node.c @@ -116,7 +116,7 @@ unsigned int get_id_in_prefix(unsigned int id, unsigned int prefix) if (prefix == 0) { return 0; } else { - return (1 << (prefix - 1)) ^ id; + return (1 << ((unsigned int)(prefix - 1))) ^ id; } } diff --git a/examples/msg/dht-pastry/dht-pastry.c b/examples/msg/dht-pastry/dht-pastry.c index ade7a76601..e6c50ff29a 100644 --- a/examples/msg/dht-pastry/dht-pastry.c +++ b/examples/msg/dht-pastry/dht-pastry.c @@ -68,7 +68,7 @@ typedef struct s_task_data { } s_task_data_t, *task_data_t; static void get_mailbox(int node_id, char* mailbox); -static int domain(int a, int level); +static int domain(unsigned int a, unsigned int level); static int shl(int a, int b); static int closest_in_namespace_set(node_t node, int dest); static int routing_next(node_t node, int dest); @@ -86,7 +86,8 @@ static void get_mailbox(int node_id, char* mailbox) /** Get the specific level of a node id */ unsigned int domain_mask = 0; -static int domain(int a, int level) { +static int domain(unsigned int a, unsigned int level) +{ if (domain_mask == 0) domain_mask = pow(2, DOMAIN_SIZE) - 1; unsigned int shift = (LEVELS_COUNT-level-1)*DOMAIN_SIZE;