Hi,

I'm currently trying to bring back more life into the SPARC port of
illumos, aka v9os. Therefore I would like to use gmp-6.2.0 for my
next compiler build. At first I'll have to say thank you for the
perfomance boost in 6.2.0, here are my very small benchmarks
for 6.1.2 and 6.2.0 on a very old Sun Ultra-60 runing:
    v9os: http://www.milax.fi/v9os.html
The measured times are only for the reuse test in subdir mpz:

gmp-6.1.2:
==========
ultra2 2x 450Mhz 2048MB:
gcc-7.4.0: -m32 -O2 -pedantic -mcpu=ultrasparc -Wa,-Av8plusa - gas 2.33.1
9:38 min.
gcc-4.7.4: -O2 -pedantic -m64 -mptr64 -mcpu=ultrasparc -Wa,-Av9a - gas 2.33.1
5:03 min.
studio12.2 -m64 -xcode=pic32 -xO3 -xtarget=ultra2 -xarch=sparcvis
5:14 min.
ultra2 2x 400Mhz snv_130 studio12.2:
11:45 min.


gmp-6.2.0:
==========
ultra2 2x 450Mhz 2048MB
gcc-5.1.0: -O2 -m64 -mptr64 -mcpu=ultrasparc -Wa,-Av9a - gas: 2.33.1
1:50 min.
studio12.2 -m64 -xO2 -xcode=pic32
1:49 min.
studio12.2 -m64 -xO2 -xcode=pic32
1:56 min.
gcc-4.7.4: -O2 -pedantic -m64 -mptr64 -mcpu=ultrasparc -Wa,-Av9a - gas: 2.33.1
1:45 min.
ultra10 1x 400Mhz 1024MB - Solaris10
studio12.3 -m64 -xO2 -xcode=pic32
1:56 min.

You may wonder about all these -xcode=pic32 settings, the -xcode=pic32 option,
was introduced for SPARC in Sun C 5.3, and was outlined equivalent to -KPIC.
Later man pages for Sun C, obsolete the -KPIC option for SPARC more<https://dict.leo.org/englisch-deutsch/precise>precisely,
Sun C 5.11 for example:

     -KPIC
          (SPARC) Obsolete. You should not use this option. Use
          -xcode=pic32 instead. For a complete list of obsolete
          options and flags, see the C User's Guide.

therefore I've written a small patch to gmp's configure script, which changes the PICFLAG onwards from Sun C 5.3 to -xcode=pic32, but only for SPARC, please see
the second hunk in the attached patch: gmp-6.2.0.patch.
The fix for gmp-h.in in the attached patch is carried forward for me since 6.0.0,
probably much longer and only enables Sun C 5.3 users to benefit from gmp's
inlining feature. The last hunk gmp-impl.h eliminates the following warning on
Solaris10 / Studio12.3:
gmp-6.2.0/gmp-impl.h", line 734: Warning (Anachronism): Attempt to redefine __builtin_constant_p without using #undef.

But now to my real problem, if I try to compile gmp-6.2.0 on v9os using Sun C 5.11,
I'll get the following very long lines:
gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(signed char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.

10 times and then for lines 3376/77 ten times, when compiling gmp-6.2.0/cxx/limits.cc could you please have a look into the attachment: Studio11-gmp-6.2.0.log for more details.

I'm using gmp-6.1.2 without problems on v9os with Sun C 5.11, but 5.13 and newer, isn't an option on v9os, because of some internal library handling between v9os and Sun C 5.13 e.g. 5.13 simply does not work on v9os. But the gcc-5.1.0 included in v9os isn't able to build a working combination of gmp/mpfr in 64bit format. So I'm stuck with Sun C 5.11 for now, would you please help me in fixing the C++ erros occuring from gmp-6.2.0/cxx/limits.cc

Thanks very much in advance
Best Regards

Klaus Ziegler

--- gmp-h.in.orig	2020-01-17 14:44:49.000000000 +0100
+++ gmp-h.in	2020-02-11 20:14:50.345454511 +0100
@@ -408,7 +408,7 @@
 #endif
 
 /* Somewhat older Sun C compilers want "static inline" */
-#if defined (__SUNPRO_C) && __SUNPRO_C >= 0x540 \
+#if defined (__SUNPRO_C) && __SUNPRO_C >= 0x530 \
   && ! defined (__GMP_EXTERN_INLINE)
 #define __GMP_EXTERN_INLINE  static inline
 #endif
--- configure.orig	2020-01-17 14:44:55.000000000 +0100
+++ configure	2020-02-11 19:03:08.809489484 +0100
@@ -16274,6 +16274,15 @@
       *)
 	lt_prog_compiler_wl='-Wl,';;
       esac
+      case `$CC -V 2>&1 | sed 5q` in
+	*C\ 5.*) SUBV=`$CC -V 2>&1 | sed 5q | $AWK '{gsub("cc: Sun C 5.",""); print $1}'`
+	  if test "$SUBV" -ge "3"; then
+	    case $host in
+	      sparcv9*|ultrasparc*) lt_prog_compiler_pic='-xcode=pic32' ;;
+	    esac
+	  fi
+	;;
+      esac
       ;;
 
     sunos4*)
@@ -21629,18 +21638,23 @@
 	;;
       solaris*)
 	case $cc_basename in
