summary refs log tree commit diff
path: root/localedata/tst-fmon.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1997-08-29 01:19:12 +0000
committerUlrich Drepper <drepper@redhat.com>1997-08-29 01:19:12 +0000
commit39e16978c3b4ac8eaf2201fac56316623910d9da (patch)
tree054fff18119b31464b3133ad91050694130c7d2a /localedata/tst-fmon.c
parent92f1da4da04a7a86ddee91be5eaf0b10c333ac64 (diff)
downloadglibc-39e16978c3b4ac8eaf2201fac56316623910d9da.tar.gz
glibc-39e16978c3b4ac8eaf2201fac56316623910d9da.tar.xz
glibc-39e16978c3b4ac8eaf2201fac56316623910d9da.zip
1997-08-29 02:36  Ulrich Drepper  <drepper@cygnus.com>

	* Makefile (version-info.h): Use ISO form for the date.

	* catgets/catgetsinfo.h: Include <bits/libc-lock.h>.
	(struct catalog_obj): Add lock field.
	(__open_catalog): Remove second parameter from prototype.
	* catgets/catgets.c (catopen): Initialize lock field.
	(catgets): Don't pass second parameter to __open_catalog.
	* catgets/gencat.c: Initialize lock field and don't pass second
	parameter to __open_catalog.
	* catgets/open_catalog.c (__open_catalog): Decide about use of
	path by examining path in struct, not based on extra argument.
	Acquire a the lock before trying to load the catalog and release
	it before returning.

	* csu/Makefile (abi-tag.h): Make sure target directory exists.

	* io/Makefile (headers): Add bits/poll.h.
	* io/sys/poll.h: Remove definitions of POLL* constants.
	Include <bits/poll.h>.
	* sysdeps/generic/bits/poll.h: New file.
	* sysdeps/unix/sysv/linux/bits/poll.h: New file.
	* sysdeps/unix/sysv/linux/m68k/bits/poll.h: New file.
	* sysdeps/unix/sysv/linux/mips/bits/poll.h: New file.
	* sysdeps/unix/sysv/linux/sparc/bits/poll.h: New file.

	* libio/fileops.c (_IO_file_read, _IO_file_write): Remove dead code.

	* malloc/obstack.c: Add casts to keep very verbose compilers on
	64bit machine quiet.

	* nss/Makefile (libnss_db.so): Find libdb.so in db2 directory.

1997-08-28 17:30  Ulrich Drepper  <drepper@cygnus.com>

	* catgets/catgets.c (catopen): Correctly determine length of string
	in NLSPATH evironment variable.  Patch by HJ Lu <hjl@gnu.ai.mit.edu>.

1997-08-27 23:19  Richard Henderson  <rth@cygnus.com>

	* sysdeps/generic/dl-sysdep.c (DL_FIND_ARG_COMPONENTS): Provide
	default macro to track down arguments from stack start.
	(_dl_sysdep_start): Use it.
	* sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c: Truncate to simply
	providing a special DL_FIND_ARG_COMPONENTS and including the next
	file up the line.

	* sysdeps/powerpc/e_sqrt.c: Move contents to w_sqrt.c and provide stub.
	* sysdeps/powerpc/e_sqrtf.c: Likewise.
	* sysdeps/powerpc/s_copysignf.S: Provide empty file; symbol is with
	the double precision version.
	* sysdeps/powerpc/s_fabsf.S: Likewise.
	* sysdeps/powerpc/s_isnanf.S: Likewise.
Diffstat (limited to 'localedata/tst-fmon.c')
-rw-r--r--localedata/tst-fmon.c65
1 files changed, 65 insertions, 0 deletions
diff --git a/localedata/tst-fmon.c b/localedata/tst-fmon.c
new file mode 100644
index 0000000000..4b7146996e
--- /dev/null
+++ b/localedata/tst-fmon.c
@@ -0,0 +1,65 @@
+#include <monetary.h>
+#include <stdio.h>
+#include <locale.h>
+
+static int
+check (const char *fmt, double n)
+{
+  int result;
+  char buf[1000];
+
+  result = strfmon (buf, sizeof buf, fmt, n) == -1;
+
+  printf ("\"%s\"\n", buf);
+  return result;
+}
+
+int
+main (void)
+{
+  int result = 0;
+
+  setlocale (LC_ALL, "");
+
+  result |= check ("%n", 123.45);
+  result |= check ("%n", -123.45);
+  result |= check ("%n", 3456.781);
+
+  result |= check ("%11n", 123.45);
+  result |= check ("%11n", -123.45);
+  result |= check ("%11n", 3456.781);
+
+  result |= check ("%#5n", 123.45);
+  result |= check ("%#5n", -123.45);
+  result |= check ("%#5n", 3456.781);
+
+  result |= check ("%=*#5n", 123.45);
+  result |= check ("%=*#5n", -123.45);
+  result |= check ("%=*#5n", 3456.781);
+
+  result |= check ("%=0#5n", 123.45);
+  result |= check ("%=0#5n", -123.45);
+  result |= check ("%=0#5n", 3456.781);
+
+  result |= check ("%^#5n", 123.45);
+  result |= check ("%^#5n", -123.45);
+  result |= check ("%^#5n", 3456.781);
+
+  result |= check ("%^#5.0n", 123.45);
+  result |= check ("%^#5.0n", -123.45);
+  result |= check ("%^#5.0n", 3456.781);
+
+  result |= check ("%^#5.4n", 123.45);
+  result |= check ("%^#5.4n", -123.45);
+  result |= check ("%^#5.4n", 3456.781);
+
+  result |= check ("%(#5n", 123.45);
+  result |= check ("%(#5n", -123.45);
+  result |= check ("%(#5n", 3456.781);
+
+  result |= check ("%!(#5n", 123.45);
+  result |= check ("%!(#5n", -123.45);
+  result |= check ("%!(#5n", 3456.781);
+
+  return result;
+}