]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Remove error
authorRico Tzschichholz <ricotz@ubuntu.com>
Thu, 3 Aug 2023 15:17:23 +0000 (17:17 +0200)
committerRico Tzschichholz <ricotz@ubuntu.com>
Wed, 31 Jan 2024 17:51:28 +0000 (18:51 +0100)
tests/Makefile.am
tests/generics/no-generic-args-invalid.test [moved from tests/generics/typeof-with-no-generic-args.test with 51% similarity]
tests/generics/no-generic-args.vala
vala/valatypeofexpression.vala

index 67efd975dd4587928065192e80a69fab40431604..41bce8c4ffa7c8976a5c6036ec632d83f12b6287 100644 (file)
@@ -843,6 +843,7 @@ TESTS = \
        generics/method-to-delegate-incompatible-3.test \
        generics/multiple-classes-constraints.test \
        generics/no-generic-args.vala \
+       generics/no-generic-args-invalid.test \
        generics/no-generic-args-compact-class.vala \
        generics/no-generic-args-function.vala \
        generics/no-generic-args-use-with-proper-generic-type.test \
@@ -856,7 +857,6 @@ TESTS = \
        generics/type-parameter-properties.vala \
        generics/type-parameter-property-clash.vala \
        generics/type-parameter-static-in-runtime.test \
-       generics/typeof-with-no-generic-args.test \
        generics/value-pointer-type-access.vala \
        generics/bug640330.vala \
        generics/bug640330-2.test \
similarity index 51%
rename from tests/generics/typeof-with-no-generic-args.test
rename to tests/generics/no-generic-args-invalid.test
index e2918af30437a2155f0691400708fa7620462b66..f33147b536ce1d40facff3e1c49acffc8292f37e 100644 (file)
@@ -1,9 +1,11 @@
 Invalid Code
 
 [CCode (no_generic_args = true)]
-class Foo<G> : Object where G : Object {
-       public void bar () {
+class Foo<G> : Object {
+       public Foo () {
                var g = typeof (G);
+               var dup = G.dup;
+               var destroy = G.destroy;
        }
 }
 
index 47d1088ce4fa0b572cb9fbae8869fffcf515fa3b..93058f5958739c17be2c0c5acca5a131f2a63a2d 100644 (file)
@@ -1,4 +1,3 @@
-
 [CCode (no_generic_args = true)]
 class Foo<G> : Object where G : Object {
        public G bar { get; set; }
index e1a0b0de726d8380c62c9f70c292f2544edf5a28..2449b6086fad8db3fe67a51a7a1373f10bc57a0a 100644 (file)
@@ -90,11 +90,6 @@ public class Vala.TypeofExpression : Expression {
                        Report.warning (_data_type.source_reference, "Arrays do not have a `GLib.Type', with the exception of `string[]'");
                }
 
-               if (type_reference.type_symbol is TypeParameter && ((TypeParameter) type_reference.type_symbol).no_generic_args) {
-                       Report.error (_data_type.source_reference, "You cannot retrieve type parameters of types with the `[CCode (no_generic_args=true)]' attribute");
-                       error = true;
-               }
-
                return !error;
        }