Q .: I removed the inclusion of boost / spirit.hpp. Why was this the reason? PS thanks to FoReVer
A .: That was the reason why
CL: warning: this header is deprecated. Please, use:
> boost / spirit / include / classic.hpp
In other words: he told you exactly why. And this leads to a normal life as "just because."
Now about why developers will discount the old headers:
Wikipedia Deprecation
Failure is the status applied to a software function, feature, or practice that indicates that it should be avoided, usually due to a replacement.
And here you have it: "usually because it is replaced." In this case, SpiritV2 replaced SpiritV1 around 2009 (?). This is stated in the documentation:
Spirit classic
The code base Spirit V1.8.x has been integrated with Spirit V2. Now it is called Spirit.Classic. As the directory structure has changed (Spirit Classic headers have now been moved to the $ BOOST_ROOT / boost / spirit / home / classic directory), we have created forwarding headers that let you compile existing applications without any changes.
However, these redirection headers are out of date, which will result in the corresponding warnings generated for each of the headers starting with Boost V1.38. Forwarding headers are expected to be removed in the future.
The recommended way to use Spirit Classic is now to include the header files from the $ BOOST_ROOT / boost / spirit / include directory. All Spirit Classic headers in this directory have "classic_" prefixed with their name.
All in all, it just means: Spirit Classic OLD. Do not use it.
If you have inherited the Spirit V1 parser and need a guide to upgrade to Spirit V2:
Note: SpiritX3 is already being developed when we speak. See here
source share