aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjeff <jeffro256@tutanota.com>2023-08-30 20:16:26 -0500
committerjeffro256 <jeffro256@tutanota.com>2023-10-16 16:48:27 -0500
commit80b5bf8b3d2794e87d24a71c1e7ea54f449ece41 (patch)
tree1f6a0eb2ab0900fb994eeff83e1adb2128287203
parentMerge pull request #8959 (diff)
downloadmonero-80b5bf8b3d2794e87d24a71c1e7ea54f449ece41.tar.xz
gcc: fix uninitialized constructor warnings
-rw-r--r--src/cryptonote_basic/cryptonote_basic.h4
-rw-r--r--src/cryptonote_core/blockchain.h2
-rw-r--r--src/cryptonote_core/blockchain_and_pool.h6
-rw-r--r--src/cryptonote_core/tx_pool.h2
-rw-r--r--src/ringct/rctTypes.h4
5 files changed, 11 insertions, 7 deletions
diff --git a/src/cryptonote_basic/cryptonote_basic.h b/src/cryptonote_basic/cryptonote_basic.h
index ae112c31f..0531439d6 100644
--- a/src/cryptonote_basic/cryptonote_basic.h
+++ b/src/cryptonote_basic/cryptonote_basic.h
@@ -77,7 +77,7 @@ namespace cryptonote
// outputs <= HF_VERSION_VIEW_TAGS
struct txout_to_key
{
- txout_to_key() { }
+ txout_to_key(): key() { }
txout_to_key(const crypto::public_key &_key) : key(_key) { }
crypto::public_key key;
};
@@ -85,7 +85,7 @@ namespace cryptonote
// outputs >= HF_VERSION_VIEW_TAGS
struct txout_to_tagged_key
{
- txout_to_tagged_key() { }
+ txout_to_tagged_key(): key(), view_tag() { }
txout_to_tagged_key(const crypto::public_key &_key, const crypto::view_tag &_view_tag) : key(_key), view_tag(_view_tag) { }
crypto::public_key key;
crypto::view_tag view_tag; // optimization to reduce scanning time
diff --git a/src/cryptonote_core/blockchain.h b/src/cryptonote_core/blockchain.h
index 3ad051fc3..be2848d09 100644
--- a/src/cryptonote_core/blockchain.h
+++ b/src/cryptonote_core/blockchain.h
@@ -1609,6 +1609,6 @@ namespace cryptonote
*/
void send_miner_notifications(uint64_t height, const crypto::hash &seed_hash, const crypto::hash &prev_id, uint64_t already_generated_coins);
- friend class BlockchainAndPool;
+ friend struct BlockchainAndPool;
};
} // namespace cryptonote
diff --git a/src/cryptonote_core/blockchain_and_pool.h b/src/cryptonote_core/blockchain_and_pool.h
index c0f607f64..497342aea 100644
--- a/src/cryptonote_core/blockchain_and_pool.h
+++ b/src/cryptonote_core/blockchain_and_pool.h
@@ -37,6 +37,7 @@
#include "blockchain.h"
#include "tx_pool.h"
+#include "warnings.h"
namespace cryptonote
{
@@ -52,7 +53,10 @@ struct BlockchainAndPool
{
Blockchain blockchain;
tx_memory_pool tx_pool;
-
+
+PUSH_WARNINGS
+DISABLE_GCC_WARNING(uninitialized)
BlockchainAndPool(): blockchain(tx_pool), tx_pool(blockchain) {}
+POP_WARNINGS
};
}
diff --git a/src/cryptonote_core/tx_pool.h b/src/cryptonote_core/tx_pool.h
index 47268efb6..3bb96d3a8 100644
--- a/src/cryptonote_core/tx_pool.h
+++ b/src/cryptonote_core/tx_pool.h
@@ -676,7 +676,7 @@ private:
//! Next timestamp that a DB check for relayable txes is allowed
std::atomic<time_t> m_next_check;
- friend class BlockchainAndPool;
+ friend struct BlockchainAndPool;
};
}
diff --git a/src/ringct/rctTypes.h b/src/ringct/rctTypes.h
index 380ca2f53..51d5a121e 100644
--- a/src/ringct/rctTypes.h
+++ b/src/ringct/rctTypes.h
@@ -218,7 +218,7 @@ namespace rct {
rct::key a, b, t;
Bulletproof():
- A({}), S({}), T1({}), T2({}), taux({}), mu({}), a({}), b({}), t({}) {}
+ A({}), S({}), T1({}), T2({}), taux({}), mu({}), a({}), b({}), t({}), V({}), L({}), R({}) {}
Bulletproof(const rct::key &V, const rct::key &A, const rct::key &S, const rct::key &T1, const rct::key &T2, const rct::key &taux, const rct::key &mu, const rct::keyV &L, const rct::keyV &R, const rct::key &a, const rct::key &b, const rct::key &t):
V({V}), A(A), S(S), T1(T1), T2(T2), taux(taux), mu(mu), L(L), R(R), a(a), b(b), t(t) {}
Bulletproof(const rct::keyV &V, const rct::key &A, const rct::key &S, const rct::key &T1, const rct::key &T2, const rct::key &taux, const rct::key &mu, const rct::keyV &L, const rct::keyV &R, const rct::key &a, const rct::key &b, const rct::key &t):
@@ -253,7 +253,7 @@ namespace rct {
rct::key r1, s1, d1;
rct::keyV L, R;
- BulletproofPlus() {}
+ BulletproofPlus(): V(), A(), A1(), B(), r1(), s1(), d1(), L(), R() {}
BulletproofPlus(const rct::key &V, const rct::key &A, const rct::key &A1, const rct::key &B, const rct::key &r1, const rct::key &s1, const rct::key &d1, const rct::keyV &L, const rct::keyV &R):
V({V}), A(A), A1(A1), B(B), r1(r1), s1(s1), d1(d1), L(L), R(R) {}
BulletproofPlus(const rct::keyV &V, const rct::key &A, const rct::key &A1, const rct::key &B, const rct::key &r1, const rct::key &s1, const rct::key &d1, const rct::keyV &L, const rct::keyV &R):