From: Matthieu Volat Date: Wed, 8 Nov 2017 21:38:53 +0000 (+0100) Subject: Use unsigned int for std:*map positions (must be >0). X-Git-Tag: v3.18~265^2^2~3^2 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/dab045356241ceef00ffba03c15b71b948825746 Use unsigned int for std:*map positions (must be >0). --- diff --git a/src/kernel/routing/ClusterZone.cpp b/src/kernel/routing/ClusterZone.cpp index 131fe935ce..ad30187323 100644 --- a/src/kernel/routing/ClusterZone.cpp +++ b/src/kernel/routing/ClusterZone.cpp @@ -117,7 +117,7 @@ void ClusterZone::getGraph(xbt_graph_t graph, std::map* } } -void ClusterZone::create_links_for_node(ClusterCreationArgs* cluster, int id, int /*rank*/, int position) +void ClusterZone::create_links_for_node(ClusterCreationArgs* cluster, int id, int /*rank*/, unsigned int position) { std::string link_id = cluster->id + "_link_" + std::to_string(id); diff --git a/src/kernel/routing/ClusterZone.hpp b/src/kernel/routing/ClusterZone.hpp index 9fe5cba702..376747e598 100644 --- a/src/kernel/routing/ClusterZone.hpp +++ b/src/kernel/routing/ClusterZone.hpp @@ -73,7 +73,7 @@ public: void getGraph(xbt_graph_t graph, std::map* nodes, std::map* edges) override; - virtual void create_links_for_node(ClusterCreationArgs* cluster, int id, int rank, int position); + virtual void create_links_for_node(ClusterCreationArgs* cluster, int id, int rank, unsigned int position); virtual void parse_specific_arguments(ClusterCreationArgs* cluster) { /* this routing method does not require any specific argument */ @@ -83,9 +83,9 @@ public: /* The pair is {linkUp, linkDown} */ std::unordered_map> privateLinks_; - int nodePosition(int id) { return id * linkCountPerNode_; } - int nodePositionWithLoopback(int id) { return nodePosition(id) + (hasLoopback_ ? 1 : 0); } - int nodePositionWithLimiter(int id) { return nodePositionWithLoopback(id) + (hasLimiter_ ? 1 : 0); } + unsigned int nodePosition(int id) { return id * linkCountPerNode_; } + unsigned int nodePositionWithLoopback(int id) { return nodePosition(id) + (hasLoopback_ ? 1 : 0); } + unsigned int nodePositionWithLimiter(int id) { return nodePositionWithLoopback(id) + (hasLimiter_ ? 1 : 0); } surf::LinkImpl* backbone_ = nullptr; void* loopback_ = nullptr; diff --git a/src/kernel/routing/TorusZone.cpp b/src/kernel/routing/TorusZone.cpp index 1a684e7291..c9d1636772 100644 --- a/src/kernel/routing/TorusZone.cpp +++ b/src/kernel/routing/TorusZone.cpp @@ -31,7 +31,7 @@ TorusZone::TorusZone(NetZone* father, std::string name) : ClusterZone(father, na { } -void TorusZone::create_links_for_node(ClusterCreationArgs* cluster, int id, int rank, int position) +void TorusZone::create_links_for_node(ClusterCreationArgs* cluster, int id, int rank, unsigned int position) { /* Create all links that exist in the torus. Each rank creates @a dimensions-1 links */ int dim_product = 1; // Needed to calculate the next neighbor_id diff --git a/src/kernel/routing/TorusZone.hpp b/src/kernel/routing/TorusZone.hpp index 56d4c7008c..0cdad3d158 100644 --- a/src/kernel/routing/TorusZone.hpp +++ b/src/kernel/routing/TorusZone.hpp @@ -21,7 +21,7 @@ namespace routing { class XBT_PRIVATE TorusZone : public ClusterZone { public: explicit TorusZone(NetZone* father, std::string name); - void create_links_for_node(ClusterCreationArgs* cluster, int id, int rank, int position) override; + void create_links_for_node(ClusterCreationArgs* cluster, int id, int rank, unsigned int position) override; void getLocalRoute(NetPoint* src, NetPoint* dst, sg_platf_route_cbarg_t into, double* latency) override; void parse_specific_arguments(ClusterCreationArgs* cluster) override;