Files
Nim/compiler
elijahr f4fd26d403 Fix sizeof(T) in typedesc templates called from generic type when clauses (#25374)
The `hasValuelessStatics` function in `semtypinst.nim` only checked for
`tyStatic`, missing `tyTypeDesc(tyGenericParam)`. This caused
`sizeof(T)` inside a typedesc template called from a generic type's
`when` clause to error with "'sizeof' requires '.importc' types to be
'.completeStruct'".

The fix adds a check for `tyTypeDesc` wrapping `tyGenericParam`,
recognizing it as an unresolved generic parameter that needs resolution
before evaluation.

Also documents the `completeStruct` pragma in the manual.

(cherry picked from commit b819472e74)
2026-01-09 08:48:29 +01:00
..
2023-12-15 10:20:57 +01:00
2025-11-27 19:03:50 +01:00
2025-01-14 07:53:29 +01:00
2025-12-05 15:29:45 +01:00
2017-01-07 22:35:09 +01:00
2025-05-12 14:21:20 +02:00
2025-12-18 20:53:04 +01:00
2025-01-15 10:21:20 +01:00
2021-01-12 09:36:51 +01:00
2024-07-09 09:29:45 +02:00
2025-01-14 07:51:55 +01:00
2023-07-02 22:36:05 +02:00
2023-11-06 18:33:28 +01:00
2025-09-22 08:47:23 +02:00
2025-09-26 08:56:47 +02:00
2024-03-16 08:35:18 +08:00
2025-11-15 12:26:35 +01:00
2025-11-15 12:26:35 +01:00
2023-12-25 07:12:54 +01:00

Nim Compiler

  • This directory contains the Nim compiler written in Nim.
  • Note that this code has been translated from a bootstrapping version written in Pascal.
  • So the code is not a poster child of good Nim code.

See Internals of the Nim Compiler for more information.