aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@redhat.com>2025-03-25 09:40:20 +0000
committerMaciej W. Rozycki <macro@redhat.com>2025-03-25 09:40:20 +0000
commit26df22636d5876352cbd53b8662173e461e1e220 (patch)
tree4ee677cd857a593da3a843773b26c2e9f88462c7
parenta2bacea239c1780b20a1b23a9c3c836ef61c6172 (diff)
downloadglibc-26df22636d5876352cbd53b8662173e461e1e220.tar.xz
glibc-26df22636d5876352cbd53b8662173e461e1e220.zip
stdio-common: Add scanf float data for IEEE 754 binary32 format
Add Makefile infrastructure and `float' real input data for targets using the IEEE 754 binary32 format. Keep input data disabled and referring to BZ #12701 for entries that are are currently incorrectly accepted as valid data, such as '0e', '0e+', '0x', '0x8p', '0x0p-', etc. Reviewed-by: Joseph Myers <josmyers@redhat.com>
-rw-r--r--sysdeps/ieee754/flt-32/Makefile3
-rw-r--r--sysdeps/ieee754/flt-32/tst-scanf-format-float-a.input682
-rw-r--r--sysdeps/ieee754/flt-32/tst-scanf-format-float-aa.input682
-rw-r--r--sysdeps/ieee754/flt-32/tst-scanf-format-float-e.input558
-rw-r--r--sysdeps/ieee754/flt-32/tst-scanf-format-float-ee.input558
-rw-r--r--sysdeps/ieee754/flt-32/tst-scanf-format-float-f.input558
-rw-r--r--sysdeps/ieee754/flt-32/tst-scanf-format-float-ff.input558
-rw-r--r--sysdeps/ieee754/flt-32/tst-scanf-format-float-g.input682
-rw-r--r--sysdeps/ieee754/flt-32/tst-scanf-format-float-gg.input682
9 files changed, 4963 insertions, 0 deletions
diff --git a/sysdeps/ieee754/flt-32/Makefile b/sysdeps/ieee754/flt-32/Makefile
new file mode 100644
index 0000000000..aaba9e9bc6
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/Makefile
@@ -0,0 +1,3 @@
+ifeq ($(subdir),stdio-common)
+fmt-xscanf-real-convs += float
+endif
diff --git a/sysdeps/ieee754/flt-32/tst-scanf-format-float-a.input b/sysdeps/ieee754/flt-32/tst-scanf-format-float-a.input
new file mode 100644
index 0000000000..196cb734b2
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/tst-scanf-format-float-a.input
@@ -0,0 +1,682 @@
+%a::0:-1:
+%*a::0:-1:
+%a:-infinity:1:9:-inf:
+%*a:-infinity:0:9:
+%a:-0xf.fffffp+124:1:15:-0x1.fffffep127:
+%*a:-0xf.fffffp+124:0:15:
+%a:-0x7.fffff8p125:1:15:-0x1.fffffep127:
+%*a:-0x7.fffff8p125:0:15:
+%a:-0x2.345678p+123:1:16:-0x1.1a2b3cp124:
+%*a:-0x2.345678p+123:0:16:
+%a:-0x2.345678p0123:1:16:-0x1.1a2b3cp124:
+%*a:-0x2.345678p0123:0:16:
+%a:-0x8p-129:1:9:-0x1p-126:
+%*a:-0x8p-129:0:9:
+%a:-0x0p+0:1:7:-0x0:
+%*a:-0x0p+0:0:7:
+%a:-0x0p0:1:6:-0x0:
+%*a:-0x0p0:0:6:
+%a:-nan(09A_Zaz):1:13:-nan:
+%*a:-nan(09A_Zaz):0:13:
+%a:-nan():1:6:-nan:
+%*a:-nan():0:6:
+%a:nan():1:5:nan:
+%*a:nan():0:5:
+%a:nan(09A_Zaz):1:12:nan:
+%*a:nan(09A_Zaz):0:12:
+%a:0x0p0:1:5:0x0:
+%*a:0x0p0:0:5:
+%a:0x0p+0:1:6:0x0:
+%*a:0x0p+0:0:6:
+%a:0x8p-129:1:8:0x1p-126:
+%*a:0x8p-129:0:8:
+%a:0x2.345678p0123:1:15:0x1.1a2b3cp124:
+%*a:0x2.345678p0123:0:15:
+%a:0x2.345678p+123:1:15:0x1.1a2b3cp124:
+%*a:0x2.345678p+123:0:15:
+%a:0x7.fffff8p125:1:14:0x1.fffffep127:
+%*a:0x7.fffff8p125:0:14:
+%a:0xf.fffffp+124:1:14:0x1.fffffep127:
+%*a:0xf.fffffp+124:0:14:
+%a:infinity:1:8:inf:
+%*a:infinity:0:8:
+%a:+nan():1:6:nan:
+%*a:+nan():0:6:
+%a:+nan(09A_Zaz):1:13:nan:
+%*a:+nan(09A_Zaz):0:13:
+%a:+0x0p0:1:6:0x0:
+%*a:+0x0p0:0:6:
+%a:+0x0p+0:1:7:0x0:
+%*a:+0x0p+0:0:7:
+%a:+0x8p-129:1:9:0x1p-126:
+%*a:+0x8p-129:0:9:
+%a:+0x2.345678p0123:1:16:0x1.1a2b3cp124:
+%*a:+0x2.345678p0123:0:16:
+%a:+0x2.345678p+123:1:16:0x1.1a2b3cp124:
+%*a:+0x2.345678p+123:0:16:
+%a:+0x7.fffff8p125:1:15:0x1.fffffep127:
+%*a:+0x7.fffff8p125:0:15:
+%a:+0xf.fffffp+124:1:15:0x1.fffffep127:
+%*a:+0xf.fffffp+124:0:15:
+%a:+infinity:1:9:inf:
+%*a:+infinity:0:9:
+%1a::0:-1:
+%*1a::0:-1:
+%1a:-infinity:0:-1:
+%*1a:-infinity:0:-1:
+%1a:-0xf.fffffp+124:0:-1:
+%*1a:-0xf.fffffp+124:0:-1:
+%1a:-0x7.fffff8p125:0:-1:
+%*1a:-0x7.fffff8p125:0:-1:
+%1a:-0x2.345678p+123:0:-1:
+%*1a:-0x2.345678p+123:0:-1:
+%1a:-0x2.345678p0123:0:-1:
+%*1a:-0x2.345678p0123:0:-1:
+%1a:-0x8p-129:0:-1:
+%*1a:-0x8p-129:0:-1:
+%1a:-0x0p+0:0:-1:
+%*1a:-0x0p+0:0:-1:
+%1a:-0x0p0:0:-1:
+%*1a:-0x0p0:0:-1:
+%1a:-nan(09A_Zaz):0:-1:
+%*1a:-nan(09A_Zaz):0:-1:
+%1a:-nan():0:-1:
+%*1a:-nan():0:-1:
+%1a:nan():0:-1:
+%*1a:nan():0:-1:
+%1a:nan(09A_Zaz):0:-1:
+%*1a:nan(09A_Zaz):0:-1:
+%1a:0x0p0:1:1:0x0:
+%*1a:0x0p0:0:1:
+%1a:0x0p+0:1:1:0x0:
+%*1a:0x0p+0:0:1:
+%1a:0x8p-129:1:1:0x0:
+%*1a:0x8p-129:0:1:
+%1a:0x2.345678p0123:1:1:0x0:
+%*1a:0x2.345678p0123:0:1:
+%1a:0x2.345678p+123:1:1:0x0:
+%*1a:0x2.345678p+123:0:1:
+%1a:0x7.fffff8p125:1:1:0x0:
+%*1a:0x7.fffff8p125:0:1:
+%1a:0xf.fffffp+124:1:1:0x0:
+%*1a:0xf.fffffp+124:0:1:
+%1a:infinity:0:-1:
+%*1a:infinity:0:-1:
+%1a:+nan():0:-1:
+%*1a:+nan():0:-1:
+%1a:+nan(09A_Zaz):0:-1:
+%*1a:+nan(09A_Zaz):0:-1:
+%1a:+0x0p0:0:-1:
+%*1a:+0x0p0:0:-1:
+%1a:+0x0p+0:0:-1:
+%*1a:+0x0p+0:0:-1:
+%1a:+0x8p-129:0:-1:
+%*1a:+0x8p-129:0:-1:
+%1a:+0x2.345678p0123:0:-1:
+%*1a:+0x2.345678p0123:0:-1:
+%1a:+0x2.345678p+123:0:-1:
+%*1a:+0x2.345678p+123:0:-1:
+%1a:+0x7.fffff8p125:0:-1:
+%*1a:+0x7.fffff8p125:0:-1:
+%1a:+0xf.fffffp+124:0:-1:
+%*1a:+0xf.fffffp+124:0:-1:
+%1a:+infinity:0:-1:
+%*1a:+infinity:0:-1:
+%2a::0:-1:
+%*2a::0:-1:
+%2a:-infinity:0:-1:
+%*2a:-infinity:0:-1:
+%2a:-0xf.fffffp+124:1:2:-0x0:
+%*2a:-0xf.fffffp+124:0:2:
+%2a:-0x7.fffff8p125:1:2:-0x0:
+%*2a:-0x7.fffff8p125:0:2:
+%2a:-0x2.345678p+123:1:2:-0x0:
+%*2a:-0x2.345678p+123:0:2:
+%2a:-0x2.345678p0123:1:2:-0x0:
+%*2a:-0x2.345678p0123:0:2:
+%2a:-0x8p-129:1:2:-0x0:
+%*2a:-0x8p-129:0:2:
+%2a:-0x0p+0:1:2:-0x0:
+%*2a:-0x0p+0:0:2:
+%2a:-0x0p0:1:2:-0x0:
+%*2a:-0x0p0:0:2:
+%2a:-nan(09A_Zaz):0:-1:
+%*2a:-nan(09A_Zaz):0:-1:
+%2a:-nan():0:-1:
+%*2a:-nan():0:-1:
+%2a:nan():0:-1:
+%*2a:nan():0:-1:
+%2a:nan(09A_Zaz):0:-1:
+%*2a:nan(09A_Zaz):0:-1:
+# BZ12701 %2a:0x0p0:0:-1:
+# BZ12701 %*2a:0x0p0:0:-1:
+# BZ12701 %2a:0x0p+0:0:-1:
+# BZ12701 %*2a:0x0p+0:0:-1:
+# BZ12701 %2a:0x8p-129:0:-1:
+# BZ12701 %*2a:0x8p-129:0:-1:
+# BZ12701 %2a:0x2.345678p0123:0:-1:
+# BZ12701 %*2a:0x2.345678p0123:0:-1:
+# BZ12701 %2a:0x2.345678p+123:0:-1:
+# BZ12701 %*2a:0x2.345678p+123:0:-1:
+# BZ12701 %2a:0x7.fffff8p125:0:-1:
+# BZ12701 %*2a:0x7.fffff8p125:0:-1:
+# BZ12701 %2a:0xf.fffffp+124:0:-1:
+# BZ12701 %*2a:0xf.fffffp+124:0:-1:
+%2a:infinity:0:-1:
+%*2a:infinity:0:-1:
+%2a:+nan():0:-1:
+%*2a:+nan():0:-1:
+%2a:+nan(09A_Zaz):0:-1:
+%*2a:+nan(09A_Zaz):0:-1:
+%2a:+0x0p0:1:2:0x0:
+%*2a:+0x0p0:0:2:
+%2a:+0x0p+0:1:2:0x0:
+%*2a:+0x0p+0:0:2:
+%2a:+0x8p-129:1:2:0x0:
+%*2a:+0x8p-129:0:2:
+%2a:+0x2.345678p0123:1:2:0x0:
+%*2a:+0x2.345678p0123:0:2:
+%2a:+0x2.345678p+123:1:2:0x0:
+%*2a:+0x2.345678p+123:0:2:
+%2a:+0x7.fffff8p125:1:2:0x0:
+%*2a:+0x7.fffff8p125:0:2:
+%2a:+0xf.fffffp+124:1:2:0x0:
+%*2a:+0xf.fffffp+124:0:2:
+%2a:+infinity:0:-1:
+%*2a:+infinity:0:-1:
+%3a::0:-1:
+%*3a::0:-1:
+%3a:-infinity:0:-1:
+%*3a:-infinity:0:-1:
+# BZ12701 %3a:-0xf.fffffp+124:0:-1:
+# BZ12701 %*3a:-0xf.fffffp+124:0:-1:
+# BZ12701 %3a:-0x7.fffff8p125:0:-1:
+# BZ12701 %*3a:-0x7.fffff8p125:0:-1:
+# BZ12701 %3a:-0x2.345678p+123:0:-1:
+# BZ12701 %*3a:-0x2.345678p+123:0:-1:
+# BZ12701 %3a:-0x2.345678p0123:0:-1:
+# BZ12701 %*3a:-0x2.345678p0123:0:-1:
+# BZ12701 %3a:-0x8p-129:0:-1:
+# BZ12701 %*3a:-0x8p-129:0:-1:
+# BZ12701 %3a:-0x0p+0:0:-1:
+# BZ12701 %*3a:-0x0p+0:0:-1:
+# BZ12701 %3a:-0x0p0:0:-1:
+# BZ12701 %*3a:-0x0p0:0:-1:
+%3a:-nan(09A_Zaz):0:-1:
+%*3a:-nan(09A_Zaz):0:-1:
+%3a:-nan():0:-1:
+%*3a:-nan():0:-1:
+%3a:nan():1:3:nan:
+%*3a:nan():0:3:
+%3a:nan(09A_Zaz):1:3:nan:
+%*3a:nan(09A_Zaz):0:3:
+%3a:0x0p0:1:3:0x0:
+%*3a:0x0p0:0:3:
+%3a:0x0p+0:1:3:0x0:
+%*3a:0x0p+0:0:3:
+%3a:0x8p-129:1:3:0x1p3:
+%*3a:0x8p-129:0:3:
+%3a:0x2.345678p0123:1:3:0x1p1:
+%*3a:0x2.345678p0123:0:3:
+%3a:0x2.345678p+123:1:3:0x1p1:
+%*3a:0x2.345678p+123:0:3:
+%3a:0x7.fffff8p125:1:3:0x1.cp2:
+%*3a:0x7.fffff8p125:0:3:
+%3a:0xf.fffffp+124:1:3:0x1.ep3:
+%*3a:0xf.fffffp+124:0:3:
+%3a:infinity:1:3:inf:
+%*3a:infinity:0:3:
+%3a:+nan():0:-1:
+%*3a:+nan():0:-1:
+%3a:+nan(09A_Zaz):0:-1:
+%*3a:+nan(09A_Zaz):0:-1:
+# BZ12701 %3a:+0x0p0:0:-1:
+# BZ12701 %*3a:+0x0p0:0:-1:
+# BZ12701 %3a:+0x0p+0:0:-1:
+# BZ12701 %*3a:+0x0p+0:0:-1:
+# BZ12701 %3a:+0x8p-129:0:-1:
+# BZ12701 %*3a:+0x8p-129:0:-1:
+# BZ12701 %3a:+0x2.345678p0123:0:-1:
+# BZ12701 %*3a:+0x2.345678p0123:0:-1:
+# BZ12701 %3a:+0x2.345678p+123:0:-1:
+# BZ12701 %*3a:+0x2.345678p+123:0:-1:
+# BZ12701 %3a:+0x7.fffff8p125:0:-1:
+# BZ12701 %*3a:+0x7.fffff8p125:0:-1:
+# BZ12701 %3a:+0xf.fffffp+124:0:-1:
+# BZ12701 %*3a:+0xf.fffffp+124:0:-1:
+%3a:+infinity:0:-1:
+%*3a:+infinity:0:-1:
+%4a::0:-1:
+%*4a::0:-1:
+%4a:-infinity:1:4:-inf:
+%*4a:-infinity:0:4:
+%4a:-0xf.fffffp+124:1:4:-0x1.ep3:
+%*4a:-0xf.fffffp+124:0:4:
+%4a:-0x7.fffff8p125:1:4:-0x1.cp2:
+%*4a:-0x7.fffff8p125:0:4:
+%4a:-0x2.345678p+123:1:4:-0x1p1:
+%*4a:-0x2.345678p+123:0:4:
+%4a:-0x2.345678p0123:1:4:-0x1p1:
+%*4a:-0x2.345678p0123:0:4:
+%4a:-0x8p-129:1:4:-0x1p3:
+%*4a:-0x8p-129:0:4:
+%4a:-0x0p+0:1:4:-0x0:
+%*4a:-0x0p+0:0:4:
+%4a:-0x0p0:1:4:-0x0:
+%*4a:-0x0p0:0:4:
+%4a:-nan(09A_Zaz):1:4:-nan:
+%*4a:-nan(09A_Zaz):0:4:
+%4a:-nan():1:4:-nan:
+%*4a:-nan():0:4:
+%4a:nan():0:-1:
+%*4a:nan():0:-1:
+%4a:nan(09A_Zaz):0:-1:
+%*4a:nan(09A_Zaz):0:-1:
+# BZ12701 %4a:0x0p0:0:-1:
+# BZ12701 %*4a:0x0p0:0:-1:
+# BZ12701 %4a:0x0p+0:0:-1:
+# BZ12701 %*4a:0x0p+0:0:-1:
+# BZ12701 %4a:0x8p-129:0:-1:
+# BZ12701 %*4a:0x8p-129:0:-1:
+%4a:0x2.345678p0123:1:4:0x1p1:
+%*4a:0x2.345678p0123:0:4:
+%4a:0x2.345678p+123:1:4:0x1p1:
+%*4a:0x2.345678p+123:0:4:
+%4a:0x7.fffff8p125:1:4:0x1.cp2:
+%*4a:0x7.fffff8p125:0:4:
+%4a:0xf.fffffp+124:1:4:0x1.ep3:
+%*4a:0xf.fffffp+124:0:4:
+%4a:infinity:0:-1:
+%*4a:infinity:0:-1:
+%4a:+nan():1:4:nan:
+%*4a:+nan():0:4:
+%4a:+nan(09A_Zaz):1:4:nan:
+%*4a:+nan(09A_Zaz):0:4:
+%4a:+0x0p0:1:4:0x0:
+%*4a:+0x0p0:0:4:
+%4a:+0x0p+0:1:4:0x0:
+%*4a:+0x0p+0:0:4:
+%4a:+0x8p-129:1:4:0x1p3:
+%*4a:+0x8p-129:0:4:
+%4a:+0x2.345678p0123:1:4:0x1p1:
+%*4a:+0x2.345678p0123:0:4:
+%4a:+0x2.345678p+123:1:4:0x1p1:
+%*4a:+0x2.345678p+123:0:4:
+%4a:+0x7.fffff8p125:1:4:0x1.cp2:
+%*4a:+0x7.fffff8p125:0:4:
+%4a:+0xf.fffffp+124:1:4:0x1.ep3:
+%*4a:+0xf.fffffp+124:0:4:
+%4a:+infinity:1:4:inf:
+%*4a:+infinity:0:4:
+%5a::0:-1:
+%*5a::0:-1:
+%5a:-infinity:0:-1:
+%*5a:-infinity:0:-1:
+%5a:-0xf.fffffp+124:1:5:-0x1.ep3:
+%*5a:-0xf.fffffp+124:0:5:
+%5a:-0x7.fffff8p125:1:5:-0x1.cp2:
+%*5a:-0x7.fffff8p125:0:5:
+%5a:-0x2.345678p+123:1:5:-0x1p1:
+%*5a:-0x2.345678p+123:0:5:
+%5a:-0x2.345678p0123:1:5:-0x1p1:
+%*5a:-0x2.345678p0123:0:5:
+# BZ12701 %5a:-0x8p-129:0:-1:
+# BZ12701 %*5a:-0x8p-129:0:-1:
+# BZ12701 %5a:-0x0p+0:0:-1:
+# BZ12701 %*5a:-0x0p+0:0:-1:
+# BZ12701 %5a:-0x0p0:0:-1:
+# BZ12701 %*5a:-0x0p0:0:-1:
+%5a:-nan(09A_Zaz):0:-1:
+%*5a:-nan(09A_Zaz):0:-1:
+%5a:-nan():0:-1:
+%*5a:-nan():0:-1:
+%5a:nan():1:5:nan:
+%*5a:nan():0:5:
+%5a:nan(09A_Zaz):0:-1:
+%*5a:nan(09A_Zaz):0:-1:
+%5a:0x0p0:1:5:0x0:
+%*5a:0x0p0:0:5:
+# BZ12701 %5a:0x0p+0:0:-1:
+# BZ12701 %*5a:0x0p+0:0:-1:
+# BZ12701 %5a:0x8p-129:0:-1:
+# BZ12701 %*5a:0x8p-129:0:-1:
+%5a:0x2.345678p0123:1:5:0x1.18p1:
+%*5a:0x2.345678p0123:0:5:
+%5a:0x2.345678p+123:1:5:0x1.18p1:
+%*5a:0x2.345678p+123:0:5:
+%5a:0x7.fffff8p125:1:5:0x1.fcp2:
+%*5a:0x7.fffff8p125:0:5:
+%5a:0xf.fffffp+124:1:5:0x1.fep3:
+%*5a:0xf.fffffp+124:0:5:
+%5a:infinity:0:-1:
+%*5a:infinity:0:-1:
+%5a:+nan():0:-1:
+%*5a:+nan():0:-1:
+%5a:+nan(09A_Zaz):0:-1:
+%*5a:+nan(09A_Zaz):0:-1:
+# BZ12701 %5a:+0x0p0:0:-1:
+# BZ12701 %*5a:+0x0p0:0:-1:
+# BZ12701 %5a:+0x0p+0:0:-1:
+# BZ12701 %*5a:+0x0p+0:0:-1:
+# BZ12701 %5a:+0x8p-129:0:-1:
+# BZ12701 %*5a:+0x8p-129:0:-1:
+%5a:+0x2.345678p0123:1:5:0x1p1:
+%*5a:+0x2.345678p0123:0:5:
+%5a:+0x2.345678p+123:1:5:0x1p1:
+%*5a:+0x2.345678p+123:0:5:
+%5a:+0x7.fffff8p125:1:5:0x1.cp2:
+%*5a:+0x7.fffff8p125:0:5:
+%5a:+0xf.fffffp+124:1:5:0x1.ep3:
+%*5a:+0xf.fffffp+124:0:5:
+%5a:+infinity:0:-1:
+%*5a:+infinity:0:-1:
+%6a::0:-1:
+%*6a::0:-1:
+%6a:-infinity:0:-1:
+%*6a:-infinity:0:-1:
+%6a:-0xf.fffffp+124:1:6:-0x1.fep3:
+%*6a:-0xf.fffffp+124:0:6:
+%6a:-0x7.fffff8p125:1:6:-0x1.fcp2:
+%*6a:-0x7.fffff8p125:0:6:
+%6a:-0x2.345678p+123:1:6:-0x1.18p1:
+%*6a:-0x2.345678p+123:0:6:
+%6a:-0x2.345678p0123:1:6:-0x1.18p1:
+%*6a:-0x2.345678p0123:0:6:
+# BZ12701 %6a:-0x8p-129:0:-1:
+# BZ12701 %*6a:-0x8p-129:0:-1:
+# BZ12701 %6a:-0x0p+0:0:-1:
+# BZ12701 %*6a:-0x0p+0:0:-1:
+%6a:-0x0p0:1:6:-0x0:
+%*6a:-0x0p0:0:6:
+%6a:-nan(09A_Zaz):0:-1:
+%*6a:-nan(09A_Zaz):0:-1:
+%6a:-nan():1:6:-nan:
+%*6a:-nan():0:6:
+%6a:nan():1:5:nan:
+%*6a:nan():0:5:
+%6a:nan(09A_Zaz):0:-1:
+%*6a:nan(09A_Zaz):0:-1:
+%6a:0x0p0:1:5:0x0:
+%*6a:0x0p0:0:5:
+%6a:0x0p+0:1:6:0x0:
+%*6a:0x0p+0:0:6:
+%6a:0x8p-129:1:6:0x1p2:
+%*6a:0x8p-129:0:6:
+%6a:0x2.345678p0123:1:6:0x1.1ap1:
+%*6a:0x2.345678p0123:0:6:
+%6a:0x2.345678p+123:1:6:0x1.1ap1:
+%*6a:0x2.345678p+123:0:6:
+%6a:0x7.fffff8p125:1:6:0x1.ffcp2:
+%*6a:0x7.fffff8p125:0:6:
+%6a:0xf.fffffp+124:1:6:0x1.ffep3:
+%*6a:0xf.fffffp+124:0:6:
+%6a:infinity:0:-1:
+%*6a:infinity:0:-1:
+%6a:+nan():1:6:nan:
+%*6a:+nan():0:6:
+%6a:+nan(09A_Zaz):0:-1:
+%*6a:+nan(09A_Zaz):0:-1:
+%6a:+0x0p0:1:6:0x0:
+%*6a:+0x0p0:0:6:
+# BZ12701 %6a:+0x0p+0:0:-1:
+# BZ12701 %*6a:+0x0p+0:0:-1:
+# BZ12701 %6a:+0x8p-129:0:-1:
+# BZ12701 %*6a:+0x8p-129:0:-1:
+%6a:+0x2.345678p0123:1:6:0x1.18p1:
+%*6a:+0x2.345678p0123:0:6:
+%6a:+0x2.345678p+123:1:6:0x1.18p1:
+%*6a:+0x2.345678p+123:0:6:
+%6a:+0x7.fffff8p125:1:6:0x1.fcp2:
+%*6a:+0x7.fffff8p125:0:6:
+%6a:+0xf.fffffp+124:1:6:0x1.fep3:
+%*6a:+0xf.fffffp+124:0:6:
+%6a:+infinity:0:-1:
+%*6a:+infinity:0:-1:
+%12a::0:-1:
+%*12a::0:-1:
+%12a:-infinity:1:9:-inf:
+%*12a:-infinity:0:9:
+# BZ12701 %12a:-0xf.fffffp+124:0:-1:
+# BZ12701 %*12a:-0xf.fffffp+124:0:-1:
+# BZ12701 %12a:-0x7.fffff8p125:0:-1:
+# BZ12701 %*12a:-0x7.fffff8p125:0:-1:
+# BZ12701 %12a:-0x2.345678p+123:0:-1:
+# BZ12701 %*12a:-0x2.345678p+123:0:-1:
+# BZ12701 %12a:-0x2.345678p0123:0:-1:
+# BZ12701 %*12a:-0x2.345678p0123:0:-1:
+%12a:-0x8p-129:1:9:-0x1p-126:
+%*12a:-0x8p-129:0:9:
+%12a:-0x0p+0:1:7:-0x0:
+%*12a:-0x0p+0:0:7:
+%12a:-0x0p0:1:6:-0x0:
+%*12a:-0x0p0:0:6:
+%12a:-nan(09A_Zaz):0:-1:
+%*12a:-nan(09A_Zaz):0:-1:
+%12a:-nan():1:6:-nan:
+%*12a:-nan():0:6:
+%12a:nan():1:5:nan:
+%*12a:nan():0:5:
+%12a:nan(09A_Zaz):1:12:nan:
+%*12a:nan(09A_Zaz):0:12:
+%12a:0x0p0:1:5:0x0:
+%*12a:0x0p0:0:5:
+%12a:0x0p+0:1:6:0x0:
+%*12a:0x0p+0:0:6:
+%12a:0x8p-129:1:8:0x1p-126:
+%*12a:0x8p-129:0:8:
+%12a:0x2.345678p0123:1:12:0x1.1a2b3cp1:
+%*12a:0x2.345678p0123:0:12:
+# BZ12701 %12a:0x2.345678p+123:0:-1:
+# BZ12701 %*12a:0x2.345678p+123:0:-1:
+%12a:0x7.fffff8p125:1:12:0x1.fffffep3:
+%*12a:0x7.fffff8p125:0:12:
+%12a:0xf.fffffp+124:1:12:0x1.fffffep4:
+%*12a:0xf.fffffp+124:0:12:
+%12a:infinity:1:8:inf:
+%*12a:infinity:0:8:
+%12a:+nan():1:6:nan:
+%*12a:+nan():0:6:
+%12a:+nan(09A_Zaz):0:-1:
+%*12a:+nan(09A_Zaz):0:-1:
+%12a:+0x0p0:1:6:0x0:
+%*12a:+0x0p0:0:6:
+%12a:+0x0p+0:1:7:0x0:
+%*12a:+0x0p+0:0:7:
+%12a:+0x8p-129:1:9:0x1p-126:
+%*12a:+0x8p-129:0:9:
+# BZ12701 %12a:+0x2.345678p0123:0:-1:
+# BZ12701 %*12a:+0x2.345678p0123:0:-1:
+# BZ12701 %12a:+0x2.345678p+123:0:-1:
+# BZ12701 %*12a:+0x2.345678p+123:0:-1:
+# BZ12701 %12a:+0x7.fffff8p125:0:-1:
+# BZ12701 %*12a:+0x7.fffff8p125:0:-1:
+# BZ12701 %12a:+0xf.fffffp+124:0:-1:
+# BZ12701 %*12a:+0xf.fffffp+124:0:-1:
+%12a:+infinity:1:9:inf:
+%*12a:+infinity:0:9:
+%18a::0:-1:
+%*18a::0:-1:
+%18a:-infinity:1:9:-inf:
+%*18a:-infinity:0:9:
+%18a:-0xf.fffffp+124:1:15:-0x1.fffffep127:
+%*18a:-0xf.fffffp+124:0:15:
+%18a:-0x7.fffff8p125:1:15:-0x1.fffffep127:
+%*18a:-0x7.fffff8p125:0:15:
+%18a:-0x2.345678p+123:1:16:-0x1.1a2b3cp124:
+%*18a:-0x2.345678p+123:0:16:
+%18a:-0x2.345678p0123:1:16:-0x1.1a2b3cp124:
+%*18a:-0x2.345678p0123:0:16:
+%18a:-0x8p-129:1:9:-0x1p-126:
+%*18a:-0x8p-129:0:9:
+%18a:-0x0p+0:1:7:-0x0:
+%*18a:-0x0p+0:0:7:
+%18a:-0x0p0:1:6:-0x0:
+%*18a:-0x0p0:0:6:
+%18a:-nan(09A_Zaz):1:13:-nan:
+%*18a:-nan(09A_Zaz):0:13:
+%18a:-nan():1:6:-nan:
+%*18a:-nan():0:6:
+%18a:nan():1:5:nan:
+%*18a:nan():0:5:
+%18a:nan(09A_Zaz):1:12:nan:
+%*18a:nan(09A_Zaz):0:12:
+%18a:0x0p0:1:5:0x0:
+%*18a:0x0p0:0:5:
+%18a:0x0p+0:1:6:0x0:
+%*18a:0x0p+0:0:6:
+%18a:0x8p-129:1:8:0x1p-126:
+%*18a:0x8p-129:0:8:
+%18a:0x2.345678p0123:1:15:0x1.1a2b3cp124:
+%*18a:0x2.345678p0123:0:15:
+%18a:0x2.345678p+123:1:15:0x1.1a2b3cp124:
+%*18a:0x2.345678p+123:0:15:
+%18a:0x7.fffff8p125:1:14:0x1.fffffep127:
+%*18a:0x7.fffff8p125:0:14:
+%18a:0xf.fffffp+124:1:14:0x1.fffffep127:
+%*18a:0xf.fffffp+124:0:14:
+%18a:infinity:1:8:inf:
+%*18a:infinity:0:8:
+%18a:+nan():1:6:nan:
+%*18a:+nan():0:6:
+%18a:+nan(09A_Zaz):1:13:nan:
+%*18a:+nan(09A_Zaz):0:13:
+%18a:+0x0p0:1:6:0x0:
+%*18a:+0x0p0:0:6:
+%18a:+0x0p+0:1:7:0x0:
+%*18a:+0x0p+0:0:7:
+%18a:+0x8p-129:1:9:0x1p-126:
+%*18a:+0x8p-129:0:9:
+%18a:+0x2.345678p0123:1:16:0x1.1a2b3cp124:
+%*18a:+0x2.345678p0123:0:16:
+%18a:+0x2.345678p+123:1:16:0x1.1a2b3cp124:
+%*18a:+0x2.345678p+123:0:16:
+%18a:+0x7.fffff8p125:1:15:0x1.fffffep127:
+%*18a:+0x7.fffff8p125:0:15:
+%18a:+0xf.fffffp+124:1:15:0x1.fffffep127:
+%*18a:+0xf.fffffp+124:0:15:
+%18a:+infinity:1:9:inf:
+%*18a:+infinity:0:9:
+%5a: :0:-1:
+%*5a: :0:-1:
+%5a: -infinity:0:-1:
+%*5a: -infinity:0:-1:
+%5a: -0xf.fffffp+124:1:6:-0x1.ep3:
+%*5a: -0xf.fffffp+124:0:6:
+%5a: -0x7.fffff8p125:1:6:-0x1.cp2:
+%*5a: -0x7.fffff8p125:0:6:
+%5a: -0x2.345678p+123:1:6:-0x1p1:
+%*5a: -0x2.345678p+123:0:6:
+%5a: -0x2.345678p0123:1:6:-0x1p1:
+%*5a: -0x2.345678p0123:0:6:
+# BZ12701 %5a: -0x8p-129:0:-1:
+# BZ12701 %*5a: -0x8p-129:0:-1:
+# BZ12701 %5a: -0x0p+0:0:-1:
+# BZ12701 %*5a: -0x0p+0:0:-1:
+# BZ12701 %5a: -0x0p0:0:-1:
+# BZ12701 %*5a: -0x0p0:0:-1:
+%5a: -nan(09A_Zaz):0:-1:
+%*5a: -nan(09A_Zaz):0:-1:
+%5a: -nan():0:-1:
+%*5a: -nan():0:-1:
+%5a: nan():1:6:nan:
+%*5a: nan():0:6:
+%5a: nan(09A_Zaz):0:-1:
+%*5a: nan(09A_Zaz):0:-1:
+%5a: 0x0p0:1:6:0x0:
+%*5a: 0x0p0:0:6:
+# BZ12701 %5a: 0x0p+0:0:-1:
+# BZ12701 %*5a: 0x0p+0:0:-1:
+# BZ12701 %5a: 0x8p-129:0:-1:
+# BZ12701 %*5a: 0x8p-129:0:-1:
+%5a: 0x2.345678p0123:1:6:0x1.18p1:
+%*5a: 0x2.345678p0123:0:6:
+%5a: 0x2.345678p+123:1:6:0x1.18p1:
+%*5a: 0x2.345678p+123:0:6:
+%5a: 0x7.fffff8p125:1:6:0x1.fcp2:
+%*5a: 0x7.fffff8p125:0:6:
+%5a: 0xf.fffffp+124:1:6:0x1.fep3:
+%*5a: 0xf.fffffp+124:0:6:
+%5a: infinity:0:-1:
+%*5a: infinity:0:-1:
+%5a: +nan():0:-1:
+%*5a: +nan():0:-1:
+%5a: +nan(09A_Zaz):0:-1:
+%*5a: +nan(09A_Zaz):0:-1:
+# BZ12701 %5a: +0x0p0:0:-1:
+# BZ12701 %*5a: +0x0p0:0:-1:
+# BZ12701 %5a: +0x0p+0:0:-1:
+# BZ12701 %*5a: +0x0p+0:0:-1:
+# BZ12701 %5a: +0x8p-129:0:-1:
+# BZ12701 %*5a: +0x8p-129:0:-1:
+%5a: +0x2.345678p0123:1:6:0x1p1:
+%*5a: +0x2.345678p0123:0:6:
+%5a: +0x2.345678p+123:1:6:0x1p1:
+%*5a: +0x2.345678p+123:0:6:
+%5a: +0x7.fffff8p125:1:6:0x1.cp2:
+%*5a: +0x7.fffff8p125:0:6:
+%5a: +0xf.fffffp+124:1:6:0x1.ep3:
+%*5a: +0xf.fffffp+124:0:6:
+%5a: +infinity:0:-1:
+%*5a: +infinity:0:-1:
+%18a: :0:-1:
+%*18a: :0:-1:
+%18a: -infinity:1:10:-inf:
+%*18a: -infinity:0:10:
+%18a: -0xf.fffffp+124:1:16:-0x1.fffffep127:
+%*18a: -0xf.fffffp+124:0:16:
+%18a: -0x7.fffff8p125:1:16:-0x1.fffffep127:
+%*18a: -0x7.fffff8p125:0:16:
+%18a: -0x2.345678p+123:1:17:-0x1.1a2b3cp124:
+%*18a: -0x2.345678p+123:0:17:
+%18a: -0x2.345678p0123:1:17:-0x1.1a2b3cp124:
+%*18a: -0x2.345678p0123:0:17:
+%18a: -0x8p-129:1:10:-0x1p-126:
+%*18a: -0x8p-129:0:10:
+%18a: -0x0p+0:1:8:-0x0:
+%*18a: -0x0p+0:0:8:
+%18a: -0x0p0:1:7:-0x0:
+%*18a: -0x0p0:0:7:
+%18a: -nan(09A_Zaz):1:14:-nan:
+%*18a: -nan(09A_Zaz):0:14:
+%18a: -nan():1:7:-nan:
+%*18a: -nan():0:7:
+%18a: nan():1:6:nan:
+%*18a: nan():0:6:
+%18a: nan(09A_Zaz):1:13:nan:
+%*18a: nan(09A_Zaz):0:13:
+%18a: 0x0p0:1:6:0x0:
+%*18a: 0x0p0:0:6:
+%18a: 0x0p+0:1:7:0x0:
+%*18a: 0x0p+0:0:7:
+%18a: 0x8p-129:1:9:0x1p-126:
+%*18a: 0x8p-129:0:9:
+%18a: 0x2.345678p0123:1:16:0x1.1a2b3cp124:
+%*18a: 0x2.345678p0123:0:16:
+%18a: 0x2.345678p+123:1:16:0x1.1a2b3cp124:
+%*18a: 0x2.345678p+123:0:16:
+%18a: 0x7.fffff8p125:1:15:0x1.fffffep127:
+%*18a: 0x7.fffff8p125:0:15:
+%18a: 0xf.fffffp+124:1:15:0x1.fffffep127:
+%*18a: 0xf.fffffp+124:0:15:
+%18a: infinity:1:9:inf:
+%*18a: infinity:0:9:
+%18a: +nan():1:7:nan:
+%*18a: +nan():0:7:
+%18a: +nan(09A_Zaz):1:14:nan:
+%*18a: +nan(09A_Zaz):0:14:
+%18a: +0x0p0:1:7:0x0:
+%*18a: +0x0p0:0:7:
+%18a: +0x0p+0:1:8:0x0:
+%*18a: +0x0p+0:0:8:
+%18a: +0x8p-129:1:10:0x1p-126:
+%*18a: +0x8p-129:0:10:
+%18a: +0x2.345678p0123:1:17:0x1.1a2b3cp124:
+%*18a: +0x2.345678p0123:0:17:
+%18a: +0x2.345678p+123:1:17:0x1.1a2b3cp124:
+%*18a: +0x2.345678p+123:0:17:
+%18a: +0x7.fffff8p125:1:16:0x1.fffffep127:
+%*18a: +0x7.fffff8p125:0:16:
+%18a: +0xf.fffffp+124:1:16:0x1.fffffep127:
+%*18a: +0xf.fffffp+124:0:16:
+%18a: +infinity:1:10:inf:
+%*18a: +infinity:0:10:
diff --git a/sysdeps/ieee754/flt-32/tst-scanf-format-float-aa.input b/sysdeps/ieee754/flt-32/tst-scanf-format-float-aa.input
new file mode 100644
index 0000000000..9f54121760
--- /dev/null
+++ b/sysdeps/ieee754/flt-32/tst-scanf-format-float-aa.input
@@ -0,0 +1,682 @@
+%A::0:-1:
+%*A::0:-1:
+%A:-INFINITY:1:9:-inf:
+%*A:-INFINITY:0:9:
+%A:-0XF.FFFFFP+124:1:15:-0x1.fffffep127:
+%*A:-0XF.FFFFFP+124:0:15:
+%A:-0X7.FFFFF8P125:1:15:-0x1.fffffep127:
+%*A:-0X7.FFFFF8P125:0:15:
+%A:-0X2.345678P+123:1:16:-0x1.1a2b3cp124:
+%*A:-0X2.345678P+123:0:16:
+%A:-0X2.345678P0123:1:16:-0x1.1a2b3cp124:
+%*A:-0X2.345678P0123:0:16:
+%A:-0X8P-129:1:9:-0x1p-126:
+%*A:-0X8P-129:0:9:
+%A:-0X0P+0:1:7:-0x