[Bug 271415] net/norm: fix build with clang 16

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 16 May 2023 18:36:39 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=271415

--- Comment #5 from commit-hook@FreeBSD.org ---
A commit in branch main references this bug:

URL:
https://cgit.FreeBSD.org/ports/commit/?id=0fb51ef88cf03579745135004621570a58998dfe

commit 0fb51ef88cf03579745135004621570a58998dfe
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2023-05-14 15:06:42 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2023-05-16 18:22:56 +0000

    net/norm: fix build with clang 16

    Since clang 16 (and gcc 11) the default C++ standard is now gnu++17.
    Because net/norm's build system does not explicitly set the C++
    standard, this leads to several errors:

      ../src/common/normEncoderRS8.cpp:264:5: error: ISO C++17 does not allow
'register' storage class specifier [-Wregister]
          USE_GF_MULC ;
          ^
      ../src/common/normEncoderRS8.cpp:136:21: note: expanded from macro
'USE_GF_MULC'
      #define USE_GF_MULC register gf * __gf_mulc_
                          ^
      ../src/common/normEncoderRS8.cpp:265:5: error: ISO C++17 does not allow
'register' storage class specifier [-Wregister]
          register gf* dst = dst1;
          ^~~~~~~~~
      ../src/common/normEncoderRS8.cpp:266:5: error: ISO C++17 does not allow
'register' storage class specifier [-Wregister]
          register gf* src = src1 ;
          ^~~~~~~~~

    Add USE_CXXSTD=gnu++98 to compile for C++98 with GNU extensions instead,
    as net/norm does not seem to use any C++11 or later constructs.

    PR:             271415
    Approved by:    portmgr (build fix blanket)
    MFH:            2023Q2

 net/norm/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

-- 
You are receiving this mail because:
You are the assignee for the bug.