From: Alexis Laferrière Date: Fri, 7 Nov 2014 18:08:18 +0000 (-0500) Subject: tests: test the global compilation bug in FFI on duplicated callbacks X-Git-Tag: v0.6.11~46^2~1 X-Git-Url: http://nitlanguage.org tests: test the global compilation bug in FFI on duplicated callbacks Signed-off-by: Alexis Laferrière --- diff --git a/tests/sav/test_ffi_c_duplicated_callback_a.res b/tests/sav/test_ffi_c_duplicated_callback_a.res new file mode 100644 index 0000000..479d9d1 --- /dev/null +++ b/tests/sav/test_ffi_c_duplicated_callback_a.res @@ -0,0 +1 @@ +Hello from `a`. diff --git a/tests/sav/test_ffi_c_duplicated_callback_b.res b/tests/sav/test_ffi_c_duplicated_callback_b.res new file mode 100644 index 0000000..8c51d75 --- /dev/null +++ b/tests/sav/test_ffi_c_duplicated_callback_b.res @@ -0,0 +1,2 @@ +Hello from `a`. +Hello from `b`. diff --git a/tests/test_ffi_c_duplicated_callback_a.nit b/tests/test_ffi_c_duplicated_callback_a.nit new file mode 100644 index 0000000..3347747 --- /dev/null +++ b/tests/test_ffi_c_duplicated_callback_a.nit @@ -0,0 +1,23 @@ +# This file is part of NIT ( http://www.nitlanguage.org ). +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +`{ + #include +`} + +fun print_a(str: String) import String.to_cstring `{ + puts(String_to_cstring(str)); +`} + +print_a "Hello from `a`." diff --git a/tests/test_ffi_c_duplicated_callback_b.nit b/tests/test_ffi_c_duplicated_callback_b.nit new file mode 100644 index 0000000..d55db5e --- /dev/null +++ b/tests/test_ffi_c_duplicated_callback_b.nit @@ -0,0 +1,26 @@ +# This file is part of NIT ( http://www.nitlanguage.org ). +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import test_ffi_c_duplicated_callback_a + +`{ + #include +`} + +fun print_b(str: String) import String.to_cstring `{ + puts(String_to_cstring(str)); +`} + +print_a "Hello from `a`." +print_b "Hello from `b`."