Welcome to the GBF Test Portal

This was built to track decompiler and CFG progress.

Decompiler Output

Backtrace

{
  "frames": []
}

Context

{
  "current_block_id": {
    "index": 0,
    "address": 40,
    "block_type": "Entry"
  },
  "current_ast_node_stack": [
    {
      "StandaloneNode": {
        "Expression": {
          "Assignable": {
            "Identifier": {
              "metadata": {
                "properties": {},
                "comments": []
              },
              "node_id": 29021,
              "ptr": {
                "ssa_version": 2,
                "id": "unknown_object"
              }
            }
          }
        }
      }
    },
    {
      "StandaloneNode": {
        "Expression": {
          "Assignable": {
            "Identifier": {
              "metadata": {
                "properties": {},
                "comments": []
              },
              "ptr": {
                "ssa_version": 2,
                "id": "unknown_object"
              },
              "node_id": 29022
            }
          }
        }
      }
    },
    {
      "StandaloneNode": {
        "Expression": {
          "Assignable": {
            "Identifier": {
              "metadata": {
                "properties": {},
                "comments": []
              },
              "ptr": {
                "ssa_version": 2,
                "id": "unknown_object"
              },
              "node_id": 29023
            }
          }
        }
      }
    },
    {
      "StandaloneNode": {
        "Expression": {
          "Assignable": {
            "Identifier": {
              "metadata": {
                "properties": {},
                "comments": []
              },
              "node_id": 29024,
              "ptr": {
                "ssa_version": 2,
                "id": "unknown_object"
              }
            }
          }
        }
      }
    },
    {
      "StandaloneNode": {
        "Expression": {
          "Literal": {
            "metadata": {
              "properties": {},
              "comments": []
            },
            "node_id": 29025,
            "ptr": {
              "String": "TStaticVar"
            }
          }
        }
      }
    }
  ],
  "current_instruction": {
    "opcode": "NewObject",
    "operand": null,
    "address": 55
  }
}
function simpleNewBlock()
{
    fn_call#1 = echo#0("Hello, world!");
    new_node#3 = new TStaticVar(unknown_object#2);
    unknown_object#4 = new_node#3;
    // RegionId(0)
    // Unresolved nodes:
    // idx=0: unknown_object
    // RegionId(1)
    // Unresolved nodes:
    // idx=0: unknown_object
    with (unknown_object#2) 
    {
        <this.x>#8 = 0;
        <this.y>#11 = 0;
        <this.foo>#14 = "bar";
    }
    fn_call#16 = addcontrol#15(unknown_object#2);
    fn_call#17 = echo#0("Goodbye, world!");
    return 0;
}