-	  CC* | sunCC*)
-	    # Sun C++ 4.2, 5.x and Centerline C++
-	    lt_prog_compiler_pic_CXX='-KPIC'
-	    lt_prog_compiler_static_CXX='-Bstatic'
-	    lt_prog_compiler_wl_CXX='-Qoption ld '
-	    ;;
 	  gcx*)
 	    # Green Hills C++ Compiler
 	    lt_prog_compiler_pic_CXX='-PIC'
-	    ;;
-	  *)
-	    ;;
+	  ;;
+	  *) lt_prog_compiler_static='-Bstatic'
+	     lt_prog_compiler_wl='-Qoption ld '
+	     lt_prog_compiler_pic_CXX='-KPIC'
+	    case `$CXX -V 2>&1 | sed 5q` in
+	      *C++\ 5.*) SUBV=`$CXX -V 2>&1 | sed 5q | $AWK '{gsub("CC: Sun C\\\++ 5.",""); print $1}'`
+		if test "$SUBV" -ge "3"; then
+		  case $host in
+		    sparc*|ultrasparc*) lt_prog_compiler_pic_CXX='-xcode=pic32' ;;
+		  esac
+		fi
+	      ;;
+	    esac
+	  ;;
 	esac
 	;;
       sunos4*)
@@ -23660,7 +23674,7 @@
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gmp_cv_c_attribute_mode" >&5
 $as_echo "$gmp_cv_c_attribute_mode" >&6; }
-if test $gmp_cv_c_attribute_mode = yes; then
+if test "$gmp_cv_c_attribute_mode" = "yes" && test "$ccbase" = "gcc"; then
 
 $as_echo "#define HAVE_ATTRIBUTE_MODE 1" >>confdefs.h
 
--- gmp-impl.h.orig	Fri Jan 17 14:44:49 2020
+++ gmp-impl.h	Sun Feb 16 16:25:43 2020
@@ -731,8 +731,10 @@
 
 /* Dummy for non-gcc, code involving it will go dead. */
 #if ! defined (__GNUC__) || __GNUC__ < 2
-#define __builtin_constant_p(x)   0
+#ifndef	__SUNPRO_CC
+#define	__builtin_constant_p(x)	0
 #endif
+#endif
 
 
 /* In gcc 2.96 and up on i386, tail calls are optimized to jumps if the
/bin/sh ../libtool  --tag=CXX   --mode=compile CC -DHAVE_CONFIG_H -I. -I/data/src/gmp-6.2.0/cxx -I..  -D__GMP_WITHIN_GMPXX -I/data/src/gmp-6.2.0   -m64 -xO3 -xtarget=ultra2 -xarch=sparcvis -c -o limits.lo /data/src/gmp-6.2.0/cxx/limits.cc
libtool: compile:  CC -DHAVE_CONFIG_H -I. -I/data/src/gmp-6.2.0/cxx -I.. -D__GMP_WITHIN_GMPXX -I/data/src/gmp-6.2.0 -m64 -xO3 -xtarget=ultra2 -xarch=sparcvis -c /data/src/gmp-6.2.0/cxx/limits.cc  -xcode=pic32 -DPIC -o .libs/limits.o
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(signed char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(unsigned char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(int), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(unsigned), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(unsigned short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(long), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(unsigned long), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(float), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(double), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(signed char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(unsigned char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(int), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(unsigned), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(unsigned short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(long), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(unsigned long), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(float), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(double), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(signed char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(unsigned char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fib_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(int), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(unsigned), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fib_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>.
Compilation aborted, too many Error messages.
/bin/sh ../libtool  --tag=CXX   --mode=compile CC -DHAVE_CONFIG_H -I. -I/data/src/gmp-6.2.0/cxx -I..  -D__GMP_WITHIN_GMPXX -I/data/src/gmp-6.2.0   -m64 -xO3 -xtarget=ultra2 -xarch=sparcvis -c -o limits.lo /data/src/gmp-6.2.0/cxx/limits.cc
libtool: compile:  CC -DHAVE_CONFIG_H -I. -I/data/src/gmp-6.2.0/cxx -I.. -D__GMP_WITHIN_GMPXX -I/data/src/gmp-6.2.0 -m64 -xO3 -xtarget=ultra2 -xarch=sparcvis -c /data/src/gmp-6.2.0/cxx/limits.cc  -xcode=pic32 -DPIC -o .libs/limits.o
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(signed char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(unsigned char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(int), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(unsigned), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(unsigned short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(long), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(unsigned long), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(float), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3375: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::factorial(double), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_fac_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_fac_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(signed char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(unsigned char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(int), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(unsigned), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(unsigned short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(long), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(unsigned long), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(float), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3376: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::primorial(double), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_primorial_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<double, __gmp_primorial_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(signed char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(unsigned char), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fib_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(int), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(unsigned), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<unsigned long, __gmp_fib_function>>.
"/data/src/gmp-6.2.0/gmpxx.h", line 3377: Error: static __gmp_expr<__mpz_struct[1], __mpz_struct[1]>::fibonacci(short), returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>, was previously declared returning __gmp_expr<__mpz_struct[1], __gmp_unary_expr<long, __gmp_fib_function>>.
Compilation aborted, too many Error messages.
_______________________________________________
gmp-bugs mailing list
[email protected]
https://gmplib.org/mailman/listinfo/gmp-bugs

Reply via email to