Skip to content

Commit

Permalink
Mark tests todo/fail
Browse files Browse the repository at this point in the history
  • Loading branch information
josh11b committed Mar 3, 2025
1 parent 74f2615 commit ea4167d
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 36 deletions.
10 changes: 4 additions & 6 deletions toolchain/check/testdata/impl/lookup/no_prelude/subtyping.carbon
Original file line number Diff line number Diff line change
Expand Up @@ -8,27 +8,25 @@
// TIP: To dump output, run:
// TIP: bazel run //toolchain/testing:file_test -- --dump_output --file_tests=toolchain/check/testdata/impl/lookup/no_prelude/subtyping.carbon

// This is testing `FindWitnessInFacet` from impl_lookup.cpp

// --- equivalent.carbon
// --- fail_todo_equivalent.carbon
library "[[@TEST_NAME]]";

interface A {}

fn TakesA[T:! A](x: T) {}

fn WithExtraWhere[U:! A where .Self impls type](y: U) {
// CHECK:STDERR: equivalent.carbon:[[@LINE+7]]:3: error: `Core.ImplicitAs` implicitly referenced here, but package `Core` not found [CoreNotFound]
// CHECK:STDERR: fail_todo_equivalent.carbon:[[@LINE+7]]:3: error: `Core.ImplicitAs` implicitly referenced here, but package `Core` not found [CoreNotFound]
// CHECK:STDERR: TakesA(y);
// CHECK:STDERR: ^~~~~~~~~
// CHECK:STDERR: equivalent.carbon:[[@LINE-6]]:1: note: while deducing parameters of generic declared here [DeductionGenericHere]
// CHECK:STDERR: fail_todo_equivalent.carbon:[[@LINE-6]]:1: note: while deducing parameters of generic declared here [DeductionGenericHere]
// CHECK:STDERR: fn TakesA[T:! A](x: T) {}
// CHECK:STDERR: ^~~~~~~~~~~~~~~~~~~~~~~~
// CHECK:STDERR:
TakesA(y);
}

// CHECK:STDOUT: --- equivalent.carbon
// CHECK:STDOUT: --- fail_todo_equivalent.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %A.type: type = facet_type <@A> [concrete]
Expand Down
14 changes: 7 additions & 7 deletions toolchain/check/testdata/impl/no_prelude/compound.carbon
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
// TIP: To dump output, run:
// TIP: bazel run //toolchain/testing:file_test -- --dump_output --file_tests=toolchain/check/testdata/impl/no_prelude/compound.carbon

// --- non-instance_success.carbon
// --- fail_todo_non-instance_success.carbon
library "[[@TEST_NAME]]";

