diff options
Diffstat (limited to 'testsuite/tests/rts/T10672/cxxy.cpp')
-rw-r--r-- | testsuite/tests/rts/T10672/cxxy.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/testsuite/tests/rts/T10672/cxxy.cpp b/testsuite/tests/rts/T10672/cxxy.cpp new file mode 100644 index 0000000000..815d15399e --- /dev/null +++ b/testsuite/tests/rts/T10672/cxxy.cpp @@ -0,0 +1,23 @@ +// Copyright (C) 2015, Luke Iannini
+
+#include <iostream>
+#include <exception>
+#include <string.h>
+
+// Make sure can call unmangled names from Haskell's FFI
+extern "C" {
+
+int talkToCxx() {
+
+ try {
+ throw 20;
+ }
+ catch (int e) {
+ std::cout << "An exception occurred. Exception Nr. " << e << '\n';
+ }
+
+ std::cout << "Hello From C++!";
+}
+
+
+}
|