8000 Bug or expected behavior? · Issue #297 · edubart/nelua-lang · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Bug or expected behavior? #297
Open
Open
@stefanos82

Description

@stefanos82

@edubart I have the following code which obviously it's wrong; it throws Lua error which means it affects the backend compiler engine somehow.

local MyRec = @record{x: integer, y: integer}

function MyRec:__call(a, b): integer
  return a + b
end

local mytable = @record{}
##[[
setmetatable(mytable, MyRec)
]]
print((@MyRec){5, 3}) -- Output: 8

What should be the output, even if we provide it a problematic code?

Should it have thrown these error messages anyway or is it a parsing issue somewhere in the backend?

/usr/local/bin/nelua-lua: /usr/local/lib/nelua/lualib/nelua/cgenerator.lua:1214: attempt to call a nil value (method 'must_declare_at_runtime')
stack traceback:
        /usr/local/lib/nelua/lualib/nelua/cgenerator.lua:1214: in local 'visit'
        /usr/local/lib/nelua/lualib/nelua/visitorcontext.lua:171: in function 'nelua.visitorcontext.traverse_node'
        /usr/local/lib/nelua/lualib/nelua/emitter.lua:160: in function 'nelua.emitter.add_value'
        /usr/local/lib/nelua/lualib/nelua/emitter.lua:114: in function 'nelua.emitter.add_list'
        /usr/local/lib/nelua/lualib/nelua/cgenerator.lua:812: in local 'visit'
        /usr/local/lib/nelua/lualib/nelua/visitorcontext.lua:171: in function 'nelua.visitorcontext.traverse_node'
        /usr/local/lib/nelua/lualib/nelua/cgenerator.lua:1709: in function 'nelua.cgenerator.emit_nelua_main'
        /usr/local/lib/nelua/lualib/nelua/cgenerator.lua:1739: in function 'nelua.cgenerator.emit_entrypoint'
        /usr/local/lib/nelua/lualib/nelua/cgenerator.lua:1761: in function 'nelua.cgenerator.generate'
        /usr/local/lib/nelua/lualib/nelua/runner.lua:206: in upvalue 'run'
        /usr/local/lib/nelua/lualib/nelua/runner.lua:262: in function </usr/local/lib/nelua/lualib/nelua/runner.lua:261>
        [C]: in function 'xpcall'
        /usr/local/lib/nelua/lualib/nelua/utils/except.lua:135: in function 'nelua.utils.except.try'
        /usr/local/lib/nelua/lualib/nelua/runner.lua:261: in function 'nelua.runner.run'
        /usr/local/lib/nelua/lualib/nelua.lua:4: in main chunk
        [C]: in function 'require'
        [C]: in ?
stack traceback:
        [C]: in function 'error'
        /usr/local/lib/nelua/lualib/nelua/utils/except.lua:108: in function 'nelua.utils.except.reraise'
        /usr/local/lib/nelua/lualib/nelua/utils/except.lua:146: in function 'nelua.utils.except.try'
        /usr/local/lib/nelua/lualib/nelua/runner.lua:261: in function 'nelua.runner.run'
        /usr/local/lib/nelua/lualib/nelua.lua:4: in main chunk
        [C]: in function 'require'
        [C]: in ?

shell returned 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0