Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Nov 2024 10:11:08 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 282830] math/givaro: fix build with clang 19
Message-ID:  <bug-282830-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D282830

            Bug ID: 282830
           Summary: math/givaro: fix build with clang 19
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: pi@FreeBSD.org
          Reporter: dim@FreeBSD.org
          Assignee: pi@FreeBSD.org
             Flags: maintainer-feedback?(pi@FreeBSD.org)

Clang 19 has become more strict about errors in member functions, which
results in errors building math/givaro:

  ./givaro/givaro/givaro/random-integer.h:94:51: error: no viable overloaded
'=3D'
     94 |                 const_cast<Integer_Domain&>(_ring)=3DR._ring;
        |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
  ./givaro/givaro/givaro/random-integer.h:94:51: note: type 'Integer_Domain'
(aka 'ZRing<Integer>') is incomplete
     94 |                 const_cast<Integer_Domain&>(_ring)=3DR._ring;
        |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
  In file included from givintprime.C:19:
  In file included from ./givaro/givintprime.h:24:
  In file included from ./givaro/givaro/givinteger.h:25:
  ../../../src/kernel/ring/givaro/zring.h:123:13: warning: misleading
indentation; statement is not part of the previous 'while'
[-Wmisleading-indentation]
    123 |             return a; }
        |             ^
  ../../../src/kernel/ring/givaro/zring.h:121:11: note: previous statement =
is
here
    121 |         { while (isZero(init(a, g())))
        |           ^

The `const_cast` line has been removed by upstream as part of
https://github.com/linbox-team/givaro/commit/b0cf33e1, but that commit
is rather large. It is enough to only delete the line.

Also fix a failure that occurs when running "make test":

  ../src/kernel/recint/rfiddling.h:170:29: error: no member named 'Low' in
'rint<K>'

This is because the expression `max.Low.Value` should actually be
`max.Value.Low`.

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-282830-7788>