Design #1225
Move to C++14 (skipping C++11)
Description
Revise the source to use C++14 (and avoid "deprecated" features).
Related issues
History
#1 Updated by John Abbott over 5 years ago
Maintaining backward compatibility with pre-2011 C++ is probably fairly pointless, and is causing problems with users who want to use more recent versions of C++. Gereon reports that auto_ptr
has been removed from C++17.
#2 Updated by John Abbott over 5 years ago
- Related to Feature #82: C++11 compatibility questions added
#3 Updated by John Abbott over 5 years ago
Here is a list of "upgrades" to make to our source:
- make appropriate changes so that
std::move
can be used - (related to "move" above) change
void
fns which return single values via an OUT arg - [DONE] use
atomic
counters instead ofThreadsafeCounter
(see #1259) - use
auto
type for some local variables (see issue #1242) - [DELEGATED] there is a new syntax for
for
loops with iterators (see issue #1346) - there are new machine integer types (investigate!)
- other???
- [DONE] replace
auto_ptr
byunique_ptr
(or whatever is appropriate) - [DONE] modify
configure
script, and replace auxiliary scriptcxx03.sh
bycxx14.sh
- [DONE] use
nullptr
instead ofNULL
or 0 (see #1257)
Note: add new entries as we think of them (then tick them off)
#4 Updated by John Abbott over 5 years ago
- Related to Design #891: Replace auto_ptr in preparation for C++11? added
#5 Updated by John Abbott about 5 years ago
Check that the new configuration system works on several different platforms (incl. Microsoft???)
#6 Updated by Anna Maria Bigatti about 5 years ago
- Related to Support #1240: John's visit Feb 2019 added
#7 Updated by John Abbott about 5 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 20
So far I have done the following:
- revised and renamed script
cxx03.sh
intocxx14.sh
- revised
configure
script accordingly - replaced
auto_ptr
byunique_ptr
(somewhat blindly) - so far everything works fine on Anna's computer
#8 Updated by John Abbott about 5 years ago
- % Done changed from 20 to 30
JAA has checked in latest changes. Hope they work for Anna!
#9 Updated by Anna Maria Bigatti about 5 years ago
John Abbott wrote:
JAA has checked in latest changes. Hope they work for Anna!
whateve that was, it compiles and run the tests!
#10 Updated by John Abbott about 5 years ago
- Related to Bug #1256: RingID: different values in test-output on different platforms added
#11 Updated by John Abbott about 5 years ago
- Related to Design #1257: C++14: use nullptr added
#12 Updated by John Abbott about 5 years ago
- Related to Design #1259: ThreadsafeCounter is now obsolete? added
#13 Updated by John Abbott about 5 years ago
- Related to Design #710: Update normaliz interface? added
#14 Updated by John Abbott about 5 years ago
- Related to Feature #1218: 32-bit or 64-bit preprocessor macro? added
#15 Updated by John Abbott about 5 years ago
- Related to Design #581: C++14: MachineInt added
#16 Updated by Anna Maria Bigatti over 4 years ago
- Related to Feature #1305: Create a directory added
#17 Updated by John Abbott over 4 years ago
- Related to Design #1242: C++14: Use type auto where appropriate added
#18 Updated by John Abbott over 4 years ago
- Related to Design #1346: C++14: use the new for loop syntax where appropriate (like cocoa's foreach) added
#19 Updated by John Abbott over 4 years ago
- Related to Feature #142: Improve threadsafety added
#20 Updated by John Abbott about 4 years ago
- Target version changed from CoCoALib-1.0 to CoCoALib-0.99850
#21 Updated by John Abbott about 4 years ago
- Related to Design #1446: Start using C++14 "move" capability added
#22 Updated by John Abbott over 3 years ago
- Related to Design #1511: Use C++14 constexpr added
#23 Updated by John Abbott over 3 years ago
- Related to Design #1519: Interpreter fn Value::from can use std::move? added
#24 Updated by John Abbott over 3 years ago
- Related to Design #1520: Replace BOOST_FOREACH by new C++14 range for syntax added
#25 Updated by John Abbott over 3 years ago
- Related to Design #894: strict enum types: C++11 extension added
#26 Updated by John Abbott about 3 years ago
- Related to Design #1572: Use noexcept added
#27 Updated by John Abbott over 2 years ago
- Related to Design #1625: Use new C++ keyword override added
#28 Updated by John Abbott over 2 years ago
- Related to Design #1627: Use keyword "delete" for deleted functions added
#29 Updated by John Abbott over 1 year ago
- Related to Feature #1702: Use C++ attributes added
#30 Updated by John Abbott about 2 months ago
- Target version changed from CoCoALib-0.99850 to CoCoALib-0.99900