aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwarptangent <warptangent@inbox.com>2015-05-25 22:07:17 -0700
committerwarptangent <warptangent@inbox.com>2015-05-25 22:18:36 -0700
commit696225321f26c0754f0ae60d18201e375fb6ff82 (patch)
tree6c0e757bf6394b323e9c4d1de2678512e50565ec
parentMerge pull request #290 (diff)
downloadmonero-696225321f26c0754f0ae60d18201e375fb6ff82.tar.xz
Fix compile for GCC 5.1.0
Add fix for compile error with multiple uses of peerid_type (uint64_t) variable in lambda expression. - known GCC issue: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65843 epee: replace return value of nullptr for expected boolean with false. Fixes #231.
-rw-r--r--contrib/epee/include/storages/portable_storage.h2
-rw-r--r--src/p2p/net_node.inl6
2 files changed, 6 insertions, 2 deletions
diff --git a/contrib/epee/include/storages/portable_storage.h b/contrib/epee/include/storages/portable_storage.h
index bbfe5f85c..ba9292306 100644
--- a/contrib/epee/include/storages/portable_storage.h
+++ b/contrib/epee/include/storages/portable_storage.h
@@ -427,7 +427,7 @@ namespace epee
TRY_ENTRY();
CHECK_AND_ASSERT(hsec_array, false);
if(hsec_array->type() != typeid(array_entry_t<section>))
- return nullptr;
+ return false;
array_entry_t<section>& sec_array = boost::get<array_entry_t<section>>(*hsec_array);
h_child_section = sec_array.get_next_val();
if(!h_child_section)
diff --git a/src/p2p/net_node.inl b/src/p2p/net_node.inl
index cede6d0a0..029508e45 100644
--- a/src/p2p/net_node.inl
+++ b/src/p2p/net_node.inl
@@ -1194,6 +1194,10 @@ namespace nodetool
std::string port_=port;
peerid_type pr_ = pr;
auto cb_ = cb;*/
+
+ // GCC 5.1.0 gives error with second use of uint64_t (peerid_type) variable.
+ peerid_type pr_ = pr;
+
bool inv_call_res = epee::net_utils::async_invoke_remote_command2<COMMAND_PING::response>(ping_context.m_connection_id, COMMAND_PING::ID, req, m_net_server.get_config_object(),
[=](int code, const COMMAND_PING::response& rsp, p2p_connection_context& context)
{
@@ -1205,7 +1209,7 @@ namespace nodetool
if(rsp.status != PING_OK_RESPONSE_STATUS_TEXT || pr != rsp.peer_id)
{
- LOG_PRINT_CC_L2(ping_context, "back ping invoke wrong response \"" << rsp.status << "\" from" << ip << ":" << port << ", hsh_peer_id=" << pr << ", rsp.peer_id=" << rsp.peer_id);
+ LOG_PRINT_CC_L2(ping_context, "back ping invoke wrong response \"" << rsp.status << "\" from" << ip << ":" << port << ", hsh_peer_id=" << pr_ << ", rsp.peer_id=" << rsp.peer_id);
return;
}
m_net_server.get_config_object().close(ping_context.m_connection_id);