1 1.1 rillig /* $NetBSD: lex_string.c,v 1.1 2021/10/22 20:54:36 rillig Exp $ */ 2 1.1 rillig /* $FreeBSD$ */ 3 1.1 rillig 4 1.1 rillig /* 5 1.1 rillig * Test lexing of string literals. 6 1.1 rillig */ 7 1.1 rillig 8 1.1 rillig #indent input 9 1.1 rillig char simple[] = "x"; 10 1.1 rillig char multi[] = "xy"; 11 1.1 rillig char empty[] = ""; 12 1.1 rillig char null[] = "\0"; 13 1.1 rillig char escape_hex[] = "\x3f"; 14 1.1 rillig char escape_octal[] = "\040"; 15 1.1 rillig char escape_a[] = "\a"; 16 1.1 rillig char escape_b[] = "\b"; 17 1.1 rillig char escape_f[] = "\f"; 18 1.1 rillig char escape_n[] = "\n"; 19 1.1 rillig char escape_t[] = "\t"; 20 1.1 rillig char escape_v[] = "\v"; 21 1.1 rillig char escape_single_quote[] = "\'"; 22 1.1 rillig char escape_double_quote[] = "\""; 23 1.1 rillig char escape_backslash[] = "\\"; 24 1.1 rillig 25 1.1 rillig char escape_newline[] = "\ 26 1.1 rillig "; 27 1.1 rillig #indent end 28 1.1 rillig 29 1.1 rillig #indent run-equals-input -di0 30 1.1 rillig 31 1.1 rillig /* Concatenated string literals are separated with a single space. */ 32 1.1 rillig #indent input 33 1.1 rillig char concat[] = "line 1\n" 34 1.1 rillig "line2" "has" "several""words\n"; 35 1.1 rillig #indent end 36 1.1 rillig 37 1.1 rillig #indent run -di0 38 1.1 rillig char concat[] = "line 1\n" 39 1.1 rillig "line2" "has" "several" "words\n"; 40 1.1 rillig #indent end 41