Byteman
  1. Byteman
  2. BYTEMAN-196

An AT EXIT rule which refers to $! in when the target method is void can break trigger injectin

    Details

    • Similar Issues:
      Show 10 results 

      Description

      If an AT EXIT rule refers to $! then the trigger injection code will try to generate code to save the stacked return value in a local var slot and then pass it to the triggered rule. However, when the trigger method is void this is doubly inappropriate and results in an exception because i) there is no stacked return value! and ii) the type supplied when allocating the local var slot is void!!

      Injection should be invalidated and a warning exception generated in these circumstances, preferably in the check adapter.

      n.b. it is probably necessary to include the same check for AFTER CALL rules which refer to $! when the called method is void.

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Andrew Dinn
              Reporter:
              Anton Ryabtsev
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: