-
Notifications
You must be signed in to change notification settings - Fork 6.2k
Open
Labels
Description
Description
The following code triggers the ICE shown below in the latest solc version 0.8.30. The issue appears to have started with version 0.8.8, which was when user-defined value types were introduced.
Steps to Reproduce
testcase.sol
// SPDX-License-Identifier: GPL-3.0
pragma solidity =0.8.30;
type T is bool;
library L {
function f(T[] storage p) external {
}
}solc testcase.sol
Internal compiler error:
/solidity/libsolidity/ast/Types.h(1199): Throw in function virtual std::string solidity::frontend::UserDefinedValueType::signatureInExternalFunction(bool) const
Dynamic exception type: boost::wrapexcept<solidity::langutil::InternalCompilerError>
std::exception::what: Solidity assertion failed
[solidity::util::tag_comment*] = Solidity assertion failed
Environment
- Compiler version:
0.8.30