zhangxun
|
9d21eeace9
|
fix: 修正 CmpJumpGenerator 部分逻辑,向新 VMOpCode 对齐
|
2025-07-10 17:44:28 +08:00 |
|
zhangxun
|
61a2fda6fa
|
feat: 增加 IR 对类型转换指令的支持
|
2025-07-10 17:32:40 +08:00 |
|
zhangxun
|
e66a5a3078
|
refactor: 重复的类型提升逻辑提取到 TypePromoteUtils 工具类
|
2025-07-10 17:31:44 +08:00 |
|
zhangxun
|
609e380664
|
refactor: 同步 VMOpCode 指令到 OpHelper 中
|
2025-07-10 17:13:16 +08:00 |
|
zhangxun
|
e0fda2e104
|
Merge remote-tracking branch 'refs/remotes/origin/dev' into feature/full-type-conversion-support
|
2025-07-10 16:53:02 +08:00 |
|
zhangxun
|
9cfd3ba29a
|
docs: 补充 byte8 转换指令的文档
|
2025-07-10 16:26:06 +08:00 |
|
zhangxun
|
f6780194a5
|
docs: 补充 short16 转换指令的文档
|
2025-07-10 16:19:27 +08:00 |
|
zhangxun
|
c5810bce7b
|
docs: 修正 double64 转换指令的文档
|
2025-07-10 16:11:41 +08:00 |
|
zhangxun
|
cd61fdf295
|
docs: 补充 float32 转换指令的文档
|
2025-07-10 16:10:35 +08:00 |
|
zhangxun
|
efc88b33e3
|
docs: 补充 double64 转换指令的文档
|
2025-07-10 16:08:21 +08:00 |
|
zhangxun
|
9026b2deb3
|
docs: 补充 long64 转换指令的文档
|
2025-07-10 16:04:35 +08:00 |
|
zhangxun
|
bbb908428e
|
Merge remote-tracking branch 'origin/feature/full-type-conversion-support' into feature/full-type-conversion-support
|
2025-07-10 15:53:48 +08:00 |
|
|
|
565cc79329
|
!34 fix: 空函数不生成代码的问题
Merge pull request !34 from zhangxun/bugfix/empty-main-function
|
2025-07-10 07:39:33 +00:00 |
|
zhangxun
|
9f6a1edccb
|
fix: 空函数不生成代码的问题
|
2025-07-10 15:00:41 +08:00 |
|
|
|
d9b3593e9b
|
!33 fix: 在非 void 函数中强制使用 return 语句
Merge pull request !33 from Luke/bugfix/missing-return-check
|
2025-07-10 04:19:39 +00:00 |
|
|
|
34247fb70d
|
chore: 移动 Demo 文件到 Demo文件夹
|
2025-07-10 11:46:07 +08:00 |
|
|
|
7f074cb798
|
test: 更新 Bug1 测试用例
|
2025-07-10 11:45:37 +08:00 |
|
|
|
e1f36d9689
|
chore: 更新 Demo 运行配置路径
- 修改了多个 Demo 运行配置文件中的程序参数,将示例代码路径从根目录下的 playground 子目录移动到 playground/Demo 子目录- 新增 Demo12 运行配置文件,使用更新后的路径格式
|
2025-07-10 11:45:05 +08:00 |
|
|
|
230d0d21a5
|
Merge remote-tracking branch 'gitee/bugfix/missing-return-check' into bugfix/missing-return-check
|
2025-07-10 11:34:41 +08:00 |
|
|
|
43aa055d7d
|
test: 添加 Demo12 主程序文件
- 新建 Main.snow 文件,实现了一个简单的主程序
- 包含两个函数:main 和 foo
- main函数中调用了 foo 函数- foo 函数中包含一个无效的 if 语句,始终返回 0
|
2025-07-10 11:34:31 +08:00 |
|
zhangxun
|
4f63f88b40
|
feat: 补充基本数值类型转换指令
|
2025-07-10 03:14:58 +00:00 |
|
zhangxun
|
f382b2bc54
|
style: 统一代码实现
|
2025-07-10 03:14:58 +00:00 |
|
zhangxun
|
872865268b
|
docs: 修改拼写错误
|
2025-07-10 03:14:58 +00:00 |
|
zhangxun
|
9c69c1f37b
|
feat: 支持 long64 转 byte8、short16
|
2025-07-10 03:14:58 +00:00 |
|
zhangxun
|
85fae69c97
|
feat: 支持 float32 转 byte8、short16
|
2025-07-10 03:14:58 +00:00 |
|
zhangxun
|
4595583ca4
|
feat: 支持 double64 转 byte8、short16
|
2025-07-10 03:14:58 +00:00 |
|
zhangxun
|
9e2eb6731f
|
feat: 支持 short16 转 byte8、long64、float32、double64
|
2025-07-10 03:14:58 +00:00 |
|
zhangxun
|
2289cf3ee4
|
feat: 支持 byte8 转 short16、long64、float32、double64
|
2025-07-10 03:14:58 +00:00 |
|
|
|
c83a584795
|
fix: 在非 void 函数中强制使用 return 语句
在 FunctionChecker 中添加一个检查,以确保具有非 void 返回类型的功能
类型必须至少包含一个返回节点。否则将引发语义错误。
|
2025-07-10 03:14:42 +00:00 |
|
zhangxun
|
2a25abcf03
|
refactor: OpHelper.java
|
2025-07-10 03:14:42 +00:00 |
|
|
|
45eed2aefc
|
refactor: 重构 AST节点中的位置信息表示方式
- 引入 NodeContext 类统一表示节点的上下文信息(行号、列号、文件名)
- 修改相关 AST 节点的构造函数,使用 NodeContext 替代单独的行号、列号和文件名参数
- 更新解析器代码,创建 NodeContext 实例以传递给 AST节点
- 此重构简化了 AST 节点的参数列表,提高了代码的可维护性和可读性
|
2025-07-10 03:14:42 +00:00 |
|
zhangxun
|
65b12ddd4c
|
refactor: OpHelper.java
|
2025-07-10 03:14:10 +00:00 |
|
|
|
aefa9e2dff
|
refactor: 重构 AST节点中的位置信息表示方式
- 引入 NodeContext 类统一表示节点的上下文信息(行号、列号、文件名)
- 修改相关 AST 节点的构造函数,使用 NodeContext 替代单独的行号、列号和文件名参数
- 更新解析器代码,创建 NodeContext 实例以传递给 AST节点
- 此重构简化了 AST 节点的参数列表,提高了代码的可维护性和可读性
|
2025-07-10 03:14:10 +00:00 |
|
|
|
ae0baf3e50
|
docs: 添加项目声明文件并更新 README
- 新增 NOTICE 文件,包含项目版权、许可信息和贡献者致谢
- 在 README.md 中添加项目仓库地址
v0.4.1
|
2025-07-10 10:55:46 +08:00 |
|
|
|
439b2fbc1e
|
update LICENSE.
Signed-off-by: Luke <luke.k.xu@hotmail.com>
|
2025-07-10 02:47:46 +00:00 |
|
|
|
f4d96cfa53
|
fix: 在非 void 函数中强制使用 return 语句
在 FunctionChecker 中添加一个检查,以确保具有非 void 返回类型的功能
类型必须至少包含一个返回节点。否则将引发语义错误。
|
2025-07-09 23:59:13 +08:00 |
|
zhangxun
|
fabde0026f
|
feat: 补充基本数值类型转换指令
|
2025-07-08 20:19:45 +08:00 |
|
|
|
50c778b9b1
|
!31 refactor: OpHelper.java
Merge pull request !31 from zhangxun/feature/optimize-redundant-code
|
2025-07-08 08:52:59 +00:00 |
|
|
|
47b3e994d1
|
!30 refactor: 重构 AST节点中的位置信息表示方式
Merge pull request !30 from Luke/feature/unify-ast-location
|
2025-07-08 06:25:03 +00:00 |
|
|
|
840ac25e8a
|
refactor: 重构 AST节点中的位置信息表示方式
- 引入 NodeContext 类统一表示节点的上下文信息(行号、列号、文件名)
- 修改相关 AST 节点的构造函数,使用 NodeContext 替代单独的行号、列号和文件名参数
- 更新解析器代码,创建 NodeContext 实例以传递给 AST节点
- 此重构简化了 AST 节点的参数列表,提高了代码的可维护性和可读性
|
2025-07-08 12:39:15 +08:00 |
|
|
|
84a6b2701c
|
!25 fix: AOT 编译后无法定位语义错误
Merge pull request !25 from zhangxun/bugfix/aot-semantic-error-unknown-location
|
2025-07-08 02:35:36 +00:00 |
|
|
|
46e913a37b
|
Merge branch 'dev' into bugfix/aot-semantic-error-unknown-location
|
2025-07-07 11:16:12 +08:00 |
|
|
|
53fafabb1a
|
!24 bug: 修复编译死循环
Merge pull request !24 from Luke/bugfix/parser-endless-loop
|
2025-07-07 03:15:06 +00:00 |
|
|
|
506bf193d5
|
chore: 修改IDEA配置让.water输出到target目录后不污染根目录
|
2025-07-07 00:26:36 +08:00 |
|
|
|
0ea8cb352d
|
refactor: 重构数字字面量扫描逻辑
- 优化了 NumberTokenScanner 类的代码结构
- 改进了数字字面量的扫描逻辑,包括整数和小数部分
- 调整了后缀和非法字符的检查策略
- 优化了错误处理和异常抛出的逻辑
- 移除了未使用的代码和不必要的注释
|
2025-07-07 00:02:31 +08:00 |
|
|
|
cb208bb8af
|
test: 修改为最新测试代码
|
2025-07-06 23:57:58 +08:00 |
|
|
|
e11d519627
|
refactor: 重构语法分析模块并优化错误处理机制
- 优化了 ExpressionStatementParser、FlexibleSectionParser 和 JSONParser 的代码结构
- 改进了模块解析器 (ModuleParser) 的实现
- 重构了语法异常 (ParseException) 类,增加了错误位置信息
- 新增 ParseError 类用于收集和展示语法错误信息
- 改进了同步机制以更好地恢复解析过程
|
2025-07-05 17:02:45 +08:00 |
|
|
|
e33f6b0ce2
|
fix: 修复数字后空格后接上非法后缀进入死循环的错误
|
2025-07-05 14:20:43 +08:00 |
|
|
|
00afda56bb
|
!26 fix: CleanTask 将 build 目录删除导致无法将字节码写入目标文件
Merge pull request !26 from zhangxun/bugfix/cli-clean-and-compile-run
|
2025-07-05 02:55:17 +00:00 |
|
zhangxun
|
699bc2721e
|
docs: 优化方法文档的主描述部分,以更好地显示参数名
|
2025-07-05 10:41:21 +08:00 |
|