Через npm у меня установлен Solc версии 0.7.0. Создание Struct с mapping внутри выдаёт сообщение: "Struct containing a (nested) mapping cannot be constructed."
Вот код, который стоит посмотреть:
// SPDX-License-Identifier: MIT
pragma solidity 0.7.0;
contract Store {
struct Submission {
uint256 amount;
mapping(address => bool) votes;
}
Submission[] public submissions;
...
function addSubmission(
uint256 amount
) public {
Submission memory fresh = Submission({ // compiler reports the error here
amount: amount
});
submissions.push(fresh);
}
}
С более ранними версиями solc этот же код успешно собирается.
Спасибо за внимание!