Skip to content

Compilation error in pgm_index_nvm.hpp #2

Description

@iaoing

The field this->segments is a pointer in pgm_index_nvm.hpp.

clang++ will report compilation errors. I do not know why g++ did not report such errors.
g++ version: g++ (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0
clang++ version: clang version 19.1.7

include/learnindex/pgm_index_nvm.hpp:294:23: error: member reference base type 'Segment *' is not a structure or union
  294 |         this->segments.clear();
      |         ~~~~~~~~~~~~~~^~~~~~
include/learnindex/pgm_index_nvm.hpp:302:27: error: member reference base type 'Segment *' is not a structure or union
  302 |             this->segments.push_back(segments[i]);
      |             ~~~~~~~~~~~~~~^~~~~~~~~~
include/learnindex/pgm_index_nvm.hpp:436:24: error: member reference base type 'Segment *const' is not a structure or union
  436 |         return segments.size() * sizeof(Segment);
      |                ~~~~~~~~^~~~~

this->segments.clear();

this->segments.push_back(segments[i]);

return segments.size() * sizeof(Segment);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions