bitcoin/src
Wladimir J. van der Laan 5c24d3b98c
Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations.
f34c8c466a Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. (practicalswift)

Pull request description:

  Make objects in range declarations immutable by default.

  Rationale:
  * Immutable objects are easier to reason about.
  * Prevents accidental or hard-to-notice change of value.

Tree-SHA512: cad69d35f0cf8a938b848e65dd537c621d96fe3369be306b65ef0cd1baf6cc0a9f28bc230e1e383d810c555a6743d08cb6b2b0bd51856d4611f537a12e5abb8b
2018-09-04 15:50:08 +02:00
..
bench Merge #13792: tx pool: Avoid passing redundant hash into addUnchecked (scripted-diff) 2018-08-29 16:30:58 +02:00
compat Merge #13665: [build] Add risc-v support to gitian 2018-08-16 20:33:50 +02:00
config
consensus Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
crypto Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
index Break circular dependency: init -> * -> init by extracting shutdown.h 2018-06-25 00:08:49 -04:00
interfaces Merge #13825: [wallet] Kill accounts 2018-08-30 16:18:36 +02:00
leveldb Merge leveldb subtree 2018-08-09 11:31:45 -04:00
obj
obj-test
policy Merge #14103: docs: Fix broken Doxygen comments 2018-08-30 12:00:28 +02:00
primitives Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
qt Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
rpc Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
script Merge #13723: PSBT key path cleanups 2018-08-28 16:25:04 +02:00
secp256k1
support Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
test Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
univalue univalue: Bump subtree 2018-02-10 09:55:54 -05:00
wallet Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
zmq Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
.clang-format Fix inconsistent namespace formatting guidelines 2018-04-13 15:37:20 -04:00
addrdb.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
addrdb.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
addrman.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
addrman.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
amount.h
arith_uint256.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
arith_uint256.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
base58.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
base58.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
bech32.cpp Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-08-27 18:19:33 +02:00
bech32.h Fix missing or inconsistent include guards 2018-03-22 16:23:04 +01:00
bitcoin-cli-res.rc
bitcoin-cli.cpp Merge #14013: [doc] Add new regtest ports in man following #10825 ports reattributions 2018-09-04 12:51:06 +02:00
bitcoin-tx-res.rc
bitcoin-tx.cpp Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-08-27 18:19:33 +02:00
bitcoind-res.rc
bitcoind.cpp util: Replace boost::signals2 with std::function 2018-08-24 08:34:38 -04:00
blockencodings.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
blockencodings.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
blockfilter.cpp blockfilter: Omit empty scripts from filter contents. 2018-08-28 12:12:32 -07:00
blockfilter.h blockfilter: Additional helper methods to compute hash and header. 2018-08-25 10:02:37 -07:00
bloom.cpp Merge #13429: Return the script type from Solver 2018-08-25 17:41:00 +02:00
bloom.h Removes unsed CBloomFilter constructor. 2018-08-13 01:24:55 +02:00
chain.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
chain.h [trivial] Fix typo in CDiskBlockPos struct's ToString 2018-08-14 18:03:43 -05:00
chainparams.cpp Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00
chainparams.h Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00
chainparamsbase.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
chainparamsbase.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
chainparamsseeds.h net: Update hardcoded seeds 2018-08-13 13:57:15 +02:00
checkpoints.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
checkpoints.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
checkqueue.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
clientversion.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
clientversion.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
coins.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
coins.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
compat.h Make IS_TRIVIALLY_CONSTRUCTIBLE consistent on GCC < 5 2018-08-23 10:38:59 -07:00
compressor.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
compressor.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
core_io.h rpc: Expose ProcessNewBlockHeaders 2018-08-13 14:27:40 -04:00
core_memusage.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
core_read.cpp rpc: Expose ProcessNewBlockHeaders 2018-08-13 14:27:40 -04:00
core_write.cpp Merge #13429: Return the script type from Solver 2018-08-25 17:41:00 +02:00
cuckoocache.h Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-08-27 18:19:33 +02:00
dbwrapper.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
dbwrapper.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
fs.cpp Remove unused fsbridge::freopen 2018-08-29 16:05:51 +02:00
fs.h Remove unused fsbridge::freopen 2018-08-29 16:05:51 +02:00
hash.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
hash.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
httprpc.cpp Merge #13534: Don't assert(foo()) where foo() has side effects 2018-08-13 10:02:50 -04:00
httprpc.h Cleanup StartRest() 2018-08-11 09:34:47 +03:00
httpserver.cpp scripted-diff: Small locking rename 2018-08-31 10:00:38 -04:00
httpserver.h http: Add const modifier to HTTPRequest methods 2018-08-20 01:35:55 +01:00
indirectmap.h
init.cpp Merge #14013: [doc] Add new regtest ports in man following #10825 ports reattributions 2018-09-04 12:51:06 +02:00
init.h Break circular dependency: init -> * -> init by extracting shutdown.h 2018-06-25 00:08:49 -04:00
key.cpp Merge #13666: Always create signatures with Low R values 2018-08-13 12:07:20 +02:00
key.h Merge #13666: Always create signatures with Low R values 2018-08-13 12:07:20 +02:00
key_io.cpp Merge #13769: Mark single-argument constructors "explicit" 2018-08-27 13:33:04 -04:00
key_io.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
keystore.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
keystore.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
limitedmap.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
logging.cpp Don't close old debug log file handle prematurely when trying to re-open (on SIGHUP) 2018-08-29 16:05:00 +02:00
logging.h logging: remove unused return value from LogPrintStr 2018-05-02 11:25:20 +02:00
Makefile.am blockfilter: Implement GCSFilter constructors. 2018-08-25 10:02:37 -07:00
Makefile.bench.include bench: Benchmark GCS filter creation and matching. 2018-08-25 10:02:37 -07:00
Makefile.leveldb.include
Makefile.qt.include scripted-diff: Remove trailing whitespaces 2018-07-24 20:46:23 +01:00
Makefile.qttest.include crypto: cleanup sha256 build 2018-06-06 17:36:53 -04:00
Makefile.test.include Merge #11640: Make LOCK, LOCK2, TRY_LOCK work with CWaitableCriticalSection 2018-08-31 16:00:38 +02:00
memusage.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
merkleblock.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
merkleblock.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
miner.cpp Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00
miner.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
net.cpp Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
net.h scripted-diff: Small locking rename 2018-08-31 10:00:38 -04:00
net_processing.cpp Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
net_processing.h Add compile time checking for all cs_main runtime locking assertions 2018-08-26 00:25:28 +02:00
netaddress.cpp Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00
netaddress.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
netbase.cpp Removes the Boost case_conv.hpp dependency. 2018-08-28 18:42:53 +02:00
netbase.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
netmessagemaker.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
noui.cpp util: Replace boost::signals2 with std::function 2018-08-24 08:34:38 -04:00
noui.h
outputtype.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
outputtype.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
pow.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
pow.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
prevector.h Explicitly initialize prevector _union 2018-08-27 09:50:13 -07:00
protocol.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
protocol.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
pubkey.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
pubkey.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
random.cpp scripted-diff: Small locking rename 2018-08-31 10:00:38 -04:00
random.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
rest.cpp Increase signal to noise in appveyor build output by reducing the MSVC warning count from 12 to 4 (12 is assuming the changes in #14086 are also implemented). 2018-09-03 19:53:56 +02:00
reverse_iterator.h scripted-diff: Remove trailing whitespaces 2018-07-24 20:46:23 +01:00
reverselock.h
scheduler.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
scheduler.h Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00
serialize.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
shutdown.cpp Break circular dependency: init -> * -> init by extracting shutdown.h 2018-06-25 00:08:49 -04:00
shutdown.h Break circular dependency: init -> * -> init by extracting shutdown.h 2018-06-25 00:08:49 -04:00
span.h Add more methods to Span class 2018-07-27 11:52:18 -07:00
streams.h streams: Implement BitStreamReader/Writer classes. 2018-08-25 10:02:37 -07:00
sync.cpp Merge #11640: Make LOCK, LOCK2, TRY_LOCK work with CWaitableCriticalSection 2018-08-31 16:00:38 +02:00
sync.h scripted-diff: Small locking rename 2018-08-31 10:00:38 -04:00
threadinterrupt.cpp Merge #11640: Make LOCK, LOCK2, TRY_LOCK work with CWaitableCriticalSection 2018-08-31 16:00:38 +02:00
threadinterrupt.h scripted-diff: Small locking rename 2018-08-31 10:00:38 -04:00
threadsafety.h Trivial: update clang thread-safety docs url 2018-09-02 02:49:30 -04:00
timedata.cpp Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-08-27 18:19:33 +02:00
timedata.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
tinyformat.h Fix typos 2018-03-21 08:34:44 +02:00
torcontrol.cpp Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00
torcontrol.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
txdb.cpp Return void instead of bool for functions that cannot fail 2018-07-27 13:19:03 +02:00
txdb.h Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00
txmempool.cpp Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
txmempool.h Merge #13792: tx pool: Avoid passing redundant hash into addUnchecked (scripted-diff) 2018-08-29 16:30:58 +02:00
ui_interface.cpp Merge #13634: ui: Compile boost::signals2 only once 2018-08-13 15:02:38 -04:00
ui_interface.h Make macro compatible with MSVC 2018-08-14 09:19:47 +00:00
uint256.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
uint256.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
undo.h blockfilter: Construction of basic block filters. 2018-08-25 10:02:37 -07:00
util.cpp Fix potential deadlock 2018-08-30 10:02:49 +02:00
util.h Add lock annotations (cs_args) 2018-08-29 22:33:33 +02:00
utilmemory.h Extract MakeUnique into utilmemory.h 2018-07-17 13:56:21 -04:00
utilmoneystr.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
utilmoneystr.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
utilstrencodings.cpp Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
utilstrencodings.h Implements custom tolower and toupper functions. 2018-08-28 18:42:27 +02:00
utiltime.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
utiltime.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
validation.cpp Merge #13249: Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-09-04 15:50:08 +02:00
validation.h scripted-diff: Small locking rename 2018-08-31 10:00:38 -04:00
validationinterface.cpp Add compile time checking for all cs_main runtime locking assertions 2018-08-26 00:25:28 +02:00
validationinterface.h Add compile time checking for all cs_main runtime locking assertions 2018-08-26 00:25:28 +02:00
version.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
versionbits.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
versionbits.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
walletinitinterface.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
warnings.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
warnings.h Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00