[MacPorts] #74342: clang-22 +libstdcxx @22.1.8: error: too many arguments to function call, expected 2, have 6 (was: clang-22 +libstdcxx fails to build on macos 15.7.8)

MacPorts noreply at macports.org
Thu Aug 20 23:17:41 UTC 2026


#74342: clang-22 +libstdcxx @22.1.8: error: too many arguments to function call,
expected 2, have 6
-----------------------+----------------------
  Reporter:  misos1    |      Owner:  (none)
      Type:  defect    |     Status:  new
  Priority:  Normal    |  Milestone:
 Component:  ports     |    Version:
Resolution:            |   Keywords:  catalina
      Port:  clang-22  |
-----------------------+----------------------
Changes (by ryandesign):

 * keywords:   => catalina
 * port:   => clang-22


Old description:

> Seems this patch is applied: https://github.com/macports/macports-
> ports/blob/master/lang/llvm-devel/files/0005-clang-support-macports-
> libstdcxx.patch
>
> It calls 6-argument overload of AddGnuCPlusPlusIncludePaths which does
> not exist on the class it is called in. There is just 2-argument
> overload, and it is a virtual function overridden in child class, which
> actually contains also this 6-argument overload. I successfully compiled
> it after adding also this 6-argument overload into base class in
> Darwin.cpp and Darwin.h.
>
> :info:build /opt/local/var/macports/build/clang-22-11196b9d/work/llvm-
> project-22.1.8.src/clang/lib/Driver/ToolChains/Darwin.cpp:2810:81: error:
> too many arguments to function call, expected 2, have 6
> :info:build  2810 |     bool IsBaseFoundMacPorts =
> AddGnuCPlusPlusIncludePaths(DriverArgs, CC1Args,
> llvm::StringRef("/opt/local/include/gcc/c++"),
> :info:build       |
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> :info:build  2811 |
> "",
> :info:build       |
> ~~~
> :info:build  2812 |
> "x86_64-apple-darwin24",
> :info:build       |
> ~~~~~~~~~~~~~~~~~~~~~~~~
> :info:build  2813 |
> getTriple().getArch() == llvm::Triple::x86_64 ? "" : "i386");
> :info:build       |
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> :info:build /opt/local/var/macports/build/clang-22-11196b9d/work/llvm-
> project-22.1.8.src/clang/lib/Driver/ToolChains/Darwin.h:344:3: note:
> 'AddGnuCPlusPlusIncludePaths' declared here
> :info:build   344 |   AddGnuCPlusPlusIncludePaths(const
> llvm::opt::ArgList &DriverArgs,
> :info:build       |   ^
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> :info:build   345 |
> llvm::opt::ArgStringList &CC1Args) const;
> :info:build       |
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> :info:build /opt/local/var/macports/build/clang-22-11196b9d/work/llvm-
> project-22.1.8.src/clang/lib/Driver/ToolChains/Darwin.cpp:2810:10:

New description:

 Seems this patch is applied: https://github.com/macports/macports-
 ports/blob/master/lang/llvm-devel/files/0005-clang-support-macports-
 libstdcxx.patch

 It calls 6-argument overload of `AddGnuCPlusPlusIncludePaths` which does
 not exist on the class it is called in. There is just 2-argument overload,
 and it is a virtual function overridden in child class, which actually
 contains also this 6-argument overload. I successfully compiled it after
 adding also this 6-argument overload into base class in Darwin.cpp and
 Darwin.h.

 {{{
 :info:build /opt/local/var/macports/build/clang-22-11196b9d/work/llvm-
 project-22.1.8.src/clang/lib/Driver/ToolChains/Darwin.cpp:2810:81: error:
 too many arguments to function call, expected 2, have 6
 :info:build  2810 |     bool IsBaseFoundMacPorts =
 AddGnuCPlusPlusIncludePaths(DriverArgs, CC1Args,
 llvm::StringRef("/opt/local/include/gcc/c++"),
 :info:build       |
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 :info:build  2811 |                                                    "",
 :info:build       |                                                    ~~~
 :info:build  2812 |
 "x86_64-apple-darwin24",
 :info:build       |
 ~~~~~~~~~~~~~~~~~~~~~~~~
 :info:build  2813 |
 getTriple().getArch() == llvm::Triple::x86_64 ? "" : "i386");
 :info:build       |
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 :info:build /opt/local/var/macports/build/clang-22-11196b9d/work/llvm-
 project-22.1.8.src/clang/lib/Driver/ToolChains/Darwin.h:344:3: note:
 'AddGnuCPlusPlusIncludePaths' declared here
 :info:build   344 |   AddGnuCPlusPlusIncludePaths(const llvm::opt::ArgList
 &DriverArgs,
 :info:build       |   ^
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 :info:build   345 |                               llvm::opt::ArgStringList
 &CC1Args) const;
 :info:build       |
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 :info:build /opt/local/var/macports/build/clang-22-11196b9d/work/llvm-
 project-22.1.8.src/clang/lib/Driver/ToolChains/Darwin.cpp:2810:10:
 }}}

--

-- 
Ticket URL: <https://trac.macports.org/ticket/74342#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list