Skip to content

🐛 Bug Report: 生成的函数路径错误 #42

@771835

Description

@771835

描述

生成的数据包函数调用存在错误

复现步骤

  1. 创建以下 MCFPP 代码:
# example.mcfpp
func foo() -> int{
    /say hello world
}

func hello {
    foo();
}
  1. 编译生成对应的函数文件

期望行为

生成如下指令

data modify storage mcfpp:system stack_frame prepend value {}
#expression: foo()
#foo()
#[Function mcfpp.:foo_0] Store vars into the Stack
data modify storage mcfpp:system stack_frame prepend value {}
function mcfpp:foo
data remove storage mcfpp:system stack_frame[0]
#[Function mcfpp.:foo_0] Take vars out of the Stack
#expression end: foo()
data remove storage mcfpp:system stack_frame[0]

实际行为

生成的函数调用为function mcfpp.:foo_0
命名空间与函数名处出现一个.
且,生成的foo函数为datapacks\example\data\mcfpp\function\foo.mcfunction
但是调用却为foo_0

data modify storage mcfpp:system stack_frame prepend value {}
#expression: foo()
#foo()
#[Function mcfpp.:foo_0] Store vars into the Stack
data modify storage mcfpp:system stack_frame prepend value {}
function mcfpp.:foo_0
data remove storage mcfpp:system stack_frame[0]
#[Function mcfpp.:foo_0] Take vars out of the Stack
#expression end: foo()
data remove storage mcfpp:system stack_frame[0]

42

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions