sim: Add size to array unserialization error message
Add both acquired and expected size information to array unserialization error message. Change-Id: Ic0a493c5a7860066eb992e9e91e7a4746b197579 Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/16542 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
This commit is contained in:
committed by
Daniel Carvalho
parent
509aa2179a
commit
4ec5b85a31
@@ -474,7 +474,15 @@ arrayParamOut(CheckpointOut &os, const std::string &name,
|
||||
os << "\n";
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Extract values stored in the checkpoint, and assign them to the provided
|
||||
* array container.
|
||||
*
|
||||
* @param cp The checkpoint to be parsed.
|
||||
* @param name Name of the container.
|
||||
* @param param The array container.
|
||||
* @param size The expected number of entries to be extracted.
|
||||
*/
|
||||
template <class T>
|
||||
void
|
||||
arrayParamIn(CheckpointIn &cp, const std::string &name,
|
||||
@@ -496,9 +504,9 @@ arrayParamIn(CheckpointIn &cp, const std::string &name,
|
||||
// Need this if we were doing a vector
|
||||
// value.resize(tokens.size());
|
||||
|
||||
if (tokens.size() != size) {
|
||||
fatal("Array size mismatch on %s:%s'\n", section, name);
|
||||
}
|
||||
fatal_if(tokens.size() != size,
|
||||
"Array size mismatch on %s:%s (Got %u, expected %u)'\n",
|
||||
section, name, tokens.size(), size);
|
||||
|
||||
for (std::vector<std::string>::size_type i = 0; i < tokens.size(); i++) {
|
||||
// need to parse into local variable to handle vector<bool>,
|
||||
|
||||
Reference in New Issue
Block a user