1# ArkCompiler Subsystem Changelog 2 3## cl.arkcompiler.1 Added ArkTS Syntax Rule Compilation Check Scenario 4 5**Access Level** 6 7Others 8 9**Reason for Change** 10 11An interface can use a numeric literal as a property name. This does not comply with the ArkTS syntax rules. However, no compilation syntax check is provided for this scenario. 12 13**Change Impact** 14 15This change is a non-compatible change. 16 17Before change: An interface can declare a numeric literal as a property name. 18 19```ts 20interface I { 21 one: string, 22 2: string // no compile-time error 23} 24``` 25 26After change: An interface cannot use a numeric literal as a property name. 27 28```ts 29interface I { 30 one: string, 31 2: string // compile-time error 32} 33``` 34 35Numeric literals cannot be used as property names in classes and object literals. Therefore, if an interface with a numeric literal declared as a property name is used, there is no compatibility problem. 36 37This change is incompatible only when such an interface is declared but not used. 38 39**Start API Level** 40 41API version 10 42 43**Change Since** 44 45OpenHarmony SDK 5.0.0.29 46 47**Key API/Component Changes** 48 49N/A 50 51**Adaptation Guide** 52 53You are advised to change the property name from a numeric literal to a constant string or identifier in the declaration phase. For details about the description and modification method, see [Recipes](../../../application-dev/quick-start/typescript-to-arkts-migration-guide.md#recipe-objects-with-property-names-that-are-not-identifiers-are-not-supported). 54