| Add hot-reload ut and checklist Issue: https://gitee.com/openharmony/arkcompiler_ets_frontend/issues/ICX7CK?from=project-issue Change-Id: I5f72095d0a9272505e846ca20d0de8c09abea59a Signed-off-by: ElevenDuan <duanshiyi1@huawei.com> | 10 个月前 |
| ArkGuard add -keep-uncompact option Test: ut&grammar Issue: https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/9743 Co-Authored-By: Agent Signed-off-by: nicegema102 <zhangkai366@h-partners.com> | 8 天前 |
| add ets_frontend docs Issue:https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/10305 Co-Authored-By: Agent Signed-off-by: Fouckttt <tianwenkai4@huawei.com> | 1 个月前 |
| !10951 merge fix_sendable_class_decorator into master Fix sendable class with class decorator Created-by: huyunhui1 Commit-by: huyunhui1 Merged-by: openharmony_ci Description: ### 关联的Issue https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/11644 ### 提交类型 - [x] bugfix ### 问题现象和分析/Reason 当sendable class与class decorator同时存在时,ts transformer生成的alias变量被放在普通的lexical env中而非sendable env中,导致class内部方法使用ldlexvar而非ldsendableclass引用class自身,破坏了sendable语义。 ### 修改方案/Description 当sendable class和class decorator同时存在时,ts transformer中生成的修饰对象也视为sendable对象,放在sendable env中。具体做法是将ClassDefinition节点绑定到alias声明上,使NeedSetInSendableEnv返回true。 ### 测试结果 1. es2abc测试用例 - 已通过 2. 64位RK编译 - 已通过 3. 不涉及兼容性和指令格式修改 ### 是否已执行L0用例 已验证,新增测试用例 sendable-class-class-decorator.ts See merge request: openharmony/arkcompiler_ets_frontend!10951 | 1 个月前 |
| !11073 merge ctsnew333 into master Fix Cts333 Created-by: yuan_chao_hua Commit-by: yuan_chao_hua Merged-by: openharmony_ci Description: ### 关联的Issue https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/11748 ### Change-Id: Iac4d66f3649eff194e36ef7c2c31bc6240357b3d ### 提交类型 - [ ] 需求 - [ x] bugfix ### 需求背景/Description <!-- 仅涉及需求时填写 --> **Bug 1: Char Interpolation In Template Literal** 模板字符串里的 char 插值本质上是在拼接字符串内容,所以像 ${c'a'} 这样的写法应当被当成合法字符串构造。 **Bug 2: String Enum Member Static Value Resolution** 字符串枚举成员如果引用的是静态可确定的字符串值,例如 const v1 = "11"; enum E: string { A = v1 },也应当被当成合法的字符串枚举初始化。 **Bug 3: Narrow Integer Enum Constant Evaluation** 显式 byte/short 枚举里的常量表达式和自动生成成员,本质上都应该继续按 byte/short 语义处理,而不是退化成普通整数表达式。 ### 问题现象&&分析/Reason <!-- 仅涉及bugfix时填写 --> **Bug 1: Char Interpolation In Template Literal** 原来的报错例子就是 07.expressions/34.string_interpolation_expressions/char_interpolation.ets,像 ${c'a'} 会报 ESE4201: Implicit 'char->string' conversion disallowed.。 **Bug 2: String Enum Member Static Value Resolution** 原来的报错例子就是 11.enumerations/01.enumeration_base_type/enum_str_1.ets 和 11.enumerations/02.enumeration_with_explicit_base_type/enum_string_decl_udvt_0_0.ets,像 enum E: string { A = v1 } 会报 ESE0342,因为 lowering 没有把 v1 还原成真实字符串值。 **Bug 3: Narrow Integer Enum Constant Evaluation** 原来的报错例子就是 11.enumerations/03.initialization_of_enum_members/enum_explicit_integer_types_common_decl_citoomaxv1_byte_0_0.ets 和 ...short_0_0.ets,像 first = 32767 - 1, second, third 或 first = 126, second, third 会在主编译链报 ESE0342/ESE0345,在 declgen-ets2ts 链路还会报 ED0007: Only literal enum initializers are supported.。 ### 修改方案/Scheme **Bug 1: Char Interpolation In Template Literal** 在 constantExpressionLowering.cpp 里把原来触发 ESE4201 的 ${char} 路径改成直接提取字符内容并拼进模板字符串,也就是把报错场景 ${c'a'} 还原成合法字符串 "a"。 **Bug 2: String Enum Member Static Value Resolution** 在 enumLowering.cpp 里补了最小的静态字符串提取逻辑,让原来报 ESE0342 的 A = v1 能继续解析到 v1 对应的静态值 "11";同时在 declgenEts2Ts.cpp 里补同样的提取逻辑,避免声明导出阶段继续把它当成非 literal initializer。 **Bug 3: Narrow Integer Enum Constant Evaluation** 在 ETSparserEnums.cpp 里把原来会导致 ESE0342/ESE0345 的自动生成成员从 previous + 1 改成 (previous + 1) as byte/short,保住窄整型语义;再在 enumLowering.cpp 和 declgenEts2Ts.cpp 中支持从 32767 - 1、(prev + 1) as short 这类原来会触发 ED0007 的表达式里提取最终常量值。 枚举初始化只稳定支持**裸字面量**: ets enum E: string { A = "11" } enum E: short { A = 1 } 现在支持: ets const v1 = "11" enum E: string { A = v1 } // 标识符静态字符串值 enum E: string { A = "11" as string } // as 包裹的字符串 enum E: short { A = 32767 - 1 } // 常量加减表达式 enum E: short { A = 32767 - 1, B } // 自动生成成员值 enum E: byte { A = 126, B } // byte/short 自动递增 之所以要修改 declgenEts2Ts.cpp,是因为合法的枚举初始值已经不再只有 init->IsLiteral() 这一种形态了,例如字符串枚举里的 const v1 = "11"; enum E: string { A = v1 },以及 short 枚举里的 enum E: short { first = 32767 - 1, second };前者在 lowering 里会通过 ExtractStringEnumValue(...) 还原成静态字符串值,后者在 parser 里会把自动生成成员包成 TSAsExpression,lowering 再通过 ExtractNumericEnumValue(...) 提取常量数值。这样一来,如果declgenEts2Ts.cpp里的 GenEnumDeclaration(...) 还只按裸字面量处理,就会在声明导出阶段把这些已经合法的 initializer 继续判成不支持,因此需要补 ExtractDeclgenEnumString(...) 和 ExtractDeclgenEnumNumber(...),让 declgen 能识别同一小部分静态字符串/数值表达式。 ### 测试结果(测试截图直接贴在对应测试项,主干已知问题需明确引入pr/责任人) all test passed #### 功能测试(除仅涉及文本外必测项)[wiki](https://gitee.com/openharmony/arkcompiler_ets_frontend/wikis/代码提交要求及测试验证流程) 1. es2abc测试用例(Debug模式) - [ ] 已通过 - [ ] 不涉及,无需验证 2. Verifier测试 - [ ] 已通过 - [ ] 不涉及,无需验证 3. 64位RK编译 - [ ] 已通过 - [ ] 不涉及,无需验证 4. 编译mac平台sdk - [ ] 已通过 - [ ] 不涉及,无需验证 #### 混淆测试(涉及arkguard改动时必测项)[wiki](https://gitee.com/openharmony/arkcompiler_ets_frontend/wikis/混淆测试验证流程?sort_id=11451209) 1. 单元测试 - [ ] 已通过 - [ ] 不涉及,无需验证 2. Compiler测试套 - [ ] 已通过 - [ ] 不涉及,无需验证 3. TSC extra测试套 - [ ] 已通过 - [ ] 不涉及,无需验证 4. Test262测试套 - [ ] 已通过 - [ ] 不涉及,无需验证 5. Benchmark测试 - [ ] 已通过 - [ ] 不涉及,无需验证 6. 应用自动化测试套 - [ ] 已通过 - [ ] 不涉及,无需验证 7. 是否创建全局变量,若创建全局变量,是否有清空操作 - [ ] 创建了全局变量,且已清空 - [ ] 创建了全局变量,未清空 - [ ] 未创建全局变量 #### 兼容性测试(指令生成、文件格式修改时) 1. 小版本兼容性测试 <!-- 修改导致新abc无法运行在老镜像上时,需新增版本号 --> - [ ] 已增加版本号 - [ ] 已通过 - [ ] 不涉及,无需验证 2. 大版本兼容性测试 <!-- 配置target-api-version时,生成的abc需要能在对应版本运行--> - [ ] 已通过 - [ ] 不涉及,无需验证 3. es2abc版本兼容性测试 <!-- 新版本es2abc编译的老版本API的abc文件,应能被老版本es2abc正常识别和处理--> **说明:如PR涉及版本控制用例的变更,需同步检查修改对其他分支的影响,并确认是否要同步受影响的分支** - [ ] 涉及,变更影响 API/字节码 版本, 需同步修改到其他分支 - [ ] 涉及,变更影响 API/字节码 版本, 无需同步到其他分支 - [ ] 不涉及,变更不涉及 API/字节码 版本 4. 是否涉及词法环境修改 **说明:如PR涉及词法环境修改,需验证对应热重载场景是否兼容** - [ ] 涉及,影响热重载场景,需排查影响 - [ ] 涉及,不影响热重载场景 - [ ] 不涉及 #### 性能测试 (新增语法检查等场景) - [ ] 已通过 - [ ] 不涉及,无需验证 #### 指令/abc格式修改自检,需联系下方邮箱,同步至相关领域 **重要:涉及runtime_core仓abc2program、libpandafile、isa目录下的修改,必须提供一个编译helloworld项目的hap包给对应领域,并联系下方邮箱** - [ ] 涉及,已同步 - [ ] 不涉及 **Email:** wutao185@huawei.com ### 是否已执行L0用例 - [ ] 已验证 - [ ] 不涉及。如不涉及,请写明理由 ### 是否已执行L0用例 - [ ] 已验证 - [ ] 不涉及。如不涉及,请写明理由 See merge request: openharmony/arkcompiler_ets_frontend!11073 | 16 小时前 |
| Add images for readme Issue:I5RWGO Signed-off-by: ctw-ian <chentingwei2@huawei.com> Change-Id: Ic33de8ed703942da01c79a67070b597ec8f67410 | 3 年前 |
| Add AGENTS.md for es2panda Issue: https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/9099 Signed-off-by: zmw <zhongmingwei2@huawei.com> Change-Id: I9417108beac7185cb5e7d4226247ef30e9908cfb | 5 个月前 |
| 禁止使用public_external_deps整改 Issue: https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/10065 Co-Authored-By: Agent Change-Id: I5fa7e76eb20b17a976a17381cee517f52084e8ee Signed-off-by: ElevenDuan <duanshiyi1@huawei.com> | 1 个月前 |
| !11110 merge 20260729_kfl into master Title: Update kfl lists 20260729 Created-by: kuchkovairina Commit-by: kuchkova irina Merged-by: openharmony_ci Description: Title: Update kfl lists 20260729 Description: Update kfl lists Issue: https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/11781 Co-Authored-By: NA Reason: failed test should be added to kfl list, ignored but passes tests should be removed from ignore list Tests: All required pre-merge test passed Results are available in the ggwatcher Signed-off-by: kuchkova irina <kuchkova.irina@huawei-partners.com> See merge request: openharmony/arkcompiler_ets_frontend!11110 | 1 天前 |
| del kfl 0724 Issue: https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/11779 Co-Authored-By: NA Signed-off-by: guan-mingyue <guanmingyue@huawei.com> | 4 天前 |
| 适配Linux arm host openharmony编译 Signed-off-by: wylyw78 <wenyu17@hauwei.com> | 2 年前 |
| fix code and copyright Signed-off-by: wangjunlin <wangjunlin9@huawei.com> Change-Id: I3afe9c002602fd8b9053476419beaf92e95a8acd | 4 年前 |
| add ark ts2abc Signed-off-by: wanyanglan <wanyanglan1@huawei.com> Change-Id: I3f5f1ddb0ff30ce85c8cccace6d78b7030cff2c6 | 4 年前 |
| add homecheck and its dependency arkanalyzer Issue: https://gitee.com/openharmony/arkcompiler_ets_frontend/issues/IC0J1R Signed-off-by: xudan16 <xudan16@huawei.com> Change-Id: Ifd134cf6686b32a49c7c45430da011cfd0d0ef0c | 1 年前 |
| add ets_frontend docs Issue:https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/10305 Co-Authored-By: Agent Signed-off-by: Fouckttt <tianwenkai4@huawei.com> | 1 个月前 |
| gn format Signed-off-by: lijunru <lijunru9@h-partners.com> Change-Id: Ie4ddc8f283483bcde06866b02d4c3051f7730a13 | 10 个月前 |
| add code owner for ets2panda Issue: https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/10039 Description: add code owner for ets2panda Reason: add code owner for ets2panda Tests: only OHOS CI needed Signed-off-by: xingshunxiang <xingshunxiang@huawei.com> | 2 个月前 |
| add ark ts2abc Signed-off-by: wanyanglan <wanyanglan1@huawei.com> Change-Id: I3f5f1ddb0ff30ce85c8cccace6d78b7030cff2c6 | 4 年前 |
| Fix OAT codecheck Issue:https://gitee.com/openharmony/arkcompiler_ets_frontend/issues/I9VSU6 Signed-off-by: huyunhui <huyunhui1@huawei.com> Change-Id: I4fb795a4af910a8216b6a83a712c9dbf835c839c | 2 年前 |
| !9539 merge 1224-trans into master Fix CN–EN mismatch Created-by: li_yue1999 Commit-by: liyue Merged-by: openharmony_ci Description: ### 关联的Issue https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/8680 ### 提交类型 - [ ] 需求 - [x] bugfix ### 需求背景/Description <!-- 仅涉及需求时填写 --> ### 问题现象&&分析/Reason <!-- 仅涉及bugfix时填写 --> 修复中英文不匹配 ### 修改方案/Scheme 修改英文翻译 ### 测试结果(测试截图直接贴在对应测试项,主干已知问题需明确引入pr/责任人) #### 功能测试(除仅涉及文本外必测项)[wiki](https://gitee.com/openharmony/arkcompiler_ets_frontend/wikis/代码提交要求及测试验证流程) 1. es2abc测试用例(Debug模式) - [ ] 已通过 - [x] 不涉及,无需验证 2. Verifier测试 - [ ] 已通过 - [x] 不涉及,无需验证 3. 64位RK编译 - [ ] 已通过 - [x] 不涉及,无需验证 4. 编译mac平台sdk - [ ] 已通过 - [x] 不涉及,无需验证 #### 混淆测试(涉及arkguard改动时必测项)[wiki](https://gitee.com/openharmony/arkcompiler_ets_frontend/wikis/混淆测试验证流程?sort_id=11451209) 1. 单元测试 - [ ] 已通过 - [x] 不涉及,无需验证 2. Compiler测试套 - [ ] 已通过 - [x] 不涉及,无需验证 3. TSC extra测试套 - [ ] 已通过 - [x] 不涉及,无需验证 4. Test262测试套 - [ ] 已通过 - [x] 不涉及,无需验证 5. Benchmark测试 - [ ] 已通过 - [x] 不涉及,无需验证 6. 应用自动化测试套 - [ ] 已通过 - [x] 不涉及,无需验证 7. 是否创建全局变量,若创建全局变量,是否有清空操作 - [ ] 创建了全局变量,且已清空 - [ ] 创建了全局变量,未清空 - [x] 未创建全局变量 #### 兼容性测试(指令生成、文件格式修改时) 1. 小版本兼容性测试 <!-- 修改导致新abc无法运行在老镜像上时,需新增版本号 --> - [ ] 已增加版本号 - [ ] 已通过 - [x] 不涉及,无需验证 2. 大版本兼容性测试 <!-- 配置target-api-version时,生成的abc需要能在对应版本运行--> - [ ] 已通过 - [x] 不涉及,无需验证 3. es2abc版本兼容性测试 <!-- 新版本es2abc编译的老版本API的abc文件,应能被老版本es2abc正常识别和处理--> **说明:如PR涉及版本控制用例的变更,需同步检查修改对其他分支的影响,并确认是否要同步受影响的分支** - [ ] 涉及,变更影响 API/字节码 版本, 需同步修改到其他分支 - [ ] 涉及,变更影响 API/字节码 版本, 无需同步到其他分支 - [x] 不涉及,变更不涉及 API/字节码 版本 4. 是否涉及词法环境修改 **说明:如PR涉及词法环境修改,需验证对应热重载场景是否兼容** - [ ] 涉及,影响热重载场景,需排查影响 - [ ] 涉及,不影响热重载场景 - [x] 不涉及 #### 性能测试 (新增语法检查等场景) - [ ] 已通过 - [x] 不涉及,无需验证 #### 指令/abc格式修改自检,需联系下方邮箱,同步至相关领域 **重要:涉及runtime_core仓abc2program、libpandafile、isa目录下的修改,必须提供一个编译helloworld项目的hap包给对应领域,并联系下方邮箱** - [ ] 涉及,已同步 - [x] 不涉及 **Email:** wutao185@huawei.com ### 是否已执行L0用例 - [ ] 已验证 - [x] 不涉及。如不涉及,请写明理由 ### 是否已执行L0用例 - [ ] 已验证 - [x] 不涉及。如不涉及,请写明理由 See merge request: openharmony/arkcompiler_ets_frontend!9539 | 7 个月前 |
| update docs Issue: https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/8463 Signed-off-by: duyuhan <duyuhan2@huawei.com> Change-Id: I364c021799342693d9513aacdb21af43585d8a92 | 7 个月前 |
| Adapt for independent compilation Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/7459 Signed-off-by: lijunru <lijunru9@h-partners.com> Change-Id: I88e02e25538bd63cd255198f054b47bcbc571f9d | 10 个月前 |
| gn format Signed-off-by: lijunru <lijunru9@h-partners.com> Change-Id: Ie4ddc8f283483bcde06866b02d4c3051f7730a13 | 10 个月前 |
| [新需求]: ohos_hap rectification clean board request Signed-off-by: cuican <cuican23@h-partners.com> | 2 个月前 |
| Revert "test(async): remove waitForCompletion" This reverts commit de216f29eedae4267e59bf57caefba750483b779. Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/11910 Co-Authored-By: Agent Signed-off-by: zhangyu <zhangyu990@huawei.com> | 24 天前 |
| 独立编译仓迁移 1.删掉toolchain目录下的build目录; 2.将build目录迁移到ark_standalone_build代码仓中的build仓中,并对相关的脚本进行修改; 3.修改ark_standalone_build代码仓中的manifest仓中的arkcompiler.xml和openharmony.xml文件; 4.修改arkcompiler_ets_runtime、arkcompiler_toolchain、arkcompiler_ets_frontend、arkcompiler_runtime_core仓中的相关文件; Issue:https://gitee.com/openharmony/arkcompiler_toolchain/issues/IC3RD3?from=project-issue Signed-off-by: dengwenjun <dengwenjun10@huawei.com> | 1 年前 |
| 禁止使用public_external_deps整改 Issue: https://gitcode.com/openharmony/arkcompiler_ets_frontend/issues/10065 Co-Authored-By: Agent Change-Id: I5fa7e76eb20b17a976a17381cee517f52084e8ee Signed-off-by: ElevenDuan <duanshiyi1@huawei.com> | 1 个月前 |