mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-06 07:38:24 +00:00
allows implicitRangeConvs for literals (#25542)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
(cherry picked from commit a3157537e1)
This commit is contained in:
@@ -1549,6 +1549,7 @@ proc track(tracked: PEffects, n: PNode) =
|
||||
|
||||
# Check for implicit range conversions
|
||||
if n.kind == nkHiddenStdConv and (not tracked.isArrayIndexing) and
|
||||
n[1].kind notin {nkCharLit..nkUInt64Lit, nkFloatLit..nkFloat128Lit} and
|
||||
shouldWarnRangeConversion(tracked.config, n.info, n.typ, n[1].typ):
|
||||
message(tracked.config, n.info, warnImplicitRangeConversion,
|
||||
typeToString(n[1].typ) & " -> " & typeToString(n.typ))
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
discard """
|
||||
matrix: "--warning:systemRangeConversion --warningaserror:systemRangeConversion"
|
||||
action: "reject"
|
||||
errormsg: "implicit range conversion int literal(12) -> Natural"
|
||||
"""
|
||||
|
||||
|
||||
proc foo(x: Natural) =
|
||||
discard
|
||||
|
||||
foo(12)
|
||||
14
tests/range/timplicitrangedownsizing3.nim
Normal file
14
tests/range/timplicitrangedownsizing3.nim
Normal file
@@ -0,0 +1,14 @@
|
||||
discard """
|
||||
matrix: "--warning:systemRangeConversion --warningaserror:systemRangeConversion"
|
||||
"""
|
||||
|
||||
proc foo(x: range[0..100]) = discard
|
||||
|
||||
foo(12)
|
||||
|
||||
type
|
||||
Float = range[0.0..100.0]
|
||||
|
||||
proc bar(x: Float) = discard
|
||||
|
||||
bar(12.0)
|
||||
Reference in New Issue
Block a user