fix return value error

This commit is contained in:
2025-10-03 19:11:11 +05:30
parent 6d5d6345e2
commit 3f061750cf
2 changed files with 7 additions and 5 deletions

View File

@ -385,7 +385,7 @@ def process_stmt(
)
elif isinstance(stmt, ast.Return):
if stmt.value is None:
builder.ret(ir.Constant(ir.IntType(32), 0))
builder.ret(ir.Constant(ir.IntType(64), 0))
did_return = True
elif (
isinstance(stmt.value, ast.Call)
@ -582,7 +582,7 @@ def process_func_body(
)
if not did_return:
builder.ret(ir.Constant(ir.IntType(32), 0))
builder.ret(ir.Constant(ir.IntType(64), 0))
def process_bpf_chunk(func_node, module, return_type, map_sym_tab, structs_sym_tab):

View File

@ -1,4 +1,6 @@
from pythonbpf import compile, bpf, section, bpfglobal
import logging
from pythonbpf import compile, bpf, section, bpfglobal, compile_to_ir
from ctypes import c_void_p, c_int64
@ -14,5 +16,5 @@ def sometag(ctx: c_void_p) -> c_int64:
def LICENSE() -> str:
return "GPL"
compile()
compile_to_ir("var_rval.py", "var_rval.ll")
compile(loglevel=logging.INFO)