build in C++17 mode by default
* configure.ac: Activate C++17, and replace --enable-c++17 by --enable-c++20. * NEWS: Mention the news. * .gitlab-ci.yml: Use C++20 for the former C++17 builds. * HACKING, README, doc/org/compile.org, doc/org/concepts.org, doc/org/index.org, doc/org/install.org, doc/org/tut.org, doc/org/upgrade2.org, spot/misc/escape.hh: Adjust mentions of C++14.
This commit is contained in:
parent
a770727ee8
commit
4f23097619
12 changed files with 79 additions and 62 deletions
|
|
@ -17,10 +17,10 @@ experience of updating a couple of projects that are using Spot.
|
|||
* Overview of the changes
|
||||
|
||||
Let's begin by just trying to summarize what has changed between
|
||||
Spot 1.2.6 and Spot 2.0, just to get an idea of what will need to be
|
||||
Spot 1.2.6 and Spot 2.x, just to get an idea of what will need to be
|
||||
updated.
|
||||
|
||||
1. [[#cpp14][Spot now compiles using the C++14 standard]]. Compliant compiler
|
||||
1. [[#cpp17][Spot now compiles using the C++17 standard]]. Compliant compilers
|
||||
are sufficiently widespread now that this should not be an issue.
|
||||
|
||||
2. The layout of the source-tree and the layout of the installed
|
||||
|
|
@ -83,22 +83,20 @@ experience of updating a couple of projects that are using Spot.
|
|||
numbered. Many algorithms have been rewritten on top of this
|
||||
=twa_graph= class, and this simplified them a lot.
|
||||
|
||||
* Upgrading to C++14
|
||||
* Upgrading to C++17
|
||||
:PROPERTIES:
|
||||
:CUSTOM_ID: cpp14
|
||||
:CUSTOM_ID: cpp17
|
||||
:END:
|
||||
|
||||
Because Spot now relies on C++14 features, programs that use Spot
|
||||
Because Spot now relies on C++17 features, programs that use Spot
|
||||
should at least be compiled using this version (or a later one) of
|
||||
the language.
|
||||
|
||||
Before the =g++= 6.0, the default C++ standard used was C++98, and
|
||||
enabling C++14 is usually done by passing the option =-std=c++14=.
|
||||
In =g++= 6.0 the default C++ standard used is C++14, so passing
|
||||
=-std=c++14= is not necessary.
|
||||
This is usually done by passing the option =-std=c++17= to =g++= or
|
||||
=clang++=.
|
||||
|
||||
Upgrading from C++98, C++03 or C++11 to C++14 should be relatively
|
||||
smooth as the language is /mostly/ backward compatible.
|
||||
Upgrading from C++98, C++03, C++11, or C++14 to C++17 should be
|
||||
relatively smooth as the language is /mostly/ backward compatible.
|
||||
|
||||
* Upgrading =#include= directives
|
||||
:PROPERTIES:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue