Debugging with @enter returns different return value of function

If the minimal example below is executed with @enter for debugging, it returns a different value compared when the function is invoked naturally.
Is there a reason for it?

function foo(s::String)
    sp = parse(s)
    if isa(sp,Symbol)
        return "Symbol"
    else
        return "Not a symbol."
    end
end
foo(":A") # returns "Not a Symbol."
@enter foo(":A") # returns "Symbol"

REPL