Missing header (gcc 15)

José Matos jaomatos at gmail.com
Fri Aug 30 08:16:23 UTC 2024


Hi,
  the usual dance is going on.

With gcc 15 some of the header files have been reworked and some
implicit inclusions have been dropped.
https://gcc.gnu.org/gcc-15/porting_to.html

The only thing that shows now is exactly the case that gives us
problems. :-)


In our code we have just one case that is affected:

lyx/src/mathed/MathParser.cpp: In function ‘std::ostream&
lyx::{anonymous}::operator<<(std::ostream&, const Token&)’:
lyx/src/mathed/MathParser.cpp:376:35: error: ‘uint32_t’ does not name a
type
  376 |                 os << static_cast<uint32_t>(t.character());
      |                                   ^~~~~~~~

lyx/src/mathed/MathParser.cpp:80:1:
note: ‘uint32_t’ is defined in header ‘<cstdint>’;
this is probably fixable by adding ‘#include <cstdint>’
   79 | #include "support/Lexer.h"
  +++ |+#include <cstdint>
   80 | 

lyx/src/mathed/MathParser.cpp:378:42: error: ‘uint32_t’ does not name a
type
  378 |                 os << '[' <<
static_cast<uint32_t>(t.character()) << ',' << t.cat() << ']';
      |                                          ^~~~~~~~
lyx/src/mathed/MathParser.cpp:378:42:
note: ‘uint32_t’ is defined in header ‘<cstdint>’;
this is probably fixable by adding ‘#include <cstdint>’

I will commit the fix for devel and wait for 2.4.3 (since there is no
worry as gcc 15 is not in use).

Best regards,
-- 
José Abílio


More information about the lyx-devel mailing list