Le 01/10/2024 à 12:23, Pavel Sanda a écrit :
On Tue, Oct 01, 2024 at 11:12:00AM +0200, Jean-Marc Lasgouttes wrote:
Basically, for gcc >=5 and libc++, we include <string>. Unless there is
something I do not understand, the header is not really useful IMO.

Are you sure about this? I checked before sending my email and while
empty file with #include <string> produces 22k preprocesed lines,
#include "strfwd.h" on my debian stable produce ~400 lines
of preprocessed code including homebrewed
template<typename Char, typename Traits, typename Alloc> class basic_string;
typedef basic_string<char, char_traits<char>, allocator<char> > string;

I am not sure, I tried to read the code, but I might have been lost in ifdefs. How did you check your preprocessed code? Did you include <config.h> ?

Have a look at Box.{cpp,h}, the simplest user. It uses "strfwd.h" only for <ostream>.

Now have a look in your build directory at
src/.deps/Box.Po

You should see that <string> is loaded for no reason.

JMarc

--
lyx-devel mailing list
lyx-devel@lists.lyx.org
http://lists.lyx.org/mailman/listinfo/lyx-devel

Reply via email to