Skip to content

Misleading error message with overload failure (member not available outside of storage) #2965

@axic

Description

@axic
library L {
    function f(bytes a, bytes b, uint c) returns (bool) {
    } 
    function f(bytes a, bytes b, uint c, bytes d, bytes e) returns (bool) {
        return f(a, b, c);
    }
}

contract C {
    function f() returns (bool) {
        bytes memory tmp;
        return L.f(tmp, tmp, 1, tmp);
    }
}

results in

overload.sol:12:16: Error: Member "f" is not available in type(library L) outside of storage.
        return L.f(tmp, tmp, 1, tmp);
               ^-^

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions