Difference between revisions of "Compiling ScummVM/C++11 Readiness"
Line 36: | Line 36: | ||
(1) --enable-c++11 breaks compilation in base/commandLine.cpp | (1) --enable-c++11 breaks compilation in base/commandLine.cpp | ||
(2) --enable-c++11 breaks compilation in backends/platform/psp/default_display_client.cpp with error 'bzero' was not declared in this scope. C++11 support is not enabled by default | (2) --enable-c++11 breaks compilation in backends/platform/psp/default_display_client.cpp with error 'bzero' was not declared in this scope. C++11 support is not enabled by default. Compiler fails in default_display_client.cpp before reaching the c++11 test file. | ||
(3) --enable-c++11 breaks compilation in backends/midi/timidity.cpp with multiple errors: 'u_char' was not declared in this scope, 'seqbuf' was not declared in this scope, 'usleep' was not declared in this scope. C++11 support is enabled by default, though, so the flag is not needed. | (3) --enable-c++11 breaks compilation in backends/midi/timidity.cpp with multiple errors: 'u_char' was not declared in this scope, 'seqbuf' was not declared in this scope, 'usleep' was not declared in this scope. C++11 support is enabled by default, though, so the flag is not needed. | ||
(4) --enable-c++11 breaks compilation in backends/fs/posix/posix-iostream.cpp with error 'fileno' was not declared in this scope. C++11 support is enabled by default, though, so the flag is not needed. | (4) --enable-c++11 breaks compilation in backends/fs/posix/posix-iostream.cpp with error 'fileno' was not declared in this scope. C++11 support is enabled by default, though, so the flag is not needed. |
Revision as of 18:38, 29 May 2020
How to test
Run ./configure --enable-c++11 --enable-test-cpp11
.
Results
Platform | Class Enum | Final Class | Final Function | Variadic | Type Aliases | Init Lists1 | Init Lists 2 | Ranged loops | Lambdas | Space in nested templates | Alt functions syntax | Static Init | Explicit Conversion | Move Semantics | Deleted Functions |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AmigaOS gcc 8.3.0 (1) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
iOS3 clang 3.7.1 | Yes | Yes | Yes | Yes | Yes | - | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
macOS gcc 4.0.1 (PPC) | No | No | No | No | No | - | No | No | No | No | No | No | No | No | No |
macOS clang 6.0 (i386) | Yes | Yes | Yes | Yes | Yes | - | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
macOS clang 9.0 (x86_64) | Yes | Yes | Yes | Yes | Yes | - | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
macOS clang 11.0 | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Mingw-w64 gcc 10.1.0 (x86_64) | Yes | Yes | Yes | Yes | Yes | - | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Mingw-w64 clang 10.0.0 (x86_64) | Yes | Yes | Yes | Yes | Yes | - | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
PSP gcc 4.9.3 (mips) (2) | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Switch gcc 10.1.0 (arm_64) (3) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Vita (psp2) gcc 9.1.0 (arm_32) (4) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Visual Studio 2019 | Yes | Yes | Yes | Yes | Yes | - | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
(1) --enable-c++11 breaks compilation in base/commandLine.cpp
(2) --enable-c++11 breaks compilation in backends/platform/psp/default_display_client.cpp with error 'bzero' was not declared in this scope. C++11 support is not enabled by default. Compiler fails in default_display_client.cpp before reaching the c++11 test file.
(3) --enable-c++11 breaks compilation in backends/midi/timidity.cpp with multiple errors: 'u_char' was not declared in this scope, 'seqbuf' was not declared in this scope, 'usleep' was not declared in this scope. C++11 support is enabled by default, though, so the flag is not needed.
(4) --enable-c++11 breaks compilation in backends/fs/posix/posix-iostream.cpp with error 'fileno' was not declared in this scope. C++11 support is enabled by default, though, so the flag is not needed.