From f074d766e50bba8ca2b93decad97387a080d4085 Mon Sep 17 00:00:00 2001 From: Alexander Medvednikov Date: Sun, 13 Sep 2020 03:06:16 +0200 Subject: [PATCH] ci: disable gitly autofree build for now --- .github/workflows/ci.yml | 2 +- vlib/v/gen/fn.v | 1 + vlib/v/tests/valgrind/1.strings_and_arrays.v | 11 ++++++++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index aeceb2f1d2..db01f13873 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -475,7 +475,7 @@ jobs: git clone --depth 1 https://github.com/vlang/gitly cd gitly ../v . - ../v -autofree . +# ../v -autofree . cd .. # TODO: ACTIVATE THIS AFTER MERGE diff --git a/vlib/v/gen/fn.v b/vlib/v/gen/fn.v index 5cf9c5a6f7..823b6eff3a 100644 --- a/vlib/v/gen/fn.v +++ b/vlib/v/gen/fn.v @@ -533,6 +533,7 @@ fn (mut g Gen) fn_call(node ast.CallExpr) { // `foo()` => `foo_int()` name += '_' + g.typ(node.generic_type) } + // g.generate_tmp_autofree_arg_vars() // Create a temporary var for each argument in order to free it (only if it's a complex expression, // like `foo(get_string())` or `foo(a + b)` mut free_tmp_arg_vars := g.autofree && g.pref.experimental && !g.is_builtin_mod && diff --git a/vlib/v/tests/valgrind/1.strings_and_arrays.v b/vlib/v/tests/valgrind/1.strings_and_arrays.v index e580a36bd3..ccd389f13d 100644 --- a/vlib/v/tests/valgrind/1.strings_and_arrays.v +++ b/vlib/v/tests/valgrind/1.strings_and_arrays.v @@ -71,12 +71,21 @@ fn opt(s string) ?int { fn optional_str() { q := 'select' s := 'x' + // optional fn args must be freed pos2 := opt('query:$q') or { // pos := s.index('query: $q') or { println('exiting') return } - println(pos2) + println(pos2 + 1) + // optional method args must be freed + /* + pos := s.index('query: $q') or { + println('exiting') + return + } + println(pos + 1) + */ } fn main() {