Skip to content

blends.nim compile error on windows #92

@sonicsmooth

Description

@sonicsmooth

(I posted this issue on the Fidget2 github page but then closed it and reopened here with a bit more detail)
With this being a single file, and the fact that it compiles just fine on the WSL side which is using Nim 2.3.1, I'm suspecting this can be fixed with a Nim upgrade, but I'm only seeing 2.2.6 as the latest available release. Do I need 2.3.1 through github?

nim --version -> Nim Compiler Version 2.2.0 [Windows: amd64]

C:\Users\<user>\source\hubrepos\boxy\src\boxy>nim c blends.nim
Hint: used config file 'C:\Users\<user>\AppData\Local\nim\nim-2.2.0\config\nim.cfg' [Conf]
Hint: used config file 'C:\Users\<user>\AppData\Local\nim\nim-2.2.0\config\config.nims' [Conf]
...............................................................................................................................................................................................................
C:\Users\<user>\source\hubrepos\boxy\src\boxy\blends.nim(185, 22) Error: type mismatch
Expression: proj * vec4(vertexPos.arr[0], vertexPos.arr[1], 0.0, 1.0)
  [1] proj: Uniform[vmath.Mat4]
  [2] vec4(vertexPos.arr[0], vertexPos.arr[1], 0.0, 1.0): Vec4

Expected one of (first mismatch at [position]):
[1] func `*`[T](x, y: set[T]): set[T]
[1] proc `*`(x, y: float): float
[1] proc `*`(x, y: float32): float32
[1] proc `*`(x, y: int): int
[1] proc `*`(x, y: int16): int16
[1] proc `*`(x, y: int32): int32
[1] proc `*`(x, y: int64): int64
[1] proc `*`(x, y: int8): int8
[1] proc `*`(x, y: uint): uint
[1] proc `*`(x, y: uint16): uint16
[1] proc `*`(x, y: uint32): uint32
[1] proc `*`(x, y: uint64): uint64
[1] proc `*`(x, y: uint8): uint8
[1] proc `*`[T](a, b: GMat3[T]): GMat3[T]
[1] proc `*`[T](a, b: GMat4[T]): GMat4[T]
[1] proc `*`[T](a: GMat2[T]; b: GVec2[T]): GVec2[T]
[1] proc `*`[T](a: GMat3[T]; b: GVec2[T]): GVec2[T]
[1] proc `*`[T](a: GMat3[T]; b: GVec3[T]): GVec3[T]
[1] proc `*`[T](a: GMat4[T]; b: GVec3[T]): GVec3[T]
[1] proc `*`[T](a: GMat4[T]; b: GVec4[T]): GVec4[T]
[1] proc `*`[T](a`gensym155, b`gensym155: GVec2[T]): GVec2[T]
[1] proc `*`[T](a`gensym155, b`gensym155: GVec3[T]): GVec3[T]
[1] proc `*`[T](a`gensym155, b`gensym155: GVec4[T]): GVec4[T]
[1] proc `*`[T](a`gensym155: GVec2[T]; b`gensym155: T): GVec2[T]
[1] proc `*`[T](a`gensym155: GVec3[T]; b`gensym155: T): GVec3[T]
[1] proc `*`[T](a`gensym155: GVec4[T]; b`gensym155: T): GVec4[T]
[2] proc `*`[T](a`gensym155: T; b`gensym155: GVec2[T]): GVec2[T]
[2] proc `*`[T](a`gensym155: T; b`gensym155: GVec3[T]): GVec3[T]
[2] proc `*`[T](a`gensym155: T; b`gensym155: GVec4[T]): GVec4[T]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions