]> git.eshelyaron.com Git - emacs.git/commitdiff
Use ATTRIBUTE_CONST for some bignum functions
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 27 Mar 2020 21:17:44 +0000 (14:17 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 27 Mar 2020 21:18:13 +0000 (14:18 -0700)
* src/bignum.h (mpz_get_d_rounded):
* src/lisp.h (bignum_to_double, bignum_to_intmax)
(bignum_to_uintmax, bignum_bufsize):
Declare as ATTRIBUTE_CONST.

src/bignum.h
src/lisp.h

index 0c2541a9dc72cef7f592e5ecc8e29db675c40a5c..ad9021f15fd22708ac6798a5707b5189ebf2bfd6 100644 (file)
@@ -55,7 +55,7 @@ extern void emacs_mpz_mul_2exp (mpz_t, mpz_t const, EMACS_INT)
   ARG_NONNULL ((1, 2));
 extern void emacs_mpz_pow_ui (mpz_t, mpz_t const, unsigned long)
   ARG_NONNULL ((1, 2));
-extern double mpz_get_d_rounded (mpz_t const);
+extern double mpz_get_d_rounded (mpz_t const) ATTRIBUTE_CONST;
 
 INLINE_HEADER_BEGIN
 
index d3b1c39c8fb5bf17db938675986a49fbdd99cb04..f223814d8f3599151d5a18d7fe192f59f2bffadf 100644 (file)
@@ -585,7 +585,7 @@ INLINE void set_sub_char_table_contents (Lisp_Object, ptrdiff_t,
                                              Lisp_Object);
 
 /* Defined in bignum.c.  */
-extern double bignum_to_double (Lisp_Object);
+extern double bignum_to_double (Lisp_Object) ATTRIBUTE_CONST;
 extern Lisp_Object make_bigint (intmax_t);
 extern Lisp_Object make_biguint (uintmax_t);
 
@@ -3484,9 +3484,9 @@ set_sub_char_table_contents (Lisp_Object table, ptrdiff_t idx, Lisp_Object val)
 
 /* Defined in bignum.c.  This part of bignum.c's API does not require
    the caller to access bignum internals; see bignum.h for that.  */
-extern intmax_t bignum_to_intmax (Lisp_Object);
-extern uintmax_t bignum_to_uintmax (Lisp_Object);
-extern ptrdiff_t bignum_bufsize (Lisp_Object, int);
+extern intmax_t bignum_to_intmax (Lisp_Object) ATTRIBUTE_CONST;
+extern uintmax_t bignum_to_uintmax (Lisp_Object) ATTRIBUTE_CONST;
+extern ptrdiff_t bignum_bufsize (Lisp_Object, int) ATTRIBUTE_CONST;
 extern ptrdiff_t bignum_to_c_string (char *, ptrdiff_t, Lisp_Object, int);
 extern Lisp_Object bignum_to_string (Lisp_Object, int);
 extern Lisp_Object make_bignum_str (char const *, int);