Changes between Version 8 and Version 9 of RFC5
- Timestamp:
- Mar 29, 2017, 2:17:35 PM (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
RFC5
v8 v9 30 30 A social factor: since C++ programmers no longer enjoy C++98, allowing C++11 mode may increase potential for new contributions. 31 31 32 == Release ==33 34 First release of C++11-enabled GEOS could be 3.7.0 or, perhaps, 4.0.0.35 36 32 == Compilers Landscape == 37 33 … … 56 52 This proposal only requests agreement for the C++11 compilation mode. 57 53 58 This proposal does not suggest any detailed roadmap of big refactoring committed in one go. 54 If accepted, currently available build configurations (Autotools, CMake, NMake) will be updated to switch the compilation mode to C++11. 55 56 This proposal does not suggest any detailed roadmap of big refactoring of the GEOS C++ codebase. 59 57 60 58 The GEOS codebase is around 150 KLOC and given the available man-power to LOCs ratio, such one-step refactoring would not be feasible. … … 70 68 Once accepted, first step will be to update the build configurations to require C++11-compliant compiler. 71 69 72 73 70 == Issues == 74 71 … … 77 74 * C++11 destructors, by default, have now the new exception specification of `nothrow(true)`. Destructors of GEOS classes should be reviewed and any that are allowed/expected to throw exceptions must be marked with `nothrow(false)`. Otherwise, any user of the existing GEOS codebase would find the program terminating whenever GEOS destructor throws an exception. Such review would be beneficial anyway. 78 75 76 == Release == 77 78 First release of C++11-enabled GEOS could be 3.7.0 or, perhaps, 4.0.0. 79 79 80 == References == 80 81