// Automatically initialized with `none`. #let x #[test x, none] // Initialized with `1`. #let y = 1 #[test y, 1] // Initialize with template, not terminated by semicolon in template. #let v = [Hello; there] // Not terminated by line break due to parens. #let x = ( 1, 2, 3, ) #[test x, (1, 2, 3)] // Multiple bindings in one line. #let x = "a"; #let y = "b"; #[test x + y, "ab"] // Invalid name. // Error: 6-7 expected identifier, found integer #let 1 // Invalid name. // Error: 6-7 expected identifier, found integer #let 1 = 2 // Missing binding name. // Error: 5-5 expected identifier #let x = 5 // Missing right-hand side. // Error: 9-9 expected expression #let a = // No name at all. // Error: 11-11 expected identifier The Fi#let;rst // Terminated with just a line break. #let v = "a" The Second #[test v, "a"] // Terminated with semicolon + line break. #let v = "a"; The Third #[test v, "a"] // Terminated with just a semicolon. The#let v = "a"; Fourth #[test v, "a"] // Terminated by semicolon even though we are in a paren group. // Error: 2:25-2:25 expected expression // Error: 1:25-1:25 expected closing paren The#let array = (1, 2 + ;Fifth #[test array, (1, 2)] // Not terminated. // Error: 16-16 expected semicolon or line break The#let v = "a"Sixth #[test v, "a"] // Not terminated. // Error: 16-16 expected semicolon or line break The#let v = "a" #[test v, "a"] Seventh