neo-go/pkg/compiler
Evgenii Stratonikov 6701e8cda0 compiler: allow to use local variables in init()
Because body of multiple `init()` functions constitute single
method in contract, we initialize slot with maximum amount of
locals encounterered in any of `init()` functions and clear them
before emitting body of each instance of `init()`.
2020-10-06 19:08:32 +03:00
..
testdata compiler: allow to split main package across multiple files 2020-08-11 11:12:55 +03:00
analysis.go compiler: allow to use local variables in init() 2020-10-06 19:08:32 +03:00
assign_test.go compiler: allow to use += on strings 2020-08-24 09:44:44 +03:00
binary_expr_test.go compiler: make use of extended JMP* opcodes 2020-08-24 11:19:54 +03:00
byte_conversion_test.go compiler: allow to convert string constants to []byte 2020-01-27 15:29:52 +03:00
codegen.go compiler: allow to use local variables in init() 2020-10-06 19:08:32 +03:00
codegen_test.go compiler: allow to use += on strings 2020-08-24 09:44:44 +03:00
compiler.go compiler: provide namespace for events names 2020-08-13 10:44:46 +03:00
compiler_test.go compiler: generate methods names with lowercased first letter 2020-08-13 13:28:20 +03:00
constant_test.go compiler: support iota 2020-08-25 10:22:58 +03:00
convert_test.go compiler: convert to ByteArray for string variables 2020-06-24 18:59:36 +03:00
debug.go compiler: extend manifest generation with custom types 2020-09-09 13:06:44 +03:00
debug_test.go compiler: extend manifest generation with custom types 2020-09-09 13:06:44 +03:00
defer_test.go compiler: handle void call to recover() 2020-09-02 15:20:43 +03:00
for_test.go compiler: allow to use type conversion in range 2020-09-02 15:35:20 +03:00
func_scope.go compiler: allow to use local variables in init() 2020-10-06 19:08:32 +03:00
function_call_test.go compiler: drop unused call results 2020-08-24 19:34:51 +03:00
global_test.go compiler: do not allocate slotes for unused "_" vars 2020-09-06 15:27:46 +03:00
if_test.go compiler: allow init statement in if 2020-08-27 10:28:50 +03:00
import_test.go vm: make PUSH0 emit Integer 2020-05-22 14:16:32 +03:00
init_test.go compiler: allow to use local variables in init() 2020-10-06 19:08:32 +03:00
interop_test.go vm: make (*Context).IP() return instruction pointer 2020-08-21 08:44:32 +03:00
jumps_test.go compiler: process last instructin in writeJumps 2020-08-21 09:43:05 +03:00
lambda_test.go compiler: support calling function literals 2020-08-27 10:28:50 +03:00
limit_test.go compiler: emit integers correctly 2020-01-28 16:39:19 +03:00
map_test.go compiler: support delete() builtin 2020-09-06 15:49:41 +03:00
nilcheck_test.go compiler: support nil checks 2020-06-24 10:43:58 +03:00
numeric_test.go compiler: move tests from vm/tests 2019-12-23 17:05:34 +03:00
panic_test.go compiler: do not log panic message 2020-08-27 10:28:50 +03:00
pointer_test.go compiler: copy structs when passing as arguments 2020-08-05 13:14:38 +03:00
return_test.go compiler: support named returns 2020-05-06 18:22:52 +03:00
slice_test.go compiler: process literals in analyzeVoidCalls 2020-09-25 15:34:49 +03:00
struct_test.go compiler: process literals in analyzeVoidCalls 2020-09-25 15:34:49 +03:00
switch_test.go compiler: fix a bug with type conversion in switch 2020-09-02 14:48:19 +03:00
syscall.go interop: return struct pointers where needed 2020-09-09 13:10:04 +03:00
syscall_test.go *: make Notify interop accept event name 2020-07-20 13:33:32 +03:00
type_test.go compiler: support non-struct methods 2020-05-19 16:40:26 +03:00
types.go compiler: support make() 2020-08-25 08:53:28 +03:00
util_test.go core: add VM into interop context 2020-08-07 16:15:24 +03:00
vars.go compiler: manage variables in a separate varScope struct 2020-06-30 10:31:51 +03:00
verify_test.go core: replace interop names with named constants 2020-08-14 14:21:54 +03:00
vm_test.go compiler: drop unused call results 2020-08-24 19:34:51 +03:00