Skip to content

Compilation error in gcc15 #1192

Closed
Closed
@toge

Description

@toge

Describe the bug
compilation error due to lack of include .

Error message is following.

In file included from include/LIEF/PE/ResourceData.hpp:22,
                 from src/PE/ResourceData.cpp:21:
include/LIEF/PE/ResourceNode.hpp:67:3: error: ‘uint32_t’ does not name a type
   67 |   uint32_t id() const {
      |   ^~~~~~~~
include/LIEF/PE/ResourceNode.hpp:25:1: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
   24 | #include "LIEF/iterators.hpp"
  +++ |+#include <cstdint>
   25 | 
include/LIEF/PE/ResourceNode.hpp:90:3: error: ‘uint32_t’ does not name a type
   90 |   uint32_t depth() const {
      |   ^~~~~~~~
include/LIEF/PE/ResourceNode.hpp:90:3: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
include/LIEF/PE/ResourceNode.hpp:116:11: error: ‘uint32_t’ has not been declared
  116 |   void id(uint32_t id) {
      |           ^~~~~~~~
include/LIEF/PE/ResourceNode.hpp:116:11: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
include/LIEF/PE/ResourceNode.hpp:132:21: error: ‘uint32_t’ has not been declared
  132 |   void delete_child(uint32_t id);
      |                     ^~~~~~~~
include/LIEF/PE/ResourceNode.hpp:132:21: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
include/LIEF/PE/ResourceNode.hpp:146:3: error: ‘uint32_t’ does not name a type
  146 |   uint32_t       id_ = 0;
      |   ^~~~~~~~
include/LIEF/PE/ResourceNode.hpp:146:3: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
include/LIEF/PE/ResourceNode.hpp:149:3: error: ‘uint32_t’ does not name a type
  149 |   uint32_t       depth_ = 0;
      |   ^~~~~~~~
include/LIEF/PE/ResourceNode.hpp:149:3: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
include/LIEF/PE/ResourceNode.hpp: In member function ‘bool LIEF::PE::ResourceNode::has_name() const’:

To Reproduce
Compile on gcc 15 with LIEF_PE.

Expected behavior
compile successfully.

Environment (please complete the following information):

  • System and Version : Fedora 42
  • Target format PE
  • LIEF commit version: 0.16.5

Additional context

Same as #918

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions