Files
Nim/compiler
Jake Leahy 49cc3c5746 Mark macros.error as .noreturn. (#23081)
Closes #14329

Marks `macros.error` as `.noreturn` so that it can be used in
expressions. This also fixes the issue that occurred in #19659 where a
stmt that could be an expression (Due to having `discardable` procs at
the end of other branches) would believe a `noreturn` proc is returning
the same type e.g.
```nim
 proc bar(): int {.discardable.} = discard

if true: bar()
else: quit(0) # Says that quit is of type `int` and needs to be used/discarded except it actually has no return type
```

(cherry picked from commit b3b87f0f8a)
2024-04-19 16:35:26 +02:00
..
2023-06-08 08:02:11 +02:00
2022-12-26 13:20:05 +01:00
2022-09-27 10:57:47 +02:00
2022-09-27 10:57:47 +02:00
2017-01-07 22:35:09 +01:00
2023-06-27 22:42:48 +02:00
2022-12-16 08:01:15 +01:00
2019-11-28 17:13:04 +01:00
2024-04-17 12:40:00 +02:00
2023-05-06 21:27:28 +02:00
2023-05-11 10:10:51 +02:00
2023-05-06 19:10:13 +02:00
2021-01-12 09:36:51 +01:00
2022-03-23 20:34:53 +01:00
2022-10-01 16:46:51 +02:00
2022-10-17 23:48:51 +02:00
2023-07-02 22:36:05 +02:00
2023-01-01 10:25:04 +01:00
2023-06-17 05:42:05 +02:00
2023-06-17 05:42:05 +02: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.