| 3521 | } |
| 3522 | |
| 3523 | void IRGeneratorForStatements::handleCatchFallback(TryCatchClause const& _fallback) |
| 3524 | { |
| 3525 | setLocation(_fallback); |
| 3526 | if (_fallback.parameters()) |
| 3527 | { |
| 3528 | solAssert(m_context.evmVersion().supportsReturndata()); |
| 3529 | solAssert( |
| 3530 | _fallback.parameters()->parameters().size() == 1 && |
| 3531 | _fallback.parameters()->parameters().front() && |
| 3532 | *_fallback.parameters()->parameters().front()->annotation().type == *TypeProvider::bytesMemory(), |
| 3533 | "" |
| 3534 | ); |
| 3535 | |
| 3536 | VariableDeclaration const& paramDecl = *_fallback.parameters()->parameters().front(); |
| 3537 | define(m_context.addLocalVariable(paramDecl)) << m_utils.extractReturndataFunction() << "()\n"; |
| 3538 | } |
| 3539 | _fallback.accept(*this); |
| 3540 | } |
| 3541 | |
| 3542 | void IRGeneratorForStatements::revertWithError( |
| 3543 | std::string const& _signature, |
nothing calls this directly
no test coverage detected