Files
Nim/compiler
bptato e97b0bb541 Do not directly cast int128 to uint64 in semfold (#25396)
int128 is an array of uint32s, so while this works on little-endian
CPUs, it's completely broken on big-endian. e.g. following snippet would
fail:

	const x = 0xFFFFFFFF'u32
	const y = (x shr 1)
	echo y # amd64: 2147483647, s390x: 0

That in turn broke float printing, resulting in miscompilation of any
code that used floats.

To fix this, we now call the aptly named castToUInt64 procedure which
performs the same cast portably.

(Thanks to barracuda156 for helping debug this.)
2025-12-30 23:09:01 +01:00
..
2025-12-29 00:20:33 +01:00
2023-12-15 10:20:57 +01:00
2025-12-29 13:52:22 +01:00
2025-12-01 22:59:12 +01:00
2025-12-11 18:22:38 +01:00
2025-12-07 13:07:44 +01:00
2025-12-29 10:23:46 +01:00
2025-12-29 13:52:22 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2017-01-07 22:35:09 +01:00
2025-12-06 11:45:01 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-18 18:54:03 +01:00
2025-11-25 12:49:23 +01:00
2024-12-27 19:42:18 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-06 11:45:01 +01:00
2025-12-11 18:22:38 +01:00
2021-01-12 09:36:51 +01:00
2025-12-11 18:22:38 +01:00
2025-12-07 13:07:44 +01:00
2025-12-20 11:27:46 +01:00
2025-12-29 13:52:22 +01:00
2025-12-11 18:22:38 +01:00
2025-12-07 13:07:44 +01:00
2025-12-11 18:22:38 +01:00
2025-11-13 21:31:24 +01:00
2025-12-11 18:22:38 +01:00
2023-07-02 22:36:05 +02:00
2023-11-06 18:33:28 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-29 13:52:22 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-29 10:23:46 +01:00
2025-12-11 18:22:38 +01:00
2024-03-16 08:35:18 +08:00
2025-12-11 18:22:38 +01:00
2025-12-29 13:52:22 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +01:00
2025-12-11 18:22:38 +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.