]> gcc.gnu.org Git - gcc.git/commitdiff
gccrs: Remove obsolete error diagnostic
authorTieWay59 <tieway59@foxmail.com>
Sat, 13 May 2023 07:49:42 +0000 (15:49 +0800)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 16 Jan 2024 17:46:27 +0000 (18:46 +0100)
fixes https://github.com/Rust-GCC/gccrs/issues/2064

Remove every `{ dg-error "failed to type resolve expression" }`
annotation that causes a failure when running the testsuite.

gcc/rust/ChangeLog:

* typecheck/rust-hir-type-check-expr.cc: Remove obsolete error diagnostic

gcc/testsuite/ChangeLog:

* rust/compile/break1.rs: remove dg-error "failed to type resolve expression"
* rust/compile/break2.rs: Likewise
* rust/compile/cfg2.rs: Likewise
* rust/compile/continue1.rs: Likewise
* rust/compile/generics4.rs: Likewise
* rust/compile/generics6.rs: Likewise
* rust/compile/generics7.rs: Likewise
* rust/compile/issue-2029.rs: Likewise
* rust/compile/issue-2139.rs: Likewise
* rust/compile/issue-2190-1.rs: Likewise
* rust/compile/issue-925.rs: Likewise
* rust/compile/method1.rs: Likewise
* rust/compile/shadow1.rs: Likewise
* rust/compile/type-bindings1.rs: Likewise
* rust/compile/unary_negation.rs: Likewise
* rust/compile/unary_not.rs: Likewise
* rust/compile/unconstrained_type_param.rs: Likewise
* rust/compile/usize1.rs: Likewise

Signed-off-by: Taiwei Wu <tieway59@foxmail.com>
19 files changed:
gcc/rust/typecheck/rust-hir-type-check-expr.cc
gcc/testsuite/rust/compile/break1.rs
gcc/testsuite/rust/compile/break2.rs
gcc/testsuite/rust/compile/cfg2.rs
gcc/testsuite/rust/compile/continue1.rs
gcc/testsuite/rust/compile/generics4.rs
gcc/testsuite/rust/compile/generics6.rs
gcc/testsuite/rust/compile/generics7.rs
gcc/testsuite/rust/compile/issue-2029.rs
gcc/testsuite/rust/compile/issue-2139.rs
gcc/testsuite/rust/compile/issue-2190-1.rs
gcc/testsuite/rust/compile/issue-925.rs
gcc/testsuite/rust/compile/method1.rs
gcc/testsuite/rust/compile/shadow1.rs
gcc/testsuite/rust/compile/type-bindings1.rs
gcc/testsuite/rust/compile/unary_negation.rs
gcc/testsuite/rust/compile/unary_not.rs
gcc/testsuite/rust/compile/unconstrained_type_param.rs
gcc/testsuite/rust/compile/usize1.rs

index 101ed082a2776426371e3c8e550ce8d623d76faf..8bbbc224c8d3da73e079418c617e1cb45a251862 100644 (file)
@@ -41,13 +41,7 @@ TypeCheckExpr::Resolve (HIR::Expr *expr)
   expr->accept_vis (resolver);
 
   if (resolver.infered == nullptr)
-    {
-      // FIXME
-      // this is an internal error message for debugging and should be removed
-      // at some point
-      rust_error_at (expr->get_locus (), "failed to type resolve expression");
-      return new TyTy::ErrorType (expr->get_mappings ().get_hirid ());
-    }
+    return new TyTy::ErrorType (expr->get_mappings ().get_hirid ());
 
   auto ref = expr->get_mappings ().get_hirid ();
   resolver.infered->set_ref (ref);
index 91cabffa89439009b1e2a8804879e62e0b25ca31..e33077f6e2a4ac45df8c1fbc15f3cb14c7af7520 100644 (file)
@@ -2,5 +2,4 @@ fn main() {
     let a;
     a = 1;
     break a; // { dg-error "cannot 'break' outside of a loop" }
-    // { dg-error "failed to type resolve expression" "" { target *-*-* } .-1 }
 }
