From a1c164f5983246fd6a962e82d5d3064a515b1002 Mon Sep 17 00:00:00 2001 From: "Jeremy G. Siek" Date: Fri, 23 Jul 2021 11:42:07 -0400 Subject: [PATCH] added a test for definition-side checking with expected failure (#673) --- executable_semantics/BUILD | 1 + .../testdata/generic_function_fail3.carbon | 11 +++++++++++ .../testdata/generic_function_fail3.golden | 4 ++++ 3 files changed, 16 insertions(+) create mode 100644 executable_semantics/testdata/generic_function_fail3.carbon create mode 100644 executable_semantics/testdata/generic_function_fail3.golden diff --git a/executable_semantics/BUILD b/executable_semantics/BUILD index 8afa9ab4e5b5..26b7d3196d3f 100644 --- a/executable_semantics/BUILD +++ b/executable_semantics/BUILD @@ -42,6 +42,7 @@ EXAMPLES = [ "generic_function_apply", "generic_function_fail1", "generic_function_fail2", + "generic_function_fail3", "generic_function_swap", "generic_function_tuple_map", "global_variable1", diff --git a/executable_semantics/testdata/generic_function_fail3.carbon b/executable_semantics/testdata/generic_function_fail3.carbon new file mode 100644 index 000000000000..dedbc94b1341 --- /dev/null +++ b/executable_semantics/testdata/generic_function_fail3.carbon @@ -0,0 +1,11 @@ +// 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 + +fn id[T:! Type](x: T) -> T { + return x + 0; +} + +fn main() -> Int { + return id(0); +} diff --git a/executable_semantics/testdata/generic_function_fail3.golden b/executable_semantics/testdata/generic_function_fail3.golden new file mode 100644 index 000000000000..17e479eb57e8 --- /dev/null +++ b/executable_semantics/testdata/generic_function_fail3.golden @@ -0,0 +1,4 @@ +ERROR: 6: type error in addition(1) +expected: Int +actual: T +EXIT CODE: 255