Committed to trunk, thanks :)
On Mon, May 19, 2025 at 10:44 AM Songhe Zhu <zhuson...@eswincomputing.com> wrote: > > From: zhusonghe <zhuson...@eswincomputing.com> > > The variables `major` and `minor` in `gen-riscv-ext-texi.cc` > conflict with the macros of the same name defined in `<sys/sysmacros.h>`, > which are exposed when building with newer versions of GCC on older > Linux distributions (e.g., Ubuntu 18.04). To resolve this, we rename them > to `major_version` and `minor_version` respectively. This aligns with the > GCC community's recommended practice [1] and improves code clarity. > > [1] https://gcc.gnu.org/pipermail/gcc-patches/2025-May/683881.html > > gcc/ChangeLog: > > * config/riscv/gen-riscv-ext-texi.cc (struct version_t):rename > major/minor to major_version/minor_version. > > Signed-off-by: Songhe Zhu <zhuson...@eswincomputing.com> > --- > gcc/config/riscv/gen-riscv-ext-texi.cc | 16 ++++++++-------- > 1 file changed, 8 insertions(+), 8 deletions(-) > > diff --git a/gcc/config/riscv/gen-riscv-ext-texi.cc > b/gcc/config/riscv/gen-riscv-ext-texi.cc > index e15fdbf36f6..c29a375d56c 100644 > --- a/gcc/config/riscv/gen-riscv-ext-texi.cc > +++ b/gcc/config/riscv/gen-riscv-ext-texi.cc > @@ -6,22 +6,22 @@ > > struct version_t > { > - int major; > - int minor; > + int major_version; > + int minor_version; > version_t (int major, int minor, > enum riscv_isa_spec_class spec = ISA_SPEC_CLASS_NONE) > - : major (major), minor (minor) > + : major_version (major), minor_version (minor) > {} > bool operator<(const version_t &other) const > { > - if (major != other.major) > - return major < other.major; > - return minor < other.minor; > + if (major_version != other.major_version) > + return major_version < other.major_version; > + return minor_version < other.minor_version; > } > > bool operator== (const version_t &other) const > { > - return major == other.major && minor == other.minor; > + return major_version == other.major_version && minor_version == > other.minor_version; > } > }; > > @@ -39,7 +39,7 @@ print_ext_doc_entry (const std::string &ext_name, const > std::string &full_name, > printf ("@tab"); > for (const auto &version : unique_versions) > { > - printf (" %d.%d", version.major, version.minor); > + printf (" %d.%d", version.major_version, version.minor_version); > } > printf ("\n"); > printf ("@tab %s", full_name.c_str ()); > -- > 2.17.1 >