Skip to content

unreachable using math builtins with unknown type #2355

Description

@xdBronch

Zig Version

0.15.0-dev.762+3208c80f2

ZLS Version

0.15.0-dev.178+bd24e21a

Client / Code Editor / Extensions

No response

Steps to Reproduce and Observed Behavior

fn foo() void {
    const T = @typeInfo(void).array.child;
    const a = @sqrt(@as(T, 0));
    _ = a;
}

should crash on hover, semantic tokens, etc, anything that tries to resolve b

/home/user/dev/zls/src/analyser/InternPool.zig:2994:25: 0x16b16cc in zigTypeTag (zls.zig)
            .unknown => unreachable,
                        ^
/home/user/dev/zls/src/analyser/InternPool.zig:3498:33: 0x16b1301 in scalarType (zls.zig)
    return switch (ip.zigTypeTag(ty)) {
                                ^
/home/user/dev/zls/src/analysis.zig:2061:64: 0x15445e7 in resolveTypeOfNodeUncached (zls.zig)
                if (!analyser.ip.isFloat(analyser.ip.scalarType(payload.type))) return null;
                                                               ^

Expected Behavior

no crash

Relevant log output

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions