Language: Python
Label: safe
CWE: CWE-252 \u2014 Unchecked Return Value
The product does not check the return value from a method or function, which can prevent it from detecting unexpected states and conditions.

Code:
    def build_IR(self, expr, args, kwargs, context):
        input_buf = context.new_internal_variable(get_type_for_exact_size(128))
        output_buf = MemoryPositions.FREE_VAR_SPACE
        return IRnode.from_list(
            [
                "seq",
                # clear output memory first, ecrecover can return 0 bytes
                ["mstore", output_buf, 0],
                ["mstore", input_buf, args[0]],
                ["mstore", input_buf + 32, args[1]],
                ["mstore", input_buf + 64, args[2]],
                ["mstore", input_buf + 96, args[3]],
                ["staticcall", "gas", 1, input_buf, 128, output_buf, 32],
                ["mload", output_buf],
            ],
            typ=AddressT(),
        )