Patches to improve compatibility with modern C++ standard

Jean-Marc Lasgouttes lasgouttes at lyx.org
Mon May 4 18:09:07 UTC 2020


Le 04/05/2020 à 06:05, Thibaut Cuvelier a écrit :
> Dear list,

Dear Thibaut,

> During my work on DocBook (which started at www.lyx.org/trac/ticket/8444 
> <http://www.lyx.org/trac/ticket/8444>), I switched to Visual C++ 2019 as 
> a compiler. The only way I found to make it compile large parts of LyX 
> was to switch to recent C++ standards, so that all features are 
> available. Unfortunately, some deprecated parts of C++ have been removed 
> in the latest versions of the standard… These changes are probably not 
> required for now with other compilers, but some form will be required in 
> the future when switching to newer C++ versions.

Thanks for the patches. As you mentioned later, the boost part should be 
done by upgrading boost. The new includues are OK.

Concerning the "modern" C++ contructs, I am all for removing helper 
casses that we had, but I would not describe lambda functions as 
something that one may like to read. I guess it is a good occasion for 
factor code a bit: for example, BranchList methods could use 
BranchList::find() instead of reusing the same horrible std::find() 
again and again. I am aware that this is not something you introduced, 
though. However, since you are the person who knows best this code 
currenlty, I'd be grateful if you could do this extra step.

The extra #include is fine of course.

I will handle the boost upgrade.

We will need a statement from you stating that you license your patches 
under the GPL 2 or later by sending to the list a sentence like:

   I hereby grant permission to use my contributions to LyX under the GPL
   license version 2 or later.

(this is to populate https://www.lyx.org/BlanketPermission).

JMarc


More information about the lyx-devel mailing list