|  | main() { | 
|  | dynamic foo = new X(); | 
|  | var bar = foo.late; | 
|  | late(); | 
|  | bar(); | 
|  | new X().late(); | 
|  | new Y().late; | 
|  |  | 
|  |  | 
|  | late int foo; | 
|  | foo = 42; | 
|  | } | 
|  |  | 
|  | late() { | 
|  | print("hello"); | 
|  | } | 
|  |  | 
|  | class X { | 
|  | late() { | 
|  | print("hello"); | 
|  | } | 
|  | } | 
|  |  | 
|  | class Y { | 
|  | int late = 42; | 
|  | } | 
|  |  | 
|  |  | 
|  | main[StringToken]([BeginToken])[SimpleToken] {[BeginToken] | 
|  | dynamic[KeywordToken] foo[StringToken] =[SimpleToken] new[KeywordToken] X[StringToken]([BeginToken])[SimpleToken];[SimpleToken] | 
|  | var[KeywordToken] bar[StringToken] =[SimpleToken] foo[StringToken].[SimpleToken]late[KeywordToken];[SimpleToken] | 
|  | late[KeywordToken]([BeginToken])[SimpleToken];[SimpleToken] | 
|  | bar[StringToken]([BeginToken])[SimpleToken];[SimpleToken] | 
|  | new[KeywordToken] X[StringToken]([BeginToken])[SimpleToken].[SimpleToken]late[KeywordToken]([BeginToken])[SimpleToken];[SimpleToken] | 
|  | new[KeywordToken] Y[StringToken]([BeginToken])[SimpleToken].[SimpleToken]late[KeywordToken];[SimpleToken] | 
|  |  | 
|  |  | 
|  | late[KeywordToken] int[StringToken] foo[StringToken];[SimpleToken] | 
|  | foo[StringToken] =[SimpleToken] 42[StringToken];[SimpleToken] | 
|  | }[SimpleToken] | 
|  |  | 
|  | late[KeywordToken]([BeginToken])[SimpleToken] {[BeginToken] | 
|  | print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken];[SimpleToken] | 
|  | }[SimpleToken] | 
|  |  | 
|  | class[KeywordToken] X[StringToken] {[BeginToken] | 
|  | late[KeywordToken]([BeginToken])[SimpleToken] {[BeginToken] | 
|  | print[StringToken]([BeginToken]"hello"[StringToken])[SimpleToken];[SimpleToken] | 
|  | }[SimpleToken] | 
|  | }[SimpleToken] | 
|  |  | 
|  | class[KeywordToken] Y[StringToken] {[BeginToken] | 
|  | int[StringToken] late[KeywordToken] =[SimpleToken] 42[StringToken];[SimpleToken] | 
|  | }[SimpleToken] | 
|  | [SimpleToken] |