interface NonInstance1 {
Expand All @@ -20,7 +20,7 @@ impl {.a: ()} as NonInstance1 {
}

fn NonInstanceCall1() {
// CHECK:STDERR: non-instance_success.carbon:[[@LINE+4]]:3: error: cannot access member of interface `NonInstance1` in type `type` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fail_todo_non-instance_success.carbon:[[@LINE+4]]:3: error: cannot access member of interface `NonInstance1` in type `type` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: {.a: ()}.(NonInstance1.F1)();
// CHECK:STDERR: ^~~~~~~~~~~~~~~~~~~~~~~~~~
// CHECK:STDERR:
Expand All @@ -34,7 +34,7 @@ interface ImplicitAs(Dest:! type) {
fn Convert[self: Self]() -> Dest;
}

// --- fail_non-instance.carbon
// --- todo_fail_non-instance.carbon
library "[[@TEST_NAME]]";

import Core;
Expand All @@ -51,7 +51,7 @@ fn NonInstanceCall2(n: {.b: ()}) {
n.(NonInstance2.F2)();
}

// --- fail_non-instance_indirect.carbon
// --- todo_fail_non-instance_indirect.carbon
library "[[@TEST_NAME]]";

import Core;
Expand Down Expand Up @@ -106,7 +106,7 @@ fn InstanceCallFail() {
{.e: ()}.(Instance2.G2)();
}

// CHECK:STDOUT: --- non-instance_success.carbon
// CHECK:STDOUT: --- fail_todo_non-instance_success.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %NonInstance1.type: type = facet_type <@NonInstance1> [concrete]
Expand Down Expand Up @@ -279,7 +279,7 @@ fn InstanceCallFail() {
// CHECK:STDOUT:
// CHECK:STDOUT: specific @ImplicitAs(%Dest.loc3_22.2) {}
// CHECK:STDOUT:
// CHECK:STDOUT: --- fail_non-instance.carbon
// CHECK:STDOUT: --- todo_fail_non-instance.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %NonInstance2.type: type = facet_type <@NonInstance2> [concrete]
Expand Down Expand Up @@ -376,7 +376,7 @@ fn InstanceCallFail() {
// CHECK:STDOUT:
// CHECK:STDOUT: specific @F2.1(constants.%NonInstance2.facet) {}
// CHECK:STDOUT:
// CHECK:STDOUT: --- fail_non-instance_indirect.carbon
// CHECK:STDOUT: --- todo_fail_non-instance_indirect.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %NonInstance3.type: type = facet_type <@NonInstance3> [concrete]
Expand Down
14 changes: 7 additions & 7 deletions toolchain/check/testdata/impl/no_prelude/import_compound.carbon
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@ impl {.i: ()} as Instance {
fn G[self: Self]() {}
}

// --- import_non-instance_success.carbon
// --- fail_todo_import_non-instance_success.carbon
library "[[@TEST_NAME]]";

import library "lib";

fn NonInstanceCallImport() {
// CHECK:STDERR: import_non-instance_success.carbon:[[@LINE+4]]:3: error: cannot access member of interface `NonInstance` in type `type` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fail_todo_import_non-instance_success.carbon:[[@LINE+4]]:3: error: cannot access member of interface `NonInstance` in type `type` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: {.i: ()}.(NonInstance.F)();
// CHECK:STDERR: ^~~~~~~~~~~~~~~~~~~~~~~~
// CHECK:STDERR:
Expand All @@ -47,7 +47,7 @@ interface ImplicitAs(Dest:! type) {
fn Convert[self: Self]() -> Dest;
}

// --- fail_import_non-instance.carbon
// --- todo_fail_import_non-instance.carbon
library "[[@TEST_NAME]]";

import library "lib";
Expand All @@ -57,7 +57,7 @@ fn NonInstanceCallImportFail(n: {.i: ()}) {
n.(NonInstance.F)();
}

// --- fail_import_non-instance_indirect.carbon
// --- todo_fail_import_non-instance_indirect.carbon
library "[[@TEST_NAME]]";

import library "lib";
Expand Down Expand Up @@ -236,7 +236,7 @@ fn InstanceCallImportFail() {
// CHECK:STDOUT: %Self.as_type.loc12_14.1 => constants.%struct_type.i
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: --- import_non-instance_success.carbon
// CHECK:STDOUT: --- fail_todo_import_non-instance_success.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %NonInstanceCallImport.type: type = fn_type @NonInstanceCallImport [concrete]
Expand Down Expand Up @@ -406,7 +406,7 @@ fn InstanceCallImportFail() {
// CHECK:STDOUT:
// CHECK:STDOUT: specific @ImplicitAs(%Dest.loc3_22.2) {}
// CHECK:STDOUT:
// CHECK:STDOUT: --- fail_import_non-instance.carbon
// CHECK:STDOUT: --- todo_fail_import_non-instance.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
Expand Down Expand Up @@ -512,7 +512,7 @@ fn InstanceCallImportFail() {
// CHECK:STDOUT:
// CHECK:STDOUT: specific @F.1(constants.%Self.73c) {}
// CHECK:STDOUT:
// CHECK:STDOUT: --- fail_import_non-instance_indirect.carbon
// CHECK:STDOUT: --- todo_fail_import_non-instance_indirect.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %empty_tuple.type: type = tuple_type () [concrete]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,12 +61,12 @@ impl A as Factory(B) {
fn Method[self: Self]() -> B;
}

// --- factory.impl.carbon
// --- fail_todo_factory.impl.carbon

impl library "[[@TEST_NAME]]";

fn MakeB() -> B {
// CHECK:STDERR: factory.impl.carbon:[[@LINE+4]]:10: error: cannot access member of interface `Factory(B)` in type `type` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fail_todo_factory.impl.carbon:[[@LINE+4]]:10: error: cannot access member of interface `Factory(B)` in type `type` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: return A.(Factory(B).Make)();
// CHECK:STDERR: ^~~~~~~~~~~~~~~~~~~
// CHECK:STDERR:
Expand Down Expand Up @@ -904,7 +904,7 @@ fn InstanceC(a: A) -> C {
// CHECK:STDOUT: %Self.as_type.loc8_19.1 => constants.%A
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: --- factory.impl.carbon
// CHECK:STDOUT: --- fail_todo_factory.impl.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %B: type = class_type @B [concrete]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ impl forall [T:! type] T as BitAnd {
fn Op[self: Self](other: Self) -> Self = "type.and";
}

// --- associated_constant.carbon
// --- fail_todo_associated_constant.carbon
library "[[@TEST_NAME]]";

interface J {
Expand All @@ -38,13 +38,13 @@ interface J {
fn Simple1(T:! J, S:! T.U) {}

// This should be equivalent to `Simple1` above, but using compound member access.
// CHECK:STDERR: associated_constant.carbon:[[@LINE+4]]:25: error: cannot access member of interface `J` in type `J` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fail_todo_associated_constant.carbon:[[@LINE+4]]:25: error: cannot access member of interface `J` in type `J` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fn Compound1(V:! J, W:! V.(J.U)) {}
// CHECK:STDERR: ^~~~~~~
// CHECK:STDERR:
fn Compound1(V:! J, W:! V.(J.U)) {}

// --- non_instance.carbon
// --- fail_todo_non_instance.carbon
library "[[@TEST_NAME]]";

interface K1 {
Expand All @@ -58,7 +58,7 @@ fn Simple2(T:! K1) {

// This should be equivalent to `Simple2` above, but using compound member access.
fn Compound2(V:! K1) {
// CHECK:STDERR: non_instance.carbon:[[@LINE+4]]:3: error: cannot access member of interface `K1` in type `K1` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fail_todo_non_instance.carbon:[[@LINE+4]]:3: error: cannot access member of interface `K1` in type `K1` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: V.(K1.Q1)();
// CHECK:STDERR: ^~~~~~~~~
// CHECK:STDERR:
Expand Down Expand Up @@ -176,7 +176,7 @@ fn Compound5(V:! L2) {
V.(L2.S2)();
}

// --- fail_combine_non_instance.carbon
// --- todo_fail_combine_non_instance.carbon
library "[[@TEST_NAME]]";

import Core;
Expand All @@ -198,7 +198,7 @@ fn Fails() {
(({} as C) as (C as (A & A))).(A.G)();
}

// --- allowed_combine_non_instance.carbon
// --- fail_todo_allowed_combine_non_instance.carbon
library "[[@TEST_NAME]]";

import Core;
Expand All @@ -213,17 +213,17 @@ impl C as A {
}

fn Works() {
// CHECK:STDERR: allowed_combine_non_instance.carbon:[[@LINE+4]]:3: error: cannot access member of interface `A` in type `type` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fail_todo_allowed_combine_non_instance.carbon:[[@LINE+4]]:3: error: cannot access member of interface `A` in type `type` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: C.((A & A).G)();
// CHECK:STDERR: ^~~~~~~~~~~~~
// CHECK:STDERR:
C.((A & A).G)();
// CHECK:STDERR: allowed_combine_non_instance.carbon:[[@LINE+4]]:3: error: cannot access member of interface `A` in type `A` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fail_todo_allowed_combine_non_instance.carbon:[[@LINE+4]]:3: error: cannot access member of interface `A` in type `A` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: (C as (A & A)).((A & A).G)();
// CHECK:STDERR: ^~~~~~~~~~~~~~~~~~~~~~~~~~
// CHECK:STDERR:
(C as (A & A)).((A & A).G)();
// CHECK:STDERR: allowed_combine_non_instance.carbon:[[@LINE+4]]:3: error: cannot access member of interface `A` in type `A` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: fail_todo_allowed_combine_non_instance.carbon:[[@LINE+4]]:3: error: cannot access member of interface `A` in type `A` that does not implement that interface [MissingImplInMemberAccess]
// CHECK:STDERR: (C as (A & A)).(A.G)();
// CHECK:STDERR: ^~~~~~~~~~~~~~~~~~~~
// CHECK:STDERR:
Expand Down Expand Up @@ -547,7 +547,7 @@ fn Works() {
// CHECK:STDOUT: %Self.as_type.loc12_15.1 => constants.%T
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: --- associated_constant.carbon
// CHECK:STDOUT: --- fail_todo_associated_constant.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %J.type: type = facet_type <@J> [concrete]
Expand Down Expand Up @@ -683,7 +683,7 @@ fn Works() {
// CHECK:STDOUT: %W.patt.loc15_21.2 => <error>
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: --- non_instance.carbon
// CHECK:STDOUT: --- fail_todo_non_instance.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %K1.type: type = facet_type <@K1> [concrete]
Expand Down Expand Up @@ -1355,7 +1355,7 @@ fn Works() {
// CHECK:STDOUT: %V.patt.loc30_14.2 => constants.%V
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: --- fail_combine_non_instance.carbon
// CHECK:STDOUT: --- todo_fail_combine_non_instance.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %A.type: type = facet_type <@A> [concrete]
Expand Down Expand Up @@ -1617,7 +1617,7 @@ fn Works() {
// CHECK:STDOUT: !definition:
// CHECK:STDOUT: }
// CHECK:STDOUT:
// CHECK:STDOUT: --- allowed_combine_non_instance.carbon
// CHECK:STDOUT: --- fail_todo_allowed_combine_non_instance.carbon
// CHECK:STDOUT:
// CHECK:STDOUT: constants {
// CHECK:STDOUT: %A.type: type = facet_type <@A> [concrete]
Expand Down

0 comments on commit ea4167d

Please sign in to comment.