Skip to content

Commit e910e6f

Browse files
committed
Syntax tests
1 parent a112382 commit e910e6f

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

test/syntax.jl

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4107,6 +4107,16 @@ module Ambig57404
41074107
end
41084108
@test Ambig57404.S == 1
41094109

4110+
# #57269
4111+
@testset """var"begin"/var"end" in array index""" begin
4112+
@test (let var"end" = 1; (1:10)[var"end"]; end) === 1
4113+
@test (let var"end" = 1; (1:10)[end]; end) === 10
4114+
@test (let var"begin" = 2; (1:10)[2var"begin" + 1]; end) === 5
4115+
@test ((1:10)[end === 10 ? end : begin]) === 10
4116+
@test_throws ArgumentError (let var"begin" = nothing; (1:10)[var"begin"]; end)
4117+
@test (let a=[1]; a[end]::Int = 100; end) === 100
4118+
end
4119+
41104120
# Issue #56904 - lambda linearized twice
41114121
@test (let; try 3; finally try 1; f(() -> x); catch x; end; end; x = 7; end) === 7
41124122
@test (let; try 3; finally try 4; finally try 1; f(() -> x); catch x; end; end; end; x = 7; end) === 7

0 commit comments

Comments
 (0)