[Python-checkins] cpython (merge 3.3 -> default): Merge 3.3.

stefan.krah python-checkins at python.org
Sat Dec 22 14:26:00 CET 2012


http://hg.python.org/cpython/rev/8ffa8dc4b0f8
changeset:   80979:8ffa8dc4b0f8
parent:      80975:8006110102c5
parent:      80978:51b0a150f8aa
user:        Stefan Krah <skrah at bytereef.org>
date:        Sat Dec 22 14:24:55 2012 +0100
summary:
  Merge 3.3.

files:
  Modules/_decimal/libmpdec/basearith.h    |   7 ++++
  Modules/_decimal/libmpdec/constants.h    |   7 ++++
  Modules/_decimal/libmpdec/convolute.h    |   9 +++++-
  Modules/_decimal/libmpdec/crt.h          |   7 ++++
  Modules/_decimal/libmpdec/difradix2.h    |   7 ++++
  Modules/_decimal/libmpdec/fnt.h          |   7 ++++
  Modules/_decimal/libmpdec/fourstep.h     |   7 ++++
  Modules/_decimal/libmpdec/memory.h       |   7 ++++
  Modules/_decimal/libmpdec/mpdecimal.h    |  17 ++++++++++++
  Modules/_decimal/libmpdec/numbertheory.h |   7 ++++
  Modules/_decimal/libmpdec/sixstep.h      |   7 ++++
  Modules/_decimal/libmpdec/transpose.h    |   7 ++++
  12 files changed, 95 insertions(+), 1 deletions(-)


diff --git a/Modules/_decimal/libmpdec/basearith.h b/Modules/_decimal/libmpdec/basearith.h
--- a/Modules/_decimal/libmpdec/basearith.h
+++ b/Modules/_decimal/libmpdec/basearith.h
@@ -35,6 +35,10 @@
 #include "typearith.h"
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 mpd_uint_t _mpd_baseadd(mpd_uint_t *w, const mpd_uint_t *u, const mpd_uint_t *v,
                         mpd_size_t m, mpd_size_t n);
 void _mpd_baseaddto(mpd_uint_t *w, const mpd_uint_t *u, mpd_size_t n);
@@ -209,6 +213,9 @@
 }
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif /* BASEARITH_H */
 
 
diff --git a/Modules/_decimal/libmpdec/constants.h b/Modules/_decimal/libmpdec/constants.h
--- a/Modules/_decimal/libmpdec/constants.h
+++ b/Modules/_decimal/libmpdec/constants.h
@@ -33,6 +33,10 @@
 #include "mpdecimal.h"
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 /* choice of optimized functions */
 #if defined(CONFIG_64)
 /* x64 */
@@ -77,6 +81,9 @@
 extern const mpd_uint_t UH_P1P2;
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif /* CONSTANTS_H */
 
 
diff --git a/Modules/_decimal/libmpdec/convolute.h b/Modules/_decimal/libmpdec/convolute.h
--- a/Modules/_decimal/libmpdec/convolute.h
+++ b/Modules/_decimal/libmpdec/convolute.h
@@ -33,11 +33,18 @@
 #include "mpdecimal.h"
 #include <stdio.h>
 
+
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 #define SIX_STEP_THRESHOLD 4096
 
-
 int fnt_convolute(mpd_uint_t *c1, mpd_uint_t *c2, mpd_size_t n, int modnum);
 int fnt_autoconvolute(mpd_uint_t *c1, mpd_size_t n, int modnum);
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif
diff --git a/Modules/_decimal/libmpdec/crt.h b/Modules/_decimal/libmpdec/crt.h
--- a/Modules/_decimal/libmpdec/crt.h
+++ b/Modules/_decimal/libmpdec/crt.h
@@ -34,7 +34,14 @@
 #include <stdio.h>
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 void crt3(mpd_uint_t *x1, mpd_uint_t *x2, mpd_uint_t *x3, mpd_size_t nmemb);
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif
diff --git a/Modules/_decimal/libmpdec/difradix2.h b/Modules/_decimal/libmpdec/difradix2.h
--- a/Modules/_decimal/libmpdec/difradix2.h
+++ b/Modules/_decimal/libmpdec/difradix2.h
@@ -35,7 +35,14 @@
 #include "numbertheory.h"
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 void fnt_dif2(mpd_uint_t a[], mpd_size_t n, struct fnt_params *tparams);
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif
diff --git a/Modules/_decimal/libmpdec/fnt.h b/Modules/_decimal/libmpdec/fnt.h
--- a/Modules/_decimal/libmpdec/fnt.h
+++ b/Modules/_decimal/libmpdec/fnt.h
@@ -34,9 +34,16 @@
 #include <stdio.h>
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 int std_fnt(mpd_uint_t a[], mpd_size_t n, int modnum);
 int std_inv_fnt(mpd_uint_t a[], mpd_size_t n, int modnum);
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif
 
diff --git a/Modules/_decimal/libmpdec/fourstep.h b/Modules/_decimal/libmpdec/fourstep.h
--- a/Modules/_decimal/libmpdec/fourstep.h
+++ b/Modules/_decimal/libmpdec/fourstep.h
@@ -34,8 +34,15 @@
 #include <stdio.h>
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 int four_step_fnt(mpd_uint_t *a, mpd_size_t n, int modnum);
 int inv_four_step_fnt(mpd_uint_t *a, mpd_size_t n, int modnum);
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif
diff --git a/Modules/_decimal/libmpdec/memory.h b/Modules/_decimal/libmpdec/memory.h
--- a/Modules/_decimal/libmpdec/memory.h
+++ b/Modules/_decimal/libmpdec/memory.h
@@ -33,11 +33,18 @@
 #include "mpdecimal.h"
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 int mpd_switch_to_dyn(mpd_t *result, mpd_ssize_t size, uint32_t *status);
 int mpd_switch_to_dyn_zero(mpd_t *result, mpd_ssize_t size, uint32_t *status);
 int mpd_realloc_dyn(mpd_t *result, mpd_ssize_t size, uint32_t *status);
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif
 
 
diff --git a/Modules/_decimal/libmpdec/mpdecimal.h b/Modules/_decimal/libmpdec/mpdecimal.h
--- a/Modules/_decimal/libmpdec/mpdecimal.h
+++ b/Modules/_decimal/libmpdec/mpdecimal.h
@@ -67,10 +67,24 @@
   #else
     #define UNUSED
   #endif
+  #if defined(__GNUC__) && __GNUC__ >= 4 && !defined(__INTEL_COMPILER)
+    #define MPD_PRAGMA(x) _Pragma(x)
+    #define MPD_HIDE_SYMBOLS_START "GCC visibility push(hidden)"
+    #define MPD_HIDE_SYMBOLS_END "GCC visibility pop"
+  #else
+    #define MPD_PRAGMA(x)
+    #define MPD_HIDE_SYMBOLS_START
+    #define MPD_HIDE_SYMBOLS_END
+  #endif
   #define EXTINLINE
 #endif
 
 
+/* This header file is internal for the purpose of building _decimal.so.
+ * All symbols should have local scope in the DSO. */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 #if !defined(LEGACY_COMPILER)
   #if !defined(UINT64_MAX)
     /* The following #error is just a warning. If the compiler indeed does
@@ -789,6 +803,9 @@
 int mpd_resize_zero(mpd_t *result, mpd_ssize_t size, mpd_context_t *ctx);
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #ifdef __cplusplus
 } /* END extern "C" */
 #endif
diff --git a/Modules/_decimal/libmpdec/numbertheory.h b/Modules/_decimal/libmpdec/numbertheory.h
--- a/Modules/_decimal/libmpdec/numbertheory.h
+++ b/Modules/_decimal/libmpdec/numbertheory.h
@@ -34,6 +34,10 @@
 #include "mpdecimal.h"
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 /* transform parameters */
 struct fnt_params {
     int modnum;
@@ -66,6 +70,9 @@
 #endif
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif
 
 
diff --git a/Modules/_decimal/libmpdec/sixstep.h b/Modules/_decimal/libmpdec/sixstep.h
--- a/Modules/_decimal/libmpdec/sixstep.h
+++ b/Modules/_decimal/libmpdec/sixstep.h
@@ -34,8 +34,15 @@
 #include <stdio.h>
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 int six_step_fnt(mpd_uint_t *a, mpd_size_t n, int modnum);
 int inv_six_step_fnt(mpd_uint_t *a, mpd_size_t n, int modnum);
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif
diff --git a/Modules/_decimal/libmpdec/transpose.h b/Modules/_decimal/libmpdec/transpose.h
--- a/Modules/_decimal/libmpdec/transpose.h
+++ b/Modules/_decimal/libmpdec/transpose.h
@@ -34,6 +34,10 @@
 #include <stdio.h>
 
 
+/* Internal header file: all symbols have local scope in the DSO */
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_START)
+
+
 enum {FORWARD_CYCLE, BACKWARD_CYCLE};
 
 
@@ -52,4 +56,7 @@
 }
 
 
+MPD_PRAGMA(MPD_HIDE_SYMBOLS_END) /* restore previous scope rules */
+
+
 #endif

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list