From: KangJi Date: Thu, 27 Feb 2025 12:26:57 +0000 (+0000) Subject: cmd/cgo: update generated headers for compatibility with latest MSVC C++ standards X-Git-Tag: go1.25rc1~874 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=555974734fa9c6ed88fa16d25e2ad6ee398cf085;p=gostls13.git cmd/cgo: update generated headers for compatibility with latest MSVC C++ standards Updates #71921 Change-Id: Idfbb72e259b169121c8ced6d89ee2f13d6254d0d GitHub-Last-Rev: fcf12e5a221621f749841055df1d2c2ada3bf844 GitHub-Pull-Request: golang/go#72004 Reviewed-on: https://go-review.googlesource.com/c/go/+/653141 Reviewed-by: Dmitri Shuralyov Auto-Submit: Ian Lance Taylor Reviewed-by: Ian Lance Taylor LUCI-TryBot-Result: Go LUCI --- diff --git a/src/cmd/cgo/out.go b/src/cmd/cgo/out.go index 43c30a2000..2c3f1e06ff 100644 --- a/src/cmd/cgo/out.go +++ b/src/cmd/cgo/out.go @@ -1991,10 +1991,16 @@ typedef size_t GoUintptr; typedef float GoFloat32; typedef double GoFloat64; #ifdef _MSC_VER +#if !defined(__cplusplus) || _MSVC_LANG <= 201402L #include typedef _Fcomplex GoComplex64; typedef _Dcomplex GoComplex128; #else +#include +typedef std::complex GoComplex64; +typedef std::complex GoComplex128; +#endif +#else typedef float _Complex GoComplex64; typedef double _Complex GoComplex128; #endif