This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
util.c - avoid warning about truncated pointer value
[perl5.git] / uconfig.h
index 2d38ac4..892d74c 100644 (file)
--- a/uconfig.h
+++ b/uconfig.h
 
 /* HAS_MBLEN:
  *     This symbol, if defined, indicates that the mblen routine is available
- *     to find the number of bytes in a multibye character.
+ *     to find the number of bytes in a multibyte character.
  */
 /*#define HAS_MBLEN            / **/
 
  *     This symbol contains the ~name expanded version of ARCHLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-/*#define ARCHLIB "/usr/local/lib/perl5/5.31/unknown"          / **/
-/*#define ARCHLIB_EXP "/usr/local/lib/perl5/5.31/unknown"              / **/
+/*#define ARCHLIB "/usr/local/lib/perl5/5.37/unknown"          / **/
+/*#define ARCHLIB_EXP "/usr/local/lib/perl5/5.37/unknown"              / **/
 
 /* BIN:
  *     This symbol holds the path of the bin directory where the package will
  *     This symbol contains the ~name expanded version of PRIVLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define PRIVLIB "/usr/local/lib/perl5/5.31"            /**/
-#define PRIVLIB_EXP "/usr/local/lib/perl5/5.31"                /**/
+#define PRIVLIB "/usr/local/lib/perl5/5.37"            /**/
+#define PRIVLIB_EXP "/usr/local/lib/perl5/5.37"                /**/
 
 /* SITEARCH:
  *     This symbol contains the name of the private library for this package.
  *     This symbol contains the ~name expanded version of SITEARCH, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-/*#define SITEARCH "/usr/local/lib/perl5/5.31/unknown"         / **/
-/*#define SITEARCH_EXP "/usr/local/lib/perl5/5.31/unknown"             / **/
+/*#define SITEARCH "/usr/local/lib/perl5/5.37/unknown"         / **/
+/*#define SITEARCH_EXP "/usr/local/lib/perl5/5.37/unknown"             / **/
 
 /* SITELIB:
  *     This symbol contains the name of the private library for this package.
  *     removed.  The elements in inc_version_list (inc_version_list.U) can
  *     be tacked onto this variable to generate a list of directories to search.
  */
-#define SITELIB "/usr/local/lib/perl5/5.31"            /**/
-#define SITELIB_EXP "/usr/local/lib/perl5/5.31"                /**/
+#define SITELIB "/usr/local/lib/perl5/5.37"            /**/
+#define SITELIB_EXP "/usr/local/lib/perl5/5.37"                /**/
 #define SITELIB_STEM "/usr/local/lib/perl5"            /**/
 
 /* PERL_VENDORARCH:
 /* HASATTRIBUTE_WARN_UNUSED_RESULT:
  *     Can we handle GCC attribute for warning on unused results
  */
+/* HASATTRIBUTE_ALWAYS_INLINE:
+ *     Can we handle GCC attribute for functions that should always be
+ *     inlined.
+ */
+/* HASATTRIBUTE_VISIBILITY:
+ *     Can we handle GCC attribute for functions that should have a
+ *     different visibility.
+ */
 /*#define HASATTRIBUTE_DEPRECATED      / **/
 /*#define HASATTRIBUTE_FORMAT  / **/
 /*#define PRINTF_FORMAT_NULL_OK        / **/
 /*#define HASATTRIBUTE_UNUSED  / **/
 /*#define HASATTRIBUTE_WARN_UNUSED_RESULT      / **/
 /*#define HASATTRIBUTE_ALWAYS_INLINE   / **/
+/*#define HASATTRIBUTE_VISIBILITY      / **/
 
 /* HAS_BACKTRACE:
  *     This symbol, if defined, indicates that the backtrace() routine is
 /*#define HAS_ENDPROTOENT              / **/
 
 /* HAS_ENDPWENT:
- *     This symbol, if defined, indicates that the getgrent routine is
+ *     This symbol, if defined, indicates that the endpwent routine is
  *     available for finalizing sequential access of the passwd database.
  */
 /*#define HAS_ENDPWENT         / **/
  *     LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_BE
  *     LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LE_BE
  *     LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BE_LE
