diff options
Diffstat (limited to 'Tests/SetLang')
-rw-r--r-- | Tests/SetLang/CMakeLists.txt | 7 | ||||
-rw-r--r-- | Tests/SetLang/bar.c | 21 | ||||
-rw-r--r-- | Tests/SetLang/foo.c | 7 |
3 files changed, 35 insertions, 0 deletions
diff --git a/Tests/SetLang/CMakeLists.txt b/Tests/SetLang/CMakeLists.txt new file mode 100644 index 0000000..d53b308 --- /dev/null +++ b/Tests/SetLang/CMakeLists.txt @@ -0,0 +1,7 @@ +# test forcing a source file language to c++ from c +project(SetLang) +add_library(foo foo.c) +add_executable(bar bar.c) +set_source_files_properties(foo.c bar.c PROPERTIES LANGUAGE CXX) +target_link_libraries(bar foo) +set_target_properties(bar PROPERTIES LINKER_LANGUAGE CXX) diff --git a/Tests/SetLang/bar.c b/Tests/SetLang/bar.c new file mode 100644 index 0000000..f59c318 --- /dev/null +++ b/Tests/SetLang/bar.c @@ -0,0 +1,21 @@ +#include <stdio.h> + +int foo(); +class A +{ +public: + A() {this->i = foo();} + int i; +}; + +int main() +{ + A a; + if(a.i == 21) + { + printf("passed foo is 21\n"); + return 0; + } + printf("Failed foo is not 21\n"); + return -1; +} diff --git a/Tests/SetLang/foo.c b/Tests/SetLang/foo.c new file mode 100644 index 0000000..e7918af --- /dev/null +++ b/Tests/SetLang/foo.c @@ -0,0 +1,7 @@ +int foo() +{ + int r = 10; + r++; + int ret = r+10; + return ret; +} |