1/* 2 * Copyright (c) 2024-2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16class A { 17 /* @@ label */function f(): int { 18 return 55 19 } 20 21 /* @@ label1 */let x: number = 7 22 /* @@ label2 */let y = "abc" 23 24 a: number = "abc" 25 b: int = 44 26} 27 28class /* @@ label3 */77 {} 29 30class /* @@ label4 */{/* @@ label5 */} 31 32/* @@? 17:19 Error SyntaxError: Unexpected token 'function'. */ 33/* @@? 21:20 Error SyntaxError: Unexpected token 'let'. */ 34/* @@? 22:20 Error SyntaxError: Unexpected token 'let'. */ 35/* @@? 24:17 Error TypeError: Type '"abc"' cannot be assigned to type 'double' */ 36/* @@? 28:22 Error SyntaxError: Identifier expected, got 'number literal'. */ 37/* @@? 30:22 Error SyntaxError: Identifier expected, got '{'. */ 38/* @@? 30:38 Error SyntaxError: Expected '{', got '}'. */ 39/* @@? 40:1 Error SyntaxError: Expected '}', got 'end of stream'. */ 40