+ *     LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_LITTLE_ENDIAN
+ *     LONG_DOUBLE_IS_DOUBLEDOUBLE_128_BIT_BIG_ENDIAN
  *     LONG_DOUBLE_IS_VAX_H_FLOAT
  *     LONG_DOUBLE_IS_UNKNOWN_FORMAT
  *     It is only defined if the system supports long doubles.
  *     This symbol, if defined, indicates that the union semun is
  *     defined by including <sys/sem.h>.  If not, the user code
  *     probably needs to define it as:
- *     union semun {
+ *      union semun {
  *         int val;
  *         struct semid_ds *buf;
  *         unsigned short *array;
- *     }
+ *      }
  */
 /* USE_SEMCTL_SEMUN:
  *     This symbol, if defined, indicates that union semun is
  */
 /*#define HAS_ATANH            / **/
 
+/* HAS_NON_INT_BITFIELDS:
+ *     This symbol, if defined, indicates that the C compiler accepts, without
+ *     error or warning, struct bitfields that are declared with sizes other
+ *     than plain 'int'; for example 'unsigned char' is accepted.
+ */
+#define HAS_NON_INT_BITFIELDS  /**/
+
 /* HAS_BUILTIN_CHOOSE_EXPR:
  *     Can we handle GCC builtin for compile-time ternary-like expressions
  */
  */
 /*#define HAS_FEGETROUND       / **/
 
+/* HAS_FFS:
+ *     This symbol, if defined, indicates that the ffs routine is available
+ *     to find the first bit set in its argument.  If it's not available,
+ *     roll your own.
+ */
+/* HAS_FFSL:
+ *     This symbol, if defined, indicates that the ffsl routine is available
+ *     to find the first bit set in its argument.  If it's not available,
+ *     roll your own.
+ */
+/*#define HAS_FFS              / **/
+/*#define HAS_FFSL             / **/
+
 /* HAS_FINITE:
  *     This symbol, if defined, indicates that the finite routine is
  *     available to check whether a double is finite (non-infinity non-NaN).
 
 /* HAS_MEMMEM:
  *     This symbol, if defined, indicates that the memmem routine is
- *     available to return a pointer to the start of the first occurance
+ *     available to return a pointer to the start of the first occurrence
  *     of a substring in a memory area (or NULL if not found).
  *     In glibc, memmem is a GNU extension.  The function is visible in
  *     libc, but the prototype is only visible if _GNU_SOURCE is #defined.
  *     available to return the name of the locale for a category mask.
  */
 /* I_XLOCALE:
- *     This symbol, if defined, indicates to the C program that it should
- *     include <xlocale.h> to get uselocale() and its friends.
+ *     This symbol, if defined, indicates to the C program that the
+ *     header xlocale.h is available.  See also NEED_XLOCALE_H
+ */
+/* NEED_XLOCALE_H:
+ *     This symbol, if defined, indicates that the C program should
+ *     include <xlocale.h> to get newlocale() and its friends.
  */
 /*#define      HAS_NEWLOCALE   / **/
 /*#define      HAS_FREELOCALE  / **/
 /*#define      HAS_USELOCALE   / **/
 /*#define      HAS_DUPLOCALE   / **/
 /*#define      HAS_QUERYLOCALE / **/
+/*#define      NEED_XLOCALE_H  / **/
 /*#define      I_XLOCALE               / **/
 
 /* HAS_NEXTAFTER:
  */
 /*#define HAS_SENDMSG          / **/
 
+/* HAS_SETENV:
+ *     This symbol, if defined, indicates that the setenv routine is
+ *     available for use.
+ */
+/*#define HAS_SETENV           / **/
+
 /* HAS_SETITIMER:
  *     This symbol, if defined, indicates that the setitimer routine is
  *     available to set interval timers.
  *     does have the f_flags member containing the mount flags of
  *     the filesystem containing the file.
  *     This kind of struct statfs is coming from <sys/mount.h> (BSD 4.3),
- *     not from <sys/statfs.h> (SYSV).  Older BSDs (like Ultrix) do not
- *     have statfs() and struct statfs, they have ustat() and getmnt()
- *     with struct ustat and struct fs_data.
+ *     not from <sys/statfs.h> (SYSV).  Older BSDs do not have statfs() and
+ *     struct statfs, they have ustat() and getmnt() with struct ustat and
+ *     struct fs_data.
  */
 /*#define HAS_STRUCT_STATFS_F_FLAGS            / **/
 
  */
 /*#define HAS_STRTOUQ          / **/
 
+/* HAS_STRXFRM_L:
+ *     This symbol, if defined, indicates that the strxfrm_l() routine is
+ *     available to transform strings.
+ */
+/*#define HAS_STRXFRM_L        / **/
+
 /* HAS_SYSCALL_PROTO:
  *     This symbol, if defined, indicates that the system provides
  *     a prototype for the syscall() function.  Otherwise, it is up
 
 /* HAS_WCSXFRM:
  *     This symbol, if defined, indicates that the wcsxfrm routine is
- *     available to tranform a wide character string for wcscmp().
+ *     available to transform a wide character string for wcscmp().
  */
 /*#define HAS_WCSXFRM  / **/
 
  *     This symbol defines the format string used for printing a Perl NV
  *     using %g-ish floating point format.
  */
+/* I32df:
+ *     This symbol defines the format string used for printing a Perl I32
+ *     as a signed decimal integer.
+ */
+/* U32uf:
+ *     This symbol defines the format string used for printing a Perl U32
+ *     as an unsigned decimal integer.
+ */
+/* U32of:
+ *     This symbol defines the format string used for printing a Perl U32
+ *     as an unsigned octal integer.
+ */
+/* U32xf:
+ *     This symbol defines the format string used for printing a Perl U32
+ *     as an unsigned hexadecimal integer in lowercase abcdef.
+ */
+/* U32Xf:
+ *     This symbol defines the format string used for printing a Perl U32
+ *     as an unsigned hexadecimal integer in uppercase ABCDEF.
+ */
 #define        IVdf            "ld"            /**/
 #define        UVuf            "lu"            /**/
 #define        UVof            "lo"            /**/
 #define        NVef            "e"             /**/
 #define        NVff            "f"             /**/
 #define        NVgf            "g"             /**/
+#define        I32df           "ld"            /**/
+#define        U32uf           "lu"            /**/
+#define        U32of           "lo"            /**/
+#define        U32xf           "lx"            /**/
+#define        U32Xf           "lX"            /**/
 
 /* SELECT_MIN_BITS:
  *     This symbol holds the minimum number of bits operated by select.
  */
 #define SELECT_MIN_BITS        32      /**/
 
+/* ST_DEV_SIZE:
+ *     This variable contains the size of struct stat's st_dev in bytes.
+ */
+/* ST_DEV_SIGN:
+ *     This symbol holds the signedness of struct stat's st_dev.
+ *     1 for unsigned, -1 for signed.
+ */
+#define ST_DEV_SIGN 1  /* st_dev sign */
+#define ST_DEV_SIZE 4  /* st_dev size */
+
 /* ST_INO_SIZE:
  *     This variable contains the size of struct stat's st_ino in bytes.
  */
  */
 /*#define USE_C_BACKTRACE              / **/
 
+/* USE_STRICT_BY_DEFAULT:
+ *     This symbol, if defined, enables additional defaults.
+ *     At this time it only enables implicit strict by default.
+ */
+/*#define USE_STRICT_BY_DEFAULT        / * use strict by default */
+
 /* USE_DTRACE:
  *     This symbol, if defined, indicates that Perl should
  *     be built with support for DTrace.
 /*#define HAS_ENDSERVENT_R     / **/
 #define ENDSERVENT_R_PROTO 0   /**/
 
