2 . "${srcdir=.}/init.sh"; path_prepend_ . ../src
4 # Test recognition of GFC internal format strings.
6 cat <<\EOF > f-gf-1.data
11 # Valid: one locus argument
13 # Valid: one character argument
15 # Valid: one string argument
17 # Valid: one integer argument
19 # Valid: one integer argument
21 # Valid: one integer argument
23 # Valid: one argument with size specifier
25 # Valid: one argument with size specifier
27 # Valid: one argument with size specifier
29 # Invalid: one argument with invalid size specifier
31 # Invalid: one argument with invalid size specifier
33 # Invalid: one argument with invalid size specifier
35 # Invalid: unterminated
37 # Invalid: unknown format specifier
41 # Valid: three arguments
43 # Valid: a numbered argument
47 # Invalid: unterminated number
49 # Valid: three arguments, two with same number
51 # Invalid: argument with conflicting types
53 # Valid: multiple uses of void argument
55 # Invalid: argument with conflicting types
57 # Valid: mixing of numbered and unnumbered arguments
59 # Invalid: missing non-final argument
61 # Valid: non-final argument is void
65 # Valid: multiple uses of same argument
66 "abc%2$udef%1$sghi%2$u"
69 : ${XGETTEXT=xgettext}
71 while read comment; do
74 cat <<EOF > f-gf-1-$n.in
77 ${XGETTEXT} -L GCC-source -o f-gf-1-$n.po f-gf-1-$n.in || exit 1
78 test -f f-gf-1-$n.po || exit 1
80 if echo "$comment" | grep 'Valid:' > /dev/null; then
81 if grep gfc-internal-format f-gf-1-$n.po > /dev/null; then
87 if grep gfc-internal-format f-gf-1-$n.po > /dev/null; then
93 if test -n "$fail"; then
94 echo "Format string recognition error:" 1>&2
100 rm -f f-gf-1-$n.in f-gf-1-$n.po