index 5ac806aeb9ed00bd29f29190c31cd46028c80907..7d580316932976cf48b1034f29a9bc3448640fe3 100644 (file)
@@ -6,7 +6,6 @@ fn main() {
     while b > 10 {
         if (b == 2) {
             break b;  // { dg-error "can only break with a value inside 'loop'" }
-            // { dg-error "failed to type resolve expression" "" { target *-*-* } .-1 }
         }
         c = a + b;
         a = b;
index 939384c5b7dab383d0da44d4e824d8571dc76d7d..e4c90d96dd492c24002e8750bf66687ca0220b9c 100644 (file)
@@ -9,5 +9,4 @@ fn main() {
     let a = Foo;
     a.test();
     // { dg-error "failed to resolve method for .test." "" { target *-*-* } .-1 }
-    // { dg-error "failed to type resolve expression" "" { target *-*-* } .-2 }
 }
index 994312b52cc6673f3e6461c873abc314c11b7f28..f1b58f69271c6c4de2a2e0d8c788b5a70ac0984b 100644 (file)
@@ -4,7 +4,6 @@ fn main() {
 
     let _fib = {
         continue; // { dg-error "cannot 'continue' outside of a loop" }
-        // { dg-error "failed to type resolve expression" "" { target *-*-* } .-1 }
         123
     };
 }
index 8af13586a373ac9a6d7ef3df5e24850385dd2a65..e8fe23cd2688ae34e8e48801c74a6f4d7a9243be 100644 (file)
@@ -3,14 +3,10 @@ struct GenericStruct<T>(T, usize);
 fn main() {
     let a2;
     a2 = GenericStruct::<i8, i32>(1, 456); // { dg-error "generic item takes at most 1 type arguments but 2 were supplied" }
-                                           // { dg-error {failed to type resolve expression} "" { target *-*-* } .-1 }
-                                           // { dg-error {Failed to resolve expression of function call} "" { target *-*-* } .-2 }
-                                           // { duplicate _dg-error {failed to type resolve expression} "" { target *-*-* } .-3 }
+                                           // { dg-error {Failed to resolve expression of function call} "" { target *-*-* } .-1 }
 
     let b2: i32 = a2.0;
     // { dg-error {Expected Tuple or ADT got: T\?} "" { target *-*-* } .-1 }
-    // { dg-error {failed to type resolve expression} "" { target *-*-* } .-2 }
     let c2: usize = a2.1;
     // { dg-error {Expected Tuple or ADT got: T\?} "" { target *-*-* } .-1 }
-    // { dg-error {failed to type resolve expression} "" { target *-*-* } .-2 }
 }
index 3b81e1bbee1041c0a29aa4d960e70147dc7f6a90..ad5b682d0ba732148d5616e6f0d2f57510ce41b8 100644 (file)
@@ -24,8 +24,6 @@ impl Foo<f32> {
 
 fn main() {
     let a: i32 = Foo::test(); // { dg-error "multiple applicable items in scope for: test" }
-    // { dg-error {failed to type resolve expression} "" { target *-*-* } .-1 }
-    // { dg-error {Failed to resolve expression of function call} "" { target *-*-* } .-2 }
-    // { duplicate _dg-error {failed to type resolve expression} "" { target *-*-* } .-3 }
+    // { dg-error {Failed to resolve expression of function call} "" { target *-*-* } .-1 }
 }
 
index 2789c30ee38421bea4c81b9f3fc44bc6de4f63aa..aeb91a6fb419808afada1bd94e8f1dd97ea19ce3 100644 (file)
@@ -24,5 +24,4 @@ fn main() {
     let a = Foo { a: 123 };
     a.bar();
     // { dg-error "multiple candidates found for method .bar." "" { target *-*-* } .-1 }
-    // { dg-error "failed to type resolve expression" "" { target *-*-* } .-2 }
 }
index 80af228925627965f9e93a42b73724d0a2d1e59b..78569631eb1167e4849fe6be9d4029f23e47e50d 100644 (file)
@@ -5,7 +5,6 @@ fn foo(_: usize) -> Foo {
 
 fn main() {
     match Foo(true) {
-        // { dg-error "failed to type resolve expression" "" { target *-*-* } .-1 }
         foo(x)
         // { dg-error "expected tuple struct/variant, found" "" { target *-*-* } .-1 }
         => ()
index 780ed58d5cc653f5028d7b26685f137116c10e56..77bf78d13a7fe805fc2709719d0d778624b28477 100644 (file)
@@ -12,5 +12,4 @@ fn main() {
     let a: u16 = 123;
     a.foo();
     // { dg-error "failed to resolve method for .foo." "" { target *-*-* } .-1 }
-    // { dg-error "failed to type resolve expression" "" { target *-*-* } .-2 }
 }
index 85091b22e3b6cb95a7aea4398da7186f1a68c582..3e43e54104970cd22cb916806a56b44da2a61087 100644 (file)
@@ -7,5 +7,4 @@ trait Deref {
 fn foo<T: Deref<Target = i32>>(t: &T) -> i32 {
     t.max(2)
     // { dg-error "failed to resolve method for .max." "" { target *-*-* } .-1 }
-    // { dg-error "failed to type resolve expression" "" { target *-*-* } .-2 }
 }
index f6c071958f482f6165a3fd08ac6ed433e8fd3fac..930b192c3d309fb817f8f7181cfb264ffd97a7dc 100644 (file)
@@ -19,5 +19,4 @@ fn test() {
     let a = S;
     a.foo();
     // { dg-error "multiple candidates found for method .foo." "" { target *-*-* } .-1 }
-    // { dg-error "failed to type resolve expression" "" { target *-*-* } .-2 }
 }
index 18652406085b4444af203719dba49bf41edb4996..d371bf271f81677558b4c15b6e45bb3ac0a15fb8 100644 (file)
@@ -9,5 +9,4 @@ pub fn main() {
 
     a.test();
     // { dg-error "failed to resolve method for .test." "" { target *-*-* } .-1 }
-    // { dg-error {failed to type resolve expression} "" { target *-*-* } .-2 }
 }
index 77410e932daa8bb577f2d7c3e28c2fb4b0dcafac..cef972adf3391e9eaf0f2ba100968a446ae5920f 100644 (file)
@@ -3,5 +3,4 @@ fn main() {
     let mut x;
     x = true;
     x = x + 2; // { dg-error "cannot apply this operator to types bool and <integer>"  }
-               // { dg-error {failed to type resolve expression} "" { target *-*-* } .-1 }
 }
index ad85ed97ecbc85fa805e7068e24c7d86e13fa3f5..dc0e274fdd5f6204efff32ea141c335fe03f1104 100644 (file)
@@ -4,7 +4,5 @@ fn main() {
     let a;
     a = Foo::<A = i32, B = f32>(123f32);
     // { dg-error "associated type bindings are not allowed here" "" { target *-*-* } .-1 }
-    // { dg-error {failed to type resolve expression} "" { target *-*-* } .-2 }
-    // { dg-error {Failed to resolve expression of function call} "" { target *-*-* } .-3 }
-    // { duplicate _dg-error {failed to type resolve expression} "" { target *-*-* } .-4 }
+    // { dg-error {Failed to resolve expression of function call} "" { target *-*-* } .-2 }
 }
index 848643f0bd2889a572962eeb5fb80b99beb3c257..bb59d19eed862b2d832ba4cb2c20f8e885e1abd6 100644 (file)
@@ -5,5 +5,4 @@ fn main() {
     let d: i32 = !3;
 
     let e: f32 = -true; // // { dg-error "cannot apply unary - to bool" }
-    // { dg-error {failed to type resolve expression} "" { target *-*-* } .-1 }
 }
index b0a3dafbbd0862689058feca292d3236bc022ea5..7e4de3dc0303056365469cce2b6df0c7ebb11d08 100644 (file)
@@ -5,5 +5,4 @@ fn main() {
     let d: i32 = !3;
 
     let e: f32 = !5f32; // { dg-error "cannot apply unary '!' to f32" }
-    // { dg-error {failed to type resolve expression} "" { target *-*-* } .-1 }
 }
index 9f3db93a5e760d11473b28e304fd341345a93814..a510332f167c6762972b3b8a779565e7ad5bbfe5 100644 (file)
@@ -11,5 +11,4 @@ fn main() {
     let a = Foo::test();
     // { dg-error "expected" "" { target *-*-* } .-1 }
     // { dg-error "Failed to resolve expression of function call" "" { target *-*-* } .-2 }
-    // { dg-error "failed to type resolve expression" "" { target *-*-* } .-3 }
 }
index b1c8fe864736a8ead0c87c3276a92392ca35cda0..36cb99b5574a759f6e75000e593985271d43d9db 100644 (file)
@@ -2,5 +2,4 @@ fn main() {
     let a = [1, 2, 3];
     let b: u32 = 1;
     let c = a[b]; // { dg-error "the type ...integer..CAPACITY.. cannot be indexed by .u32." }
-                  // { dg-error {failed to type resolve expression} "" { target *-*-* } .-1 }
 }
This page took 0.081178 seconds and 5 git commands to generate.