Commit 806e01d6 authored by Cristian Adam's avatar Cristian Adam 🌴

Objective-C: Do not treat Objective-C files as C++ files

When both C and C++ langauges are enabled, the Objective-C files
should be treated as C files and not as C++ files.
parent 9150c818
......@@ -45,7 +45,7 @@ set(CMAKE_CXX_COMPILER_ID_RUN 1)
set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;CPP)
set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
foreach (lang OBJC OBJCXX)
foreach (lang C OBJC OBJCXX)
if (CMAKE_${lang}_COMPILER_ID_RUN)
foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
......
......@@ -2353,6 +2353,18 @@ ${CMake_SOURCE_DIR}/Utilities/Release/push.bash --dir dev -- '${CMake_BUILD_NIGH
)
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Objective-C/c-file-extension-test")
add_test(Objective-C.cxx-file-extension-test ${CMAKE_CTEST_COMMAND}
--build-and-test
"${CMake_SOURCE_DIR}/Tests/Objective-C/cxx-file-extension-test"
"${CMake_BINARY_DIR}/Tests/Objective-C/cxx-file-extension-test"
--build-two-config
${build_generator_args}
--build-project cxx-file-extension-test
--build-options ${build_options}
--test-command cxx-file-extension-test
)
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Objective-C/cxx-file-extension-test")
add_test(Objective-C.objc-file-extension-test ${CMAKE_CTEST_COMMAND}
--build-and-test
"${CMake_SOURCE_DIR}/Tests/Objective-C/objc-file-extension-test"
......
cmake_minimum_required(VERSION 3.15)
project(cxx-file-extension-test)
string(APPEND CMAKE_CXX_FLAGS " -std=c++11")
set(CMAKE_CXX_STANDARD 14)
add_executable(cxx-file-extension-test main.m)
#ifndef __OBJC__
# error "Compiler cannot compile Objective-C"
#endif
int main()
{
return 0;
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment