[vala/wip/transform: 134/140] tests: "??" evaluates both of sides of expression when right side throws error
- From: Rico Tzschichholz <ricotz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala/wip/transform: 134/140] tests: "??" evaluates both of sides of expression when right side throws error
- Date: Thu, 6 Dec 2018 18:38:08 +0000 (UTC)
commit 3a669fdca07ac5120fe087d2e9348f040b4231d2
Author: Rico Tzschichholz <ricotz ubuntu com>
Date: Tue Nov 8 15:02:24 2016 +0100
tests: "??" evaluates both of sides of expression when right side throws error
https://gitlab.gnome.org/GNOME/vala/issues/534
tests/Makefile.am | 1 +
tests/control-flow/bug764440.vala | 17 +++++++++++++++++
2 files changed, 18 insertions(+)
---
diff --git a/tests/Makefile.am b/tests/Makefile.am
index be7bbce72..d032ff5fc 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -159,6 +159,7 @@ TESTS = \
control-flow/bug691514.vala \
control-flow/bug736774-1.vala \
control-flow/bug736774-2.vala \
+ control-flow/bug764440.vala \
control-flow/bug790903.test \
control-semantic/argument-extra.test \
control-semantic/argument-incompatible-type-out.test \
diff --git a/tests/control-flow/bug764440.vala b/tests/control-flow/bug764440.vala
new file mode 100644
index 000000000..6f1caaece
--- /dev/null
+++ b/tests/control-flow/bug764440.vala
@@ -0,0 +1,17 @@
+errordomain FooError {
+ BAR;
+}
+
+unowned string get_bar () throws FooError {
+ throw new FooError.BAR ("bar");
+}
+
+void main () {
+ try {
+ unowned string? foo = "foo";
+ unowned string bar = foo ?? get_bar ();
+ print ("%s\n", bar);
+ } catch {
+ assert_not_reached ();
+ }
+}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]