The legacy `throw()` dynamic exception specification is gone for good from C++20 (even if compilers typically still accept it, but e.g. Clang has -Wdeprecated-dynamic-exception-spec to at least warn about it). Introduce SAL_NOEXCEPT for use in URE interface include files. (For both the existing SAL_THROW_EXTERN_C and the new SAL_NOEXCEPT, base usage of `noexept` not on LIBO_INTERNAL_ONLY, but on the actual compiler C++ version, so that e.g. building CppunitTest_cppu_any-external, which uses gb_CppunitTest_set_external_code but not gb_CXX03FLAGS, will not potentially complain about those macros expanding to the legacy `throw()`, like when building with Clang -Wdeprecated-dynamic-exception-spec manually enabled.) Change-Id: I7e5c7f8d5f0fd622cfc9987d656b1f68541375aa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114908 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Language Code Generators for UNOIDL Entities
Generators for language-binding--specific representations of UNOIDL entities:
cppumakergenerates header (.hdland.hpp) files for the C++ UNO language bindingjavamakergenerates class files for the JVM language binding- the codemaker for .NET is in module
cli_ure
Some of the code is re-used by the skeletonmakers in module unodevtools.
Note the different terminology used by cppumaker vs. gbuild for the three variants that can be generated by cppumaker for some of the inline functions:
cppumaker switch: -L; cpputype.cxx: light; gbuild: normal;
cppumaker switch: none; cpputype.cxx: normal; gbuild: bootstrap;
cppumaker switch: -C; cpputype.cxx: comprehensive; gbuild: comprehensive;
which can be a source of confusion.