> cargo run --features debug examples/helloworld.er
compiler\erg_compiler\compile.rs:160: [DEBUG] the compiling process has started.
compiler\erg_parser\parse.rs:325: [DEBUG] the parsing process has started.
compiler\erg_parser\parse.rs:326: token stream: [Symbol print!, StrLit "Hello, world!", Newline \n, Symbol print!, StrLit "こんにちは、世界!", Newline \n, Symbol print!, StrLit "Γειά σου Κόσμε!", Newline \n, Symbol print!, StrLit "!مرحبا بالعالم", Newline \n, Newline \n, Symbol greeting, Equal =, StrLit "Hello", Newline \n, Symbol print!, StrLit "{greeting}, world!", Newline \n, EOF ]
compiler\erg_parser\parse.rs:358: [DEBUG] entered try_reduce_module, cur: Symbol print!
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: Symbol print!
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: Symbol print!
compiler\erg_parser\parse.rs:1433: [DEBUG] entered try_reduce_call_or_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:604: [DEBUG] entered try_reduce_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:1068: [DEBUG] entered opt_reduce_args, cur: StrLit "Hello, world!"
compiler\erg_parser\parse.rs:1097: [DEBUG] entered try_reduce_args, cur: StrLit "Hello, world!"
compiler\erg_parser\parse.rs:1195: [DEBUG] entered try_reduce_arg, cur: StrLit "Hello, world!"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: StrLit "Hello, world!"
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: StrLit "Hello, world!"
compiler\erg_parser\parse.rs:1493: [DEBUG] entered try_reduce_lit, cur: StrLit "Hello, world!"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: Symbol print!
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: Symbol print!
compiler\erg_parser\parse.rs:1433: [DEBUG] entered try_reduce_call_or_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:604: [DEBUG] entered try_reduce_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:1068: [DEBUG] entered opt_reduce_args, cur: StrLit "こんにちは、世界!"
compiler\erg_parser\parse.rs:1097: [DEBUG] entered try_reduce_args, cur: StrLit "こんにちは、世界!"
compiler\erg_parser\parse.rs:1195: [DEBUG] entered try_reduce_arg, cur: StrLit "こんにちは、世界!"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: StrLit "こんにちは、世界!"
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: StrLit "こんにちは、世界!"
compiler\erg_parser\parse.rs:1493: [DEBUG] entered try_reduce_lit, cur: StrLit "こんにちは、世界!"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: Symbol print!
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: Symbol print!
compiler\erg_parser\parse.rs:1433: [DEBUG] entered try_reduce_call_or_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:604: [DEBUG] entered try_reduce_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:1068: [DEBUG] entered opt_reduce_args, cur: StrLit "Γειά σου Κόσμε!"
compiler\erg_parser\parse.rs:1097: [DEBUG] entered try_reduce_args, cur: StrLit "Γειά σου Κόσμε!"
compiler\erg_parser\parse.rs:1195: [DEBUG] entered try_reduce_arg, cur: StrLit "Γειά σου Κόσμε!"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: StrLit "Γειά σου Κόσμε!"
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: StrLit "Γειά σου Κόσμε!"
compiler\erg_parser\parse.rs:1493: [DEBUG] entered try_reduce_lit, cur: StrLit "Γειά σου Κόσμε!"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: Symbol print!
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: Symbol print!
compiler\erg_parser\parse.rs:1433: [DEBUG] entered try_reduce_call_or_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:604: [DEBUG] entered try_reduce_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:1068: [DEBUG] entered opt_reduce_args, cur: StrLit "!مرحبا بالعالم"
compiler\erg_parser\parse.rs:1097: [DEBUG] entered try_reduce_args, cur: StrLit "!مرحبا بالعالم"
compiler\erg_parser\parse.rs:1195: [DEBUG] entered try_reduce_arg, cur: StrLit "!مرحبا بالعالم"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: StrLit "!مرحبا بالعالم"
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: StrLit "!مرحبا بالعالم"
compiler\erg_parser\parse.rs:1493: [DEBUG] entered try_reduce_lit, cur: StrLit "!مرحبا بالعالم"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: Symbol greeting
compiler\erg_parser\parse.rs:472: [DEBUG] entered try_reduce_decl, cur: Symbol greeting
compiler\erg_parser\parse.rs:1484: [DEBUG] entered try_reduce_name, cur: Symbol greeting
compiler\erg_parser\parse.rs:684: [DEBUG] entered opt_reduce_params, cur: Equal =
compiler\erg_parser\parse.rs:386: [DEBUG] entered try_reduce_block, cur: StrLit "Hello"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: StrLit "Hello"
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: StrLit "Hello"
compiler\erg_parser\parse.rs:1493: [DEBUG] entered try_reduce_lit, cur: StrLit "Hello"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: Symbol print!
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: Symbol print!
compiler\erg_parser\parse.rs:1433: [DEBUG] entered try_reduce_call_or_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:604: [DEBUG] entered try_reduce_acc, cur: Symbol print!
compiler\erg_parser\parse.rs:1068: [DEBUG] entered opt_reduce_args, cur: StrLit "{greeting}, world!"
compiler\erg_parser\parse.rs:1097: [DEBUG] entered try_reduce_args, cur: StrLit "{greeting}, world!"
compiler\erg_parser\parse.rs:1195: [DEBUG] entered try_reduce_arg, cur: StrLit "{greeting}, world!"
compiler\erg_parser\parse.rs:1254: [DEBUG] entered try_reduce_expr, cur: StrLit "{greeting}, world!"
compiler\erg_parser\parse.rs:1397: [DEBUG] entered try_reduce_lhs, cur: StrLit "{greeting}, world!"
compiler\erg_parser\parse.rs:1493: [DEBUG] entered try_reduce_lit, cur: StrLit "{greeting}, world!"
compiler\erg_parser\parse.rs:340: [DEBUG] the parsing process has completed.
compiler\erg_parser\parse.rs:341: AST:
(print!):
StrLit "Hello, world!"
(print!):
StrLit "こんにちは、世界!"
(print!):
StrLit "Γειά σου Κόσμε!"
(print!):
StrLit "!مرحبا بالعالم"
greeting =
StrLit "Hello"
(print!):
StrLit "{greeting}, world!"
compiler\erg_parser\parse.rs:342: [DEBUG] the desugaring process has started.
compiler\erg_parser\parse.rs:345: AST (desugared):
(print!):
StrLit "Hello, world!"
(print!):
StrLit "こんにちは、世界!"
(print!):
StrLit "Γειά σου Κόσμε!"
(print!):
StrLit "!مرحبا بالعالم"
greeting =
StrLit "Hello"
(print!):
StrLit "{greeting}, world!"
compiler\erg_parser\parse.rs:346: [DEBUG] the desugaring process has completed.
compiler\erg_compiler\lower.rs:387: [DEBUG] the type-checking process has started.
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:163: [DEBUG] entered lower_call(print!(...))
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:110: [DEBUG] entered lower_acc(print!)
compiler\erg_compiler\context.rs:3052: Found:
callee: print!
found: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3054: Instantiated:
instance: (objs: ...Ref(Obj)) => None
pos_args: (StrLit "Hello, world!")
kw_args: ()
compiler\erg_compiler\context.rs:3060: Substituted:
instance: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3062: Derefed:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3064: Params Evaluated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3066: Derefed (2):
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3068: Propagated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:163: [DEBUG] entered lower_call(print!(...))
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:110: [DEBUG] entered lower_acc(print!)
compiler\erg_compiler\context.rs:3052: Found:
callee: print!
found: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3054: Instantiated:
instance: (objs: ...Ref(Obj)) => None
pos_args: (StrLit "こんにちは、世界!")
kw_args: ()
compiler\erg_compiler\context.rs:3060: Substituted:
instance: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3062: Derefed:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3064: Params Evaluated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3066: Derefed (2):
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3068: Propagated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:163: [DEBUG] entered lower_call(print!(...))
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:110: [DEBUG] entered lower_acc(print!)
compiler\erg_compiler\context.rs:3052: Found:
callee: print!
found: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3054: Instantiated:
instance: (objs: ...Ref(Obj)) => None
pos_args: (StrLit "Γειά σου Κόσμε!")
kw_args: ()
compiler\erg_compiler\context.rs:3060: Substituted:
instance: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3062: Derefed:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3064: Params Evaluated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3066: Derefed (2):
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3068: Propagated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:163: [DEBUG] entered lower_call(print!(...))
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:110: [DEBUG] entered lower_acc(print!)
compiler\erg_compiler\context.rs:3052: Found:
callee: print!
found: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3054: Instantiated:
instance: (objs: ...Ref(Obj)) => None
pos_args: (StrLit "!مرحبا بالعالم")
kw_args: ()
compiler\erg_compiler\context.rs:3060: Substituted:
instance: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3062: Derefed:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3064: Params Evaluated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3066: Derefed (2):
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3068: Propagated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:255: [DEBUG] entered lower_def(greeting)
compiler\erg_compiler\context.rs:3942: grow: current namespace: <module>::greeting
compiler\erg_compiler\lower.rs:273: [DEBUG] entered lower_var_def(greeting)
compiler\erg_compiler\lower.rs:377: [DEBUG] entered lower_block
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\context.rs:3961: pop: current namespace: <module>
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:163: [DEBUG] entered lower_call(print!(...))
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:362: [DEBUG] entered lower_expr
compiler\erg_compiler\lower.rs:110: [DEBUG] entered lower_acc(print!)
compiler\erg_compiler\context.rs:3052: Found:
callee: print!
found: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3054: Instantiated:
instance: (objs: ...Ref(Obj)) => None
pos_args: (StrLit "{greeting}, world!")
kw_args: ()
compiler\erg_compiler\context.rs:3060: Substituted:
instance: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3062: Derefed:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3064: Params Evaluated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3066: Derefed (2):
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\context.rs:3068: Propagated:
res: (objs: ...Ref(Obj)) => None
compiler\erg_compiler\lower.rs:405: [DEBUG] lower() has completed, found errors: 0
compiler\erg_compiler\lower.rs:411: HIR:
(print!): (objs: ...Ref(Obj)) => None:
StrLit "Hello, world!"
(print!): (objs: ...Ref(Obj)) => None:
StrLit "こんにちは、世界!"
(print!): (objs: ...Ref(Obj)) => None:
StrLit "Γειά σου Κόσμε!"
(print!): (objs: ...Ref(Obj)) => None:
StrLit "!مرحبا بالعالم"
greeting (: {%v16: Str | %v16 == "Hello"}) =
StrLit "Hello"
(print!): (objs: ...Ref(Obj)) => None:
StrLit "{greeting}, world!"
compiler\erg_compiler\lower.rs:412: [DEBUG] the type-checking process has completed.
compiler\erg_compiler\effectcheck.rs:43: [DEBUG] the side-effect checking process has started.
compiler\erg_compiler\effectcheck.rs:69: [DEBUG] the side-effect checking process has completed, found errors: 0
compiler\erg_compiler\ownercheck.rs:59: [DEBUG] the ownership checking process has started.
compiler\erg_compiler\ownercheck.rs:66: [DEBUG] the ownership checking process has completed, found errors: 0
compiler\erg_compiler\codegen.rs:1217: [DEBUG] the code-generating process has started.
compiler\erg_compiler\codegen.rs:1280: [DEBUG] the code-generating process has completed.
compiler\erg_compiler\compile.rs:195: code object:
Disassembly of <code object <module> at 0xfe1c6fd6b8, file "examples/helloworld.er", line 1>:
Name: <module>
FileName: examples/helloworld.er
Argument count: 0
Positional-only arguments: 0
Kw-only arguments: 0
Number of locals: 0
Stack size: 2
Flags: NoFree
Constants:
0: "Hello, world!"
1: "こんにちは、世界!"
2: "Γειά σου Κόσμε!"
3: "!مرحبا بالعالم"
4: "Hello"
5: "{greeting}, world!"
Names:
0: print
1: print
2: print
3: print
4: greeting
5: print
lnotab: [8, 1, 8, 1, 8, 1, 8, 2, 4, 1]
1:
0 LOAD_NAME 0 (print)
2 LOAD_CONST 0 ("Hello, world!")
4 CALL_FUNCTION 1
6 POP_TOP
2:
8 LOAD_NAME 1 (print)
10 LOAD_CONST 1 ("こんにちは、世界!")
12 CALL_FUNCTION 1
14 POP_TOP
3:
16 LOAD_NAME 2 (print)
18 LOAD_CONST 2 ("Γειά σου Κόσμε!")
20 CALL_FUNCTION 1
22 POP_TOP
4:
24 LOAD_NAME 3 (print)
26 LOAD_CONST 3 ("!مرحبا بالعالم")
28 CALL_FUNCTION 1
30 POP_TOP
6:
32 LOAD_CONST 4 ("Hello")
34 STORE_NAME 4 (greeting)
7:
36 LOAD_NAME 5 (print)
38 LOAD_CONST 5 ("{greeting}, world!")
40 CALL_FUNCTION 1
42 RETURN_VALUE
compiler\erg_compiler\compile.rs:196: [DEBUG] the compiling process has completed, found errors: 0
thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', src\dummy.rs:88:50
stack backtrace:
0: std::panicking::begin_panic_handler
at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\std\src\panicking.rs:584
1: core::panicking::panic_fmt
at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\core\src\panicking.rs:142
2: core::panicking::panic
at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f/library\core\src\panicking.rs:48
3: enum$<core::option::Option<ref_mut$<std::net::tcp::TcpStream> >, 1, 18446744073709551615, Some>::unwrap<ref_mut$<std::net::tcp::TcpStream> >
at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\core\src\option.rs:775
4: erg::dummy::impl$0::eval
at .\src\dummy.rs:88
5: erg_common::traits::Runnable::run<erg::dummy::DummyVM>
at .\compiler\erg_common\traits.rs:333
6: erg::main
at .\src\main.rs:31
7: core::ops::function::FnOnce::call_once<void (*)(),tuple$<> >
at /rustc/4b91a6ea7258a947e59c6522cd5898e7c0a6a88f\library\core\src\ops\function.rs:248
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
error: process didn't exit successfully: `target\debug\erg.exe examples/helloworld.er` (exit code: 101)