﻿// Code coverage - "this" when no type is specified for it.
this
THIS
tHis ThIs

::: { T:{A:i8, B:b}*, i4:i4, and:b, 'et al':i8, 'etc.':s }

T
T.A
T.B
and

// Assign and reference "this".
`` { T, i4, and, 'et al', 'etc.' };
this
this.T
this.T.A
this.T.B

it
it$0
it$1
Sum(T, it.A)
Sum(T, it$.A)
Sum(T, it$0.A)
Sum(T, it$1.A)
Sum(T, it$123.A)

Sum(T, y: A) // Arg name when not expected.

// Function deprecation diagnostics.
Test.Wrap(17)
Test.Old(17)
Test.OldAlt(17)

// Arity error interaction with deprecations.
Test.Old()
Test.Old(17, "hi")

// Fuzzy matching (error cases).
Sum(x: T, X.A)
Sum('x 1': T, 'X 1'.A)
Sum(T, a * A)
T->{b}
AND
AND AND AND
TRUE
FALSE
NULL
THIS
TrUe tRuE
TrUe XOR tRuE
NuLl nUlL
NuLl & nUlL
tHiS ThIs
tHiS & ThIs

3 + 'ET AL'
'Et Al'bor 7
'I4'bor 7i4
7i4 bor'I4'
this.'eTc.'.len

Test.'Wrap one'(17)
'Wrap one'(17)
