// Part of the Carbon Language project, under the Apache License v2.0 with LLVM // Exceptions. See /LICENSE for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // // RUN: %{executable_semantics} %s 2>&1 | \ // RUN: %{FileCheck} --match-full-lines --allow-unused-prefixes=false %s // RUN: %{executable_semantics} --trace %s 2>&1 | \ // RUN: %{FileCheck} --match-full-lines --allow-unused-prefixes %s // AUTOUPDATE: %{executable_semantics} %s // CHECK: result: 12 package ExecutableSemanticsTest api; fn Main() -> i32 { var cond: if true then Bool else i32 = true; if (if cond then true else false) {} while (if cond then false else true) {} return if if cond then true or false else false and true then if not cond then 1 + 2 else 3 * 4 else if not cond then 5 + 6 else 7 * 8; }