summaryrefslogtreecommitdiff
path: root/tests/exec/ref5.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/exec/ref5.cpp')
-rw-r--r--tests/exec/ref5.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/exec/ref5.cpp b/tests/exec/ref5.cpp
new file mode 100644
index 0000000..1f9944b
--- /dev/null
+++ b/tests/exec/ref5.cpp
@@ -0,0 +1,29 @@
+#include <iostream>
+
+void f(int &y) {
+ y = y + 1;
+}
+
+int main() {
+ int x = 41;
+ std::cout << "x = " << x << "\n";
+ f(x);
+ std::cout << "x = " << x << "\n";
+ int &z = x;
+ f(z);
+ std::cout << "x = " << x << "\n";
+ std::cout << "z = " << z << "\n";
+ int &u = z;
+ f(u);
+ std::cout << "x = " << x << "\n";
+ std::cout << "z = " << z << "\n";
+ std::cout << "u = " << u << "\n";
+ f(z);
+ std::cout << "x = " << x << "\n";
+ std::cout << "z = " << z << "\n";
+ std::cout << "u = " << u << "\n";
+ f(x);
+ std::cout << "x = " << x << "\n";
+ std::cout << "z = " << z << "\n";
+ std::cout << "u = " << u << "\n";
+}