# Function inside function is not defined?

**URL:** <https://discourse.julialang.org/t/function-inside-function-is-not-defined/56297>\
**Category:** General Usage\
**Created:** [March 2, 2021, 1:53am UTC](https://discourse.julialang.org/t/function-inside-function-is-not-defined/56297 "2021-03-02T01:53:55Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![amrods](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/amrods/32/2543_2.png) [@amrods](https://discourse.julialang.org/u/amrods)\
**Post date:** [March 2, 2021, 1:53am UTC](https://discourse.julialang.org/t/function-inside-function-is-not-defined/56297/1 "2021-03-02T01:53:55Z")

</div>

I came across this strange behavior:

```julia
function f(k)
    if k == 1
        g(k) = "k = 1"
    elseif k == 2
        g(k) = "k = 2"
    end
    g(k)
end

f(1) # returns "k = 2"

f(2) # errors ERROR: UndefVarError: g not defined

```

What’s going on here? How can I get around this?

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [March 2, 2021, 2:53am UTC](https://discourse.julialang.org/t/function-inside-function-is-not-defined/56297/2 "2021-03-02T02:53:30Z")

</div>

> [@Confused by behaviour of nested functions](https://discourse.julialang.org/t/confused-by-behaviour-of-nested-functions/20576/2):
>
> Don’t define functions conditionally inside other functions: [disallow methods of local functions in different blocks · Issue #15602 · JuliaLang/julia · GitHub](https://github.com/JuliaLang/julia/issues/15602).

and messages below

---

<div class="post-metadata">

**Author:** ![amrods](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/amrods/32/2543_2.png) [@amrods](https://discourse.julialang.org/u/amrods)\
**Post date:** [March 2, 2021, 3:02am UTC](https://discourse.julialang.org/t/function-inside-function-is-not-defined/56297/3 "2021-03-02T03:02:21Z")

</div>

Wow, good find! Seems it’s a pretty old issue.
