{
  "asm": [
    {
      "labels": [],
      "source": null,
      "text": "_Z1fSt7variantIJPiPlPcEE:               # @_Z1fSt7variantIJPiPlPcEE"
    },
    {
      "labels": [],
      "source": null,
      "text": "# %bb.0:"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: f:v <- [DW_OP_LLVM_fragment 0 64] $rdi"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: f:v <- [DW_OP_LLVM_fragment 64 8] $esi"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __visit_rettypes_match <- 1"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __max <- 11"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __n <- 3"
    },
    {
      "labels": [],
      "source": {
        "column": 8,
        "file": "/opt/compiler-explorer/gcc-snapshot/lib/gcc/x86_64-linux-gnu/14.0.0/../../../../include/c++/14.0.0/variant",
        "line": 1789
      },
      "text": "        cmp     sil, 2"
    },
    {
      "labels": [
        {
          "name": ".LBB0_2",
          "range": {
            "endCol": 24,
            "startCol": 17
          }
        }
      ],
      "source": {
        "column": 8,
        "file": "/opt/compiler-explorer/gcc-snapshot/lib/gcc/x86_64-linux-gnu/14.0.0/../../../../include/c++/14.0.0/variant",
        "line": 1789
      },
      "text": "        je      .LBB0_2"
    },
    {
      "labels": [],
      "source": null,
      "text": "# %bb.1:"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: f:v <- [DW_OP_LLVM_fragment 0 64] $rdi"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: f:v <- [DW_OP_LLVM_fragment 64 8] $esi"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __visit_rettypes_match <- 1"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __max <- 11"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __n <- 3"
    },
    {
      "labels": [],
      "source": {
        "column": 8,
        "file": "/opt/compiler-explorer/gcc-snapshot/lib/gcc/x86_64-linux-gnu/14.0.0/../../../../include/c++/14.0.0/variant",
        "line": 1789
      },
      "text": "        movzx   eax, sil"
    },
    {
      "labels": [],
      "source": {
        "column": 8,
        "file": "/opt/compiler-explorer/gcc-snapshot/lib/gcc/x86_64-linux-gnu/14.0.0/../../../../include/c++/14.0.0/variant",
        "line": 1789
      },
      "text": "        cmp     eax, 1"
    },
    {
      "labels": [],
      "source": null,
      "text": ".LBB0_2:"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: f:v <- [DW_OP_LLVM_fragment 0 64] $rdi"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: f:v <- [DW_OP_LLVM_fragment 64 8] $esi"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __visit_rettypes_match <- 1"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __max <- 11"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __n <- 3"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __visit_invoke:__visitor <- undef"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __visit_invoke:__vars <- undef"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __invoke<(lambda at /app/example.cpp:3:16), char *&>:__fn <- undef"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __invoke<(lambda at /app/example.cpp:3:16), char *&>:__args <- undef"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __invoke_impl<void, (lambda at /app/example.cpp:3:16), char *&>:__f <- undef"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: __invoke_impl<void, (lambda at /app/example.cpp:3:16), char *&>:__args <- undef"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: operator()<char *&>:this <- undef"
    },
    {
      "labels": [],
      "source": null,
      "text": "        #DEBUG_VALUE: operator()<char *&>:p <- undef"
    },
    {
      "labels": [],
      "source": {
        "file": "/opt/compiler-explorer/gcc-snapshot/lib/gcc/x86_64-linux-gnu/14.0.0/../../../../include/c++/14.0.0/variant",
        "line": 0
      },
      "text": "        test    rdi, rdi"
    },
    {
      "labels": [],
      "source": {
        "file": "/opt/compiler-explorer/gcc-snapshot/lib/gcc/x86_64-linux-gnu/14.0.0/../../../../include/c++/14.0.0/variant",
        "line": 0
      },
      "text": "        jne     _ZdlPv@PLT                      # TAILCALL"
    },
    {
      "labels": [],
      "source": null,
      "text": "# %bb.3:"
    },
    {
      "labels": [],
      "source": {
        "column": 1,
        "file": null,
        "line": 4
      },
      "text": "        ret"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # -- End function"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_default_value"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_rvalue_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_rvalue_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_default_value"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_rvalue_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_rvalue_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_default_value"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_rvalue_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_rvalue_reference"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_explicit"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_ACCESS_public"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_declaration"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_explicit"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_artificial"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_GNU_all_call_sites"
    },
    {
      "labels": [],
      "source": null,
      "text": "                                        # DW_AT_external"
    }
  ],
  "labelDefinitions": {
    ".LBB0_2": 18,
    "_Z1fSt7variantIJPiPlPcEE": 1
  }
}