+/* GETENV_PRESERVES_OTHER_THREAD:
+ *     This symbol, if defined, indicates that the getenv system call doesn't
+ *     zap the static buffer of getenv() in a different thread.
+ *
+ *     The typical getenv() implementation will return a pointer to the proper
+ *     position in **environ.  But some may instead copy them to a static
+ *     buffer in getenv().  If there is a per-thread instance of that buffer,
+ *     or the return points to **environ, then a many-reader/1-writer mutex
+ *     will work; otherwise an exclusive locking mutex is required to prevent
+ *     races.
+ */
+#define GETENV_PRESERVES_OTHER_THREAD  /**/
+
 /* HAS_GETGRENT_R:
  *     This symbol, if defined, indicates that the getgrent_r routine
  *     is available to getgrent re-entrantly.
 #define L_R_TZSET
 #endif
 
+/* L_R_TZSET:
+ *     If localtime_r() needs tzset, it is defined in this define
+ */
 /* LOCALTIME_R_PROTO:
  *     This symbol encodes the prototype of localtime_r.
  *     It is zero if d_localtime_r is undef, and one of the
  */
 /*#define HAS_MBRTOWC  / **/
 
+/* HAS_NL_LANGINFO_L:
+ *     This symbol, when defined, indicates presence of the nl_langinfo_l()
+ *     function
+ */
 /* HAS_THREAD_SAFE_NL_LANGINFO_L:
  *     This symbol, when defined, indicates presence of the nl_langinfo_l()
  *     function, and that it is thread-safe.
  */
+/*#define HAS_NL_LANGINFO_L    / **/
 /*#define HAS_THREAD_SAFE_NL_LANGINFO_L        / **/
 
 /* OLD_PTHREAD_CREATE_JOINABLE:
  */
 /*#define HAS_STRTOLD_L                / **/
 
+/* PERL_THREAD_LOCAL:
+ *     This symbol, if defined, gives a linkage specification for thread-local
+ *     storage. For example, for a C11 compiler this will be _Thread_local.
+ *     Beware, some compilers are sensitive to the C language standard they are
+ *     told to parse. For example, suncc defaults to C11, so our probe will
+ *     report that _Thread_local can be used. However, if the -std=c99 is later
+ *     added to the compiler flags, then _Thread_local will become a syntax
+ *     error. Hence it is important for these flags to be consistent between
+ *     probing and use.
+ */
+/*#define PERL_THREAD_LOCAL    / **/
+
 /* HAS_TMPNAM_R:
  *     This symbol, if defined, indicates that the tmpnam_r routine
  *     is available to tmpnam re-entrantly.
  *     This symbol, if defined, indicates that Perl should be built to
  *     use the interpreter-based threading implementation.
  */
-/* USE_5005THREADS:
- *     This symbol, if defined, indicates that Perl should be built to
- *     use the 5.005-based threading implementation.
- *     Only valid up to 5.8.x.
+/* USE_THREADS:
+ *     This symbol, if defined, indicates that Perl should
+ *     be built to use threads.  At present, it is a synonym for
+ *     and USE_ITHREADS, but eventually the source ought to be
+ *     changed to use this to mean _any_ threading implementation.
  */
 /* OLD_PTHREADS_API:
  *     This symbol, if defined, indicates that Perl should
  *     try to use the various _r versions of library functions.
  *     This is extremely experimental.
  */
-/*#define      USE_5005THREADS         / **/
 /*#define      USE_ITHREADS            / **/
-#if defined(USE_5005THREADS) && !defined(USE_ITHREADS)
-#define                USE_THREADS             /* until src is revised*/
-#endif
+/*#define              USE_THREADS             / **/
 /*#define      OLD_PTHREADS_API                / **/
 /*#define      USE_REENTRANT_API       / **/
 
 #endif
 
 /* Generated from:
- * cc910600600e832a5ad4789896a093ec8e001c4dec9ee3c7d7a3e6ba880651c7 config_h.SH
- * e598046e9da73796e21226371ce26e8f2144852e0f5da7f00e52e1dbe1eaeaa6 uconfig.sh
- * ex: set ro: */
+ * 8cb1765533e123c379f0207fc2a4f75df4be3e84be3a0da71ab37bcf00e13a46 config_h.SH
+ * 9c5779a38fbba64b0a5dcf7ce548120a29ea5039350102827f500c812bda10b2 uconfig.sh
+ * ex: set ro ft=c: */