LADSoft / OrangeC

OrangeC Compiler And Tool Chain
http://ladsoft.tripod.com/orange_c_compiler.html
Other
284 stars 39 forks source link

Testing Orange C with CMake 2 #1039

Open ghost opened 1 month ago

ghost commented 1 month ago

The project I choose to test is https://github.com/aslze/asl.

It's C++11, so it will perfectly fine for Orange C.

CMake configuration completed successfully:

mkdir build
cd build
cmake -DCMAKE_C_COMPILER=occ -DCMAKE_CXX_COMPILER=occ -GNinja ..

But when I actually build it, the build failed immediately with compilation errors:

C:\Work\asl\build>ninja -j1
[6/56] Building CXX object src\CMakeFiles\asls.dir\Http.cpp.o
Warning(138)  C:\Work\asl\src\String.cpp(862):  Possible incorrect assignment
Warning(138)  C:\Work\asl\src\String.cpp(884):  Possible incorrect assignment

FAILED: src/CMakeFiles/asls.dir/Http.cpp.o
C:\Work\OrangeC\bin\occ.exe  -x c++ -! -c C:\Work\asl\src\Http.cpp -DASL_STA
TIC -IC:\Work\asl\src\..\include -O3 -MD -MT src\CMakeFiles\asls.dir\Http.cpp.
o -MF src\CMakeFiles\asls.dir\Http.cpp.o.d -o src\CMakeFiles\asls.dir\Http.cpp.o

Error(258)    C:\Work\asl\src\..\include\asl\Map.h(283):  'asl::Map<asl::Strin
g, asl::String>::operator ()(int)' is not accessible
note:         C:\Work\asl\src\..\include\asl\Map.h(283):  Referenced in instan
tiation of 'asl::Map<asl::String, asl::String>::Enumerator::operator *()'
note:         C:\Work\asl\src\Http.cpp(81):  Referenced in instantiation of 'a
sl::Url::params( const Dic<asl::String>&)'
note:         C:\Work\asl\src\Http.cpp(89):  In template instantiation started
 here
1 Errors
ninja: build stopped: subcommand failed.

Building with GCC 14.1 is fine even though there are many warnings.