From: Rico Tzschichholz Date: Sat, 9 May 2020 06:17:47 +0000 (+0200) Subject: vala: Set value_type of undefined member-access to avoid further criticals X-Git-Tag: 0.49.1~137 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2d6328ddcf26a624f83549c0bf789198b7a2e990;p=thirdparty%2Fvala.git vala: Set value_type of undefined member-access to avoid further criticals --- diff --git a/tests/Makefile.am b/tests/Makefile.am index b30704f86..d5038fd9d 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -829,6 +829,7 @@ TESTS = \ semantic/member-access-async-callback-invalid.test \ semantic/member-access-capture-out.test \ semantic/member-access-protected-invalid.test \ + semantic/member-access-undefined.test \ semantic/method-abstract.test \ semantic/method-abstract-body.test \ semantic/method-async-ref-parameter.test \ diff --git a/tests/semantic/member-access-undefined.test b/tests/semantic/member-access-undefined.test new file mode 100644 index 000000000..905269518 --- /dev/null +++ b/tests/semantic/member-access-undefined.test @@ -0,0 +1,8 @@ +Invalid Code + +void foo (T actual) { +} + +void main () { + foo (undefined); +} diff --git a/vala/valamemberaccess.vala b/vala/valamemberaccess.vala index 2c0355e1d..1bb805026 100644 --- a/vala/valamemberaccess.vala +++ b/vala/valamemberaccess.vala @@ -510,6 +510,7 @@ public class Vala.MemberAccess : Expression { } Report.error (source_reference, "The name `%s' does not exist in the context of `%s'%s".printf (member_name, base_type_name, base_type_package)); + value_type = new InvalidType (); return false; } else if (symbol_reference.error) { //ignore previous error