diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2018-04-25 22:25:55 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2018-05-02 22:50:15 +0300 |
commit | 1918c0d231f0c04b1a57c2fdf057b50c8aa7312b (patch) | |
tree | 074fd9ede2fe8ee8c3e63822b1c89de39cd967ff /test cases | |
parent | 77b72e8573bbd8d6d04cb11aacdba604b8649f4d (diff) | |
download | meson-1918c0d231f0c04b1a57c2fdf057b50c8aa7312b.zip meson-1918c0d231f0c04b1a57c2fdf057b50c8aa7312b.tar.gz meson-1918c0d231f0c04b1a57c2fdf057b50c8aa7312b.tar.bz2 |
Can combine D and C++ in a single target. Closes #3125.
Diffstat (limited to 'test cases')
-rw-r--r-- | test cases/d/10 d cpp/cppmain.cpp | 6 | ||||
-rw-r--r-- | test cases/d/10 d cpp/dmain.d | 5 | ||||
-rw-r--r-- | test cases/d/10 d cpp/libfile.cpp | 5 | ||||
-rw-r--r-- | test cases/d/10 d cpp/libfile.d | 5 | ||||
-rw-r--r-- | test cases/d/10 d cpp/meson.build | 13 |
5 files changed, 34 insertions, 0 deletions
diff --git a/test cases/d/10 d cpp/cppmain.cpp b/test cases/d/10 d cpp/cppmain.cpp new file mode 100644 index 0000000..aeddf56 --- /dev/null +++ b/test cases/d/10 d cpp/cppmain.cpp @@ -0,0 +1,6 @@ +extern void print_hello(int i); + +int main(int, char**) { + print_hello(1); + return 0; +} diff --git a/test cases/d/10 d cpp/dmain.d b/test cases/d/10 d cpp/dmain.d new file mode 100644 index 0000000..bece25f --- /dev/null +++ b/test cases/d/10 d cpp/dmain.d @@ -0,0 +1,5 @@ +extern (C++) void print_hello(int i); + +void main() { + print_hello(1); +} diff --git a/test cases/d/10 d cpp/libfile.cpp b/test cases/d/10 d cpp/libfile.cpp new file mode 100644 index 0000000..2ea67fc --- /dev/null +++ b/test cases/d/10 d cpp/libfile.cpp @@ -0,0 +1,5 @@ +#include<iostream> + +void print_hello(int i) { + std::cout << "Hello. Here is a number printed with C++: " << i << ".\n"; +} diff --git a/test cases/d/10 d cpp/libfile.d b/test cases/d/10 d cpp/libfile.d new file mode 100644 index 0000000..88cb53e --- /dev/null +++ b/test cases/d/10 d cpp/libfile.d @@ -0,0 +1,5 @@ +import std.stdio; + +extern (C++) void print_hello(int i) { + writefln("Hello. Here is a number printed with D: %d", i); +} diff --git a/test cases/d/10 d cpp/meson.build b/test cases/d/10 d cpp/meson.build new file mode 100644 index 0000000..eecb151 --- /dev/null +++ b/test cases/d/10 d cpp/meson.build @@ -0,0 +1,13 @@ +project('d and c++', 'd', 'cpp') + +cpp = meson.get_compiler('cpp') + +if cpp.get_id() == 'clang' + error('MESON_SKIP_TEST combining Clang C++ with GDC produces broken executables.') +endif + +e1 = executable('dcpp', 'dmain.d', 'libfile.cpp') +test('dcpp', e1) + +e2 = executable('cppd', 'cppmain.cpp', 'libfile.d') +test('cppd', e2) |