# Copyright 2023 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

name: Cpp expression evaluation
source_file: //extensions/cxx_debugging/e2e/resources/stepping-with-state.c
flags: [
  [-g, -fdebug-compilation-dir=., -fno-limit-debug-info, -sWASM_BIGINT, -sERROR_ON_WASM_CHANGES_AFTER_LINK],
  [-g, -fdebug-compilation-dir=., -gdwarf-5, -sWASM_BIGINT, -sERROR_ON_WASM_CHANGES_AFTER_LINK],
  [-g, -fdebug-compilation-dir=., -gdwarf-5, -sWASM_BIGINT, -sERROR_ON_WASM_CHANGES_AFTER_LINK, -gsplit-dwarf, -gpubnames]]
use_dwo:
script:
  - reason: setup
    actions:
    - file: stepping-with-state.c
      action: set_breakpoint
      breakpoint: 16
  - reason: breakpoint
    file: stepping-with-state.c
    line: 16
    evaluations:
      - expression: n * 3
        value: 30
      - expression: '*&n'
        value: 10
      - expression: 1 + 2
        value: 3
      - expression: 1 + 2*3
        value: 7
      - expression: 1 + (2 - 3)
        value: 0
      - expression: 1 == 2
        value: false
      - expression: 1 == 1
        value: true
      - expression: (char)65
        value: "\"'A'\""
