summaryrefslogtreecommitdiff
path: root/config_h.SH
diff options
context:
space:
mode:
authorTAKAI Kousuke <62541129+t-a-k@users.noreply.github.com>2022-10-18 22:46:11 +0900
committerTony Cook <tony@develop-help.com>2022-11-14 15:40:56 +1100
commita503b7406f4be5b6577fc63261184ffbe58009a1 (patch)
treebebf8ebb8b3aefca81141991a37234301290b901 /config_h.SH
parentba63af8a4c3715989c590e98b08ffbd58e885eea (diff)
downloadperl-a503b7406f4be5b6577fc63261184ffbe58009a1.tar.gz
Figure out I32df, U32uf, etc. in Configure rather than in perl.h
These macros were defined in perl.h using preprocessor conditionals, but determining wheter I32 is "int" or "long" is pretty hard with preprocessor, when INTSIZE == LONGSIZE. The Configure script should know exact underlying type of I32, so it should be able to determine whether %d or %ld shall be used to format I32 value more robustly. Various pre-configured files, such as uconfig.h, are updated to align with this.
Diffstat (limited to 'config_h.SH')
-rwxr-xr-xconfig_h.SH25
1 files changed, 25 insertions, 0 deletions
diff --git a/config_h.SH b/config_h.SH
index 54516e5543..a32223d83c 100755
--- a/config_h.SH
+++ b/config_h.SH
@@ -4191,6 +4191,26 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
* 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 $ivdformat /**/
#define UVuf $uvuformat /**/
#define UVof $uvoformat /**/
@@ -4199,6 +4219,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
#define NVef $nveformat /**/
#define NVff $nvfformat /**/
#define NVgf $nvgformat /**/
+#define I32df $i32dformat /**/
+#define U32uf $u32uformat /**/
+#define U32of $u32oformat /**/
+#define U32xf $u32xformat /**/
+#define U32Xf $u32XUformat /**/
/* SELECT_MIN_BITS:
* This symbol holds the minimum number of bits operated by select.