From c934d5986d241c2a34c89ae3c16047299fd3a86b Mon Sep 17 00:00:00 2001 From: Nikolay Nikolov Date: Wed, 27 Mar 2024 11:51:44 +0200 Subject: [PATCH] Converted the 'invalid kind for firstOrd/lastOrd(XXX)' messages from internal errors to fatal errors. (#23443) This fixes a nimsuggest crash when opening: beacon_chain/consensus_object_pools/blockchain_dag.nim from the nimbus-eth2 project and many other .nim files (44 files, to be precise) in the same project. Replaces: https://github.com/nim-lang/Nim/pull/23402 --- compiler/types.nim | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/compiler/types.nim b/compiler/types.nim index 3726378273..e5ce0aea14 100644 --- a/compiler/types.nim +++ b/compiler/types.nim @@ -809,12 +809,12 @@ proc firstOrd*(conf: ConfigRef; t: PType): Int128 = if t.hasElementType: result = firstOrd(conf, skipModifier(t)) else: result = Zero - internalError(conf, "invalid kind for firstOrd(" & $t.kind & ')') + fatal(conf, unknownLineInfo, "invalid kind for firstOrd(" & $t.kind & ')') of tyUncheckedArray, tyCstring: result = Zero else: result = Zero - internalError(conf, "invalid kind for firstOrd(" & $t.kind & ')') + fatal(conf, unknownLineInfo, "invalid kind for firstOrd(" & $t.kind & ')') proc firstFloat*(t: PType): BiggestFloat = case t.kind @@ -905,12 +905,12 @@ proc lastOrd*(conf: ConfigRef; t: PType): Int128 = if t.hasElementType: result = lastOrd(conf, skipModifier(t)) else: result = Zero - internalError(conf, "invalid kind for lastOrd(" & $t.kind & ')') + fatal(conf, unknownLineInfo, "invalid kind for lastOrd(" & $t.kind & ')') of tyUncheckedArray: result = Zero else: result = Zero - internalError(conf, "invalid kind for lastOrd(" & $t.kind & ')') + fatal(conf, unknownLineInfo, "invalid kind for lastOrd(" & $t.kind & ')') proc lastFloat*(t: PType): BiggestFloat = case t.kind