Skip to content

[Bug] sol! doesn't pick up a type alias defined in a library #967

Open
@0xgleb

Description

@0xgleb

Component

sol_types

What version of Alloy are you on?

└── alloy v1.0.9
    ├── alloy-consensus v1.0.9
    │   ├── alloy-eips v1.0.9
    │   │   ├── alloy-eip2124 v0.2.0
    │   │   │   ├── alloy-primitives v1.2.0
    │   │   │   │   ├── alloy-rlp v0.3.12
    │   │   │   │   │   ├── alloy-rlp-derive v0.3.12 (proc-macro)
    │   │   │   │   │   ├── alloy-rlp v0.3.12 (*)
    │   │   │   ├── alloy-rlp v0.3.12 (*)
    │   │   ├── alloy-eip2930 v0.2.1
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   ├── alloy-rlp v0.3.12 (*)
    │   │   ├── alloy-eip7702 v0.6.1
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   ├── alloy-rlp v0.3.12 (*)
    │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   ├── alloy-rlp v0.3.12 (*)
    │   │   ├── alloy-serde v1.0.9
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   ├── alloy-primitives v1.2.0 (*)
    │   ├── alloy-rlp v0.3.12 (*)
    │   ├── alloy-serde v1.0.9 (*)
    │   ├── alloy-trie v0.8.1
    │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   ├── alloy-rlp v0.3.12 (*)
    ├── alloy-contract v1.0.9
    │   ├── alloy-consensus v1.0.9 (*)
    │   ├── alloy-dyn-abi v1.2.0
    │   │   ├── alloy-json-abi v1.2.0
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   ├── alloy-sol-type-parser v1.2.0
    │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   ├── alloy-sol-type-parser v1.2.0 (*)
    │   │   ├── alloy-sol-types v1.2.0
    │   │   │   ├── alloy-json-abi v1.2.0 (*)
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   └── alloy-sol-macro v1.2.0 (proc-macro)
    │   │   │       ├── alloy-sol-macro-expander v1.2.0
    │   │   │       │   ├── alloy-json-abi v1.2.0
    │   │   │       │   │   ├── alloy-primitives v1.2.0
    │   │   │       │   │   ├── alloy-sol-type-parser v1.2.0
    │   │   │       │   ├── alloy-sol-macro-input v1.2.0
    │   │   │       │   │   ├── alloy-json-abi v1.2.0 (*)
    │   │   │       ├── alloy-sol-macro-input v1.2.0 (*)
    │   ├── alloy-json-abi v1.2.0 (*)
    │   ├── alloy-network v1.0.9
    │   │   ├── alloy-consensus v1.0.9 (*)
    │   │   ├── alloy-consensus-any v1.0.9
    │   │   │   ├── alloy-consensus v1.0.9 (*)
    │   │   │   ├── alloy-eips v1.0.9 (*)
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   ├── alloy-rlp v0.3.12 (*)
    │   │   │   ├── alloy-serde v1.0.9 (*)
    │   │   ├── alloy-eips v1.0.9 (*)
    │   │   ├── alloy-json-rpc v1.0.9
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   ├── alloy-sol-types v1.2.0 (*)
    │   │   ├── alloy-network-primitives v1.0.9
    │   │   │   ├── alloy-consensus v1.0.9 (*)
    │   │   │   ├── alloy-eips v1.0.9 (*)
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   ├── alloy-serde v1.0.9 (*)
    │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   ├── alloy-rpc-types-any v1.0.9
    │   │   │   ├── alloy-consensus-any v1.0.9 (*)
    │   │   │   ├── alloy-rpc-types-eth v1.0.9
    │   │   │   │   ├── alloy-consensus v1.0.9 (*)
    │   │   │   │   ├── alloy-consensus-any v1.0.9 (*)
    │   │   │   │   ├── alloy-eips v1.0.9 (*)
    │   │   │   │   ├── alloy-network-primitives v1.0.9 (*)
    │   │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   │   ├── alloy-rlp v0.3.12 (*)
    │   │   │   │   ├── alloy-serde v1.0.9 (*)
    │   │   │   │   ├── alloy-sol-types v1.2.0 (*)
    │   │   │   └── alloy-serde v1.0.9 (*)
    │   │   ├── alloy-rpc-types-eth v1.0.9 (*)
    │   │   ├── alloy-serde v1.0.9 (*)
    │   │   ├── alloy-signer v1.0.9
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   ├── alloy-sol-types v1.2.0 (*)
    │   ├── alloy-network-primitives v1.0.9 (*)
    │   ├── alloy-primitives v1.2.0 (*)
    │   ├── alloy-provider v1.0.9
    │   │   ├── alloy-chains v0.2.3
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   ├── alloy-consensus v1.0.9 (*)
    │   │   ├── alloy-eips v1.0.9 (*)
    │   │   ├── alloy-json-rpc v1.0.9 (*)
    │   │   ├── alloy-network v1.0.9 (*)
    │   │   ├── alloy-network-primitives v1.0.9 (*)
    │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   ├── alloy-rpc-client v1.0.9
    │   │   │   ├── alloy-json-rpc v1.0.9 (*)
    │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   ├── alloy-transport v1.0.9
    │   │   │   │   ├── alloy-json-rpc v1.0.9 (*)
    │   │   │   │   ├── alloy-primitives v1.2.0 (*)
    │   │   │   ├── alloy-transport-http v1.0.9
    │   │   │   │   ├── alloy-json-rpc v1.0.9 (*)
    │   │   │   │   ├── alloy-transport v1.0.9 (*)
    │   │   ├── alloy-rpc-types-eth v1.0.9 (*)
    │   │   ├── alloy-signer v1.0.9 (*)
    │   │   ├── alloy-sol-types v1.2.0 (*)
    │   │   ├── alloy-transport v1.0.9 (*)
    │   │   ├── alloy-transport-http v1.0.9 (*)
    │   ├── alloy-rpc-types-eth v1.0.9 (*)
    │   ├── alloy-sol-types v1.2.0 (*)
    │   ├── alloy-transport v1.0.9 (*)
    ├── alloy-core v1.2.0
    │   ├── alloy-dyn-abi v1.2.0 (*)
    │   ├── alloy-json-abi v1.2.0 (*)
    │   ├── alloy-primitives v1.2.0 (*)
    │   └── alloy-sol-types v1.2.0 (*)
    ├── alloy-eips v1.0.9 (*)
    ├── alloy-network v1.0.9 (*)
    ├── alloy-provider v1.0.9 (*)
    ├── alloy-rpc-client v1.0.9 (*)
    ├── alloy-rpc-types v1.0.9
    │   ├── alloy-primitives v1.2.0 (*)
    │   ├── alloy-rpc-types-eth v1.0.9 (*)
    │   ├── alloy-serde v1.0.9 (*)
    ├── alloy-serde v1.0.9 (*)
    ├── alloy-signer v1.0.9 (*)
    ├── alloy-signer-local v1.0.9
    │   ├── alloy-consensus v1.0.9 (*)
    │   ├── alloy-network v1.0.9 (*)
    │   ├── alloy-primitives v1.2.0 (*)
    │   ├── alloy-signer v1.0.9 (*)
    ├── alloy-transport v1.0.9 (*)
    └── alloy-transport-http v1.0.9 (*)

Operating System

None

Describe the bug

A contract uses a library

Image

The library defines a type alias Float

Image

Rust code tries to use the sol! macro by specifying a path to the contract

Image

cargo build results in an error unresolved custom type: Float

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions