#5247 return in expr mangles the stack

current: 8.6.0
closed-fixed
9
2013-06-06
2013-06-05
No

This crashes in a full debug build (without the optimizer work I'm going to commit very soon):
apply {{} {expr {[return foo] + $a + $b}}}

Error is:
bad stack adjustment when compiling expr (was 0 instead of 1)

I believe (from scanning the fossil history) that you may have fixed something in this area. (Note that I don't know what bytecode sequence is generated; disassembling hits the same panic.)

Discussion

  • Don Porter

    Don Porter - 2013-06-06

    Yes, I have a fix for this one over in mig-review. Will port it over shortly.

     
  • Don Porter

    Don Porter - 2013-06-06

    Hmmm... the fix isn't quite as isolated as I thought, but it will
    come over when I bring the fixes collected over there to the trunk.

     
  • Don Porter

    Don Porter - 2013-06-06

    Aha! It was isolated, I just had the wrong bit.

    Fixed on trunk.

     
  • Don Porter

    Don Porter - 2013-06-06
    • status: open --> closed-fixed
     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks