[Bug 271953] japanese/zinnia: fix build with clang 16

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 11 Jun 2023 17:04:54 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=271953

            Bug ID: 271953
           Summary: japanese/zinnia: fix build with clang 16
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: dim@FreeBSD.org
                CC: beyert@cs.ucr.edu
             Flags: maintainer-feedback?(beyert@cs.ucr.edu)
                CC: beyert@cs.ucr.edu

Since clang 16 (and gcc 11) the default C++ standard is now gnu++17.
Because japanese/zinnia's build infrastructure does not explicitly set
its C++ standard, this leads to an error:

  svm.cpp:50:10: error: no member named 'random_shuffle' in namespace 'std'
      std::random_shuffle(index.begin(), index.begin() + active_size);
      ~~~~~^

This is because std::random_shuffle has been removed from C++17. An
suitable replacement is std::shuffle, using a std::random_device in
combination with std::mt19937 as the random number engine.

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