summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2008-03-11 15:19:27 +0000
committerbstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4>2008-03-11 15:19:27 +0000
commit84e39114ef36f4f202028695936e3725b9a08474 (patch)
tree1b76344540036a57ec23806ad0e4e22b62c916c3
parentf778423557464b07c76cbf36e2032cccb94c02bc (diff)
downloadgcc-84e39114ef36f4f202028695936e3725b9a08474.tar.gz
2008-03-11 Basile Starynkevitch <basile@starynkevitch.net>
merged with trunk r133107 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@133113 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--ChangeLog5
-rw-r--r--MAINTAINERS16
-rw-r--r--contrib/ChangeLog33
-rwxr-xr-xcontrib/check_warning_flags.sh45
-rwxr-xr-xcontrib/gennews1
-rwxr-xr-xcontrib/patch_tester.sh127
-rw-r--r--fixincludes/ChangeLog7
-rw-r--r--fixincludes/fixincl.x74
-rw-r--r--fixincludes/inclhack.def41
-rw-r--r--fixincludes/tests/base/stdio.h5
-rw-r--r--gcc/ChangeLog577
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/Makefile.in4
-rw-r--r--gcc/ada/ChangeLog661
-rw-r--r--gcc/ada/a-ngcoar.adb2
-rw-r--r--gcc/ada/a-ngrear.adb2
-rw-r--r--gcc/ada/ada-tree.def2
-rw-r--r--gcc/ada/ada.h10
-rw-r--r--gcc/ada/decl.c422
-rw-r--r--gcc/ada/g-awk.adb2
-rw-r--r--gcc/ada/g-debpoo.adb2
-rw-r--r--gcc/ada/gnat_rm.texi8
-rw-r--r--gcc/ada/gnat_ugn.texi32
-rw-r--r--gcc/ada/gnatfind.adb2
-rw-r--r--gcc/ada/gnatxref.adb2
-rw-r--r--gcc/ada/gprep.adb2
-rw-r--r--gcc/ada/lang-specs.h6
-rw-r--r--gcc/ada/lang.opt8
-rw-r--r--gcc/ada/make.adb2
-rw-r--r--gcc/ada/makegpr.adb2
-rw-r--r--gcc/ada/misc.c42
-rw-r--r--gcc/ada/par-ch6.adb4
-rw-r--r--gcc/ada/prj-nmsc.adb2
-rw-r--r--gcc/ada/s-auxdec-empty.adb4
-rw-r--r--gcc/ada/s-auxdec.adb4
-rw-r--r--gcc/ada/sem_attr.adb2
-rw-r--r--gcc/ada/sem_ch4.adb2
-rw-r--r--gcc/ada/sem_ch8.adb4
-rw-r--r--gcc/ada/sem_type.adb2
-rw-r--r--gcc/ada/sinfo-cn.adb1
-rw-r--r--gcc/ada/system-vms-ia64.ads2
-rw-r--r--gcc/ada/system-vms.ads2
-rw-r--r--gcc/ada/system-vms_64.ads2
-rw-r--r--gcc/ada/trans.c160
-rw-r--r--gcc/ada/utils.c94
-rw-r--r--gcc/alias.c8
-rw-r--r--gcc/alias.h16
-rw-r--r--gcc/c-common.c2
-rw-r--r--gcc/c-parser.c9
-rw-r--r--gcc/c.opt2
-rw-r--r--gcc/cfg.c5
-rw-r--r--gcc/config.gcc10
-rw-r--r--gcc/config/arm/arm-cores.def3
-rw-r--r--gcc/config/arm/arm-tune.md2
-rw-r--r--gcc/config/arm/arm.c104
-rw-r--r--gcc/config/arm/arm.h8
-rw-r--r--gcc/config/arm/arm.md12
-rw-r--r--gcc/config/arm/bpabi-v6m.S280
-rw-r--r--gcc/config/arm/bpabi.h17
-rw-r--r--gcc/config/arm/cortex-r4.md288
-rw-r--r--gcc/config/arm/elf.h18
-rw-r--r--gcc/config/arm/ieee754-df.S18
-rw-r--r--gcc/config/arm/ieee754-sf.S16
-rw-r--r--gcc/config/arm/lib1funcs.asm21
-rw-r--r--gcc/config/arm/libunwind.S117
-rw-r--r--gcc/config/arm/sfp-machine.h96
-rw-r--r--gcc/config/arm/t-arm-elf12
-rw-r--r--gcc/config/arm/t-arm-softfp11
-rw-r--r--gcc/config/arm/thumb2.md8
-rw-r--r--gcc/config/i386/gthr-win32.c6
-rw-r--r--gcc/config/i386/i386-modes.def5
-rw-r--r--gcc/config/i386/i386.c142
-rw-r--r--gcc/config/i386/i386.h5
-rw-r--r--gcc/config/i386/i386.md3
-rw-r--r--gcc/config/i386/mmintrin.h37
-rw-r--r--gcc/config/i386/mmx.md101
-rw-r--r--gcc/config/i386/smmintrin.h32
-rw-r--r--gcc/config/i386/sse.md4
-rw-r--r--gcc/config/rs6000/altivec.md26
-rw-r--r--gcc/config/rs6000/rs6000.c85
-rw-r--r--gcc/configure.ac26
-rw-r--r--gcc/coverage.c17
-rw-r--r--gcc/coverage.h2
-rw-r--r--gcc/cp/ChangeLog37
-rw-r--r--gcc/cp/cp-objcp-common.c14
-rw-r--r--gcc/cp/cp-tree.h8
-rw-r--r--gcc/cp/cvt.c6
-rw-r--r--gcc/cp/decl.c6
-rw-r--r--gcc/cp/pt.c2
-rw-r--r--gcc/cp/semantics.c18
-rw-r--r--gcc/cp/typeck.c39
-rw-r--r--gcc/cse.c15
-rw-r--r--gcc/df-scan.c282
-rw-r--r--gcc/df.h41
-rw-r--r--gcc/doc/extend.texi18
-rw-r--r--gcc/doc/frontends.texi3
-rw-r--r--gcc/doc/include/texinfo.tex17
-rw-r--r--gcc/doc/install.texi35
-rw-r--r--gcc/doc/invoke.texi33
-rw-r--r--gcc/doc/standards.texi10
-rw-r--r--gcc/dwarf2out.c29
-rw-r--r--gcc/expr.c6
-rw-r--r--gcc/fold-const.c1002
-rw-r--r--gcc/fortran/ChangeLog61
-rw-r--r--gcc/fortran/check.c12
-rw-r--r--gcc/fortran/decl.c12
-rw-r--r--gcc/fortran/gfortran.h2
-rw-r--r--gcc/fortran/gfortran.texi86
-rw-r--r--gcc/fortran/gfortranspec.c2
-rw-r--r--gcc/fortran/intrinsic.c104
-rw-r--r--gcc/fortran/intrinsic.h5
-rw-r--r--gcc/fortran/intrinsic.texi301
-rw-r--r--gcc/fortran/invoke.texi46
-rw-r--r--gcc/fortran/iresolve.c8
-rw-r--r--gcc/fortran/lang-specs.h2
-rw-r--r--gcc/fortran/lang.opt4
-rw-r--r--gcc/fortran/libgfortran.h1
-rw-r--r--gcc/fortran/mathbuiltins.def7
-rw-r--r--gcc/fortran/module.c6
-rw-r--r--gcc/fortran/options.c18
-rw-r--r--gcc/fortran/parse.c3
-rw-r--r--gcc/fortran/simplify.c47
-rw-r--r--gcc/fortran/trans-array.c44
-rw-r--r--gcc/fortran/trans-intrinsic.c16
-rw-r--r--gcc/fwprop.c10
-rw-r--r--gcc/gcc.c4
-rw-r--r--gcc/gcov-dump.c5
-rw-r--r--gcc/gcov.c5
-rw-r--r--gcc/gimplify.c6
-rw-r--r--gcc/global.c9
-rw-r--r--gcc/gthr-rtems.h5
-rw-r--r--gcc/gthr-win32.h7
-rw-r--r--gcc/ifcvt.c4
-rw-r--r--gcc/ipa-inline.c2
-rw-r--r--gcc/java/ChangeLog4
-rw-r--r--gcc/java/jcf-dump.c4
-rw-r--r--gcc/langhooks-def.h2
-rw-r--r--gcc/mips-tdump.c4
-rw-r--r--gcc/mips-tfile.c4
-rw-r--r--gcc/objcp/ChangeLog10
-rw-r--r--gcc/objcp/objcp-decl.c2
-rw-r--r--gcc/opts.c2
-rw-r--r--gcc/print-tree.c2
-rw-r--r--gcc/ra-conflict.c14
-rw-r--r--gcc/rtl-factoring.c30
-rw-r--r--gcc/simplify-rtx.c16
-rw-r--r--gcc/testsuite/ChangeLog284
-rw-r--r--gcc/testsuite/g++.dg/gomp/pr35099.C39
-rw-r--r--gcc/testsuite/g++.dg/gomp/pr35328.C31
-rw-r--r--gcc/testsuite/g++.dg/gomp/pr35337.C20
-rw-r--r--gcc/testsuite/g++.dg/other/pr20366.C80
-rw-r--r--gcc/testsuite/g++.dg/torture/pr35526.C18
-rw-r--r--gcc/testsuite/g++.dg/tree-ssa/ssa-store-ccp-1.C19
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr11832.c30
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr33009.c36
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/pr35456.c21
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/pr35472.c22
-rw-r--r--gcc/testsuite/gcc.dg/cpp/#cmdlne-M-2.h1
-rw-r--r--gcc/testsuite/gcc.dg/cpp/cmdlne-M-2#.h1
-rw-r--r--gcc/testsuite/gcc.dg/cpp/cmdlne-M-2.c14
-rw-r--r--gcc/testsuite/gcc.dg/gomp/pr35438.c6
-rw-r--r--gcc/testsuite/gcc.dg/gomp/pr35439.c6
-rw-r--r--gcc/testsuite/gcc.dg/pr28322-3.c10
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/loadpre23.c25
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/loadpre24.c24
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/loadpre25.c20
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/loop-1.c9
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-1.c14
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-2.c14
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-3.c14
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-4.c15
-rw-r--r--gcc/testsuite/gcc.dg/vect/pr31041.c5
-rw-r--r--gcc/testsuite/gcc.target/i386/builtin-apply-mmx.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/isa-1.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/isa-10.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/isa-11.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/isa-12.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/isa-13.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/isa-14.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/isa-2.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/isa-3.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/pr22152.c18
-rw-r--r--gcc/testsuite/gcc.target/i386/sse-10.c1
-rw-r--r--gcc/testsuite/gcc.target/i386/sse2-mmx.c76
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-1.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-2.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-1.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-2.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-1.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-2.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-1.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-2.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/sse4_2-pcmpstr.h40
-rw-r--r--gcc/testsuite/gfortran.dg/PR19872.f2
-rw-r--r--gcc/testsuite/gfortran.dg/advance_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/advance_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/advance_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/advance_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/append_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/backslash_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/backslash_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/backslash_3.f2
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_3.f2
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_4.f2
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_5.f2
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_6.f2
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_8.f2
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_9.f2
-rw-r--r--gcc/testsuite/gfortran.dg/bessel_1.f9037
-rw-r--r--gcc/testsuite/gfortran.dg/besxy.f9019
-rw-r--r--gcc/testsuite/gfortran.dg/bind_c_usage_9.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/comma.f2
-rw-r--r--gcc/testsuite/gfortran.dg/complex_read.f902
-rw-r--r--gcc/testsuite/gfortran.dg/complex_write.f902
-rw-r--r--gcc/testsuite/gfortran.dg/contains_empty_1.f0311
-rw-r--r--gcc/testsuite/gfortran.dg/contains_empty_2.f0314
-rw-r--r--gcc/testsuite/gfortran.dg/convert_implied_open.f902
-rw-r--r--gcc/testsuite/gfortran.dg/derived_function_interface_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dg.exp2
-rw-r--r--gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/dos_eol.f2
-rw-r--r--gcc/testsuite/gfortran.dg/empty_format_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/endfile.f2
-rw-r--r--gcc/testsuite/gfortran.dg/endfile.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eof_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/erfc_scaled_1.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/error_recovery_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fgetc_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fgetc_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/flush_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_exhaust.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_huge.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_read.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fseek.f902
-rw-r--r--gcc/testsuite/gfortran.dg/ftell_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/ftell_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/func_derived_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/gamma_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/gamma_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/gamma_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/gamma_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/gomp.exp2
-rw-r--r--gcc/testsuite/gfortran.dg/hypot_1.f9029
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/invalid_contains_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/invalid_contains_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/iostat_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/iostat_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/module_commons_2.f9021
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_11.f2
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_12.f2
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_14.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_15.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_16.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_17.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_18.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_19.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_20.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_21.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_22.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_23.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_24.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_26.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_27.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_28.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_37.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_38.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_39.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_40.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_41.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_42.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_43.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_44.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_char_only.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_use.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_use_only.f902
-rw-r--r--gcc/testsuite/gfortran.dg/noadv_size.f902
-rw-r--r--gcc/testsuite/gfortran.dg/open_access_append_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/open_readonly_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/overwrite_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pad_no.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr12884.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr17090.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr17285.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr17286.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr18122.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr18210.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr18392.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr19155.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr19216.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr19467.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr19657.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr20257.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_bad_advance.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_comma.f2
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_many_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/read_noadvance.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_size_noadvance.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_x_past.f2
-rw-r--r--gcc/testsuite/gfortran.dg/record_marker_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/record_marker_2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/record_marker_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_check_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/rewind_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/runtime_warning_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/shape_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/slash_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/stat_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/stat_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/tl_editing.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unf_io_convert_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unf_io_convert_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unf_short_record_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unformatted_recl_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/vect/vect.exp10
-rw-r--r--gcc/testsuite/gfortran.dg/vector_subscript_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/write_back.f2
-rw-r--r--gcc/testsuite/gfortran.dg/write_check3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/write_rewind_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/write_rewind_2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/x_slash_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/x_slash_2.f2
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/compile/compile.exp35
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/backspace.x7
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/execute.exp35
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.x7
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.x7
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/seq_io.x7
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.x7
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.x7
-rw-r--r--gcc/testsuite/gnat.dg/frame_overflow.adb8
-rw-r--r--gcc/testsuite/gnat.dg/pack3.adb31
-rw-r--r--gcc/testsuite/gnat.dg/pack4.adb38
-rw-r--r--gcc/testsuite/gnat.dg/range_check2.adb13
-rw-r--r--gcc/testsuite/gnat.dg/small_alignment.adb28
-rw-r--r--gcc/testsuite/gnat.dg/specs/alignment2.ads47
-rw-r--r--gcc/testsuite/gnat.dg/specs/pack33.ads27
-rw-r--r--gcc/testsuite/gnat.dg/uninit_func.adb13
-rw-r--r--gcc/testsuite/lib/target-supports.exp39
-rw-r--r--gcc/testsuite/lib/treelang-dg.exp36
-rw-r--r--gcc/testsuite/lib/treelang.exp269
-rw-r--r--gcc/testsuite/treelang/ChangeLog124
-rw-r--r--gcc/testsuite/treelang/Makefile.in28
-rw-r--r--gcc/testsuite/treelang/compile/autofunc.tree6
-rw-r--r--gcc/testsuite/treelang/compile/badchar.tree2
-rw-r--r--gcc/testsuite/treelang/compile/badreturn.tree14
-rw-r--r--gcc/testsuite/treelang/compile/compile.exp30
-rw-r--r--gcc/testsuite/treelang/compile/exit.tree12
-rw-r--r--gcc/testsuite/treelang/compile/externvar.tree4
-rw-r--r--gcc/testsuite/treelang/compile/extrafunc.tree25
-rw-r--r--gcc/testsuite/treelang/compile/extravar.tree14
-rw-r--r--gcc/testsuite/treelang/compile/extref.tree9
-rw-r--r--gcc/testsuite/treelang/compile/full_unit.tree16
-rw-r--r--gcc/testsuite/treelang/compile/function-1.tree14
-rw-r--r--gcc/testsuite/treelang/compile/memory.tree18
-rw-r--r--gcc/testsuite/treelang/compile/mismatch.tree8
-rw-r--r--gcc/testsuite/treelang/compile/noproto.tree5
-rw-r--r--gcc/testsuite/treelang/compile/novar.tree5
-rw-r--r--gcc/testsuite/treelang/compile/syntax-1.tree9
-rw-r--r--gcc/testsuite/treelang/compile/tabs.tree11
-rw-r--r--gcc/testsuite/treelang/compile/unsigned.tree20
-rw-r--r--gcc/testsuite/treelang/compile/var_defs-2.tree20
-rw-r--r--gcc/testsuite/treelang/compile/var_defs.tree24
-rw-r--r--gcc/testsuite/treelang/execute/execute.exp30
-rw-r--r--gcc/testsuite/treelang/execute/funccall-2.tree28
-rw-r--r--gcc/testsuite/treelang/execute/funccall.tree33
-rw-r--r--gcc/testsuite/treelang/execute/initial.tree20
-rw-r--r--gcc/testsuite/treelang/execute/main.tree14
-rw-r--r--gcc/testsuite/treelang/execute/static.tree32
-rw-r--r--gcc/testsuite/treelang/output/output-1.c43
-rw-r--r--gcc/testsuite/treelang/output/output-1.out8
-rw-r--r--gcc/testsuite/treelang/output/output-1.tree59
-rw-r--r--gcc/testsuite/treelang/output/output.exp58
-rw-r--r--gcc/tree-affine.c37
-rw-r--r--gcc/tree-cfg.c46
-rw-r--r--gcc/tree-cfgcleanup.c15
-rw-r--r--gcc/tree-chrec.c5
-rw-r--r--gcc/tree-flow-inline.h41
-rw-r--r--gcc/tree-flow.h24
-rw-r--r--gcc/tree-profile.c27
-rw-r--r--gcc/tree-scalar-evolution.c1
-rw-r--r--gcc/tree-sra.c25
-rw-r--r--gcc/tree-ssa-ccp.c11
-rw-r--r--gcc/tree-ssa-dse.c33
-rw-r--r--gcc/tree-ssa-loop-ivopts.c33
-rw-r--r--gcc/tree-ssa-loop-manip.c2
-rw-r--r--gcc/tree-ssa-pre.c123
-rw-r--r--gcc/tree-ssa-sccvn.c295
-rw-r--r--gcc/tree-ssa-sccvn.h6
-rw-r--r--gcc/tree-ssa-structalias.c23
-rw-r--r--gcc/tree-ssa.c156
-rw-r--r--gcc/tree-vect-transform.c5
-rw-r--r--gcc/tree-vn.c12
-rw-r--r--gcc/tree.def9
-rw-r--r--gcc/tree.h27
-rw-r--r--gcc/treelang/ChangeLog1171
-rw-r--r--gcc/treelang/Make-lang.in324
-rw-r--r--gcc/treelang/README19
-rw-r--r--gcc/treelang/config-lang.in36
-rw-r--r--gcc/treelang/lang-specs.h38
-rw-r--r--gcc/treelang/lang.opt42
-rw-r--r--gcc/treelang/lex.l292
-rw-r--r--gcc/treelang/parse.y988
-rw-r--r--gcc/treelang/spec.c60
-rw-r--r--gcc/treelang/tree-convert.c107
-rw-r--r--gcc/treelang/tree1.c309
-rw-r--r--gcc/treelang/treelang.h152
-rw-r--r--gcc/treelang/treelang.texi1310
-rw-r--r--gcc/treelang/treetree.c1184
-rw-r--r--gcc/treelang/treetree.h66
-rw-r--r--libcpp/ChangeLog5
-rw-r--r--libcpp/mkdeps.c9
-rw-r--r--libgcc/ChangeLog6
-rw-r--r--libgcc/config/t-slibgcc-darwin2
-rw-r--r--libgfortran/ChangeLog34
-rw-r--r--libgfortran/Makefile.am1
-rw-r--r--libgfortran/Makefile.in39
-rw-r--r--libgfortran/config.h.in12
-rw-r--r--libgfortran/gfortran.map4
-rw-r--r--libgfortran/intrinsics/erfc_scaled.c57
-rw-r--r--libgfortran/intrinsics/erfc_scaled_inc.c175
-rw-r--r--libgfortran/intrinsics/random.c43
-rw-r--r--libgfortran/io/unix.c24
-rw-r--r--libgomp/ChangeLog21
-rw-r--r--libgomp/Makefile.in25
-rw-r--r--libgomp/aclocal.m42
-rw-r--r--libgomp/config.h.in13
-rw-r--r--libgomp/configure.ac1
-rw-r--r--libgomp/env.c13
-rw-r--r--libgomp/testsuite/Makefile.in5
-rw-r--r--libgomp/testsuite/libgomp.c/atomic-3.c50
-rw-r--r--libgomp/testsuite/libgomp.fortran/fortran.exp2
-rw-r--r--libiberty/ChangeLog5
-rw-r--r--libiberty/md5.c3
-rw-r--r--libjava/ChangeLog472
-rw-r--r--libjava/HACKING10
-rw-r--r--libjava/Makefile.in419
-rw-r--r--libjava/classpath/ChangeLog16
-rw-r--r--libjava/classpath/ChangeLog.gcj6
-rw-r--r--libjava/classpath/doc/cp-hacking.texinfo20
-rw-r--r--libjava/classpath/doc/cp-tools.texinfo40
-rw-r--r--libjava/classpath/doc/cp-vmintegration.texinfo42
-rw-r--r--libjava/classpath/gnu/java/rmi/registry/RegistryImpl.java4
-rw-r--r--libjava/classpath/lib/gnu/gcj/convert/Convert.classbin4799 -> 4799 bytes
-rw-r--r--libjava/classpath/lib/gnu/gcj/tools/gcj_dbtool/Main.classbin10918 -> 10918 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/lang/MainThread.classbin3242 -> 3097 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/Calendar.classbin1343 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/Calendar_de.classbin715 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/Calendar_en.classbin551 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/Calendar_nl.classbin660 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleData.classbin6225 -> 6225 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation.classbin328 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_af_ZA.classbin2305 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_AE.classbin2443 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_BH.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_DZ.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_EG.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_IN.classbin2454 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_IQ.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_JO.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_KW.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_LB.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_LY.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_MA.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_OM.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_QA.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_SD.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_SY.classbin2304 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_TN.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_YE.classbin2442 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_be_BY.classbin2512 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_bn_IN.classbin2597 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_br_FR.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_bs_BA.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ca_ES.classbin2266 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_cs_CZ.classbin2328 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_cy_GB.classbin2238 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_da_DK.classbin2290 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_de.classbin3408 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_AT.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_BE.classbin2296 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_CH.classbin2297 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_DE.classbin2296 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_LU.classbin2298 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_el_GR.classbin2526 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en.classbin5113 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_AU.classbin2289 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_BW.classbin1713 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_CA.classbin2313 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_DK.classbin2292 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_GB.classbin2290 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_HK.classbin2312 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_IE.classbin2290 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_IN.classbin2324 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_NZ.classbin2289 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_PH.classbin2313 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_SG.classbin2309 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_US.classbin2315 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_ZA.classbin2289 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_ZW.classbin1713 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_AR.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_BO.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CL.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CO.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CR.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_DO.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_EC.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_ES.classbin2269 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_GT.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_HN.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_MX.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_NI.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PA.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PE.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PR.classbin2271 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PY.classbin2273 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_SV.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_US.classbin2292 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_UY.classbin2272 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_VE.classbin2273 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_et_EE.classbin2300 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_eu_ES.classbin2293 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_fa_IR.classbin2430 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_fi_FI.classbin2380 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_fo_FO.classbin2317 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_BE.classbin2267 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_CA.classbin2269 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_CH.classbin2263 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_FR.classbin2261 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_LU.classbin2264 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ga_IE.classbin2367 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_gd_GB.classbin2380 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_gl_ES.classbin2265 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_gv_GB.classbin2369 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_he_IL.classbin2395 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_hi_IN.classbin2533 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_hr_HR.classbin2295 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_hu_HU.classbin2289 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_id_ID.classbin2277 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_it_CH.classbin2308 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_it_IT.classbin2280 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_iw_IL.classbin2395 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ja_JP.classbin2290 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ka_GE.classbin2718 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_kl_GL.classbin2346 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ko_KR.classbin2371 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_kw_GB.classbin2339 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_lt_LT.classbin2353 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_lv_LV.classbin2342 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_mi_NZ.classbin2370 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_mk_MK.classbin2468 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_mr_IN.classbin2496 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_mt_MT.classbin2331 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl.classbin4111 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl_BE.classbin2273 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl_NL.classbin2266 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_nn_NO.classbin2281 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_no_NO.classbin2287 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_oc_FR.classbin2265 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_pl_PL.classbin2295 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_pt_BR.classbin2279 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_pt_PT.classbin2280 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ro_RO.classbin2283 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ru_RU.classbin2490 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ru_UA.classbin2472 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_se_NO.classbin2415 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_sk_SK.classbin2283 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_sl_SI.classbin2267 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_sq_AL.classbin2332 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_sr_YU.classbin2245 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_sv_FI.classbin2293 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_sv_SE.classbin2293 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ta_IN.classbin2452 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_te_IN.classbin2582 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_tg_TJ.classbin2490 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_tl_PH.classbin2319 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_tr_TR.classbin2562 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_uk_UA.classbin2501 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_ur_PK.classbin2199 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_uz_UZ.classbin2292 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_vi_VN.classbin2449 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_yi_US.classbin2525 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_CN.classbin2355 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_HK.classbin2369 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_SG.classbin2153 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_TW.classbin2376 -> 0 bytes
-rw-r--r--libjava/classpath/lib/gnu/java/rmi/registry/RegistryImpl.classbin4240 -> 4240 bytes
-rw-r--r--libjava/classpath/lib/java/text/Collator.classbin4071 -> 4144 bytes
-rw-r--r--libjava/classpath/lib/java/text/DateFormatSymbols.classbin6194 -> 7635 bytes
-rw-r--r--libjava/classpath/lib/java/text/DecimalFormatSymbols.classbin7794 -> 7835 bytes
-rw-r--r--libjava/classpath/lib/java/util/Calendar.classbin17103 -> 17406 bytes
-rw-r--r--libjava/classpath/lib/java/util/Currency.classbin4292 -> 5341 bytes
-rw-r--r--libjava/classpath/native/jni/classpath/jcl.c4
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.classbin5476 -> 5476 bytes
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/orbd/Main.java4
-rw-r--r--libjava/gnu/classpath/natSystemProperties.cc3
-rw-r--r--libjava/gnu/gcj/convert/Convert.java4
-rw-r--r--libjava/gnu/gcj/tools/gcj_dbtool/Main.java4
-rw-r--r--libjava/gnu/java/lang/MainThread.h2
-rw-r--r--libjava/gnu/java/lang/MainThread.java6
-rw-r--r--libjava/gnu/java/locale/Calendar.h43
-rw-r--r--libjava/gnu/java/locale/Calendar.java123
-rw-r--r--libjava/gnu/java/locale/Calendar_de.h38
-rw-r--r--libjava/gnu/java/locale/Calendar_de.java71
-rw-r--r--libjava/gnu/java/locale/Calendar_en.h38
-rw-r--r--libjava/gnu/java/locale/Calendar_en.java69
-rw-r--r--libjava/gnu/java/locale/Calendar_nl.h38
-rw-r--r--libjava/gnu/java/locale/Calendar_nl.java74
-rw-r--r--libjava/gnu/java/locale/LocaleInformation.h32
-rw-r--r--libjava/gnu/java/locale/LocaleInformation.java47
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_af_ZA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_af_ZA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_AE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_AE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_BH.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_BH.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_DZ.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_DZ.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_EG.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_EG.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_IN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_IN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_IQ.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_IQ.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_JO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_JO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_KW.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_KW.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_LB.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_LB.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_LY.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_LY.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_MA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_MA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_OM.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_OM.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_QA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_QA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_SD.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_SD.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_SY.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_SY.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_TN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_TN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_YE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ar_YE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_be_BY.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_be_BY.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_bn_IN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_bn_IN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_br_FR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_br_FR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_bs_BA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_bs_BA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ca_ES.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ca_ES.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_cs_CZ.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_cs_CZ.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_cy_GB.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_cy_GB.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_da_DK.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_da_DK.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de.h59
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de.java230
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_AT.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_AT.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_BE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_BE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_CH.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_CH.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_DE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_DE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_LU.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_de_LU.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_el_GR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_el_GR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en.h46
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en.java207
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_AU.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_AU.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_BW.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_BW.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_CA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_CA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_DK.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_DK.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_GB.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_GB.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_HK.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_HK.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_IE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_IE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_IN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_IN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_NZ.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_NZ.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_PH.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_PH.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_SG.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_SG.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_US.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_US.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_ZA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_ZA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_ZW.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_en_ZW.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_AR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_AR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_BO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_BO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_CL.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_CL.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_CO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_CO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_CR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_CR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_DO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_DO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_EC.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_EC.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_ES.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_ES.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_GT.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_GT.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_HN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_HN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_MX.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_MX.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_NI.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_NI.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_PA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_PA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_PE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_PE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_PR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_PR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_PY.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_PY.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_SV.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_SV.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_US.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_US.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_UY.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_UY.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_VE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_es_VE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_et_EE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_et_EE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_eu_ES.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_eu_ES.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fa_IR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fa_IR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fi_FI.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fi_FI.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fo_FO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fo_FO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_BE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_BE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_CA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_CA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_CH.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_CH.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_FR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_FR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_LU.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_fr_LU.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ga_IE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ga_IE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_gd_GB.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_gd_GB.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_gl_ES.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_gl_ES.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_gv_GB.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_gv_GB.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_he_IL.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_he_IL.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_hi_IN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_hi_IN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_hr_HR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_hr_HR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_hu_HU.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_hu_HU.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_id_ID.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_id_ID.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_it_CH.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_it_CH.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_it_IT.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_it_IT.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_iw_IL.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_iw_IL.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ja_JP.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ja_JP.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ka_GE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ka_GE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_kl_GL.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_kl_GL.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ko_KR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ko_KR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_kw_GB.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_kw_GB.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_lt_LT.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_lt_LT.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_lv_LV.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_lv_LV.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_mi_NZ.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_mi_NZ.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_mk_MK.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_mk_MK.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_mr_IN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_mr_IN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_mt_MT.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_mt_MT.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_nl.h71
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_nl.java313
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_nl_BE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_nl_BE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_nl_NL.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_nl_NL.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_nn_NO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_nn_NO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_no_NO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_no_NO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_oc_FR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_oc_FR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_pl_PL.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_pl_PL.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_pt_BR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_pt_BR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_pt_PT.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_pt_PT.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ro_RO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ro_RO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ru_RU.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ru_RU.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ru_UA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ru_UA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_se_NO.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_se_NO.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sk_SK.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sk_SK.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sl_SI.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sl_SI.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sq_AL.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sq_AL.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sr_YU.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sr_YU.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sv_FI.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sv_FI.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sv_SE.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_sv_SE.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ta_IN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ta_IN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_te_IN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_te_IN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_tg_TJ.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_tg_TJ.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_tl_PH.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_tl_PH.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_tr_TR.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_tr_TR.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_uk_UA.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_uk_UA.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ur_PK.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_ur_PK.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_uz_UZ.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_uz_UZ.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_vi_VN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_vi_VN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_yi_US.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_yi_US.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_zh_CN.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_zh_CN.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_zh_HK.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_zh_HK.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_zh_SG.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_zh_SG.java86
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_zh_TW.h53
-rw-r--r--libjava/gnu/java/locale/LocaleInformation_zh_TW.java86
-rw-r--r--libjava/java/text/Collator.java13
-rw-r--r--libjava/java/text/DateFormatSymbols.h2
-rw-r--r--libjava/java/text/DateFormatSymbols.java597
-rw-r--r--libjava/java/text/DecimalFormatSymbols.h66
-rw-r--r--libjava/java/text/DecimalFormatSymbols.java742
-rw-r--r--libjava/java/util/Calendar.h1
-rw-r--r--libjava/java/util/Calendar.java1575
-rw-r--r--libjava/java/util/Currency.h5
-rw-r--r--libjava/java/util/Currency.java422
-rwxr-xr-xlibjava/scripts/makemake.tcl2
-rw-r--r--libjava/sources.am419
-rw-r--r--libjava/testsuite/lib/libjava.exp2
-rw-r--r--libmudflap/ChangeLog4
-rw-r--r--libmudflap/mf-runtime.c5
-rw-r--r--libstdc++-v3/ChangeLog22
-rw-r--r--libstdc++-v3/config/abi/pre/gnu.ver32
-rwxr-xr-xlibstdc++-v3/configure10
-rw-r--r--libstdc++-v3/crossconfig.m42
-rw-r--r--libstdc++-v3/include/std/tuple4
-rw-r--r--libstdc++-v3/include/tr1/tuple4
-rw-r--r--libstdc++-v3/testsuite/20_util/tuple/comparison_operators/35480.cc34
-rw-r--r--libstdc++-v3/testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc33
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_abi.cc1
933 files changed, 8528 insertions, 33338 deletions
diff --git a/ChangeLog b/ChangeLog
index 751410f37de..3d53334f4d9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,11 @@
+2008-03-11 Basile Starynkevitch <basile@starynkevitch.net>
+ MELT branch merged with trunk r133107
+
2008-02-26 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk r132671
Merged revisions 132452-132671 via svnmerge from
svn+ssh://bstarynk@gcc.gnu.org/svn/gcc/trunk
-
+
2008-02-25 Tomas Bily <tbily@suse.cz>
* MAINTAINERS (Write After Approval): Add myself.
diff --git a/MAINTAINERS b/MAINTAINERS
index 7942dbedf59..d55eaddf3bd 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -30,7 +30,7 @@ Jason Merrill jason@redhat.com
David S. Miller davem@redhat.com
Mark Mitchell mark@codesourcery.com
Bernd Schmidt bernd.schmidt@analog.com
-Jim Wilson wilson@specifixinc.com
+Jim Wilson wilson@tuliptree.org
CPU Port Maintainers (CPU alphabetical order)
@@ -54,7 +54,7 @@ hppa port Dave Anglin dave.anglin@nrc.ca
i386 port Richard Henderson rth@redhat.com
i386 port Jan Hubicka jh@suse.cz
i386 port Uros Bizjak ubizjak@gmail.com
-ia64 port Jim Wilson wilson@specifixinc.com
+ia64 port Jim Wilson wilson@tuliptree.org
iq2000 port Nick Clifton nickc@redhat.com
m32c port DJ Delorie dj@redhat.com
m32r port Nick Clifton nickc@redhat.com
@@ -98,6 +98,7 @@ xtensa port Bob Wilson bob.wilson@acm.org
darwin port Dale Johannesen dalej@apple.com
darwin port Mike Stump mrs@apple.com
darwin port Eric Christopher echristo@apple.com
+darwin port Stan Shebs stanshebs@earthlink.net
DJGPP DJ Delorie dj@delorie.com
freebsd Loren J. Rittle ljrittle@acm.org
hpux Dave Anglin dave.anglin@nrc.ca
@@ -128,8 +129,7 @@ java Per Bothner per@bothner.com
java Andrew Haley aph@redhat.com
java Tom Tromey tromey@redhat.com
objective-c/c++ Mike Stump mrs@apple.com
-treelang Tim Josling tej@melbpc.org.au
-treelang James A. Morrison phython@gcc.gnu.org
+objective-c/c++ Stan Shebs stanshebs@earthlink.net
Various Maintainers
@@ -150,7 +150,7 @@ libobjc Nicola Pero n.pero@mi.flashnet.it
libobjc Andrew Pinski pinskia@gmail.com
loop discovery Michael Hayes m.hayes@elec.canterbury.ac.nz
soft-fp Joseph Myers jsm@polyomino.org.uk
-scheduler (+ haifa) Jim Wilson wilson@specifixinc.com
+scheduler (+ haifa) Jim Wilson wilson@tuliptree.org
scheduler (+ haifa) Michael Meissner gnu@the-meissners.org
scheduler (+ haifa) Jeff Law law@redhat.com
scheduler (+ haifa) Vladimir Makarov vmakarov@redhat.com
@@ -158,7 +158,7 @@ modulo-scheduler Ayal Zaks zaks@il.ibm.com
reorg Jeff Law law@redhat.com
caller-save.c Jeff Law law@redhat.com
callgraph Jan Hubicka jh@suse.cz
-debugging code Jim Wilson wilson@specifixinc.com
+debugging code Jim Wilson wilson@tuliptree.org
dwarf debugging code Jason Merrill jason@redhat.com
c++ runtime libs Paolo Carlini pcarlini@suse.de
c++ runtime libs Gabriel Dos Reis gdr@integrable-solutions.net
@@ -336,6 +336,7 @@ Andreas Jaeger aj@suse.de
Harsha Jagasia harsha.jagasia@amd.com
Fariborz Jahanian fjahanian@apple.com
Phillip Jordan phillip.m.jordan@gmail.com
+Tim Josling tej@melbpc.org.au
Klaus Kaempf kkaempf@progis.de
Victor Kaplansky victork@il.ibm.com
Brendan Kehoe brendan@zen.org
@@ -383,6 +384,7 @@ Lee Millward lee.millward@gmail.com
Alan Modra amodra@bigpond.net.au
Alexander Monakov amonakov@ispras.ru
Catherine Moore clm@redhat.com
+James A. Morrison phython@gcc.gnu.org
Dirk Mueller dmueller@suse.de
Adam Nemet anemet@caviumnetworks.com
Thomas Neumann tneumann@users.sourceforge.net
@@ -401,7 +403,7 @@ Vladimir Prus vladimir@codesourcery.com
Jerry Quinn jlquinn@optonline.net
Dwarakanath Rajagopal dwarak.rajagopal@amd.com
Rolf Rasmussen rolfwr@gcc.gnu.org
-Volker Reichelt reichelt@igpm.rwth-aachen.de
+Volker Reichelt v.reichelt@netcologne.de
Tom Rix trix@redhat.com
Craig Rodrigues rodrigc@gcc.gnu.org
Erven Rohou erven.rohou@st.com
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 8f8153d4675..88cf772b96e 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,36 @@
+2008-03-10 Janis Johnson <janis187@us.ibm.com>
+
+ * patch_tester.sh (initialization): Initialize svnpatch and stop.
+ (usage): Add -svnpath and -stop.
+ (makedir): New.
+ (argument handling): Process -stop and -svnpath.
+ (setup code): Use makedir, error out if initial svn checkout fails.
+ (update): Use svnpath. Invoke contrib/gcc_update.
+ (apply_patch): Require that patch was created at top level. Use eval
+ with option variables. Don't use bootstrap target for make. Verify
+ that some tests were run.
+ (bootntest_patched): Use snvpath.
+ (main loop): For -stop, exit when there are no more patches to test.
+
+2008-03-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * check_warning_flags.sh: Instead of invoke.texi, take the path
+ to the doc directory as argument. Check that warnings listed in
+ 'gcc --help' are accepted by the compiler, and listed in the
+ manuals.
+
+2008-03-06 Tom Tromey <tromey@redhat.com>
+
+ * patch_tester.sh (usage): Watermark is not lexicographic.
+ Load $STATE/defaults if it exists.
+ (selfexec): Use $0.
+ (apply_patch): Handle deletions.
+ (bootntest): Handle default settings.
+
+2008-03-05 Jakub Jelinek <jakub@redhat.com>
+
+ * gennews (files): Reference GCC 4.3 web pages.
+
2008-02-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* check_warning_flags.sh: New file.
diff --git a/contrib/check_warning_flags.sh b/contrib/check_warning_flags.sh
index 95640f7758d..fcd0f37e105 100755
--- a/contrib/check_warning_flags.sh
+++ b/contrib/check_warning_flags.sh
@@ -18,7 +18,7 @@
progname=`echo "$0" | sed 's,.*/,,'`
usage ()
{
- echo "usage: $progname path/to/invoke.texi"
+ echo "usage: $progname path/to/gcc/doc"
echo "set \$CC to the compiler to be checked"
exit 1
}
@@ -28,7 +28,8 @@ LC_ALL=C
export LC_ALL
: ${CC=gcc}
test $# = 1 || usage
-invoke_texi=$1
+gcc_docdir=$1
+invoke_texi=$gcc_docdir/invoke.texi
test -r "$invoke_texi" || {
echo "$progname: error: cannot read '$invoke_texi'" >&2
usage
@@ -133,4 +134,44 @@ for lang in c c++ objc obj-c++; do
}
rm -f $file $filebase.o $filebase.obj $stderr
done
+
+
+remove_problematic_help_flags='
+ /^W$/d
+ /^W[alp]$/d
+ /^Werror-implicit-function-declaration$/d
+ /^Wsynth$/d
+ /-$/d
+ /=/d'
+help_flags=`
+ $CC --help -v 2>/dev/null | tr ' ' '\n' |
+ sed -n '
+ b a
+ :a
+ s/^-\(W[^<,]*\).*/\1/
+ t x
+ d
+ :x
+ '"$remove_problematic_help_flags"'
+ p' | sort -u`
+: >$filebase.c
+for flag in $help_flags; do
+ $CC -c $filebase.c -$flag 2>/dev/null || {
+ echo "warning -$flag not supported" >&2
+ ret=1
+ }
+ grep "@item.*$flag" $gcc_docdir/../*/*.texi >/dev/null || {
+ # For @item, we are satisfied with either -Wfoo or -Wno-foo.
+ inverted_flag=`echo "$flag" | sed '
+ s/^Wno-/W/
+ t
+ s/^W/Wno-/'`
+ grep "@item.*$inverted_flag" $gcc_docdir/../*/*.texi >/dev/null || {
+ echo "warning -$flag not documented in $gcc_docdir/../*/*.texi" >&2
+ ret=1
+ }
+ }
+done
+rm -f $filebase.c $filebase.o
+
exit $ret
diff --git a/contrib/gennews b/contrib/gennews
index b330b4b5e39..6e0a47d1af8 100755
--- a/contrib/gennews
+++ b/contrib/gennews
@@ -23,6 +23,7 @@
website=http://gcc.gnu.org/
files="
+ gcc-4.3/index.html gcc-4.3/changes.html
gcc-4.2/index.html gcc-4.2/changes.html
gcc-4.1/index.html gcc-4.1/changes.html
gcc-4.0/index.html gcc-4.0/changes.html
diff --git a/contrib/patch_tester.sh b/contrib/patch_tester.sh
index ab6847653c4..0c7488082a1 100755
--- a/contrib/patch_tester.sh
+++ b/contrib/patch_tester.sh
@@ -1,7 +1,7 @@
#!/bin/sh
# Tests a set of patches from a directory.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
# Contributed by Sebastian Pop <sebastian.pop@amd.com>
# This program is free software; you can redistribute it and/or modify
@@ -29,6 +29,7 @@ EOF
args=$@
+svnpath=svn://gcc.gnu.org/svn/gcc
dashj=
default_standby=1
standby=$default_standby
@@ -36,10 +37,12 @@ default_watermark=0.60
watermark=$default_watermark
savecompilers=false
nogpg=false
+stop=false
usage() {
cat <<EOF
patch_tester.sh [-j<N>] [-standby N] [-watermark N] [-savecompilers] [-nogpg]
+ [-svnpath URL] [-stop]
<source_dir> [patches_dir [state_dir [build_dir]]]
J is the flag passed to make. Default is empty string.
@@ -48,14 +51,18 @@ patch_tester.sh [-j<N>] [-standby N] [-watermark N] [-savecompilers] [-nogpg]
PATCHES_DIR. Default is ${default_standby} minutes.
WATERMARK is the 5 minute average system charge under which a new
- compile can start. Default is ${default_watermark}. Note that the comparison
- is done in lexicographical order, so don't forget the leading 0.
+ compile can start. Default is ${default_watermark}.
SAVECOMPILERS copies the compilers in the same directory as the
test results for the non patched version. Default is not copy.
NOGPG can be used to avoid checking the GPG signature of patches.
+ URL is the location of the GCC SVN repository. The default is
+ ${svnpath}.
+
+ STOP exits when PATCHES_DIR is empty.
+
SOURCE_DIR is the directory containing GCC's toplevel configure.
PATCHES_DIR is the directory containing the patches to be tested.
@@ -71,6 +78,15 @@ EOF
exit 1
}
+makedir () {
+ DIRNAME=$1
+ mkdir -p $DIRNAME
+ if [ $? -ne 0 ]; then
+ echo "ERROR: could not make directory $DIRNAME"
+ exit 1
+ fi
+}
+
while [ $# -ne 0 ]; do
case $1 in
-j*)
@@ -90,6 +106,12 @@ while [ $# -ne 0 ]; do
-nogpg)
nogpg=true; shift
;;
+ -stop)
+ stop=true; shift
+ ;;
+ -svnpath)
+ svnpath=$2; shift; shift
+ ;;
-*)
echo "Invalid option: $1"
usage
@@ -123,15 +145,25 @@ else
BUILD=$4
fi
-[ -d $PATCHES ] || mkdir -p $PATCHES
-[ -d $STATE ] || mkdir -p $STATE
-[ -d $STATE/patched ] || mkdir -p $STATE/patched
-[ -d $SOURCE ] || mkdir -p $SOURCE
+[ -d $PATCHES ] || makedir $PATCHES
+[ -d $STATE ] || makedir $STATE
+[ -d $STATE/patched ] || makedir $STATE/patched
+[ -d $SOURCE ] || makedir $SOURCE
[ -f $SOURCE/config.guess ] || {
cd $SOURCE
- svn -q co svn://gcc.gnu.org/svn/gcc/trunk .
+ svn -q co $svnpath/trunk .
+ if [ $? -ne 0 ]; then
+ echo "ERROR: initial svn checkout failed"
+ exit 1
+ fi
}
+# This can contain required local settings:
+# default_config configure options, always passed
+# default_make make bootstrap options, always passed
+# default_check make check options, always passed
+[ -f $STATE/defaults ] && . $STATE/defaults
+
VERSION=`svn info $SOURCE | grep "^Revision:" | sed -e "s/^Revision://g" -e "s/ //g"`
exec >> $STATE/tester.log 2>&1 || exit 1
@@ -182,7 +214,7 @@ cleanup () {
}
selfexec () {
- exec ${CONFIG_SHELL-/bin/sh} $SOURCE/contrib/patch_tester.sh $args
+ exec ${CONFIG_SHELL-/bin/sh} $0 $args
}
update () {
@@ -200,15 +232,15 @@ update () {
cd $SOURCE
case $svn_branch in
trunk)
- if ! svn switch -r $svn_revision svn://gcc.gnu.org/svn/gcc/trunk &> $TESTING/svn ; then
+ if ! svn switch -r $svn_revision $svnpath/trunk &> $TESTING/svn ; then
report "failed to update svn sources with"
- report "svn switch -r $svn_revision svn://gcc.gnu.org/svn/gcc/trunk"
+ report "svn switch -r $svn_revision $svnpath/trunk"
freport $TESTING/svn
return 1
fi
;;
- svn://gcc.gnu.org/svn/gcc/*)
+ ${svnpath}*)
if ! svn switch -r $svn_revision $svn_branch &> $TESTING/svn ; then
report "failed to update svn sources with"
report "svn switch -r $svn_revision $svn_branch"
@@ -218,14 +250,15 @@ update () {
;;
*)
- if ! svn switch -r $svn_revision svn://gcc.gnu.org/svn/gcc/branches/$svn_branch &> $TESTING/svn ; then
+ if ! svn switch -r $svn_revision $svnpath/branches/$svn_branch &> $TESTING/svn ; then
report "failed to update svn sources with"
- report "svn switch -r $svn_revision svn://gcc.gnu.org/svn/gcc/branches/$svn_branch"
+ report "svn switch -r $svn_revision $svnpath/branches/$svn_branch"
freport $TESTING/svn
return 1
fi
;;
esac
+ contrib/gcc_update --touch
current_version=`svn info $SOURCE | grep "^Revision:" | sed -e "s/^Revision://g" -e "s/ //g"`
if [[ $VERSION < $current_version ]]; then
@@ -246,23 +279,24 @@ apply_patch () {
fi
fi
- # Detect if the patch was created in toplev GCC.
- grep "^Index: " $PATCH | grep "gcc/"
- if [ $? = 0 ]; then
- cd $SOURCE
- if ! patch -p0 < $PATCH &> $TESTING/patching ; then
- report "your patch failed to apply:"
- freport $TESTING/patching
- return 1
- fi
- else
- cd $SOURCE/gcc
- if ! patch -p0 < $PATCH &> $TESTING/patching ; then
- report "your patch failed to apply:"
- freport $TESTING/patching
- return 1
- fi
+ cd $SOURCE
+ if ! patch -p0 < $PATCH &> $TESTING/patching ; then
+ report "your patch failed to apply:"
+ report "(check that the patch was created at the top level)"
+ freport $TESTING/patching
+ return 1
fi
+
+ # Just assume indexes for now -- not really great, but svn always
+ # makes them.
+ grep "^Index: " $PATCH | sed -e 's/Index: //' | while read file; do
+ # If the patch resulted in an empty file, delete it.
+ # This is how svn reports deletions.
+ if [ ! -s $file ]; then
+ rm -f $file
+ report "Deleting empty file $file"
+ fi
+ done
}
save_compilers () {
@@ -279,14 +313,17 @@ bootntest () {
cd $BUILD
CONFIG_OPTIONS=`grep "^configure:" $PATCH | sed -e "s/^configure://g"`
- if ! $SOURCE/configure $CONFIG_OPTIONS &> $1/configure ; then
- report "configure failed with:"
+ CONFIG_OPTIONS="$default_config $CONFIG_OPTIONS"
+ if ! eval $SOURCE/configure $CONFIG_OPTIONS &> $1/configure ; then
+ report "configure with `basename $1` version failed with:"
freport $1/configure
return 1
fi
- if ! make $dashj `grep "^make:" $PATCH | sed -e "s/^make://g"` bootstrap &> $1/bootstrap ; then
- report "bootstrap failed with last lines:"
+ MAKE_ARGS=`grep "^make:" $PATCH | sed -e "s/^make://g"`
+ MAKE_ARGS="$default_make $MAKE_ARGS"
+ if ! eval make $dashj $MAKE_ARGS &> $1/bootstrap ; then
+ report "bootstrap with `basename $1` version failed with last lines:"
tail -30 $1/bootstrap > $1/last_bootstrap
freport $1/last_bootstrap
report "grep --context=20 Error bootstrap:"
@@ -296,7 +333,14 @@ bootntest () {
fi
CHECK_OPTIONS=`grep "^check:" $PATCH | sed -e "s/^check://g"`
- make $dashj $CHECK_OPTIONS -k check &> $1/check
+ CHECK_OPTIONS="$default_check $CHECK_OPTIONS"
+ eval make $dashj $CHECK_OPTIONS -k check &> $1/check
+
+ SUITESRUN="`grep 'Summary ===' $1/check | cut -d' ' -f 2 | sort`"
+ if [ x$SUITESRUN = x ]; then
+ report "check with `basename $1` version failed, no testsuites were run"
+ return 1
+ fi
for LOG in $TESTLOGS ; do
if [ -f $BUILD/$LOG ]; then
@@ -318,7 +362,7 @@ bootntest_patched () {
# Build the pristine tree with exactly the same options as the patch under test.
bootntest_pristine () {
cleanup
- current_branch=`svn info $SOURCE | grep "^URL:" | sed -e "s/URL: //g" -e "s/svn:\/\/gcc.gnu.org\/svn\/gcc\///g"`
+ current_branch=`svn info $SOURCE | grep "^URL:" | sed -e "s/URL: //g" -e "s,${svnpath},,g"`
current_version=`svn info $SOURCE | grep "^Revision:" | sed -e "s/^Revision://g" -e "s/ //g"`
PRISTINE=$STATE/$current_branch/$current_version
@@ -428,11 +472,22 @@ if [ -d $TESTING ]; then
fi
fi
+firstpatch=true
while true; do
PATCH=`ls -rt -1 $PATCHES | head -1`
if [ x$PATCH = x ]; then
+ if [ $stop = true ]; then
+ if [ $firstpatch = true ]; then
+ echo "No patches ready to test, quitting."
+ exit 1
+ else
+ echo "No more patches to test."
+ exit 0
+ fi
+ fi
sleep ${standby}m
else
+ firstpatch=false
sysload=`uptime | cut -d, -f 5`
if [[ $sysload > $watermark ]]; then
# Wait a bit when system load is too high.
diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog
index c45d8a83d64..49afc5ece9b 100644
--- a/fixincludes/ChangeLog
+++ b/fixincludes/ChangeLog
@@ -1,3 +1,10 @@
+2008-03-07 Peter O'Gorman <pogma@thewrittenword.com>
+
+ PR c++/20366
+ * inclhack.def (AAB_aix_stdio): Hack stdio.h for -D_LARGE_FILES.
+ * fixincl.x: Regenerate.
+ * tests/base/stdio.h: Add test.
+
2008-02-25 Ben Elliston <bje@au.ibm.com>
PR other/32948
diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x
index 12260e8c4b8..4338150135c 100644
--- a/fixincludes/fixincl.x
+++ b/fixincludes/fixincl.x
@@ -2,11 +2,11 @@
*
* DO NOT EDIT THIS FILE (fixincl.x)
*
- * It has been AutoGen-ed Tuesday February 26, 2008 at 01:54:59 PM MET
+ * It has been AutoGen-ed Friday March 7, 2008 at 07:37:21 AM CET
* From the definitions inclhack.def
* and the template file fixincl
*/
-/* DO NOT SVN-MERGE THIS FILE, EITHER Tue Feb 26 13:54:59 MET 2008
+/* DO NOT SVN-MERGE THIS FILE, EITHER Fr 7. Mär 07:37:22 CET 2008
*
* You must regenerate it. Use the ./genfixes script.
*
@@ -15,7 +15,7 @@
* certain ANSI-incompatible system header files which are fixed to work
* correctly with ANSI C and placed in a directory that GNU C will search.
*
- * This file contains 212 fixup descriptions.
+ * This file contains 213 fixup descriptions.
*
* See README for more information.
*
@@ -38,6 +38,64 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Aab_Aix_Stdio fix
+ */
+tSCC zAab_Aix_StdioName[] =
+ "AAB_aix_stdio";
+
+/*
+ * File name selection pattern
+ */
+tSCC zAab_Aix_StdioList[] =
+ "stdio.h\0";
+/*
+ * Machine/OS name selection pattern
+ */
+tSCC* apzAab_Aix_StdioMachs[] = {
+ "*-*-aix*",
+ (const char*)NULL };
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zAab_Aix_StdioSelect0[] =
+ "define fopen fopen64";
+
+#define AAB_AIX_STDIO_TEST_CT 1
+static tTestDesc aAab_Aix_StdioTests[] = {
+ { TT_EGREP, zAab_Aix_StdioSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Aab_Aix_Stdio
+ */
+static const char* apzAab_Aix_StdioPatch[] = {
+ "wrap",
+ "",
+ "\n\
+#if defined __GNUG__ && defined _LARGE_FILES && defined __cplusplus\n\
+#define __need__aix_stdio_h_fix\n\
+#ifdef __need__aix_stdio_h_fix\n\
+#undef fseeko\n\
+#undef ftello\n\
+#undef fgetpos\n\
+#undef fsetpos\n\
+#undef fopen\n\
+#undef freopen\n\
+/* Alias the symbols using asm */\n\
+extern \"C\" {\n\
+extern int fgetpos(FILE *, fpos64_t *) __asm__(\"fgetpos64\");\n\
+extern FILE *fopen(const char *, const char *) __asm__(\"fopen64\");\n\
+extern FILE *freopen(const char *, const char *, FILE *) __asm__(\"freopen64\");\n\
+extern int fseeko(FILE *, off64_t, int) __asm__(\"fseeko64\");\n\
+extern int fsetpos(FILE *, const fpos64_t *) __asm__(\"fsetpos64\");\n\
+extern off64_t ftello(FILE *) __asm__(\"ftello64\");\n\
+}\n\
+#endif\n\
+#endif\n",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Aab_Darwin7_9_Long_Double_Funcs fix
*/
tSCC zAab_Darwin7_9_Long_Double_FuncsName[] =
@@ -8606,14 +8664,15 @@ static const char* apzX11_SprintfPatch[] = {
*
* List of all fixes
*/
-#define REGEX_COUNT 255
+#define REGEX_COUNT 256
#define MACH_LIST_SIZE_LIMIT 261
-#define FIX_COUNT 212
+#define FIX_COUNT 213
/*
* Enumerate the fixes
*/
typedef enum {
+ AAB_AIX_STDIO_FIXIDX,
AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_FIXIDX,
AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_2_FIXIDX,
AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
@@ -8829,6 +8888,11 @@ typedef enum {
} t_fixinc_idx;
tFixDesc fixDescList[ FIX_COUNT ] = {
+ { zAab_Aix_StdioName, zAab_Aix_StdioList,
+ apzAab_Aix_StdioMachs,
+ AAB_AIX_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aAab_Aix_StdioTests, apzAab_Aix_StdioPatch, 0 },
+
{ zAab_Darwin7_9_Long_Double_FuncsName, zAab_Darwin7_9_Long_Double_FuncsList,
apzAab_Darwin7_9_Long_Double_FuncsMachs,
AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
index e7447d497ae..04b0c82ed6c 100644
--- a/fixincludes/inclhack.def
+++ b/fixincludes/inclhack.def
@@ -20,6 +20,47 @@ autogen definitions fixincl;
FIXINC_DEBUG = yes;
#endif
+/* On AIX when _LARGE_FILES is defined stdio.h defines fopen to
+ * fopen64 etc. and this causes problems when building with g++
+ * because cstdio udefs everything from stdio.h, leaving us with
+ * ::fopen has not been declared errors. This fixes stdio.h to
+ * undef those defines and use __asm__ to alias the symbols if
+ * building with g++ and -D_LARGE_FILES
+ */
+fix = {
+ hackname = AAB_aix_stdio;
+ files = stdio.h;
+ select = "define fopen fopen64";
+ mach = "*-*-aix*";
+
+ c_fix = wrap;
+
+ c_fix_arg = "";
+
+ c_fix_arg = "\n"
+ "#if defined __GNUG__ && defined _LARGE_FILES && defined __cplusplus\n"
+ "#define __need__aix_stdio_h_fix\n"
+ "#ifdef __need__aix_stdio_h_fix\n"
+ "#undef fseeko\n"
+ "#undef ftello\n"
+ "#undef fgetpos\n"
+ "#undef fsetpos\n"
+ "#undef fopen\n"
+ "#undef freopen\n"
+ "/* Alias the symbols using asm */\n"
+ "extern \"C\" {\n"
+ "extern int fgetpos(FILE *, fpos64_t *) __asm__(\"fgetpos64\");\n"
+ "extern FILE *fopen(const char *, const char *) __asm__(\"fopen64\");\n"
+ "extern FILE *freopen(const char *, const char *, FILE *) __asm__(\"freopen64\");\n"
+ "extern int fseeko(FILE *, off64_t, int) __asm__(\"fseeko64\");\n"
+ "extern int fsetpos(FILE *, const fpos64_t *) __asm__(\"fsetpos64\");\n"
+ "extern off64_t ftello(FILE *) __asm__(\"ftello64\");\n"
+ "}\n"
+ "#endif\n"
+ "#endif\n";
+ test_text = "";
+};
+
/*
* On Mac OS 10.3.9, the 'long double' functions are available in
diff --git a/fixincludes/tests/base/stdio.h b/fixincludes/tests/base/stdio.h
index ea2c001e163..b6a8a9b7e1c 100644
--- a/fixincludes/tests/base/stdio.h
+++ b/fixincludes/tests/base/stdio.h
@@ -14,6 +14,11 @@
#include <stdarg.h>
+#if defined( AAB_AIX_STDIO_CHECK )
+
+#endif /* AAB_AIX_STDIO_CHECK */
+
+
#if defined( ALPHA_GETOPT_CHECK )
extern int getopt(int, char *const[], const char *);
#endif /* ALPHA_GETOPT_CHECK */
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9893b477b8a..ea66165352c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,13 +1,576 @@
2008-03-11 Basile Starynkevitch <basile@starynkevitch.net>
+ merged with trunk r133107
+
+2008-03-11 Basile Starynkevitch <basile@starynkevitch.net>
* Makefile.in: removed compile-basilys-defs completely. Corrected
typ in comment for run-basilys-deps.
+2008-03-11 Uros Bizjak <ubizjak@gmail.com>
+
+ PR middle-end/35526
+ * expr.c (store_expr): Call emit_block_move if the mode
+ of "temp" RTX is BLKmode.
+
+2008-03-11 Andrew Pinski <andrew_pinski@playstation.sony.com>
+ Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/31358
+ * tree-ssa-loop-manip.c (create_iv): Call force_gimple_operand for
+ the step with a NULL_TREE.
+ * tree-ssa-loop-ivopts.c (find_bivs): Convert the step
+ to sizetype if type is a pointer type.
+ (add_candidate_1): Don't convert the base and step to
+ the generic type if the orginal type is a pointer type.
+ (add_iv_value_candidates): Use sizetype for the step
+ if type is a pointer type.
+ (cand_value_at): Likewise.
+ * tree-ssa-address.c (add_to_parts): Use POINTER_PLUS_EXPR
+ for pointer types.
+ * tree-affine.c (tree_to_aff_combination <POINTER_PLUS_EXPR>):
+ Don't convert the tem affine to the type.
+ (add_elt_to_tree): Use sizetype for the step if a pointer.
+ Use POINTER_PLUS_EXPR for pointers.
+ (aff_combination_to_tree): Use sizetype for the step if a
+ pointer.
+
+2008-03-10 Vladimir Makarov <vmakarov@redhat.com>
+
+ * config/i386/sse.md (ssse3_pmaddubswv8hi3, ssse3_pmaddubswv4hi3):
+ Remove commutativity hint.
+
+2008-03-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/35438
+ PR c/35439
+ * c-parser.c (c_parser_omp_threadprivate): Don't add vars with
+ errorneous type. Check that v is a VAR_DECL.
+
+ PR middle-end/35099
+ * tree-cfg.c (new_label_mapper): Update cfun->last_label_uid.
+
+2008-03-10 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR tree-optimization/35494
+ * tree-ssa-ccp.c (get_symbol_constant_value): Check if value
+ may be overriden at link and run time.
+
+2008-03-10 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/34677
+ * tree-ssa-pre.c (modify_expr_node_pool): Remove.
+ (poolify_tree): Likewise.
+ (modify_expr_template): Likewise.
+ (poolify_modify_stmt): Likewise.
+ (insert_fake_stores): Handle all component-ref style stores
+ in addition to INDIRECT_REF. Also handle complex types.
+ Do not poolify the inserted load.
+ (realify_fake_stores): Do not rebuild the tree but only
+ make it a SSA_NAME copy.
+ (init_pre): Remove initialzation of modify_expr_template.
+ Do not allocate modify_expr_node_pool.
+ (fini_pre): Do not free modify_expr_node_pool.
+
+2008-03-10 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.md (UNSPEC_STACK_ALIGN, UNSPEC_PIC_OFFSET): Renumber
+ to avoid conflicts.
+
+2008-03-10 Paul Brook <paul@codesourcery.com>
+ Mark Shinwell <shinwell@codesourcery.com>
+
+ * config/arm/cortex-r4.md: New.
+ * config/arm/thumb2.md (divsi3, udivsi3): Annotate with
+ insn attributes.
+ * config/arm/arm.md: Include cortex-r4.md.
+ (insn): Add smmls, sdiv and udiv values.
+ (generic_sched): Don't use generic scheduling for Cortex-R4.
+ (arm_issue_rate): New function.
+ (TARGET_SCHED_ISSUE_RATE): Define.
+
+2008-03-10 Sebastian Pop <sebastian.pop@amd.com>
+
+ * doc/invoke.texi (-ftree-loop-distribution): Add an example.
+
+2008-03-10 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-pre.c (get_sccvn_value): Simplify.
+ (compute_avail): Do not add stmt uses to AVAIL_OUT.
+
+2008-03-10 Paolo Bonzini <bonzini@gnu.org>
+
+ * langhooks-def.h (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS):
+ Set default to true.
+
+2008-03-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * c.opt (Wsynth): Deprecate.
+ * doc/invoke.texi (Option Summary, Warning Options): Document
+ -Wno-format-contains-nul.
+
+2008-03-09 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/35496
+ * config/i386/i386.c (ix86_constant_alignment): Compute alignment using
+ ALIGN_MODE_128 for VECTOR_CST and INTEGER_CST in addition to REAL_CST.
+
+2008-03-09 Ira Rosen <irar@il.ibm.com>
+
+ * config/rs6000/rs6000.c (builtin_description): Rename vector
+ left shift operations.
+ * config/rs6000/altivec.md (UNSPEC_VSL): Remove.
+ (altivec_vsl<VI_char>): Rename to ...
+ (ashl<mode>3): ... new name.
+ (mulv4sf3, mulv4si3, negv4sf2): Replace gen_altivec_vslw with
+ gen_ashlv4si3.
+ (absv4sf2): Convert to use ashift:V4SI instead of UNSPEC_VSL.
+
+2008-03-08 Richard Guenther <rguenther@suse.de>
+
+ * coverage.h (tree_coverage_counter_addr): Declare.
+ * coverage.c (tree_coverage_counter_addr): New function.
+ * tree-profile.c (tree_gen_edge_profiler): Unshare counter
+ before using again.
+ (tree_gen_pow2_profiler): Use tree_coverage_counter_addr.
+ (tree_gen_one_value_profiler): Likewise.
+ (tree_gen_ic_profiler): Likewise.
+ (tree_gen_average_profiler): Likewise.
+ (tree_gen_ior_profiler): Likewise.
+
+2008-03-08 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-sccvn.h (vn_binary_op_lookup): Remove.
+ (vn_binary_op_insert): Likewise.
+ (vn_unary_op_lookup): Likewise.
+ (vn_unary_op_insert): Likewise.
+ (vn_nary_op_lookup): Declare.
+ (vn_nary_op_insert): Likewise.
+ * tree-ssa-sccvn.c (struct vn_tables_s): Merge unary
+ and binary hashes, use a single obstack for unary_op_pool
+ and binary_op_pool.
+ (struct vn_binary_op_s, struct vn_unary_op_s): Replace with
+ a single struct vn_nary_op_s. Store tree code length and
+ a variable number of operands.
+ (struct vn_reference_op_struct): Remove unused op2.
+ (vn_reference_op_eq): Do not compare op2.
+ (vn_reference_op_compute_hash): Do not compute hash of op2.
+ (vn_unary_op_hash, vn_binary_op_hash): Replace with vn_nary_op_hash.
+ (vn_unary_op_compute_hash, vn_binary_op_compute_hash): Replace
+ with vn_nary_op_compute_hash.
+ (vn_unary_op_eq, vn_binary_op_eq): Replace with vn_nary_op_eq.
+ (vn_unary_op_lookup, vn_binary_op_lookup): Replace with
+ vn_nary_op_lookup.
+ (vn_unary_op_insert, vn_binary_op_insert): Replace with
+ vn_nary_op_insert.
+ (visit_unary_op): Call nary functions.
+ (visit_binary_op): Likewise.
+ (process_scc): Adjust for struct vn_tables_s changes.
+ (allocate_vn_table): Likewise.
+ (free_vn_table): Likewise.
+ * tree-vn.c (vn_add): Call nary functions.
+ (vn_lookup): Likewise.
+
+2008-03-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/35498
+ * config/rs6000/rs6000.c (rs6000_expand_compare_and_swapqhi): Shift
+ wdst back after sync_compare_and_swapqhi_internal.
+
+2008-03-08 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/22152
+ * config/i386/i386-modes.def (V1DI): New vector mode.
+ * config/i386/i386.h (VALID_MMX_REG_MODE): Add V1DImode.
+ * config/i386/mmx.md (MMXMODEI8): New mode iterator.
+ (MMXMODE248): Ditto.
+ (MMXMODE): Add V1DI mode.
+ (mmxvecsize): Change DI mode to V1DI mode.
+ ("mov<mode>): Use MMXMODEI8 mode iterator.
+ ("*mov<mode>_internal_rex64"): Ditto.
+ ("*mov<mode>_internal"): Ditto.
+ ("mmx_add<mode>3"): Ditto. Handle V1DImode for TARGET_SSE2.
+ ("mmx_sub<mode>3"): Ditto.
+ ("mmx_adddi3"): Remove insn pattern.
+ ("mmx_subdi3"): Ditto.
+ ("mmx_ashr<mode>3"): Use SImode and "yN" constraint for operand 2.
+ ("mmx_lshr<mode>3"): Ditto. Use MMXMODE248 mode iterator.
+ ("mmx_ashl<mode>3"): Ditto.
+ ("mmx_lshrdi3"): Remove insn pattern.
+ ("mmx_ashldi3"): Ditto.
+ * config/i386/i386.c (classify_argument): Handle V1DImode.
+ (function_arg_advance_32): Ditto.
+ (function_arg_32): Ditto.
+ (struct builtin_description) [IX86_BUILTIN_PADDQ]: Use
+ mmx_addv1di3 insn pattern.
+ [IX86_BUILTIN_PSUBQ]: Use mmx_subv1di3 insn pattern.
+ [IX86_BUILTIN_PSLL?, IX86_BUILTIN_PSRL?, IX86_BUILTIN_PSRA?,
+ IX86_BUILTIN_PSLL?I, IX86_BUILTIN_PSRL?I, IX86_BUILTIN_PSRA?I,
+ IX86_BUILTIN_PSLL?I128, IX86_BUILTIN_PSRL?I128, IX86_BUILTIN_PSRA?I128]:
+ Remove definitions of built-in functions.
+ (V1DI_type_node): New node.
+ (v1di_ftype_v1di_int): Ditto.
+ (v1di_ftype_v1di_v1di): Ditto.
+ (v2si_ftype_v2si_si): Ditto.
+ (v4hi_ftype_v4hi_di): Remove node.
+ (v2si_ftype_v2si_di): Ditto.
+ (ix86_init_mmx_sse_builtins): Handle V1DImode.
+ (__builtin_ia32_psll?, __builtin_ia32_psrl?, __builtin_ia32_psra?):
+ Redefine builtins using def_builtin_const with *_ftype_*_int node.
+ (__builtin_ia32_psll?i, __builtin_ia32_psrl?i, __builtin_ia32_psra?i):
+ Add new builtins using def_builtin_const.
+ (ix86_expand_builtin) [IX86_BUILTIN_PSLL?, IX86_BUILTIN_PSRL?,
+ IX86_BUILTIN_PSRA?, IX86_BUILTIN_PSLL?I, IX86_BUILTIN_PSRL?I,
+ IX86_BUILTIN_PSRA?I]: Handle builtin definitions.
+ * config/i386/mmintrin.h (__v1di): New typedef.
+ (_mm_add_si64): Cast arguments to __v1di type.
+ (_mm_sub_si64): Ditto.
+ (_mm_sll_pi16): Cast __count to __v4hi type.
+ (_mm_sll_pi32): Cast __count to __v2si type.
+ (_mm_sll_si64): Cast arguments to __v1di type.
+ (_mm_srl_pi16): Cast __count to __v4hi type.
+ (_mm_srl_pi32): Cast __count to __v2si type.
+ (_mm_srl_si64): Cast arguments to __v1di type.
+ (_mm_sra_pi16): Cast __count to __v4hi type.
+ (_mm_sra_pi32): Cast __count to __v2si type.
+ (_mm_slli_pi16): Use __builtin_ia32_psllwi.
+ (_mm_slli_pi32): Use __builtin_ia32_pslldi.
+ (_mm_slli_si64): Use __builtin_ia32_psllqi. Cast __m to __v1di type.
+ (_mm_srli_pi16): Use __builtin_ia32_psrlwi.
+ (_mm_srli_pi32): Use __builtin_ia32_psrldi.
+ (_mm_srli_si64): Use __builtin_ia32_psrlqi. Cast __m to __v1di type.
+ (_mm_srai_pi16): Use __builtin_ia32_psrawi.
+ (_mm_srai_pi32): Use __builtin_ia32_psradi.
+ * config/i386/i386.md (UNSPEC_NOP): Remove unspec definition.
+ * doc/extend.texi (X86 Built-in Functions) [__builtin_ia32_psll?,
+ __builtin_ia32_psrl?, __builtin_ia32_psra?, __builtin_ia32_psll?i,
+ __builtin_ia32_psrl?i, __builtin_ia32_psra?i]: Add new builtins.
+
+2008-03-07 Joseph Myers <joseph@codesourcery.com>
+
+ * doc/include/texinfo.tex: Update to version 2008-03-07.10.
+
+2008-03-07 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/35373
+ * config/rs6000/rs6000.c (rs6000_legitimize_address): Don't generate
+ reg+const addressing for Altivec modes. Don't generate reg+reg
+ addressing for TFmode or TDmode quantities.
+
+2008-03-07 Paolo Bonzini <bonzini@gnu.org>
+
+ * c-common.c (vector_types_convertible_p): Call langhook
+ instead of comptypes.
+
+2008-03-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR tree-opt/35402
+ * tree-ssa-ccp.c (get_symbol_constant_value): Handle
+ integral and scalar float variables which have a
+ NULL DECL_INITIAL.
+
+2008-03-06 Nathan Froyd <froydnj@codesourcery.com>
+
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Consult the
+ dwarf_register_span hook when emitting unwind information for
+ register-to-memory saves.
+ * config/rs6000/rs6000.c (spe_synthesize_frame): Delete.
+ (rs6000_frame_related): Remove call to spe_synthesize_frame.
+
+2008-03-06 Jakub Jelinek <jakub@redhat.com>
+
+ * gimplify.c (goa_lhs_expr_p): Allow different ADDR_EXPR nodes
+ for the same VAR_DECL.
+
+2008-03-06 Tom Tromey <tromey@redhat.com>
+
+ * treelang: Delete.
+ * doc/standards.texi (Standards): Don't mention treelang.
+ * doc/invoke.texi (Overall Options): Don't mention treelang.
+ * doc/install.texi (Prerequisites): Don't mention bison or
+ treelang.
+ (Configuration): Don't mention treelang.
+ (Building): Likewise.
+ * doc/frontends.texi (G++ and GCC): Don't mention treelang.
+
+2008-03-06 Paolo Bonzini <bonzini@gnu.org>
+
+ * simplify-rtx.c (simplify_subreg): Remove useless shifts from
+ word-extractions out of a multi-word object.
+
+2008-03-06 Richard Guenther <rguenther@suse.de>
+
+ * tree.def (BIT_FIELD_REF): Constrain result type and its precision.
+ * tree-cfg.c (verify_expr): Verify BIT_FIELD_REF constraints on
+ result type and precision.
+ * expr.c (get_inner_reference): Set unsignedp based on the result
+ type of BIT_FIELD_REF.
+ * tree.h (BIT_FIELD_REF_UNSIGNED): Remove.
+ * tree-sra.c (instantiate_element): Do not set BIT_FIELD_REF_UNSIGNED.
+ (try_instantiate_multiple_fields): Likewise. Use the correct type
+ for BIT_FIELD_REF.
+ (sra_build_assignment): Likewise.
+ (sra_build_elt_assignment): Likewise.
+ (sra_explode_bitfield_assignment): Likewise.
+ * print-tree.c (print_node): Do not check BIT_FIELD_REF_UNSIGNED.
+ * tree-vect-transform.c (vect_create_epilog_for_reduction): Do not
+ set BIT_FIELD_REF_UNSIGNED.
+ (vectorizable_load): Likewise.
+
+2008-03-06 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * cse.c (cse_extended_basic_block): Invalidate artificial defs
+ at bb start.
+
+2008-03-06 Richard Guenther <rguenther@suse.de>
+
+ * alias.c (struct alias_set_entry): Move has_zero_child field
+ to pack with alias_set.
+
2008-03-05 Basile Starynkevitch <basile@starynkevitch.net>
* Makefile.in: added targets for installation of melt includes.
+2008-03-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386-modes.def: Use 4 byte alignment on DI for
+ 32bit host.
+
+2008-03-05 Ian Lance Taylor <iant@google.com>
+
+ * alias.h (alias_set_type): Change from HOST_WIDE_INT to int.
+
+2008-03-05 Kenneth Zadeck <zadeck@naturalbridge.com>
+
+ * fwprop.c (update_df): Support width and offset parameters of
+ df_ref_create.
+ * ra-conflict.c (mark_reg_store, clear_reg_in_live,
+ global_conflicts): Change DF_REF_EXTRACT to either
+ DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change
+ DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART.
+ * df-scan.c (df_ref_record, df_defs_record,
+ df_ref_create_structure, df_def_record_1, df_uses_record,
+ df_get_conditional_uses, df_get_call_refs, df_insn_refs_collect,
+ df_bb_refs_collect, df_entry_block_defs_collect,
+ df_exit_block_uses_collect): Support new width and offset fields.
+ (ref_extract_pool): New storage pool.
+ (df_free_ref): New function.
+ (df_reg_chain_unlink, df_free_collection_rec,
+ df_sort_and_compress_refs): Call df_free_ref.
+ (df_ref_equal_p, df_ref_compare): Compare offset and width fields
+ of df_ref_extract.
+ (df_ref_create_structure): Allocate df_ref_extract if offset and
+ width fields are used.
+ (df_def_record_1): Get offset and width from ZERO_EXTRACT.
+ (df_uses_record): Get offset and width from ZERO_EXTRACT
+ and SIGN_EXTRACT.
+ * global.c (build_insn_chain): Change DF_REF_EXTRACT to either
+ DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change
+ DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART.
+ * df.h (df_ref_flags): Change DF_REF_EXTRACT to either
+ DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change
+ DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART.
+ (df_ref_extract): New structure.
+ (DF_REF_WIDTH, DF_REF_OFFSET): New macros.
+ (df_ref_create): Add width and offset parameters.
+
+2008-03-05 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (get_constraint_for_component_ref):
+ Use ranges_overlap_p.
+ (offset_overlaps_with_access): Rename
+ to ranges_overlap_p and move ...
+ * tree-flow-inline.h (ranges_overlap_p): ... here.
+
+ * tree.h (get_inner_reference, handled_component_p): Update
+ comments.
+
+ * tree.h (record_component_aliases, get_alias_set,
+ alias_sets_conflict_p, alias_sets_must_conflict_p,
+ objects_must_conflict_p): Move declarations ...
+ * alias.h (record_component_aliases, get_alias_set,
+ alias_sets_conflict_p, alias_sets_must_conflict_p,
+ objects_must_conflict_p): ... here.
+ Include coretypes.h.
+ * Makefile.in (ALIAS_H): Add coretypes.h dependency.
+
+2008-03-05 Aldy Hernandez <aldyh@redhat.com>
+
+ * cfg.c: Include tree-flow.h.
+ (remove_edge_raw): Call redirect_edge_var_map_clear.
+ (redirect_edge_succ_nodup): Call redirect_edge_var_map_dup.
+ * tree-flow-inline.h (redirect_edge_var_map_def): New.
+ (redirect_edge_var_map_result): New.
+ * tree-cfgcleanup.c (remove_forwarder_block_with_phi): Replace
+ PENDING_STMT use with redirect_edge_var_map_*.
+ * tree-ssa.c (edge_var_maps): New definition.
+ (redirect_edge_var_map_add): New.
+ (redirect_edge_var_map_clear): New.
+ (redirect_edge_var_map_dup): New.
+ (redirect_edge_var_map_vector): New.
+ (redirect_edge_var_map_destroy): New.
+ (ssa_redirect_edge): Replace PENDING_STMT use with
+ redirect_edge_var_map_*.
+ (flush_pending_stmts): Same.
+ (delete_tree_ssa): Destroy edge var map.
+ * tree-flow.h (struct _edge_var_map): New.
+ Define edge_var_map vector type.
+ Declare redirect_edge_var_map_* prototypes.
+ * Makefile.in (cfg.o): Depend on TREE_FLOW_H.
+ * tree-cfg.c (reinstall_phi_args): Replace
+ PENDING_STMT use with redirect_edge_var_map_*.
+
+2008-03-05 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/35472
+ * tree-ssa-dse.c (dse_optimize_stmt): Do not delete a store
+ whose single use_stmt has a overlapping set of loaded and
+ stored symbols as that use_stmt might be a noop assignment then.
+
+2008-03-05 Joel Sherrill <joel.sherrill@oarcorp.com>
+
+ * gthr-rtems.h: Implement __gthread_mutex_destroy.
+
+2008-03-05 Richard Guenther <rguenther@suse.de>
+
+ PR c++/35336
+ * tree.def (BIT_FIELD_REF): Document that operands 1 and 2
+ should be constants.
+ * tree-cfg.c (verify_expr): Verify it.
+ * fold-const.c (fold_truthop): Remove code generating
+ BIT_FIELD_REFs of structure bases.
+ (fold_binary): Likewise.
+ (fold_ternary): Position and size of BIT_FIELD_REFs are
+ always host integers.
+ (make_bit_field_ref): Remove.
+ (optimize_bit_field_compare): Remove.
+ (all_ones_mask_p): Remove.
+
+2008-03-05 Gabor Loki <loki@gcc.gnu.org>
+
+ PR gcc/33009
+ * rtl-factoring.c (clear_regs_live_in_seq): Fix backward steps.
+ (split_block_and_df_analyze): New. Split basic block and rebuild
+ dataflow.
+ (block_label_after): Use SPLIT_BLOCK_AND_DF_ANALYZE instead of
+ SPLIT_BLOCK.
+ (split_pattern_seq): Likewise.
+ (erase_matching_seqs): Likewise.
+ (split_pattern_seq): Skip return insn in case of REG_NORETURN note.
+
+2008-03-04 Geoff Keating <geoffk@apple.com>
+
+ * fold-const.c (tree_single_nonnegative_warnv_p): Fix mixed
+ declaration and code.
+ (tree_invalid_nonnegative_warnv_p): Likewise.
+
+2008-03-05 Serge Belyshev <belyshev@depni.sinp.msu.ru>
+
+ * doc/install.texi (Testing): Correct quoting for the RUNTESTFLAGS
+ examples. Truncate option-names then causing overfull hbox.
+
+2008-03-04 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/35222
+ * configure.ac (CONFIG_SJLJ_EXCEPTIONS): Force SJLJ exceptions
+ on hpux10.
+ * configure: Rebuilt.
+
+2008-03-04 Rafael Espindola <espindola@google.com>
+
+ * fold-const.c (tree_simple_nonnegative_warnv_p): New.
+ (tree_unary_nonnegative_warnv_p): New.
+ (tree_binary_nonnegative_warnv_p): New.
+ (tree_single_nonnegative_warnv_p): New.
+ (tree_invalid_nonnegative_warnv_p): New.
+ (tree_expr_nonnegative_warnv_p): Redefine in term of the new functions.
+
+2008-03-04 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
+
+ PR 28322
+ * opts.c (handle_option): Postpone 'unknown option' errors only for
+ warning options.
+
+2008-03-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/35453
+ * config/i386/smmintrin.h (SIDD_XXX): Renamed to ...
+ (_SIDD_XXX): This.
+
+2008-03-04 Rafael Espindola <espindola@google.com>
+
+ * fold-const.c (tree_unary_nonzero_warnv_p): New.
+ (tree_binary_nonzero_warnv_p): New.
+ (tree_single_nonzero_warnv_p): New.
+ (tree_expr_nonzero_warnv_p): Redefine using the new functions.
+
+2008-03-04 Uros Bizjak <ubizjak@gmail.com>
+
+ PR middle-end/35456
+ * fold-const.c (fold_cond_expr_with_comparison): Prevent
+ transformations for modes that have signed zeros.
+ * ifcvt.c (noce_try_abs): Ditto.
+
+2008-03-04 Joseph Myers <joseph@codesourcery.com>
+
+ * config/i386/i386.c (override_options): Force
+ -maccumulate-outgoing-args on if TARGET_STACK_PROBE.
+
+2008-03-04 Jan Hubicka <jh@suse.cz>
+
+ PR c++/35262
+ * ipa-inline.c (cgraph_decide_inlining_of_small_function): Fix typo
+ in last commit.
+
+2008-03-04 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/i386.md (allocate_stack_worker_32): Use __chkstk
+ label to probe the stack.
+
+2008-03-04 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * gthr-win32.h [__GTHREAD_HIDE_WIN32API]
+ (__gthr_win32_mutex_destroy): Declare.
+ [__GTHREAD_HIDE_WIN32API] (__gthread_mutex_destroy): Use
+ __gthr_win32_mutex_destroy.
+ * config/i386/gthr-win32.c (__gthr_win32_mutex_destroy): Define.
+
+2008-03-03 Jan Hubicka <jh@suse.cz>
+
+ PR c++/35262
+ * ipa-inline.c (cgraph_decide_inlining_of_small_function): Be more
+ aggressive on inlining cold calls.
+
+2008-03-03 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-sccvn.c (visit_reference_op_store): Do not insert
+ struct copies into the expression table.
+ (simplify_unary_expression): Handle VIEW_CONVERT_EXPR.
+ (try_to_simplify): Likewise.
+ * fold-const.c (fold_unary): Fold VIEW_CONVERT_EXPR of
+ integral and pointer arguments which do not change the
+ precision to NOP_EXPRs.
+ * tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): Adjust
+ VIEW_CONVERT_EXPR case.
+
2008-03-02 Basile Starynkevitch <basile@starynkevitch.net>
merged with trunk 132817
+2008-03-02 Sebastian Pop <sebastian.pop@amd.com>
+
+ * tree-scalar-evolution.c (instantiate_parameters_1): An SSA_NAME
+ defined in a loop at depth 0 is invariant.
+ * tree-chrec.c (evolution_function_is_invariant_rec_p): Ditto.
+ * tree-ssa-loop-ivopts.c (expr_invariant_in_loop_p): Should never
+ be called at loop depth 0.
+
+2008-03-02 Jakub Jelinek <jakub@redhat.com>
+
+ PR driver/35420
+ * gcc.c (process_command): Update copyright notice dates.
+ * gcov.c (print_version): Likewise.
+ * gcov-dump.c (print_version): Likewise.
+ * mips-tfile.c (main): Likewise.
+ * mips-tdump.c (main): Likewise.
+
+>>>>>>> .merge-right.r133107
2008-03-02 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 24924
@@ -35,7 +598,7 @@
__absvsi2, __absvDI2): Use unsigned arithmetic.
2008-03-02 Andi Kleen <ak@suse.de>
- Richard Guenther <rguenther@suse.de>
+ Richard Guenther <rguenther@suse.de>
* struct-equiv.c: Remove file.
* cfg_cleanup.c (condjump_equiv_p): Remove.
@@ -202,7 +765,8 @@
struct rdg_vertex_info, rdg_vertex_for_stmt): New.
(create_rdg_edge_for_ddr, create_rdg_vertices): Cleaned up.
(stmts_from_loop): Skip LABEL_EXPR.
- (hash_stmt_vertex_info, eq_stmt_vertex_info, hash_stmt_vertex_del): New.
+ (hash_stmt_vertex_info, eq_stmt_vertex_info, hash_stmt_vertex_del):
+ New.
(build_rdg): Initialize rdg->indices htab.
(free_rdg, stores_from_loop, ref_base_address,
rdg_defs_used_in_other_loops_p, have_similar_memory_accesses,
@@ -211,7 +775,8 @@
* tree-data-ref.h: Depend on tree-chrec.h.
(debug_data_dependence_relations, free_data_ref): Declared.
(same_access_functions): ... here.
- (ddr_is_anti_dependent, ddrs_have_anti_deps, ddr_dependence_level): New.
+ (ddr_is_anti_dependent, ddrs_have_anti_deps, ddr_dependence_level):
+ New.
(struct rdg_vertex): Add has_mem_write and has_mem_reads.
(RDGV_HAS_MEM_WRITE, RDGV_HAS_MEM_READS, RDG_STMT,
RDG_MEM_WRITE_STMT, RDG_MEM_READS_STMT): New.
@@ -221,7 +786,8 @@
(struct rdg_edge): Add level.
(RDGE_LEVEL): New.
(free_rdg, stores_from_loop, remove_similar_memory_refs,
- rdg_defs_used_in_other_loops_p, have_similar_memory_accesses): Declared.
+ rdg_defs_used_in_other_loops_p, have_similar_memory_accesses):
+ Declared.
(rdg_has_similar_memory_accesses): New.
* tree-vect-analyze.c: Remove unused static decls.
* lambda.h (dependence_level): New.
@@ -1312,8 +1878,7 @@
(OPTION_MASK_ISA_SSE5_UNSET): Likewise.
(OPTION_MASK_ISA_SSE4): Removed.
(ix86_handle_option): Turn on bits in ix86_isa_flags and
- ix86_isa_flags_explicit with OPTION_MASK_ISA_XXX_SET for
- -mXXX.
+ ix86_isa_flags_explicit with OPTION_MASK_ISA_XXX_SET for -mXXX.
(override_options): Don't turn on implied SSE/MMX bits in
ix86_isa_flags.
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 2094f4c4415..692a0843670 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20080302
+20080311
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 607bd6bfb19..4ce6c052bf7 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -808,7 +808,7 @@ GCOV_IO_H = gcov-io.h gcov-iov.h auto-host.h
COVERAGE_H = coverage.h $(GCOV_IO_H)
DEMANGLE_H = $(srcdir)/../include/demangle.h
RECOG_H = recog.h
-ALIAS_H = alias.h
+ALIAS_H = alias.h coretypes.h
EMIT_RTL_H = emit-rtl.h
FLAGS_H = flags.h options.h
FUNCTION_H = function.h $(TREE_H) $(HASHTAB_H)
@@ -2674,7 +2674,7 @@ auto-inc-dec.o : auto-inc-dec.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
cfg.o : cfg.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $(FLAGS_H) \
$(REGS_H) hard-reg-set.h output.h toplev.h $(FUNCTION_H) except.h $(GGC_H) \
$(TM_P_H) $(TIMEVAR_H) $(OBSTACK_H) $(TREE_H) alloc-pool.h \
- $(HASHTAB_H) $(DF_H) $(CFGLOOP_H)
+ $(HASHTAB_H) $(DF_H) $(CFGLOOP_H) $(TREE_FLOW_H)
cfghooks.o: cfghooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
$(TREE_H) $(BASIC_BLOCK_H) $(TREE_FLOW_H) $(TIMEVAR_H) toplev.h $(CFGLOOP_H)
cfgexpand.o : cfgexpand.c $(TREE_FLOW_H) $(CONFIG_H) $(SYSTEM_H) \
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index d86bfeb22eb..814d51730f5 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,128 @@
+2008-03-10 Eric Botcazou <ebotcazou@adacore.com>
+
+ * trans.c (emit_range_check): Do not emit the check if the base type
+ of the expression is the type against which its range must be checked.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * decl.c (maybe_pad_type): Use value_factor_p.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * lang.opt (nostdlib): Move around.
+ * misc.c (gnat_handle_option): Fix formatting.
+ (gnat_dwarf_name): Move around.
+ * trans.c (Case_Statement_to_gnu): Fix formatting.
+ (gnat_to_gnu): Likewise.
+ * utils.c (aggregate_type_contains_array_p): Likewise.
+ (create_subprog_decl): Likewise.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Do not
+ bother propagating the TYPE_USER_ALIGN flag when creating a JM type.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * decl.c (gnat_to_gnu_entity) <E_Record_Type>: Do not force
+ BIGGEST_ALIGNMENT when capping the alignment of records with
+ strict alignment and size clause.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * lang-specs.h: Pass -gnatwa if -Wall is passed.
+ * misc.c (gnat_handle_option) <OPT_Wall>: Expand into -Wunused
+ and -Wuninitialized.
+ (gnat_post_options): Clear warn_unused_parameter.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * utils.c (finish_record_type): Clear DECL_BIT_FIELD on sufficiently
+ aligned bit-fields, bumping the alignment of the record type if deemed
+ profitable.
+ (value_factor_p): Return false instead of 0.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Add support
+ for scalar types with small alignment.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * trans.c (Loop_Statement_to_gnu): Set the SLOC of the loop label
+ from that of the front-end's end label.
+ (gnat_gimplify_stmt) <LOOP_STMT>: Set the SLOC of the backward goto
+ from that of the loop label.
+
+2008-03-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>: Add
+ comment for the packed array type case.
+ * utils.c (build_template): Use a loop to strip padding or
+ containing records for justified modular types.
+
+2008-03-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * decl.c (gnat_to_gnu_entity): Issue a warning on suspiciously
+ large alignments specified for types.
+ (validate_alignment): Minor cleanup.
+
+2008-03-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * decl.c (MAX_FIXED_MODE_SIZE): Define if not already defined.
+ (gnat_to_gnu_entity) <E_Record_Type>: Try to get a smaller form of
+ the component for packing, if possible, as well as if a component
+ size clause is specified.
+ <E_Record_Subtype>: For an array type used to implement a packed
+ array, get the component type from the original array type.
+ Try to get a smaller form of the component for packing, if possible,
+ as well as if a component size clause is specified.
+ (round_up_to_align): New function.
+ (make_packable_type): Add in_record parameter.
+ For a padding record, preserve the size. If not in_record and the
+ size is too large for an integral mode, attempt to shrink the size
+ by lowering the alignment.
+ Ditch the padding bits of the last component.
+ Compute sizes and mode manually, and propagate the RM size.
+ Return a BLKmode record type if its size has shrunk.
+ (maybe_pad_type): Use MAX_FIXED_MODE_SIZE instead of BIGGEST_ALIGNMENT.
+ Use Original_Array_Type to retrieve the type in case of an error.
+ Adjust call to make_packable_type.
+ (gnat_to_gnu_field): Likewise.
+ (concat_id_with_name): Minor tweak.
+ * trans.c (larger_record_type_p): New predicate.
+ (call_to_gnu): Compute the nominal type of the object only if the
+ parameter is by-reference. Do the conversion actual type -> nominal
+ type if the nominal type is a larger record.
+ (gnat_to_gnu): Do not require integral modes on the source type to
+ avoid the conversion for types with identical names.
+ (addressable_p): Add gnu_type parameter. If it is specified, do not
+ return true if the expression is not addressable in gnu_type.
+ Adjust recursive calls.
+ * utils.c (finish_record_type): Remove dead code.
+
+2008-03-05 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/35186
+ * decl.c (maybe_pad_type): Avoid padding an integral type when
+ bumping its alignment is sufficient.
+
+2008-03-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * gnatfind.adb, gnatxref.adb: Fix argument parsing typos.
+ * s-auxdec-empty.adb, s-auxdec.adb: Fix typos in copyright
+ statement.
+ * a-ngcoar.adb, a-ngrear.adb, g-awk.adb, g-debpoo.adb,
+ gprep.adb, make.adb, makegpr.adb, par-ch6.adb, prj-nmsc.adb,
+ sem_attr.adb, sem_ch4.adb, sem_ch8.adb: Fix typos in ada source
+ code output strings.
+ * sem_type.adb, system-vms-ia64.ads, system-vms.ads,
+ system-vms_64.ads: Fix typos in ada source code comments.
+ * sinfo-cn.adb: Remove incomplete sentence.
+
+ PR documentation/15479
+ * gnat_rm.texi, gnat_ugn.texi: Avoid standalone `non' word.
+
2008-02-27 Samuel Tardieu <sam@rfc1149.net>
PR ada/22255
@@ -62,7 +187,7 @@
sample.
* gnat_rm.texi, gnat_ugn.texi: Fix typos. Bump copyright years.
-2008-02-11 Joel Sherrill <joel.sherrill@oarcorp.com>
+2008-02-11 Joel Sherrill <joel.sherrill@oarcorp.com>
PR ada/35143
* env.c: Add __rtems__ to if defined.
@@ -109,7 +234,7 @@
2008-01-13 Eric Botcazou <ebotcazou@adacore.com>
- * trans.c (call_to_gnu):Invoke the addressable_p predicate only
+ * trans.c (call_to_gnu): Invoke the addressable_p predicate only
when necessary. Merge some conditional statements. Update comments.
Rename unchecked_convert_p local variable to suppress_type_conversion.
Do not suppress conversions in the In case.
@@ -138,7 +263,7 @@
for the C macro for setting individual bit.
(pthread_setaffinity_np): New imported routine.
-2008-01-03 Tero Koskinen <tero.koskinen@iki.fi>
+2008-01-03 Tero Koskinen <tero.koskinen@iki.fi>
PR ada/34647
* adaint.c (__gnat_open_new_temp, __gnat_tmp_name): Use mkstemp()
@@ -1605,7 +1730,7 @@
* exp_ch9.adb (Build_Simple_Entry_Call): Initialize OUT access type
parameters of an entry call.
-2007-12-03 Robert Dewar <dewar@adacore.com>
+2007-12-03 Robert Dewar <dewar@adacore.com>
Samuel Tardieu <sam@rfc1149.net>
PR ada/34287
@@ -1705,7 +1830,7 @@
* trans.c (gnat_to_gnu) <case N_Free_Statement>: Reformat lines
to fit in 80 columns.
-2007-11-21 Aurelien Jarno <aurelien@aurel32.net>
+2007-11-21 Aurelien Jarno <aurelien@aurel32.net>
* s-osinte-kfreebsd-gnu.ads (To_Target_Priority): New function.
* Makefile.in: Add EH_MECHANISM=-gcc to kfreebsd-gnu. Remove SYMLIB.
@@ -1814,7 +1939,7 @@
PR bootstrap/33608
* tracebak.c: #undef abort after including system.h.
-2007-10-20 Danny Smith <dannysmith@users.sourceforge.net>
+2007-10-20 Danny Smith <dannysmith@users.sourceforge.net>
* Makefile.in (LIBGNAT_TARGET_PAIRS) Add s-tasinf-mingw.adb,
s-tasinf-mingw.ads, a-exetim-mingw.adb, a-exetim-mingw.ads
@@ -2699,7 +2824,7 @@
Also return inner allocator node, when present, so that we do not have
to look for that node again in the caller.
-2007-09-11 Jan Hubicka <jh@suse.cz>
+2007-09-11 Jan Hubicka <jh@suse.cz>
* misc.c (gnat_expand_body): Kill.
(LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
@@ -4748,7 +4873,7 @@
anonymous access type.
(pthread_sigmask): Now take an access sigset_t.
-2007-07-05 Joel Sherrill <joel.sherrill@oarcorp.com>
+2007-07-05 Joel Sherrill <joel.sherrill@oarcorp.com>
* s-osinte-rtems.ads: Correct prototype of pthread_sigmask.
@@ -7938,7 +8063,7 @@
run-time check.
2007-04-06 Arnaud Charlet <charlet@adacore.com>
- Eric Botcazou <botcazou@adacore.com>
+ Eric Botcazou <botcazou@adacore.com>
* gnatvsn.ads, comperr.adb (Get_Gnat_build_Type): Renamed Build_Type
and made constant.
@@ -7965,7 +8090,7 @@
'/' should be inserted between the path and the filename.
2007-04-06 Olivier Hainque <hainque@adacore.com>
- Eric Botcazou <botcazou@adacore.com>
+ Eric Botcazou <botcazou@adacore.com>
* decl.c (gnat_to_gnu_entity) <E_Constant>: Associate an external
VAR_DECL to a CONST_DECL we make for a public constant when we know the
@@ -8403,7 +8528,7 @@
Remove all code for DSP option
(CW_Or_Controlled_Type): new subprogram.
-2007-04-06 Eric Botcazou <botcazou@adacore.com>
+2007-04-06 Eric Botcazou <botcazou@adacore.com>
Ed Schonberg <schonberg@adacore.com>
Gary Dismukes <dismukes@adacore.com>
@@ -8700,7 +8825,7 @@
* a-fzteio.ads, a-izteio.ads: New Ada 2005 run-time units.
-2007-04-06 Eric Botcazou <botcazou@adacore.com>
+2007-04-06 Eric Botcazou <botcazou@adacore.com>
Arnaud Charlet <charlet@adacore.com>
* init.c: Reuse PA/HP-UX code for IA-64/HP-UX, except
@@ -8713,7 +8838,7 @@
member in struct sigaction, so as to avoid warning for incompatible
pointer types.
-2007-04-06 Serguei Rybin <rybin@adacore.com>
+2007-04-06 Serguei Rybin <rybin@adacore.com>
* lib.ads, lib.adb (Tree_Read): Release the memory occupied by the
switches from previously loaded tree
@@ -9160,7 +9285,7 @@
an address always within the call instruction from a return address.
2007-04-06 Olivier Hainque <hainque@adacore.com>
- Eric Botcazou <botcazou@adacore.com>
+ Eric Botcazou <botcazou@adacore.com>
* trans.c (call_to_gnu) <TYPE_RETURNS_BY_TARGET_PTR_P>: Return an
expression with a COMPOUND_EXPR including the call instead of emitting
@@ -9199,7 +9324,7 @@
BIT_AND_EXPR. Handle also VIEW_CONVERT_EXPR, as the other conversion
opcodes.
-2007-04-06 Eric Botcazou <botcazou@adacore.com>
+2007-04-06 Eric Botcazou <botcazou@adacore.com>
Olivier Hainque <hainque@adacore.com>
* utils.c (update_pointer_to): Make a copy of the couple of FIELD_DECLs
@@ -9217,7 +9342,7 @@
function declaration node.
(builtin_decl_for): Search the builtin_decls list.
-2007-04-06 Eric Botcazou <botcazou@adacore.com>
+2007-04-06 Eric Botcazou <botcazou@adacore.com>
* s-stchop-vxworks.adb:
(Stack_Check): Raise Storage_Error if the argument has wrapped around.
@@ -11980,7 +12105,7 @@
of Get_Jmpbuf_Address_Soft and Get_GNAT_Exception.
* utils2.c (build_call_0_expr): Do not set TREE_SIDE_EFFECTS.
-2006-08-20 Laurent GUERBY <laurent@guerby.net>
+2006-08-20 Laurent Guerby <laurent@guerby.net>
PR ada/28716
g-socket.adb (Bind_Socket): Call Set_Address.
@@ -12053,7 +12178,7 @@
PR ada/27944
* s-taprop-hpux-dce.adb: Delete redundant 'with System.Parameters'.
-2006-06-06 Laurent GUERBY <laurent@guerby.net>
+2006-06-06 Laurent Guerby <laurent@guerby.net>
PR ada/27769
mlib-utl.adb: Use Program_Name.
@@ -12102,7 +12227,7 @@
* utils.c (create_var_decl): Use have_global_bss_p when deciding
whether to make the decl common.
-2006-02-20 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
+2006-02-20 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
* Make-lang.in (Ada): Remove.
(.PHONY): Remove Ada
@@ -14586,11 +14711,11 @@
* utils.c (max_size): Only test for TREE_OVERFLOW on INTEGER_CST
nodes.
-2005-11-23 Laurent GUERBY <laurent@guerby.net>
+2005-11-23 Laurent Guerby <laurent@guerby.net>
* mlib-prj.adb (Build_Library): Initialize Delete.
-2005-11-21 Joel Sherrill <joel.sherrill@oarcorp.com>
+2005-11-21 Joel Sherrill <joel.sherrill@oarcorp.com>
* socket.c: Add extern int h_errno for rtems since networking header
files are not available at this point in a tool bootstrap. Newlib
@@ -14604,7 +14729,7 @@
the error message text, instead use pp_format_text and the new
pretty printer APIs. This allows handling of %qs, %w, etc.
-2005-11-18 Laurent GUERBY <laurent@guerby.net>
+2005-11-18 Laurent Guerby <laurent@guerby.net>
PR ada/24857
* Makefile.in: Use s-auxdec-empty for RTEMS.
@@ -14617,7 +14742,7 @@
reference, declaration, or constant, since the gimplifier
can't handle that case.
-2005-11-17 Laurent GUERBY <laurent@guerby.net>
+2005-11-17 Laurent Guerby <laurent@guerby.net>
PR ada/24857
* s-auxdec-empty.ads, s-auxdec-empty.adb: New files.
@@ -14626,7 +14751,7 @@
* Makefile.in: Add EH_MECHANISM=-gcc to s390(x) linux.
-2005-11-16 Joel Sherrill <joel.sherrill@oarcorp.com>
+2005-11-16 Joel Sherrill <joel.sherrill@oarcorp.com>
PR ada/24855
* raise-gcc.c: Add missing stdarg.h include.
@@ -16006,7 +16131,7 @@
build_binary_op for the "target pointer" case. Use build_return_expr
instead of manually building the RETURN_EXPR tree.
-2005-09-16 Laurent GUERBY <laurent@guerby.net>
+2005-09-16 Laurent Guerby <laurent@guerby.net>
PR ada/23788
* s-tpinop.ads: Make this unit Preelaborate.
@@ -19231,7 +19356,7 @@
comment typos.
* gnat_rm.texi, gnat_ugn.texi: Fix typos.
-2005-05-16 Nathanael Nerode <neroden@gcc.gnu.org>
+2005-05-16 Nathanael Nerode <neroden@gcc.gnu.org>
PR ada/20270
* Makefile.in: Make TGT_LIB behave correctly.
@@ -19240,7 +19365,7 @@
* misc.c: Adjust warning() callers.
-2005-04-16 Laurent GUERBY <laurent@guerby.net>
+2005-04-16 Laurent Guerby <laurent@guerby.net>
PR ada/18847
* a-nudira.adb (Value): Check for valid string.
@@ -19255,7 +19380,7 @@
* adaint.c, init.c, tracebak.c: Fix comment typos.
* gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Fix typos.
-2005-04-07 Laurent GUERBY <laurent@guerby.net>
+2005-04-07 Laurent Guerby <laurent@guerby.net>
John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* Makefile.in: Add make ifeq define for hppa linux tasking support.
@@ -20607,17 +20732,17 @@
relaxed rules about placement of large packed bit array components.
Add documentation of GNAT.UTF_32
-2005-03-12 Daniel Berlin <dberlin@dberlin.org>
+2005-03-12 Daniel Berlin <dberlin@dberlin.org>
* misc.c (gnat_post_options): Turn off structural
aliasing for now.
-2005-03-08 Laurent Guerby <laurent@guerby.net>
+2005-03-08 Laurent Guerby <laurent@guerby.net>
* system-linux-sparc.ads: Fix typo in previous commit.
-2005-03-07 James A. Morrison <phython@gcc.gnu.org>
- Laurent Guerby <laurent@guerby.net>
+2005-03-07 James A. Morrison <phython@gcc.gnu.org>
+ Laurent Guerby <laurent@guerby.net>
PR ada/20035
* system-linux-sparc.ads: New.
@@ -21175,7 +21300,7 @@
[VMS] (#define exit hack): Remove.
2005-02-09 Pascal Obry <obry@adacore.com>
- Arnaud Charlet <charlet@adacore.com>
+ Arnaud Charlet <charlet@adacore.com>
* init.c (__gnat_initialize): Add a new parameter eh which contains the
address of the exception registration. The Win32 version of this
@@ -21422,14 +21547,14 @@
a-zttest.ads, a-zzunio.ads: New files. Part of new Ada 2005
library.
-2005-01-27 Laurent GUERBY <laurent@guerby.net>
+2005-01-27 Laurent Guerby <laurent@guerby.net>
* Makefile.in: Fix a-intnam.ads from previous commit,
add 2005 to copyright.
* a-intman-rtems.ads: Renamed to...
* a-intnam-rtems.ads:
-2005-01-27 Laurent GUERBY <laurent@guerby.net>
+2005-01-27 Laurent Guerby <laurent@guerby.net>
* Makefile.in: Rename GNAT RTEMS specific files.
* 5rtpopsp.adb, 4rintnam.ads, 5rosinte.adb,
@@ -21437,15 +21562,15 @@
* s-tpopsp-rtems.adb, a-intman-rtems.ads, s-osinte-rtems.adb,
s-osinte-rtems.ads, s-parame-rtems.adb: Replace files above.
-2005-01-27 Joel Sherrill <joel.sherrill@oarcorp.com>
- Laurent GUERBY <laurent@guerby.net>
+2005-01-27 Joel Sherrill <joel.sherrill@oarcorp.com>
+ Laurent Guerby <laurent@guerby.net>
PR ada/19488
* 5rosinte.ads: Add No_Key constant.
* 5rtpopsp.adb: Initialize ATCB_Key with No_Key and fix style.
* gsocket.h: Do not include <sys/socket.h> with RTEMS either.
-2005-01-26 Laurent GUERBY <laurent@guerby.net>
+2005-01-26 Laurent Guerby <laurent@guerby.net>
PR ada/19414
* i-cobol.adb (Valid_Numeric): Handle zero length case.
@@ -21832,7 +21957,7 @@
whether the ancestor type is private, as may be the case with nested
instantiations.
-2004-12-30 Sohail Somani <sohail@sohailsomani.com>
+2004-12-30 Sohail Somani <sohail@sohailsomani.com>
PR ada/19128
* trans.c (gnat_to_gnu): Fix typo: Use correct return variable.
@@ -22997,7 +23122,7 @@
* mlib-tgt.ads: (Build_Dynamic_Library): New parameter Options_2
-2004-10-04 Laurent GUERBY <laurent@guerby.net>
+2004-10-04 Laurent Guerby <laurent@guerby.net>
PR ada/15156
* Makefile.in: Define and use RANLIB_FLAGS.
@@ -27103,7 +27228,7 @@
* sem_elim.adb: Some minor code reorganization from code reading. Fix
misprint in the function name (File_Name_Match).
-2004-04-23 Laurent GUERBY <laurent@guerby.net>
+2004-04-23 Laurent Guerby <laurent@guerby.net>
* Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after
install.
@@ -27188,7 +27313,7 @@
* snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
no longer used as a parameter name for Eliminate pragma).
-2004-04-22 Laurent GUERBY <laurent@guerby.net>
+2004-04-22 Laurent Guerby <laurent@guerby.net>
PR optimization/14984
PR optimization/14985
@@ -27664,7 +27789,7 @@
* mdll-utl.adb (Locate): New version is idempotent.
-2004-04-17 Laurent Guerby <laurent@guerby.net>
+2004-04-17 Laurent Guerby <laurent@guerby.net>
PR ada/14988 (partial)
* impunit.adb: Fix typo.
@@ -28358,7 +28483,7 @@
(gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
* misc.c (LANG_HOOK_HASH_TYPE): Redefine.
-2004-03-19 Laurent Guerby <laurent@guerby.net>
+2004-03-19 Laurent Guerby <laurent@guerby.net>
* sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
aggregate, allows bootstrap from 3.3 on powerpc-darwin.
@@ -30741,7 +30866,7 @@
* s-rident.ads: Add new restriction No_Direct_Boolean_Operators
-2003-11-24 Arnaud Charlet <charlet@act-europe.fr>
+2003-11-24 Arnaud Charlet <charlet@act-europe.fr>
PR ada/13142
* utils.c (init_gigi_decls): Change name of built-in setjmp to
@@ -32517,7 +32642,7 @@
* misc.c (gnat_handle_option): Don't handle filenames.
-2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
+2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
* Make-lang.in: Replace PWD with PWD_COMMAND.
* Makefile.adalib: Likewise.
@@ -32657,7 +32782,7 @@
* utils.c (finish_record_type): Remove usages of ROUND_TYPE_SIZE
and ROUND_TYPE_SIZE_UNIT.
-2003-05-22 Geert Bosch <bosch@gnat.com>
+2003-05-22 Geert Bosch <bosch@gnat.com>
* gnat_rm.texi : Remove reference to Ada Core Technologies.
@@ -32676,7 +32801,7 @@
end_subprog_body): Likewise.
* utils2.c (build_call_raise): Likewise.
-2003-05-01 Laurent Guerby <guerby@acm.org>
+2003-05-01 Laurent Guerby <guerby@acm.org>
PR ada/10546
* 5iosinte.ads: Increase pthread_cond_t size to match recent
@@ -32686,7 +32811,7 @@
* utils.c (convert): No need to clear TREE_CST_RTL.
-2003-04-23 Geert Bosch <bosch@gnat.com>
+2003-04-23 Geert Bosch <bosch@gnat.com>
* 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
1ssecsta.ads, 31soccon.ads, 31soliop.ads, 3asoccon.ads,
@@ -33045,7 +33170,7 @@
* misc.c (gnat_adjust_rli): #if 0.
-2003-03-31 Geert Bosch <bosch@gnat.com>
+2003-03-31 Geert Bosch <bosch@gnat.com>
PR ada/10020
* link.c : Fix misspelled "const" keyword
@@ -33088,7 +33213,7 @@
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Regenerate.
-2003-03-02 Laurent Guerby <guerby@acm.org>
+2003-03-02 Laurent Guerby <guerby@acm.org>
* Makefile.in (install-gnatlib): Match previous change there
so it works.
@@ -33114,7 +33239,7 @@
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
gnat_ug_wnt.texi: Regenerate.
-2003-02-03 Christian Cornelssen <ccorn@cs.tu-berlin.de>
+2003-02-03 Christian Cornelssen <ccorn@cs.tu-berlin.de>
* Make-lang.in (ada.install-info): Let $(DESTDIR)$(infodir)
be created if necessary.
@@ -33131,14 +33256,14 @@
* gnat_ug.texi: Remove -fvolatile from example.
* gnat_ug_vxw.texi: Likewise.
-2003-01-29 Laurent Guerby <guerby@acm.org>
+2003-01-29 Laurent Guerby <guerby@acm.org>
PR ada/8344
* final.c: rename to adafinal.c to avoid file name conflicts with gcc file.
* Makefile.in: match previous change.
* Make-lang.in: match previous change.
-2003-01-29 Joel Sherrill <joel@OARcorp.com>
+2003-01-29 Joel Sherrill <joel@OARcorp.com>
* 5rosinte.ads: Add SIGXCPU.
* 5rtpopsp.adb: New file.
@@ -33203,11 +33328,11 @@
ada/gnat_ug_wnt.dvi, ada/gnat_rm.dvi): Depend on
$(srcdir)/doc/include/gcc-common.texi.
-2002-12-15 Geert Bosch <bosch@gnat.com>
+2002-12-15 Geert Bosch <bosch@gnat.com>
* sem_ch6.adb (Analyze_Subprogram_Body): Fix typo and formatting
-2002-12-14 Geert Bosch <bosch@gnat.com>
+2002-12-14 Geert Bosch <bosch@gnat.com>
PR ada/5690
* sem_ch6.adb (Analyze_Subprogram_Body): Recognize additional
@@ -33251,14 +33376,14 @@
* trans.c (gnu_pending_elaboration_lists): New GC root.
(build_unit_elab): Use..
-2002-10-30 Geert Bosch <bosch@gnat.com>
+2002-10-30 Geert Bosch <bosch@gnat.com>
PR ada/6558
* misc.c : Include optabs.h
* Make-lang.in (misc.o): Add dependency on optabs.h
-2002-10-29 Geert Bosch <bosch@gnat.com>
+2002-10-29 Geert Bosch <bosch@gnat.com>
PR ada/6558
* Make-lang.in (gnatbind): Depend on CONFIG_H
@@ -33562,8 +33687,8 @@
* doc/tm.texi (REAL_VALUE_LDEXP): Remove.
(REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT): Remove.
-2002-08-25 Andre Leis <a.leis@gmx.net>
- David Billinghurst (David.Billinghurst@riotinto.com>
+2002-08-25 Andre Leis <a.leis@gmx.net>
+ David Billinghurst <David.Billinghurst@riotinto.com>
* sysdep.c (__gnat_ttyname): include <termios.h> on cygwin
@@ -33891,7 +34016,7 @@
* Makefile.in: Pass VPATH=$(fsrcdir) when calling make in rts
directory.
-2001-03-28 Robert Dewar <dewar@gnat.com>
+2001-03-28 Robert Dewar <dewar@gnat.com>
* checks.ads:
(Remove_Checks): New procedure
@@ -33926,7 +34051,7 @@
(Constant_Array_Ref): Deal with string literals (patch
suggested by Zack Weinberg on the gcc list)
-2001-03-28 Ed Schonberg <schonber@gnat.com>
+2001-03-28 Ed Schonberg <schonber@gnat.com>
* exp_util.adb: Duplicate_Subexpr_No_Checks_Orig =>
Duplicate_Subexpr_Move_Checks.
@@ -33938,7 +34063,7 @@
value of array exists before retrieving it (it may a private
protected component in a function).
-2002-03-28 Geert Bosch <bosch@gnat.com>
+2002-03-28 Geert Bosch <bosch@gnat.com>
* prj-pp.adb : New file.
@@ -33985,8 +34110,8 @@
2002-03-23 Florian Weimer <fw@deneb.enyo.de>
+ From Ben Brosgol <brosgol@gnat.com>
* gnat_rm.texi: Sync with ACT version.
- (From Ben Brosgol <brosgol@gnat.com>)
2002-03-20 Neil Booth <neil@daikokuya.demon.co.uk>
@@ -34204,7 +34329,7 @@
function call could reallocate the table which was being indexed
using its result). Fixes ada/4851.
-2001-12-19 Robert Dewar <dewar@gnat.com>
+2001-12-19 Robert Dewar <dewar@gnat.com>
* bindgen.adb: Minor reformatting
@@ -34238,7 +34363,7 @@
error found (there were odd exceptions to this general rule in
-gnatec/-gnatem processing)
-2001-12-19 Olivier Hainque <hainque@gnat.com>
+2001-12-19 Olivier Hainque <hainque@gnat.com>
* raise.c (__gnat_eh_personality): Exception handling personality
routine for Ada. Still in rough state, inspired from the C++ version
@@ -34249,7 +34374,7 @@
* raise.c (eh_personality): Add comments. Part of work for the GCC 3
exception handling integration.
-2001-12-19 Arnaud Charlet <charlet@gnat.com>
+2001-12-19 Arnaud Charlet <charlet@gnat.com>
* Makefile.in: Remove use of 5smastop.adb which is obsolete.
(HIE_SOURCES): Add s-secsta.ad{s,b}.
@@ -34258,7 +34383,7 @@
interrupt handling files.
(RAVEN_MOD): Removed, no longer needed.
-2001-12-19 Robert Dewar <dewar@gnat.com>
+2001-12-19 Robert Dewar <dewar@gnat.com>
* a-ngelfu.adb: Remove ??? comment for inappropriate Inline_Always
Add 2001 to copyright date
@@ -34266,7 +34391,7 @@
* g-regpat.adb: Change pragma Inline_Always to Inline. There is no
need to force universal inlining for these cases.
-2001-12-19 Arnaud Charlet <charlet@gnat.com>
+2001-12-19 Arnaud Charlet <charlet@gnat.com>
* s-taprob.adb: Minor clean ups so that this unit can be used in
Ravenscar HI.
@@ -34274,16 +34399,16 @@
* exp_ch7.adb: Allow use of secondary stack in HI mode.
Disallow it when pragma Restrictions (No_Secondary_Stack) is specified.
-2001-12-19 Vincent Celier <celier@gnat.com>
+2001-12-19 Vincent Celier <celier@gnat.com>
* prj-tree.ads (Project_Node_Record): Add comments for components
Pkg_Id and Case_Insensitive.
-2001-12-19 Pascal Obry <obry@gnat.com>
+2001-12-19 Pascal Obry <obry@gnat.com>
* g-socket.adb: Minor reformatting. Found while reading code.
-2001-12-19 Robert Dewar <dewar@gnat.com>
+2001-12-19 Robert Dewar <dewar@gnat.com>
* prj-tree.ads: Minor reformatting
@@ -34291,7 +34416,7 @@
* config-lang.in (diff_excludes): Remove.
-2001-12-17 Ed Schonberg <schonber@gnat.com>
+2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_res.adb (Resolve_Selected_Component): do not generate a
discriminant check if the selected component is a component of
@@ -34301,7 +34426,7 @@
type is private, the gnu_type is the base type of the full view,
given that the full view itself may be a subtype.
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewar <dewar@gnat.com>
* sem_res.adb: Minor reformatting
@@ -34312,16 +34437,16 @@
* urealp.h: Add definition of Round_Even for call to Machine
Add third parameter for Machine
-2001-12-17 Ed Schonberg <schonber@gnat.com>
+2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_warn.adb (Check_One_Unit): Suppress warnings completely on
predefined units in No_Run_Time mode.
-2001-12-17 Richard Kenner <kenner@gnat.com>
+2001-12-17 Richard Kenner <kenner@gnat.com>
* misc.c (insn-codes.h): Now include.
-2001-12-17 Olivier Hainque <hainque@gnat.com>
+2001-12-17 Olivier Hainque <hainque@gnat.com>
* a-except.adb: Preparation work for future integration of the GCC 3
exception handling mechanism
@@ -34331,11 +34456,11 @@
(Propagate_Exception, Raise_Current_Excep, Raise_From_Signal_Handler):
Use the new notification routines.
-2001-12-17 Emmanuel Briot <briot@gnat.com>
+2001-12-17 Emmanuel Briot <briot@gnat.com>
* prj-tree.ads (First_Choice_Of): Document the when others case
-2001-12-17 Arnaud Charlet <charlet@gnat.com>
+2001-12-17 Arnaud Charlet <charlet@gnat.com>
* bindgen.adb (Gen_Ada_Init_*): Set priority of environment task in
HI-E mode, in order to support Ravenscar profile properly.
@@ -34343,7 +34468,7 @@
* cstand.adb (Create_Standard): Duration is a 32 bit type in HI-E
mode on 32 bits targets.
-2001-12-17 Vincent Celier <celier@gnat.com>
+2001-12-17 Vincent Celier <celier@gnat.com>
* fmap.adb: Initial version.
@@ -34374,13 +34499,13 @@
* Makefile.in: Add dependencies for fmap.o.
-2001-12-17 Ed Schonberg <schonber@gnat.com>
+2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_ch10.adb (Analyze_With_Clause): Retrieve proper entity when unit
is a package instantiation rewritten as a package body.
(Install_Withed_Unit): Undo previous change, now redundant.
-2001-12-17 Gary Dismukes <dismukes@gnat.com>
+2001-12-17 Gary Dismuke <dismukes@gnat.com>
* layout.adb:
(Compute_Length): Move conversion to Unsigned to callers.
@@ -34392,7 +34517,7 @@
where Max (Len, 0) wasn't getting applied due to the Unsigned
conversion used by Compute_Length.
-2001-12-17 Arnaud Charlet <charlet@gnat.com>
+2001-12-17 Arnaud Charlet <charlet@gnat.com>
* rtsfind.ads:
(OK_To_Use_In_No_Run_Time_Mode): Allow Ada.Exceptions and
@@ -34405,61 +34530,61 @@
* rident.ads (No_Secondary_Stack): New restriction.
-2001-12-17 Joel Brobecker <brobecke@gnat.com>
+2001-12-17 Joel Brobecker <brobecke@gnat.com>
* gnat_rm.texi: Fix minor typos. Found while reading the section
regarding "Bit_Order Clauses" that was sent to a customer.
Very interesting documentation!
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewar <dewar@gnat.com>
* sem_case.adb (Choice_Image): Avoid creating improper character
literal names by using the routine Set_Character_Literal_Name. This
fixes bombs in certain error message cases.
-2001-12-17 Arnaud Charlet <charlet@gnat.com>
+2001-12-17 Arnaud Charlet <charlet@gnat.com>
* a-reatim.adb: Minor reformatting.
-2001-12-17 Ed Schonberg <schonber@gnat.com>
+2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the
case where the formal is an extension of another formal in the current
unit or in a parent generic unit.
-2001-12-17 Arnaud Charlet <charlet@gnat.com>
+2001-12-17 Arnaud Charlet <charlet@gnat.com>
* s-tposen.adb: Update comments. Minor reformatting.
Minor code clean up.
* s-tarest.adb: Update comments. Minor code reorganization.
-2001-12-17 Gary Dismukes <dismukes@gnat.com>
+2001-12-17 Gary Dismukes <dismukes@gnat.com>
* exp_attr.adb (Attribute_Tag): Suppress expansion of <type_name>'Tag
when Java_VM.
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewa <dewar@gnat.com>
* exp_attr.adb: Minor reformatting
-2001-12-17 Ed Schonberg <schonber@gnat.com>
+2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Build_Derived_Private_Type): Refine check to handle
derivations nested within a child unit: verify that the parent
type is declared in an outer scope.
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb: Minor reformatting
-2001-12-17 Ed Schonberg <schonber@gnat.com>
+2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_warn.adb (Check_One_Unit): In No_Run_Time mode, do not post
warning if current unit is a predefined one, from which bodies may
have been deleted.
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewar <dewar@gnat.com>
* eval_fat.ads: Add comment that Round_Even is referenced in Ada code
Fix header format. Add 2001 to copyright date.
@@ -34467,7 +34592,7 @@
* exp_dbug.adb (Get_Encoded_Name): Fix out of bounds reference,
which caused CE during compilation if checks were enabled.
-2001-12-17 Vincent Celier <celier@gnat.com>
+2001-12-17 Vincent Celier <celier@gnat.com>
* make.adb:
(Switches_Of): New function
@@ -34505,7 +34630,7 @@
* snames.ads: Added Exec_Dir
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewar <dewar@gnat.com>
* make.adb: Minor reformatting
@@ -34515,29 +34640,29 @@
* snames.ads: Alphebetize entries for project file
-2001-12-17 Ed Schonberg <schonber@gnat.com>
+2001-12-17 Ed Schonberg <schonber@gnat.com>
* trans.c (process_freeze_entity): Do nothing if the entity is a
subprogram that was already elaborated.
-2001-12-17 Richard Kenner <kenner@gnat.com>
+2001-12-17 Richard Kenner <kenner@gnat.com>
* decl.c (gnat_to_gnu_entity, object): Do not back-annotate Alignment
and Esize if object is referenced via pointer.
-2001-12-17 Ed Schonberg <schonber@gnat.com>
+2001-12-17 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Analyze_Variant_Part): check that type of discriminant
is discrete before analyzing choices.
-2001-12-17 Joel Brobecker <brobecke@gnat.com>
+2001-12-17 Joel Brobecker <brobecke@gnat.com>
* bindgen.adb (Gen_Output_File_Ada): Generate a new C-like string
containing the name of the Ada Main Program. This string is mainly
intended for the debugger.
(Gen_Output_File_C): Do the equivalent change when generating a C file.
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewar <dewar@gnat.com>
* ali.adb: Set new Dummy_Entry field in dependency entry
@@ -34551,7 +34676,7 @@
* types.ads: (Dummy_Time_Stamp): New value for non-existant files
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewar <dewar@gnat.com>
* ali.adb: Type reference does not reset current file.
@@ -34569,7 +34694,7 @@
there could be a real problem here with an uninitialized reference
to Hbound, but no actual example of failure has been found.
-2001-12-17 Laurent Pautet <pautet@gnat.com>
+2001-12-17 Laurent Pautet <pautet@gnat.com>
* g-socket.ads:
Fix comment of Shutdown_Socket and Close_Socket. These functions
@@ -34579,7 +34704,7 @@
When an error occurs, an exception is raised with the error message
as exception message.
-2001-12-17 Robert Dewar <dewar@gnat.com>
+2001-12-17 Robert Dewar <dewar@gnat.com>
* frontend.adb: Move call to Check_Unused_Withs from Frontend, so
that it happens before modification of Sloc values for -gnatD.
@@ -34621,12 +34746,12 @@
sprint.adb, tbuild.ads, types.ads, utils.c, xeinfo.adb: Fix
spelling errors.
-2001-12-14 Vincent Celier <celier@gnat.com>
+2001-12-14 Vincent Celier <celier@gnat.com>
* osint.adb(Create_Debug_File): When an object file is specified,
put the .dg file in the same directory as the object file.
-2001-12-14 Robert Dewar <dewar@gnat.com>
+2001-12-14 Robert Dewar <dewar@gnat.com>
* osint.adb: Minor reformatting
@@ -34655,28 +34780,28 @@
Add 2001 to copyright date
Add entry for Latin-5 (Cyrillic ISO-8859-5)
-2001-12-14 Matt Gingell <gingell@gnat.com>
+2001-12-14 Matt Gingell <gingell@gnat.com>
* adaint.c: mktemp is a macro on Lynx and can not be used as an
expression.
-2001-12-14 Richard Kenner <kenner@gnat.com>
+2001-12-14 Richard Kenner <kenner@gnat.com>
* misc.c (gnat_expand_constant): Do not strip UNCHECKED_CONVERT_EXPR
if operand is CONSTRUCTOR.
-2001-12-14 Ed Schonberg <schonber@gnat.com>
+2001-12-14 Ed Schonberg <schonber@gnat.com>
* trans.c (tree_transform, case N_Assignment_Statement): Set lineno
before emiting check on right-hand side, so that exception information
is correct.
-2001-12-14 Richard Kenner <kenner@gnat.com>
+2001-12-14 Richard Kenner <kenner@gnat.com>
* utils.c (create_var_decl): Throw away initializing expression
if just annotating types and non-constant.
-2001-12-14 Vincent Celier <celier@gnat.com>
+2001-12-14 Vincent Celier <celier@gnat.com>
* prj-nmsc.adb: (Ada_Check): Migrate drom Ada_Default_... to
Default_Ada_...
@@ -34693,7 +34818,7 @@
* ChangeLog: Remove piece of diff output.
-2001-12-14 Geert Bosch <bosch@gnat.com>
+2001-12-14 Geert Bosch <bosch@gnat.com>
* config-lang.in: Update copyright notice
@@ -34705,7 +34830,7 @@
* sem_ch3.adb: Minor reformatting.
-2001-12-12 Geert Bosch <bosch@gnat.com>
+2001-12-12 Geert Bosch <bosch@gnat.com>
* freeze.ads: Update copyright date.
@@ -34713,16 +34838,16 @@
* gnat-style.texi: Fix typo.
-2001-12-12 Geert Bosch <bosch@gnat.com>
+2001-12-12 Geert Bosch <bosch@gnat.com>
* einfo.h: Regenerate.
-2001-12-12 Ed Schonberg <schonber@gnat.com>
+2001-12-12 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Save_Entity_Descendant): Use syntactic field names
on known node types, rather than untyped fields. Further cleanups.
-2001-12-12 Robert Dewar <dewar@gnat.com>
+2001-12-12 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb:
(Save_Entity_Descendant): Minor comment update.
@@ -34734,7 +34859,7 @@
* sem_ch12.adb (Associated_Node): Minor documentation cleanup.
-2001-12-12 Robert Dewar <dewar@gnat.com>
+2001-12-12 Robert Dewar <dewar@gnat.com>
* s-stalib.adb: Add more comments on with statements being needed
@@ -34747,13 +34872,13 @@
* s-fatgen.ads: Minor comment improvement
-2001-12-12 Ed Schonberg <schonber@gnat.com>
+2001-12-12 Ed Schonberg <schonber@gnat.com>
* sem_ch4.adb (Analyze_Selected_Component): If the prefix is of a
formal derived type, look for an inherited component from the full
view of the parent, if any.
-2001-12-12 Robert Dewar <dewar@gnat.com>
+2001-12-12 Robert Dewar <dewar@gnat.com>
* checks.ads (Apply_Alignment_Check): New procedure.
@@ -34768,44 +34893,44 @@
* mlib-fil.ads: Minor reformatting
-2001-12-12 Ed Schonberg <schonber@gnat.com>
+2001-12-12 Ed Schonberg <schonber@gnat.com>
* exp_ch8.adb (Expand_N_Object_Renaming_Declaration): Extend previous
fix to any component reference if enclosing record has non-standard
representation.
-2001-12-12 Vincent Celier <celier@gnat.com>
+2001-12-12 Vincent Celier <celier@gnat.com>
* g-dirope.ads (Find, Wildcard_Iterator): Moved to child package
Iteration
-2001-12-12 Ed Schonberg <schonber@gnat.com>
+2001-12-12 Ed Schonberg <schonber@gnat.com>
* freeze.ads: Make Freeze_Fixed_Point_Type visible, for use in
sem_attr.
-2001-12-12 Robert Dewar <dewar@gnat.com>
+2001-12-12 Robert Dewar <dewar@gnat.com>
* impunit.adb: Add entry for GNAT.Directory_Operations.Iteration
-2001-12-12 Emmanuel Briot <briot@gnat.com>
+2001-12-12 Emmanuel Briot <briot@gnat.com>
* g-regexp.adb: Remove all debug code, since it isn't required anymore,
and it adds dependencies to system.io.
-2001-12-12 Pascal Obry <obry@gnat.com>
+2001-12-12 Pascal Obry <obry@gnat.com>
* g-dirope.adb (Expand_Path.Var): Correctly detect end of
variable name.
-2001-12-11 Ed Schonberg <schonber@gnat.com>
+2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch10.adb (Install_Withed_Unit): If the unit is a generic instance
that is the parent of other generics, the instance body replaces the
instance node. Retrieve the instance of the spec, which is the one
that is visible in clients and within the body.
-2001-12-11 Vincent Celier <celier@gnat.com>
+2001-12-11 Vincent Celier <celier@gnat.com>
* gnatmain.adb: Initial version.
@@ -34817,32 +34942,32 @@
* snames.ads: Added Gnatstub.
-2001-12-11 Vincent Celier <celier@gnat.com>
+2001-12-11 Vincent Celier <celier@gnat.com>
* prj-attr.adb (Initialization_Data): Change name from
Initialisation_Data.
-2001-12-11 Emmanuel Briot <briot@gnat.com>
+2001-12-11 Emmanuel Briot <briot@gnat.com>
* g-regpat.adb (Parse_Literal): Properly handle simple operators ?,
+ and * applied to backslashed expressions like \r.
-2001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
+2001-12-11 Vasiliy Fofanov <fofanov@gnat.com>
* g-os_lib.ads: String_List type added, Argument_List type is now
subtype of String_List.
-2001-12-11 Robert Dewar <dewar@gnat.com>
+2001-12-11 Robert Dewar <dewar@gnat.com>
* g-os_lib.ads: Change copyright to FSF
Add comments for String_List type
-2001-12-11 Vincent Celier <celier@gnat.com>
+2001-12-11 Vincent Celier <celier@gnat.com>
* g-dirope.adb (Expand_Path): Fix bug. (wrong length when adding a
string to the buffer).
-2001-12-11 Ed Schonberg <schonber@gnat.com>
+2001-12-11 Ed Schonberg <schonber@gnat.com>
* freeze.adb: Make Freeze_Fixed_Point_Type visible, for use in
sem_attr.
@@ -34852,26 +34977,26 @@
to avoid anomalies where the bound of the type appears to raise
constraint error.
-2001-12-11 Robert Dewar <dewar@gnat.com>
+2001-12-11 Robert Dewar <dewar@gnat.com>
* lib-xref.adb (Output_Refs): Make sure pointers are always properly
handled.
-2001-12-11 Ed Schonberg <schonber@gnat.com>
+2001-12-11 Ed Schonber <schonber@gnat.com>
* sem_ch12.adb (Analyze_Subprogram_Instantiation): Check for a
renamed unit before checking for recursive instantiations.
-2001-12-11 Emmanuel Briot <briot@gnat.com>
+2001-12-11 Emmanuel Briot <briot@gnat.com>
* prj.ads: Add comments for some of the fields.
-2001-12-11 Robert Dewar <dewar@gnat.com>
+2001-12-11 Robert Dewar <dewar@gnat.com>
* lib-xref.adb (Output_Refs): Don't output type references outside
the main unit if they are not otherwise referenced.
-2001-12-11 Ed Schonberg <schonber@gnat.com>
+2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_attr.adb (Analyze_attribute, case Address and Size): Simplify
code and diagnose additional illegal uses
@@ -34879,7 +35004,7 @@
* sem_util.adb (Is_Object_Reference): An indexed component is an
object only if the prefix is.
-2001-12-11 Vincent Celier <celier@gnat.com>
+2001-12-11 Vincent Celier <celier@gnat.com>
* g-diopit.adb: Initial version.
@@ -34891,15 +35016,15 @@
* Makefile.in: Added g-diopit.o to GNATRTL_NONTASKING_OBJS
-2001-12-11 Robert Dewar <dewar@gnat.com>
+2001-12-11 Robert Dewar <dewar@gnat.com>
* sem_attr.adb: Minor reformatting
-2001-12-11 Ed Schonberg <schonber@gnat.com>
+2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb: Clarify some ???.
-2001-12-11 Robert Dewar <dewar@gnat.com>
+2001-12-11 Robert Dewar <dewar@gnat.com>
* exp_util.adb (Must_Be_Aligned): Removed, replaced by
Exp_Pakd.Known_Aligned_Enough
@@ -34907,7 +35032,7 @@
* sem_ch13.adb (Check_Address_Alignment): Removed, extended
version is moved to Exp_Ch13.
-2001-12-11 Robert Dewar <dewar@gnat.com>
+2001-12-11 Robert Dewar <dewar@gnat.com>
* einfo.ads: Minor reformatting
@@ -34937,7 +35062,7 @@
* exp_pakd.adb: Minor reformatting. Note that prevous RH should say:
(Known_Aligned_Enough): Replaces Must_Be_Aligned.
-2001-12-11 Vincent Celier <celier@gnat.com>
+2001-12-11 Vincent Celier <celier@gnat.com>
* gnatcmd.adb:
Changed /COMPILE_ONLY to /ACTIONS=COMPILE
@@ -34956,19 +35081,19 @@
is enabled, do not kill the code for the condition, to preserve
warning.
-2001-12-11 Robert Dewar <dewar@gnat.com>
+2001-12-11 Robert Dewar <dewar@gnat.com>
* checks.adb (Insert_Valid_Check): Apply validity check to expression
of conversion, not to result of conversion.
-2001-12-11 Ed Schonberg <schonber@gnat.com>
+2001-12-11 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Build_Derived_Record_Type): set Controlled flag
before freezing parent. If the declarations are mutually recursive,
an access to the current record type may be frozen before the
derivation is complete.
-2001-12-05 Vincent Celier <celier@gnat.com>
+2001-12-05 Vincent Celier <celier@gnat.com>
* gnatcmd.adb: (MAKE): Add new translations: -b /BIND_ONLY,
-c /COMPILE_ONLY, -l /LINK_ONLY
@@ -34989,7 +35114,7 @@
(Scan_Make_Arg): Reset the bind and link step flags when -u
or -gnatc has been specified.
-2001-12-05 Ed Schonberg <schonber@gnat.com>
+2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_eval.adb (Eval_Concatenation): If left operand is a null string,
get bounds from right operand.
@@ -35002,25 +35127,25 @@
* exp_util.adb: Undo earlier change, fixes ACVC regressions C48009B
and C48009J
-2001-12-05 Vincent Celier <celier@gnat.com>
+2001-12-05 Vincent Celier <celier@gnat.com>
* prj-nmsc.adb Minor reformatting
* prj-nmsc.adb (Language_Independent_Check): Reset Library flag if
set and libraries are not supported.
-2001-12-05 Ed Schonberg <schonber@gnat.com>
+2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Build_Derived_Private_Type): set Public status of
private view explicitly, so the back-end can treat as a global
when appropriate.
-2001-12-05 Ed Schonberg <schonber@gnat.com>
+2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Instantiate_Package_Body): if instance is a compilation
unit, always replace instance node with new body, for ASIS use.
-2001-12-05 Vincent Celier <celier@gnat.com>
+2001-12-05 Vincent Celier <celier@gnat.com>
* prj-nmsc.adb (Language_Independent_Check): Issue a warning if
libraries are not supported and both attributes Library_Name and
@@ -35034,18 +35159,18 @@
* prj-proc.adb: Put the change indicated above that was forgotten.
-2001-12-05 Robert Dewar <dewar@gnat.com>
+2001-12-05 Robert Dewar <dewar@gnat.com>
* Makefile.in: Add dependencies for System.IO for GNAT.Regexp
-2001-12-05 Ed Schonberg <schonber@gnat.com>
+2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Build_Derived_Concurrent_Type): If derivation imposes a
constraint, introduce explicit subtype declaration and derive from it.
* sem_ch3.adb: Minor reformatting
-2001-12-05 Robert Dewar <dewar@gnat.com>
+2001-12-05 Robert Dewar <dewar@gnat.com>
* checks.adb (Determine_Range): Increase cache size for checks.
Minor reformatting
@@ -35061,25 +35186,25 @@
* g-regexp.adb: Use System.IO instead of Ada.Text_IO.
-2001-12-05 Ed Schonberg <schonber@gnat.com>
+2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Analyze_Object_Declaration): If expression is an
aggregate with static wrong size, attach generated Raise node to
declaration.
-2001-12-05 Robert Dewar <dewar@gnat.com>
+2001-12-05 Robert Dewar <dewar@gnat.com>
* sem_attr.adb (Analyze_Attribute): Defend against bad Val attribute.
Fixes compilation abandoned bomb in B24009B.
-2001-12-05 Ed Schonberg <schonber@gnat.com>
+2001-12-05 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb:
Document use of Associated_Node on Selected_Components.
(Save_Global_Operand_Descendants): Change to Save_Entity_Descendants,
to clarify use of untyped descendant fields.
-2001-12-05 Robert Dewar <dewar@gnat.com>
+2001-12-05 Robert Dewar <dewar@gnat.com>
* prj-dect.ads: Add ??? comment
Add 2001 to copyright notice (was not done in after all)
@@ -35090,11 +35215,11 @@
* snames.ads: Minor reformatting
-2001-12-05 Geert Bosch <bosch@gnat.com>
+2001-12-05 Geert Bosch <bosch@gnat.com>
* snames.adb: Autoupdate
-2001-12-05 Vincent Celier <celier@gnat.com>
+2001-12-05 Vincent Celier <celier@gnat.com>
* prj-dect.adb (Parse): Rename parameter Modifying to Extends.
@@ -35115,7 +35240,7 @@
* snames.ads: Change modifying to extends.
-2001-12-05 Robert Dewar <dewar@gnat.com>
+2001-12-05 Robert Dewar <dewar@gnat.com>
* sem_warn.adb: Remove stuff for conditionals, we are not going to
do this after all.
@@ -35123,11 +35248,11 @@
* sem_warn.ads: Remove stuff for conditionals, we are not going to
do this after all. Add 2001 to copyright notice
-2001-12-04 Geert Bosch <bosch@gnat.com>
+2001-12-04 Geert Bosch <bosch@gnat.com>
* einfo.h, sinfo.h, treeprs.ads: Regenerate.
-2001-12-04 Robert Dewar <dewar@gnat.com>
+2001-12-04 Robert Dewar <dewar@gnat.com>
* errout.adb (Error_Msg): Ignore attempt to put error msg at junk
location if we already have errors. Stops some cases of cascaded
@@ -35135,7 +35260,7 @@
* errout.adb: Improve comment.
-2001-12-04 Robert Dewar <dewar@gnat.com>
+2001-12-04 Robert Dewar <dewar@gnat.com>
* sem_ch12.adb:
(Analyze_Formal_Type_Definition): Defend against Error.
@@ -35144,7 +35269,7 @@
* par-ch12.adb (F_Formal_Type_Declaration): In case of error,
remove following semicolon if present. Removes cascaded error.
-2001-12-04 Douglas B. Rupp <rupp@gnat.com>
+2001-12-04 Douglas B. Rupp <rupp@gnat.com>
* bindgen.adb:
(Gen_Exception_Table_Ada): Write "begin" and then return if Num
@@ -35152,11 +35277,11 @@
(Gen_Exception_Table_C): Return if Num exceptions equals 0.
Fixes PIWG E tests (which have to be run with -gnatL).
-2001-12-04 Robert Dewar <dewar@gnat.com>
+2001-12-04 Robert Dewar <dewar@gnat.com>
* einfo.ads: Minor reformatting
-2001-12-04 Ed Schonberg <schonber@gnat.com>
+2001-12-04 Ed Schonberg <schonber@gnat.com>
* einfo.ads: Block_Node points to the identifier of the block, not to
the block node itself, to preserve the link when the block is
@@ -35168,7 +35293,7 @@
* sem_ch5.adb (Analyze_Block_Statement): set Block_Node to point to
identifier of block node, rather than to node itself.
-2001-12-04 Gary Dismukes <dismukes@gnat.com>
+2001-12-04 Gary Dismukes <dismukes@gnat.com>
* layout.adb:
(Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
@@ -35177,29 +35302,29 @@
fail name resolution. Also set Analyzed.
Remove with and use of Sem_Res.
-2001-12-04 Arnaud Charlet <charlet@gnat.com>
+2001-12-04 Arnaud Charlet <charlet@gnat.com>
* Makefile.in: (HIE_SOURCES): add s-fat*.
-2001-12-04 Robert Dewar <dewar@gnat.com>
+2001-12-04 Robert Dewar <dewar@gnat.com>
* sem_attr.adb:
(Compile_Time_Known_Attribute): New procedure.
(Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
proper range check.
-2001-12-04 Ed Schonberg <schonber@gnat.com>
+2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
processing discriminants to diagnose illegal default values.
-2001-12-04 Ed Schonberg <schonber@gnat.com>
+2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
access discriminant within a type extension that constrains its
parent discriminants.
-2001-12-04 Ed Schonberg <schonber@gnat.com>
+2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
is malformed, use instance of Any_Id to allow analysis to proceed.
@@ -35209,16 +35334,16 @@
(P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
misplaced.
-2001-12-04 Ed Schonberg <schonber@gnat.com>
+2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
constants.
-2001-12-04 Robert Dewar <dewar@gnat.com>
+2001-12-04 Robert Dewar <dewar@gnat.com>
* errout.adb: Minor reformatting
-2001-12-04 Robert Dewar <dewar@gnat.com>
+2001-12-04 Robert Dewar <dewar@gnat.com>
* exp_util.adb: Minor reformatting from last change
@@ -35226,25 +35351,25 @@
which is a rewriting of an expression, traverse the original
expression to remove warnings that may have been posted on it.
-2001-12-04 Ed Schonberg <schonber@gnat.com>
+2001-12-04 Ed Schonberg <schonber@gnat.com>
* exp_util.adb (Must_Be_Aligned): Return false for a component of a
record that has other packed components.
-2001-12-04 Douglass B. Rupp <rupp@gnat.com>
+2001-12-04 Douglass B. Rupp <rupp@gnat.com>
* adaint.c: Minor cleanups.
-2001-12-04 Douglass B. Rupp <rupp@gnat.com>
+2001-12-04 Douglass B. Rupp <rupp@gnat.com>
* adaint.c: Do not use utime.h on vxworks.
-2001-12-04 Arnaud Charlet <charlet@gnat.com>
+2001-12-04 Arnaud Charlet <charlet@gnat.com>
* Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
more confusion than it solves.
-2001-12-04 Geert bosch <bosch@gnat.com>
+2001-12-04 Geert bosch <bosch@gnat.com>
* einfo.h, nmake.adb, nmake.ads, sinfo.h treeprs.ads: Regenerate.
@@ -35253,7 +35378,7 @@
* Makefile.in (update-sources): New target.
For use by gcc_release script.
-2001-12-04 Ed Schonberg <schonber@gnat.com>
+2001-12-04 Ed Schonberg <schonber@gnat.com>
* sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
a configuration pragma, it is now legal wherever a pragma can appear.
@@ -35264,7 +35389,7 @@
@cross_overrides@, @build_overrides@ stanzas. INTERNAL_CFLAGS
is now @CROSS@ -DIN_GCC; update comment.
-2001-12-04 Robert Dewar <dewar@gnat.com>
+2001-12-04 Robert Dewar <dewar@gnat.com>
* einfo.adb (Has_Pragma_Pure_Function): New flag.
Fix problem that stopped ceinfo from working
@@ -35273,7 +35398,7 @@
* sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.
-2001-12-04 Douglas B. Rupp <rupp@gnat.com>
+2001-12-04 Douglas B. Rupp <rupp@gnat.com>
* gnatchop.adb:
(File_Time_Stamp): New procedure.
@@ -35291,18 +35416,18 @@
* adaint.h: Fix typo
-2001-12-03 Robert Dewar <dewar@gnat.com>
+2001-12-03 Robert Dewar <dewar@gnat.com>
* sinfo.ads: Minor reformatting. N_Freeze_Entity node does not
have Associated_Node.
-2001-12-03 Robert Dewar <dewar@gnat.com>
+2001-12-03 Robert Dewar <dewar@gnat.com>
* prj-proc.adb: Minor reformatting
* make.adb: Minor reformatting
-2001-12-03 Geert Bosch <bosch@gnat.com>
+2001-12-03 Geert Bosch <bosch@gnat.com>
* make.adb: Minor reformatting.
@@ -35310,7 +35435,7 @@
* sem_ch12.adb: Minor reformatting
-2001-12-03 Ed Schonberg <schonber@gnat.com>
+2001-12-03 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Inline_Instance_Body): Use Save_Scope_Stack and
push Standard on the stack before analyzing the instance body,
@@ -35318,12 +35443,12 @@
* sem_ch12.adb (Inline_Instance_Body): Remove redundant code.
-2001-12-03 Ed Schonberg <schonber@gnat.com>
+2001-12-03 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb (Instantiate_Package_Body): Protect against double
instantiation of a body that contains an inlined body.
-2001-12-03 Ed Schonberg <schonber@gnat.com>
+2001-12-03 Ed Schonberg <schonber@gnat.com>
* sem_ch12.adb:
(Analyze_generic_subprogram_Declaration): Set outer_generic_scope,
@@ -35353,17 +35478,17 @@
* Make-lang.in (ada.generated-manpages): New dummy target.
-2001-11-29 Ed Schonberg <schonber@gnat.com>
+2001-11-29 Ed Schonberg <schonber@gnat.com>
* g-os_lib.adb (Add_To_Command): use explicit loop to move string
into Command, an array conversion is illegal here. Uncovered by
ACATS B460005.
-2001-11-28 Geert Bosch <bosch@gnat.com>
+2001-11-28 Geert Bosch <bosch@gnat.com>
* init.c: Minor whitespace changes.
-2001-11-28 Doug Rupp <rupp@gnat.com>
+2001-11-28 Doug Rupp <rupp@gnat.com>
* init.c: (__gnat_install_handler,VMS): Increase size of alternate
signal stack.
@@ -35452,28 +35577,28 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* misc.c: Include langhooks-def.h.
* Makefile.in: Update.
-2001-10-30 Robert Dewar <dewar@gnat.com>
+2001-10-30 Robert Dewar <dewar@gnat.com>
* style.adb:
(Check_Identifier): Rewrite circuit to be compatible with use of letters
in the upper half of ASCII.
(Check_Identifier): Minor reformatting
-2001-10-30 Geert Bosch <bosch@gnat.com>
+2001-10-30 Geert Bosch <bosch@gnat.com>
* (Associated_Node, Set_Associated_Node): Do not check for
Freeze_Entity.
-2001-10-30 Robert Dewar <dewar@gnat.com>
+2001-10-30 Robert Dewar <dewar@gnat.com>
* a-reatim.ads: Minor reformatting
-2001-10-30 Robert Dewar <dewar@gnat.com>
+2001-10-30 Robert Dewar <dewar@gnat.com>
* gnatdll.adb: Minor reformatting throughout. Many ??? added for
undocumented declarations.
-2001-10-30 Pascal Obry <obry@gnat.com>
+2001-10-30 Pascal Obry <obry@gnat.com>
* gnatdll.adb (Parse_Command_Line): handle -g option to be passed
to the binder and linker.
@@ -35483,11 +35608,11 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* mdll.adb: Fix layout. Update copyright notice.
-2001-10-30 Robert Dewar <dewar@gnat.com>
+2001-10-30 Robert Dewar <dewar@gnat.com>
* usage.adb: Minor fix to output for -gnaty.
-2001-10-30 Ed Schonberg <schonber@gnat.com>
+2001-10-30 Ed Schonberg <schonber@gnat.com>
* a-reatim.ads: Makes Seconds_Count into a 64-bit integer,
to accommodate all its possible values.
@@ -35495,18 +35620,18 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* a-reatim.adb (Split): Special-case handling of Time_Span_First
and of small absolute values of T.
-2001-10-30 Richard Kenner <kenner@gnat.com>
+2001-10-30 Richard Kenner <kenner@gnat.com>
* misc.c (gnat_expand_expr, case NULL_EXPR): Remove call to
set_mem_attributes since not needed and wrong if RESULT if a REG;
fixes ACATS failures.
-2001-10-30 Geert Bosch <bosch@gnat.com>
+2001-10-30 Geert Bosch <bosch@gnat.com>
* 86numaux.adb, a-tigeau.ads, a-wtgeau.ads, fname-sf.ads, g-traceb.ads,
s-tasdeb.ads, sem_maps.ads: Add 2001 to copyright notice.
-2001-10-30 Robert Dewar <dewar@gnat.com>
+2001-10-30 Robert Dewar <dewar@gnat.com>
* bindusg.adb: Undocument -f switch.
@@ -35519,22 +35644,22 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* gnatbind.adb: Minor update of warning msg.
-2001-10-30 Vincent Celier <celier@gnat.com>
+2001-10-30 Vincent Celier <celier@gnat.com>
* gnatcmd.adb (MAKE, BIND, LINK, LIST, FIND, XREF): Add translations
for project file switches (-P (/PROJECT_FILE=),
-X (/EXTERNAL_REFERENCE=) and -vPx (/PROJECT_FILE_VERBOSITY=DEFAULT
or MEDIUM or HIGH)
-2001-10-30 Geert Bosch <bosch@gnat.com>
+2001-10-30 Geert Bosch <bosch@gnat.com>
* decl.c: Minor whitespace fixes.
-2001-10-30 Richard Kenner <kenner@gnat.com>
+2001-10-30 Richard Kenner <kenner@gnat.com>
* utils2.c (build_allocator): Test for SIZE overflow in array case too
-2001-10-30 Geert Bosch <bosch@gnat.com>
+2001-10-30 Geert Bosch <bosch@gnat.com>
* ali-util.adb (Initialize_Checksum): Use out-mode instead of in out.
Found due to GCC 3.0 warning of using uninitialized value.
@@ -35545,7 +35670,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
(Layout_Array_Type): Use variant record for tracking value/expression.
Makes logic clearer and prevents warnings for uninitialized variables.
-2001-10-30 Robert Dewar <dewar@gnat.com>
+2001-10-30 Robert Dewar <dewar@gnat.com>
* lib.adb: Minor reformatting
@@ -35558,7 +35683,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
const.
(_gnat_error_handler): Make MSG const.
-2001-10-29 Richard Kenner <kenner@gnat.com>
+2001-10-29 Richard Kenner <kenner@gnat.com>
* sysdep.c: Fix localtime_r problem on LynxOS.
Also remove #elif to avoid warnings.
@@ -35581,7 +35706,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
sem_util.ads, sinfo.ads, sinput.ads, table.adb, table.ads,
types.ads, urealp.adb: Fix spelling errors.
-2001-10-27 Laurent Guerby <guerby@acm.org>
+2001-10-27 Laurent Guerby <guerby@acm.org>
* trans.c (gigi): Fix non determinism leading to bootstrap
comparison failures for debugging information.
@@ -35590,24 +35715,24 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* gnat_rm.texi: Use @./@: where appropriate.
-2001-10-26 Robert Dewar <dewar@gnat.com>
+2001-10-26 Robert Dewar <dewar@gnat.com>
* sinfo.adb: Define Associated_Node to overlap Entity field. Cleanup.
-2001-10-26 Richard Kenner <kenner@gnat.com>
+2001-10-26 Richard Kenner <kenner@gnat.com>
* gmem.c (__gnat_gmem_read_next): Properly check for EOF
-2001-10-26 Richard Kenner <kenner@gnat.com>
+2001-10-26 Richard Kenner <kenner@gnat.com>
* decl.c (validate_size): Modify message for bad size to avoid
implication that compiler is modifying the size.
-2001-10-26 Robert Dewar <dewar@gnat.com>
+2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-util.adb: Minor reformatting. Fix bad header format.
-2001-10-26 Robert Dewar <dewar@gnat.com>
+2001-10-26 Robert Dewar <dewar@gnat.com>
* sinfo.ads: Define Associated_Node to overlap Entity field. Cleanup.
@@ -35617,7 +35742,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
Associated_Node to Get_Associated_Node. Put use of Unchecked_Access
much more narrowly in places where needed. These are cleanups.
-2001-10-26 Joel Brobecker <brobecke@gnat.com>
+2001-10-26 Joel Brobecker <brobecke@gnat.com>
* 5zosinte.ads (null_pthread): new constant.
@@ -35632,7 +35757,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
(Resume_All_Tasks): Lock the tasks list before using it.
(Suspend_All_Tasks): ditto.
-2001-10-26 Richard Kenner <kenner@gnat.com>
+2001-10-26 Richard Kenner <kenner@gnat.com>
* decl.c (gnat_to_gnu_entity, case E_General_Access_Type):
Make constant variant of designated type for Is_Access_Constant.
@@ -35647,78 +35772,78 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* utils2.c (build_unary_op, case INDIRECT_REF): No longer set
TREE_STATIC.
-2001-10-26 Robert Dewar <dewar@gnat.com>
+2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-util.adb: Minor reformatting
-2001-10-26 Robert Dewar <dewar@gnat.com>
+2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-util.adb: Minor reformatting
-2001-10-26 Robert Dewar <dewar@gnat.com>
+2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-attr.adb: Minor reformatting throughout
-2001-10-26 Robert Dewar <dewar@gnat.com>
+2001-10-26 Robert Dewar <dewar@gnat.com>
* prj-attr.ads: Minor reformatting
Add ??? comment (this whole spec has almost no comments)
-2001-10-26 Vincent Celier <celier@gnat.com>
+2001-10-26 Vincent Celier <celier@gnat.com>
* g-os_lib.adb (Normalize_Pathname): Preserve the double slash
("//") that precede the drive letter on Interix.
-2001-10-26 Geert Bosch <bosch@gnat.com>
+2001-10-26 Geert Bosch <bosch@gnat.com>
* gnat_rm.texi: Add GNAT Reference Manual.
-2001-10-25 Robert Dewar <dewar@gnat.com>
+2001-10-25 Robert Dewar <dewar@gnat.com>
* sem_ch8.adb (Analyze_Package_Renaming): Skip analysis if Name
is Error. Similar change for other renaming cases.
-2001-10-25 Robert Dewar <dewar@gnat.com>
+2001-10-25 Robert Dewar <dewar@gnat.com>
* s-atacco.ads: Add pragma Inline_Always for functions.
Fix header format. Add copyright 2001
-2001-10-25 Ed Schonberg <schonber@gnat.com>
+2001-10-25 Ed Schonberg <schonber@gnat.com>
* par-ch3.adb (P_Subtype_Mark_Resync): for an anonymous array
return Error rather than Empty so that analysis can proceed.
-2001-10-25 Ed Schonberg <schonber@gnat.com>
+2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_util.adb (Enter_Name): better handling of cascaded error
messages when a unit appears in its own context.
-2001-10-25 Ed Schonberg <schonber@gnat.com>
+2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_util.adb (Defining_Entity): in case of error, attach created
entity to specification, so that semantic analysis can proceed.
-2001-10-25 Robert Dewar <dewar@gnat.com>
+2001-10-25 Robert Dewar <dewar@gnat.com>
* sem_util.adb
(Defining_Entity): Deal with Error.
(Process_End_Label): Deal with bad end label for.
-2001-10-25 Ed Schonberg <schonber@gnat.com>
+2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_elab.adb (Check_A_Call): refine message when call is in an
instance but callee is not declared in the generic unit.
-2001-10-25 Ed Schonberg <schonber@gnat.com>
+2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_elab.adb (Check_A_Call): check for renaming before finding the
enclosing unit, which may already be different from the calling unit.
-2001-10-25 Geert Bosch <bosch@gnat.com>
+2001-10-25 Geert Bosch <bosch@gnat.com>
* 4gintnam.ads: fix header format.
-2001-10-25 Ed Schonberg <schonber@gnat.com>
+2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_res.adb (Resolve_Call): if the call is actually an indexing
operation on the result of a parameterless call, perform elaboration
@@ -35728,7 +35853,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
inlined within the generic tree, the defining identifier is not a
compilation_unit.
-2001-10-25 Ed Schonberg <schonber@gnat.com>
+2001-10-25 Ed Schonberg <schonber@gnat.com>
* sem_res.adb (Resolve): special-case resolution of Null in an
instance or an inlined body to avoid view conflicts.
@@ -35736,7 +35861,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* sem_ch12.adb (Copy_Generic_Node): for allocators, check for view
compatibility by retrieving the access type of the generic copy.
-2001-10-25 Robert Dewar <dewar@gnat.com>
+2001-10-25 Robert Dewar <dewar@gnat.com>
* sem_ch3.adb:
(Analyze_Number_Declaration): Handle error expression.
@@ -35745,12 +35870,12 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* sem_util.adb (Get_Index_Bounds): Check for Error.
-2001-10-25 Robert Dewar <dewar@gnat.com>
+2001-10-25 Robert Dewar <dewar@gnat.com>
* restrict.adb (Set_No_Run_Time_Mode): Set Discard_Names as default
in no run time mode.
-2001-10-25 Pascal Obry <obry@gnat.com>
+2001-10-25 Pascal Obry <obry@gnat.com>
* gnatmem.adb (Read_Next): fix Curs2 value to properly handle quiet
mode case for ALLOC case.
@@ -35758,7 +35883,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* gnatmem.adb (Read_Next): correctly fix parsing in Quiet mode on
all platforms. Improvement of last change.
-2001-10-25 Robert Dewar <dewar@gnat.com>
+2001-10-25 Robert Dewar <dewar@gnat.com>
* exp_ch4.adb (Expand_N_Allocator): Minor reformatting.
@@ -35766,7 +35891,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* osint.adb (Is_Relative): Remove duplicate.
-2001-10-25 Pascal Obry <obry@gnat.com>
+2001-10-25 Pascal Obry <obry@gnat.com>
* osint.adb (Read_Default_Search_Dirs): correctly detect relative
pathnames in UNIX and DOS style with drive letter.
@@ -35777,14 +35902,14 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* osint.adb (Is_Relative): implementation using
GNAT.OS_Lib.Is_Absolute_Path. Better fix.
-2001-10-25 Pascal Obry <obry@gnat.com>
+2001-10-25 Pascal Obry <obry@gnat.com>
* g-dirope.adb (Basename): correctly compute offset between the
original Path and the translated one.
* g-dirope.adb: (Base_Name): add some comments.
-2001-10-25 Robert Dewar <dewar@gnat.com>
+2001-10-25 Robert Dewar <dewar@gnat.com>
* exp_imgv.adb (Expand_Image_Attribute): Defend against bad use
in HIE mode, avoids compilation abandoned message
@@ -35793,11 +35918,11 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* exp_imgv.adb: Correct typo in previous change (not my day!)
-2001-10-25 Robert Dewar <dewar@gnat.com>
+2001-10-25 Robert Dewar <dewar@gnat.com>
* s-tpinop.ads: Add 2001 to copyright notice. Fix header format.
-2001-10-25 Pascal Obry <obry@gnat.com>
+2001-10-25 Pascal Obry <obry@gnat.com>
* g-awk.ads: Move all pragma inlines next to the routine
declarations. This is more uniform with other GNAT spec.
@@ -35832,29 +35957,29 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* validsw.adb: Properly save -gnatVn status.
-2001-10-11 Robert Dewar <dewar@gnat.com>
+2001-10-11 Robert Dewar <dewar@gnat.com>
* usage.adb: Add lines for V switch.
* gnatcmd.adb (COMPILE): Revise translations for -gnatV
(/VALIDITY_CHECKING).
-2001-10-11 Ed Schonberg <schonber@gnat.com>
+2001-10-11 Ed Schonberg <schonber@gnat.com>
* sem_type.adb (Add_One_Interp): an operator for a type declared in
an extension of System is known to be visible.
-2001-10-11 Ed Schonberg <schonber@gnat.com>
+2001-10-11 Ed Schonberg <schonber@gnat.com>
* sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal
properly. Fixes regression on ACATS C34005G.
-2001-10-11 Robert Dewar <dewar@gnat.com>
+2001-10-11 Robert Dewar <dewar@gnat.com>
* sem_ch5.adb (Analyze_Iteration_Scheme): Suppress warning on null
loop in generic instance, since this is likely not very useful.
-2001-10-11 Robert Dewar <dewar@gnat.com>
+2001-10-11 Robert Dewar <dewar@gnat.com>
* restrict.adb (Disallow in No_Run_Time_Mode): Properly specialize
the error message for high integrity mode.
@@ -35879,28 +36004,28 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* rtsfind.adb (RTE): Make sure we do not try to load unit after
giving message for entity not available in high integrity mode.
-2001-10-11 Pascal Obry <obry@gnat.com>
+2001-10-11 Pascal Obry <obry@gnat.com>
* impunit.adb: Add GNAT.CRC32.
-2001-10-11 Ed Schonberg <schonber@gnat.com>
+2001-10-11 Ed Schonberg <schonber@gnat.com>
* exp_fixd.adb (Expand_Multiply_Fixed_By_Fixed_Giving_Fixed): handle
properly the case where one universal operand in a non-static
exponentiation of a real literal.
-2001-10-11 Ed Schonberg <schonber@gnat.com>
+2001-10-11 Ed Schonberg <schonber@gnat.com>
* exp_ch7.adb (Find_Final_List): for a type appearing in a with_type
clause, return the gobal finalization list, for lack of anthing else.
-2001-10-11 Ed Schonberg <schonber@gnat.com>
+2001-10-11 Ed Schonberg <schonber@gnat.com>
* exp_ch7.adb (Make_Transient_Block): if statement is within
exception handler, always use new transient scope to place Clean
procedure.
-2001-10-11 Pascal Obry <obry@gnat.com>
+2001-10-11 Pascal Obry <obry@gnat.com>
* Makefile.in:
(GNAT_ADA_OBJS): add g-crc32.o, a-tags.o, a-stream.o
@@ -36065,7 +36190,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* gnat-style.texi: New file describing coding guidelines for Ada.
-2001-10-10 Ed Schonberg <schonber@gnat.com>
+2001-10-10 Ed Schonberg <schonber@gnat.com>
* einfo.adb (Write_Entity_Flags): Elaboration_Entity_Required
is Flag174.
@@ -36078,7 +36203,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* snames.h: Update to reflect snames.ads changes.
-2001-10-10 Vincent Celier <celier@gnat.com>
+2001-10-10 Vincent Celier <celier@gnat.com>
* make.adb:
(Add_Switches): reflect the changes for the switches attributes
@@ -36164,13 +36289,13 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* prj.ads: Add ??? for uncommented declarations
-2001-10-10 Ed Schonberg <schonber@gnat.com>
+2001-10-10 Ed Schonberg <schonber@gnat.com>
* sem_prag.adb: (Analyze_Pragma, case External): If entity is a
constant, do not indicate possible modification, so that gigi can
treat it as a bona fide constant.
-2001-10-10 Robert Dewar <dewar@gnat.com>
+2001-10-10 Robert Dewar <dewar@gnat.com>
* sem_prag.adb: Add processing for pragma External.
@@ -36180,7 +36305,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* snames.adb: Updated to match snames.ads.
-2001-10-10 Ed Schonberg <schonber@gnat.com>
+2001-10-10 Ed Schonberg <schonber@gnat.com>
* exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
a dynamic task if the allocator appears in an indexed assignment
@@ -36190,7 +36315,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
For a dynamic task in an assignment statement, use target of
assignment to generate meaningful name.
-2001-10-10 Ed Schonberg <schonber@gnat.com>
+2001-10-10 Ed Schonberg <schonber@gnat.com>
* einfo.adb (Write_Field19_Name): Body_Entity is also defined for
a generic package.
@@ -36213,18 +36338,18 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
(typically the discriminal in an init_proc) denote the same value.
Two useful optimization uncovered by bugfixes above.
-2001-10-10 Robert Dewar <dewar@gnat.com>
+2001-10-10 Robert Dewar <dewar@gnat.com>
* xeinfo.adb: Change int to char in translation of enumeration types.
This fixes a problem in the C representation of component alignment.
Add 2001 to copyright notice
-2001-10-10 Richard Kenner <kenner@gnat.com>
+2001-10-10 Richard Kenner <kenner@gnat.com>
* decl.c: (validate_size): Do check size of object of integral type
if it is a packed array type.
-2001-10-10 Richard Kenner <kenner@gnat.com>
+2001-10-10 Richard Kenner <kenner@gnat.com>
* decl.c: (gnat_to_gnu_entity, case object): Also materialize
VAR_DECL for constant if not Is_Public but -O0.
@@ -36280,7 +36405,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* comperr.adb (Abort_In_Progress): New.
(Compiler_Abort): Use it to prevent recursion.
-2001-10-08 Robert Dewar <dewar@gnat.com>
+2001-10-08 Robert Dewar <dewar@gnat.com>
* atree.adb: Set Error_Posted in Error node, helps error recovery.
@@ -36299,17 +36424,17 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* sinfo.ads (N_Error): Now has Etype field (which will be set
to Any_Type to help error recovery).
-2001-10-08 Richard Kenner (kenner@gnat.com)
+2001-10-08 Richard Kenner <kenner@gnat.com>
* misc.c (gnat_expand_expr, case UNCHECKED_CONVERT_EXPR):
Consistently set MEM attributes from expression; fixes
bootstrap failure on x86.
-2001-10-08 Geert Bosch (bosch@gnat.com)
+2001-10-08 Geert Bosch <bosch@gnat.com>
* 5oosinte.adb: Add 2001 to copyright notice.
-2001-10-08 Geert Bosch (bosch@gnat.com)
+2001-10-08 Geert Bosch <bosch@gnat.com>
* ceinfo.adb: Add utility for consistency checking of einfo.ad[bs].
@@ -36319,7 +36444,7 @@ Thu Nov 15 18:16:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* 5oosinte.adb: Fix spelling error of "separate" as "seperate".
-2001-10-05 Geert Bosch (bosch@gnat.com)
+2001-10-05 Geert Bosch <bosch@gnat.com>
* adaint.h: Small formatting fix.
diff --git a/gcc/ada/a-ngcoar.adb b/gcc/ada/a-ngcoar.adb
index 47f4db3674b..4d875283a60 100644
--- a/gcc/ada/a-ngcoar.adb
+++ b/gcc/ada/a-ngcoar.adb
@@ -1194,7 +1194,7 @@ package body Ada.Numerics.Generic_Complex_Arrays is
Info => Info'Access);
if Info /= 0 then
- raise Constraint_Error with "inverting non-Hermetian matrix";
+ raise Constraint_Error with "inverting non-Hermitian matrix";
end if;
for J in Values'Range loop
diff --git a/gcc/ada/a-ngrear.adb b/gcc/ada/a-ngrear.adb
index 098d5a9a2c5..30eb1365b1d 100644
--- a/gcc/ada/a-ngrear.adb
+++ b/gcc/ada/a-ngrear.adb
@@ -368,7 +368,7 @@ package body Ada.Numerics.Generic_Real_Arrays is
begin
if Left'Length (2) /= Right'Length (1) then
raise Constraint_Error with
- "incompatible dimensions in matrix-matrix multipication";
+ "incompatible dimensions in matrix-matrix multiplication";
end if;
gemm (Trans_A => No_Trans'Access,
diff --git a/gcc/ada/ada-tree.def b/gcc/ada/ada-tree.def
index 83157a269a2..0a1949f6710 100644
--- a/gcc/ada/ada-tree.def
+++ b/gcc/ada/ada-tree.def
@@ -6,7 +6,7 @@
* *
* Specification *
* *
- * Copyright (C) 1992-2004, 2007 Free Software Foundation, Inc. *
+ * Copyright (C) 1992-2007, Free Software Foundation, Inc. *
* *
* GNAT is free software; you can redistribute it and/or modify it under *
* terms of the GNU General Public License as published by the Free Soft- *
diff --git a/gcc/ada/ada.h b/gcc/ada/ada.h
index a55d0137ad9..5f2191fdec9 100644
--- a/gcc/ada/ada.h
+++ b/gcc/ada/ada.h
@@ -6,7 +6,7 @@
* *
* C Header File *
* *
- * Copyright (C) 1992-2003 Free Software Foundation, Inc. *
+ * Copyright (C) 1992-2008, Free Software Foundation, Inc. *
* *
* GNAT is free software; you can redistribute it and/or modify it under *
* terms of the GNU General Public License as published by the Free Soft- *
@@ -37,7 +37,7 @@
#define GCC_ADA_H
/* Inlined functions in header are preceded by INLINE, which is normally set
- to extern inline for GCC, but may be set to static for use in standard
+ to extern inline for GCC, but may be set to static for use in standard
ANSI-C. */
#ifndef INLINE
@@ -58,10 +58,10 @@
#define CAT(A,B) ECHO(A)B
#endif
-/* The following macro definition simulates the effect of a declaration of
+/* The following macro definition simulates the effect of a declaration of
a subtype, where the first two parameters give the name of the type and
subtype, and the third and fourth parameters give the subtype range. The
- effect is to compile a typedef defining the subtype as a synonym for the
+ effect is to compile a typedef defining the subtype as a synonym for the
type, together with two constants defining the end points. */
#define SUBTYPE(SUBTYPE,TYPE,FIRST,LAST) \
@@ -70,7 +70,7 @@
CAT (SUBTYPE,__Last) = LAST };
/* The following definitions provide the equivalent of the Ada IN and NOT IN
- operators, assuming that the subtype involved has been defined using the
+ operators, assuming that the subtype involved has been defined using the
SUBTYPE macro defined above. */
#define IN(VALUE,SUBTYPE) \
diff --git a/gcc/ada/decl.c b/gcc/ada/decl.c
index 9945e4ed3e1..c0306bdd8ef 100644
--- a/gcc/ada/decl.c
+++ b/gcc/ada/decl.c
@@ -53,6 +53,10 @@
#include "ada-tree.h"
#include "gigi.h"
+#ifndef MAX_FIXED_MODE_SIZE
+#define MAX_FIXED_MODE_SIZE GET_MODE_BITSIZE (DImode)
+#endif
+
/* Convention_Stdcall should be processed in a specific way on Windows targets
only. The macro below is a helper to avoid having to check for a Windows
specific attribute throughout this unit. */
@@ -98,7 +102,7 @@ static tree elaborate_expression (Node_Id, Entity_Id, tree, bool, bool, bool);
static bool is_variable_size (tree);
static tree elaborate_expression_1 (Node_Id, Entity_Id, tree, tree,
bool, bool);
-static tree make_packable_type (tree);
+static tree make_packable_type (tree, bool);
static tree gnat_to_gnu_field (Entity_Id, tree, int, bool);
static tree gnat_to_gnu_param (Entity_Id, Mechanism_Type, Entity_Id, bool,
bool *);
@@ -1480,7 +1484,7 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
such values), we only get the good bits, since the unused bits
are uninitialized. Both goals are accomplished by wrapping the
modular value in an enclosing struct. */
- if (Is_Packed_Array_Type (gnat_entity))
+ if (Is_Packed_Array_Type (gnat_entity))
{
tree gnu_field_type = gnu_type;
tree gnu_field;
@@ -1489,8 +1493,12 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
= UI_To_gnu (RM_Size (gnat_entity), bitsizetype);
gnu_type = make_node (RECORD_TYPE);
TYPE_NAME (gnu_type) = create_concat_name (gnat_entity, "JM");
+
+ /* Propagate the alignment of the modular type to the record.
+ This means that bitpacked arrays have "ceil" alignment for
+ their size, which may seem counter-intuitive but makes it
+ possible to easily overlay them on modular types. */
TYPE_ALIGN (gnu_type) = TYPE_ALIGN (gnu_field_type);
- TYPE_USER_ALIGN (gnu_type) = TYPE_USER_ALIGN (gnu_field_type);
TYPE_PACKED (gnu_type) = 1;
/* Create a stripped-down declaration of the original type, mainly
@@ -1511,6 +1519,45 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
copy_alias_set (gnu_type, gnu_field_type);
}
+ /* If the type we are dealing with has got a smaller alignment than the
+ natural one, we need to wrap it up in a record type and under-align
+ the latter. We reuse the padding machinery for this purpose. */
+ else if (Known_Alignment (gnat_entity)
+ && UI_Is_In_Int_Range (Alignment (gnat_entity))
+ && (align = UI_To_Int (Alignment (gnat_entity)) * BITS_PER_UNIT)
+ && align < TYPE_ALIGN (gnu_type))
+ {
+ tree gnu_field_type = gnu_type;
+ tree gnu_field;
+
+ gnu_type = make_node (RECORD_TYPE);
+ TYPE_NAME (gnu_type) = create_concat_name (gnat_entity, "PAD");
+
+ TYPE_ALIGN (gnu_type) = align;
+ TYPE_PACKED (gnu_type) = 1;
+
+ /* Create a stripped-down declaration of the original type, mainly
+ for debugging. */
+ create_type_decl (get_entity_name (gnat_entity), gnu_field_type,
+ NULL, true, debug_info_p, gnat_entity);
+
+ /* Don't notify the field as "addressable", since we won't be taking
+ it's address and it would prevent create_field_decl from making a
+ bitfield. */
+ gnu_field = create_field_decl (get_identifier ("OBJECT"),
+ gnu_field_type, gnu_type, 1, 0, 0, 0);
+
+ finish_record_type (gnu_type, gnu_field, 0, false);
+ TYPE_IS_PADDING_P (gnu_type) = 1;
+ SET_TYPE_ADA_SIZE (gnu_type, bitsize_int (esize));
+
+ copy_alias_set (gnu_type, gnu_field_type);
+ }
+
+ /* Otherwise reset the alignment lest we computed it above. */
+ else
+ align = 0;
+
break;
case E_Floating_Point_Type:
@@ -1608,12 +1655,12 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
= (Convention (gnat_entity) == Convention_Fortran) ? ndim - 1 : 0;
int nextdim
= (Convention (gnat_entity) == Convention_Fortran) ? - 1 : 1;
+ int index;
tree *gnu_index_types = (tree *) alloca (ndim * sizeof (tree *));
tree *gnu_temp_fields = (tree *) alloca (ndim * sizeof (tree *));
tree gnu_comp_size = 0;
tree gnu_max_size = size_one_node;
tree gnu_max_size_unit;
- int index;
Entity_Id gnat_ind_subtype;
Entity_Id gnat_ind_base_subtype;
tree gnu_template_reference;
@@ -1738,6 +1785,20 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
in the fat pointer. Note that it is the first field. */
tem = gnat_to_gnu_type (Component_Type (gnat_entity));
+ /* Try to get a smaller form of the component if needed. */
+ if ((Is_Packed (gnat_entity)
+ || Has_Component_Size_Clause (gnat_entity))
+ && !Is_Bit_Packed_Array (gnat_entity)
+ && !Has_Aliased_Components (gnat_entity)
+ && !Strict_Alignment (Component_Type (gnat_entity))
+ && TREE_CODE (tem) == RECORD_TYPE
+ && TYPE_MODE (tem) == BLKmode
+ && host_integerp (TYPE_SIZE (tem), 1))
+ tem = make_packable_type (tem, false);
+
+ if (Has_Atomic_Components (gnat_entity))
+ check_ok_for_atomic (tem, gnat_entity, true);
+
/* Get and validate any specified Component_Size, but if Packed,
ignore it since the front end will have taken care of it. */
gnu_comp_size
@@ -1747,16 +1808,13 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
? TYPE_DECL : VAR_DECL),
true, Has_Component_Size_Clause (gnat_entity));
- if (Has_Atomic_Components (gnat_entity))
- check_ok_for_atomic (tem, gnat_entity, true);
-
/* If the component type is a RECORD_TYPE that has a self-referential
size, use the maxium size. */
if (!gnu_comp_size && TREE_CODE (tem) == RECORD_TYPE
&& CONTAINS_PLACEHOLDER_P (TYPE_SIZE (tem)))
gnu_comp_size = max_size (TYPE_SIZE (tem), true);
- if (!Is_Bit_Packed_Array (gnat_entity) && gnu_comp_size)
+ if (gnu_comp_size && !Is_Bit_Packed_Array (gnat_entity))
{
tree orig_tem;
tem = make_type_from_size (tem, gnu_comp_size, false);
@@ -1764,8 +1822,8 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
tem = maybe_pad_type (tem, gnu_comp_size, 0, gnat_entity,
"C_PAD", false, definition, true);
/* If a padding record was made, declare it now since it will
- never be declared otherwise. This is necessary in order to
- ensure that its subtrees are properly marked. */
+ never be declared otherwise. This is necessary to ensure
+ that its subtrees are properly marked. */
if (tem != orig_tem)
create_type_decl (TYPE_NAME (tem), tem, NULL, true, false,
gnat_entity);
@@ -2065,53 +2123,86 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
need_index_type_struct = true;
}
- /* Then flatten: create the array of arrays. */
-
- gnu_type = gnat_to_gnu_type (Component_Type (gnat_entity));
-
- /* One of the above calls might have caused us to be elaborated,
- so don't blow up if so. */
- if (present_gnu_tree (gnat_entity))
+ /* Then flatten: create the array of arrays. For an array type
+ used to implement a packed array, get the component type from
+ the original array type since the representation clauses that
+ can affect it are on the latter. */
+ if (Is_Packed_Array_Type (gnat_entity)
+ && !Is_Bit_Packed_Array (Original_Array_Type (gnat_entity)))
{
- maybe_present = true;
- break;
+ gnu_type = gnat_to_gnu_type (Original_Array_Type (gnat_entity));
+ for (index = array_dim - 1; index >= 0; index--)
+ gnu_type = TREE_TYPE (gnu_type);
+
+ /* One of the above calls might have caused us to be elaborated,
+ so don't blow up if so. */
+ if (present_gnu_tree (gnat_entity))
+ {
+ maybe_present = true;
+ break;
+ }
}
-
- /* Get and validate any specified Component_Size, but if Packed,
- ignore it since the front end will have taken care of it. */
- gnu_comp_size
- = validate_size (Component_Size (gnat_entity), gnu_type,
- gnat_entity,
- (Is_Bit_Packed_Array (gnat_entity)
- ? TYPE_DECL : VAR_DECL),
- true, Has_Component_Size_Clause (gnat_entity));
-
- /* If the component type is a RECORD_TYPE that has a self-referential
- size, use the maxium size. */
- if (!gnu_comp_size && TREE_CODE (gnu_type) == RECORD_TYPE
- && CONTAINS_PLACEHOLDER_P (TYPE_SIZE (gnu_type)))
- gnu_comp_size = max_size (TYPE_SIZE (gnu_type), true);
-
- if (!Is_Bit_Packed_Array (gnat_entity) && gnu_comp_size)
+ else
{
- tree orig_gnu_type;
- gnu_type = make_type_from_size (gnu_type, gnu_comp_size, false);
- orig_gnu_type = gnu_type;
- gnu_type = maybe_pad_type (gnu_type, gnu_comp_size, 0,
- gnat_entity, "C_PAD", false,
- definition, true);
- /* If a padding record was made, declare it now since it will
- never be declared otherwise. This is necessary in order to
- ensure that its subtrees are properly marked. */
- if (gnu_type != orig_gnu_type)
- create_type_decl (TYPE_NAME (gnu_type), gnu_type, NULL, true,
- false, gnat_entity);
- }
+ gnu_type = gnat_to_gnu_type (Component_Type (gnat_entity));
- if (Has_Volatile_Components (Base_Type (gnat_entity)))
- gnu_type = build_qualified_type (gnu_type,
- (TYPE_QUALS (gnu_type)
- | TYPE_QUAL_VOLATILE));
+ /* One of the above calls might have caused us to be elaborated,
+ so don't blow up if so. */
+ if (present_gnu_tree (gnat_entity))
+ {
+ maybe_present = true;
+ break;
+ }
+
+ /* Try to get a smaller form of the component if needed. */
+ if ((Is_Packed (gnat_entity)
+ || Has_Component_Size_Clause (gnat_entity))
+ && !Is_Bit_Packed_Array (gnat_entity)
+ && !Has_Aliased_Components (gnat_entity)
+ && !Strict_Alignment (Component_Type (gnat_entity))
+ && TREE_CODE (gnu_type) == RECORD_TYPE
+ && TYPE_MODE (gnu_type) == BLKmode
+ && host_integerp (TYPE_SIZE (gnu_type), 1))
+ gnu_type = make_packable_type (gnu_type, false);
+
+ /* Get and validate any specified Component_Size, but if Packed,
+ ignore it since the front end will have taken care of it. */
+ gnu_comp_size
+ = validate_size (Component_Size (gnat_entity), gnu_type,
+ gnat_entity,
+ (Is_Bit_Packed_Array (gnat_entity)
+ ? TYPE_DECL : VAR_DECL), true,
+ Has_Component_Size_Clause (gnat_entity));
+
+ /* If the component type is a RECORD_TYPE that has a
+ self-referential size, use the maxium size. */
+ if (!gnu_comp_size
+ && TREE_CODE (gnu_type) == RECORD_TYPE
+ && CONTAINS_PLACEHOLDER_P (TYPE_SIZE (gnu_type)))
+ gnu_comp_size = max_size (TYPE_SIZE (gnu_type), true);
+
+ if (gnu_comp_size && !Is_Bit_Packed_Array (gnat_entity))
+ {
+ tree orig_gnu_type;
+ gnu_type
+ = make_type_from_size (gnu_type, gnu_comp_size, false);
+ orig_gnu_type = gnu_type;
+ gnu_type = maybe_pad_type (gnu_type, gnu_comp_size, 0,
+ gnat_entity, "C_PAD", false,
+ definition, true);
+ /* If a padding record was made, declare it now since it
+ will never be declared otherwise. This is necessary
+ to ensure that its subtrees are properly marked. */
+ if (gnu_type != orig_gnu_type)
+ create_type_decl (TYPE_NAME (gnu_type), gnu_type, NULL,
+ true, false, gnat_entity);
+ }
+
+ if (Has_Volatile_Components (Base_Type (gnat_entity)))
+ gnu_type = build_qualified_type (gnu_type,
+ (TYPE_QUALS (gnu_type)
+ | TYPE_QUAL_VOLATILE));
+ }
gnu_max_size_unit = size_binop (MULT_EXPR, gnu_max_size,
TYPE_SIZE_UNIT (gnu_type));
@@ -2483,8 +2574,9 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
&& Known_Static_Esize (gnat_entity))
{
unsigned int raw_size = UI_To_Int (Esize (gnat_entity));
- TYPE_ALIGN (gnu_type)
- = MIN (BIGGEST_ALIGNMENT, raw_size & -raw_size);
+ unsigned int raw_align = raw_size & -raw_size;
+ if (raw_align < BIGGEST_ALIGNMENT)
+ TYPE_ALIGN (gnu_type) = raw_align;
}
else
TYPE_ALIGN (gnu_type) = 0;
@@ -2795,7 +2887,8 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
if (TYPE_MODE (gnu_field_type) == BLKmode
&& TREE_CODE (gnu_field_type) == RECORD_TYPE
&& host_integerp (TYPE_SIZE (gnu_field_type), 1))
- gnu_field_type = make_packable_type (gnu_field_type);
+ gnu_field_type
+ = make_packable_type (gnu_field_type, true);
}
if (CONTAINS_PLACEHOLDER_P (gnu_pos))
@@ -4037,8 +4130,38 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition)
if (align != 0 || TREE_CODE (gnu_type) == UNCONSTRAINED_ARRAY_TYPE)
;
else if (Known_Alignment (gnat_entity))
- align = validate_alignment (Alignment (gnat_entity), gnat_entity,
- TYPE_ALIGN (gnu_type));
+ {
+ align = validate_alignment (Alignment (gnat_entity), gnat_entity,
+ TYPE_ALIGN (gnu_type));
+
+ /* Warn on suspiciously large alignments. This should catch
+ errors about the (alignment,byte)/(size,bit) discrepancy. */
+ if (align > BIGGEST_ALIGNMENT && Has_Alignment_Clause (gnat_entity))
+ {
+ tree size;
+
+ /* If a size was specified, take it into account. Otherwise
+ use the RM size for records as the type size has already
+ been adjusted to the alignment. */
+ if (gnu_size)
+ size = gnu_size;
+ else if ((TREE_CODE (gnu_type) == RECORD_TYPE
+ || TREE_CODE (gnu_type) == UNION_TYPE
+ || TREE_CODE (gnu_type) == QUAL_UNION_TYPE)
+ && !TYPE_IS_FAT_POINTER_P (gnu_type))
+ size = rm_size (gnu_type);
+ else
+ size = TYPE_SIZE (gnu_type);
+
+ /* Consider an alignment as suspicious if the alignment/size
+ ratio is greater or equal to the byte/bit ratio. */
+ if (host_integerp (size, 1)
+ && align >= TREE_INT_CST_LOW (size) * BITS_PER_UNIT)
+ post_error_ne ("?suspiciously large alignment specified for&",
+ Expression (Alignment_Clause (gnat_entity)),
+ gnat_entity);
+ }
+ }
else if (Is_Atomic (gnat_entity) && !gnu_size
&& host_integerp (TYPE_SIZE (gnu_type), 1)
&& integer_pow2p (TYPE_SIZE (gnu_type)))
@@ -5197,54 +5320,99 @@ make_aligning_type (tree type, unsigned int align, tree size,
return record_type;
}
-/* TYPE is a RECORD_TYPE, UNION_TYPE, or QUAL_UNION_TYPE, with BLKmode that's
- being used as the field type of a packed record. See if we can rewrite it
- as a record that has a non-BLKmode type, which we can pack tighter. If so,
- return the new type. If not, return the original type. */
+/* Return the result of rounding T up to ALIGN. */
+
+static inline unsigned HOST_WIDE_INT
+round_up_to_align (unsigned HOST_WIDE_INT t, unsigned int align)
+{
+ t += align - 1;
+ t /= align;
+ t *= align;
+ return t;
+}
+
+/* TYPE is a RECORD_TYPE, UNION_TYPE, or QUAL_UNION_TYPE, with BLKmode that
+ is being used as the field type of a packed record if IN_RECORD is true,
+ or as the component type of a packed array if IN_RECORD is false. See
+ if we can rewrite it either as a type that has a non-BLKmode, which we
+ can pack tighter, or as a smaller type with BLKmode. If so, return the
+ new type. If not, return the original type. */
static tree
-make_packable_type (tree type)
+make_packable_type (tree type, bool in_record)
{
- tree new_type = make_node (TREE_CODE (type));
- tree field_list = NULL_TREE;
- tree old_field;
+ unsigned HOST_WIDE_INT size = tree_low_cst (TYPE_SIZE (type), 1);
+ unsigned HOST_WIDE_INT new_size;
+ tree new_type, old_field, field_list = NULL_TREE;
+
+ /* No point in doing anything if the size is zero. */
+ if (size == 0)
+ return type;
+
+ new_type = make_node (TREE_CODE (type));
/* Copy the name and flags from the old type to that of the new. Note
that we rely on the pointer equality created here for TYPE_NAME at
- the end of gnat_to_gnu. For QUAL_UNION_TYPE, also copy the size. */
+ the end of gnat_to_gnu. */
TYPE_NAME (new_type) = TYPE_NAME (type);
TYPE_JUSTIFIED_MODULAR_P (new_type) = TYPE_JUSTIFIED_MODULAR_P (type);
TYPE_CONTAINS_TEMPLATE_P (new_type) = TYPE_CONTAINS_TEMPLATE_P (type);
-
if (TREE_CODE (type) == RECORD_TYPE)
TYPE_IS_PADDING_P (new_type) = TYPE_IS_PADDING_P (type);
- else if (TREE_CODE (type) == QUAL_UNION_TYPE)
+
+ /* If we are in a record and have a small size, set the alignment to
+ try for an integral mode. Otherwise set it to try for a smaller
+ type with BLKmode. */
+ if (in_record && size <= MAX_FIXED_MODE_SIZE)
{
- TYPE_SIZE (new_type) = TYPE_SIZE (type);
- TYPE_SIZE_UNIT (new_type) = TYPE_SIZE_UNIT (type);
+ TYPE_ALIGN (new_type) = ceil_alignment (size);
+ new_size = round_up_to_align (size, TYPE_ALIGN (new_type));
+ }
+ else
+ {
+ unsigned HOST_WIDE_INT align;
+
+ /* Do not try to shrink the size if the RM size is not constant. */
+ if (TYPE_CONTAINS_TEMPLATE_P (type)
+ || !host_integerp (TYPE_ADA_SIZE (type), 1))
+ return type;
+
+ /* Round the RM size up to a unit boundary to get the minimal size
+ for a BLKmode record. Give up if it's already the size. */
+ new_size = TREE_INT_CST_LOW (TYPE_ADA_SIZE (type));
+ new_size = round_up_to_align (new_size, BITS_PER_UNIT);
+ if (new_size == size)
+ return type;
+
+ align = new_size & -new_size;
+ TYPE_ALIGN (new_type) = MIN (TYPE_ALIGN (type), align);
}
- /* Set the alignment to try for an integral type. */
- TYPE_ALIGN (new_type) = ceil_alignment (tree_low_cst (TYPE_SIZE (type), 1));
TYPE_USER_ALIGN (new_type) = 1;
- /* Now copy the fields, keeping the position and size. */
+ /* Now copy the fields, keeping the position and size as we don't
+ want to propagate packedness downward. But make an exception
+ for the last field in order to ditch the padding bits. */
for (old_field = TYPE_FIELDS (type); old_field;
old_field = TREE_CHAIN (old_field))
{
tree new_field_type = TREE_TYPE (old_field);
- tree new_field;
+ tree new_field, new_size;
if (TYPE_MODE (new_field_type) == BLKmode
&& (TREE_CODE (new_field_type) == RECORD_TYPE
|| TREE_CODE (new_field_type) == UNION_TYPE
|| TREE_CODE (new_field_type) == QUAL_UNION_TYPE)
&& host_integerp (TYPE_SIZE (new_field_type), 1))
- new_field_type = make_packable_type (new_field_type);
+ new_field_type = make_packable_type (new_field_type, true);
+
+ if (!TREE_CHAIN (old_field) && !TYPE_PACKED (type))
+ new_size = rm_size (new_field_type);
+ else
+ new_size = DECL_SIZE (old_field);
new_field = create_field_decl (DECL_NAME (old_field), new_field_type,
- new_type, TYPE_PACKED (type),
- DECL_SIZE (old_field),
+ new_type, TYPE_PACKED (type), new_size,
bit_position (old_field),
!DECL_NONADDRESSABLE_P (old_field));
@@ -5260,16 +5428,40 @@ make_packable_type (tree type)
field_list = new_field;
}
- finish_record_type (new_type, nreverse (field_list), 1, true);
+ finish_record_type (new_type, nreverse (field_list), 2, true);
copy_alias_set (new_type, type);
+ /* If this is a padding record, we never want to make the size smaller
+ than what was specified. For QUAL_UNION_TYPE, also copy the size. */
+ if ((TREE_CODE (type) == RECORD_TYPE && TYPE_IS_PADDING_P (type))
+ || TREE_CODE (type) == QUAL_UNION_TYPE)
+ {
+ TYPE_SIZE (new_type) = TYPE_SIZE (type);
+ TYPE_SIZE_UNIT (new_type) = TYPE_SIZE_UNIT (type);
+ }
+ else
+ {
+ TYPE_SIZE (new_type) = bitsize_int (new_size);
+ TYPE_SIZE_UNIT (new_type)
+ = size_int ((new_size + BITS_PER_UNIT - 1) / BITS_PER_UNIT);
+ }
+
+ if (!TYPE_CONTAINS_TEMPLATE_P (type))
+ SET_TYPE_ADA_SIZE (new_type, TYPE_ADA_SIZE (type));
+
+ compute_record_mode (new_type);
+
/* Try harder to get a packable type if necessary, for example
in case the record itself contains a BLKmode field. */
- if (TYPE_MODE (new_type) == BLKmode)
+ if (in_record && TYPE_MODE (new_type) == BLKmode)
TYPE_MODE (new_type)
= mode_for_size_tree (TYPE_SIZE (new_type), MODE_INT, 1);
- return TYPE_MODE (new_type) == BLKmode ? type : new_type;
+ /* If neither the mode nor the size has shrunk, return the old type. */
+ if (TYPE_MODE (new_type) == BLKmode && new_size >= size)
+ return type;
+
+ return new_type;
}
/* Ensure that TYPE has SIZE and ALIGN. Make and return a new padded type
@@ -5301,7 +5493,6 @@ maybe_pad_type (tree type, tree size, unsigned int align,
off the padding, since we will either be returning the inner type
or repadding it. If no size or alignment is specified, use that of
the original padded type. */
-
if (TREE_CODE (type) == RECORD_TYPE && TYPE_IS_PADDING_P (type))
{
if ((!size
@@ -5326,7 +5517,6 @@ maybe_pad_type (tree type, tree size, unsigned int align,
is not done here (and is only valid for bitfields anyway), show the size
isn't changing. Likewise, clear the alignment if it isn't being
changed. Then return if we aren't doing anything. */
-
if (size
&& (operand_equal_p (size, orig_size, 0)
|| (TREE_CODE (orig_size) == INTEGER_CST
@@ -5339,6 +5529,18 @@ maybe_pad_type (tree type, tree size, unsigned int align,
if (align == 0 && !size)
return type;
+ /* If no size is specified and we have an integral type, and changing
+ the alignment won't change its size, return a copy of the type
+ with the specified alignment. */
+ if (!size
+ && INTEGRAL_TYPE_P (type)
+ && value_factor_p (orig_size, align))
+ {
+ type = copy_type (type);
+ TYPE_ALIGN (type) = align;
+ return type;
+ }
+
/* We used to modify the record in place in some cases, but that could
generate incorrect debugging information. So make a new record
type and name. */
@@ -5361,19 +5563,19 @@ maybe_pad_type (tree type, tree size, unsigned int align,
BLKmode and a small constant size, try to make a form that has an
integral mode. That might allow this record to have an integral mode,
which will be much more efficient. There is no point in doing this if a
- size is specified unless it is also smaller than the biggest alignment
+ size is specified unless it is also smaller than the maximum mode size
and it is incorrect to do this if the size of the original type is not a
multiple of the alignment. */
if (align != 0
&& TREE_CODE (type) == RECORD_TYPE
&& TYPE_MODE (type) == BLKmode
- && host_integerp (orig_size, 1)
- && compare_tree_int (orig_size, BIGGEST_ALIGNMENT) <= 0
+ && TREE_CODE (orig_size) == INTEGER_CST
+ && compare_tree_int (orig_size, MAX_FIXED_MODE_SIZE) <= 0
&& (!size
|| (TREE_CODE (size) == INTEGER_CST
- && compare_tree_int (size, BIGGEST_ALIGNMENT) <= 0))
- && tree_low_cst (orig_size, 1) % align == 0)
- type = make_packable_type (type);
+ && compare_tree_int (size, MAX_FIXED_MODE_SIZE) <= 0))
+ && value_factor_p (orig_size, align))
+ type = make_packable_type (type, true);
field = create_field_decl (get_identifier ("F"), type, record, 0,
NULL_TREE, bitsize_zero_node, 1);
@@ -5451,7 +5653,7 @@ maybe_pad_type (tree type, tree size, unsigned int align,
Node_Id gnat_error_node = Empty;
if (Is_Packed_Array_Type (gnat_entity))
- gnat_entity = Associated_Node_For_Itype (gnat_entity);
+ gnat_entity = Original_Array_Type (gnat_entity);
if ((Ekind (gnat_entity) == E_Component
|| Ekind (gnat_entity) == E_Discriminant)
@@ -5629,12 +5831,12 @@ gnat_to_gnu_field (Entity_Id gnat_field, tree gnu_record_type, int packed,
/* If we have a specified size that's smaller than that of the field type,
or a position is specified, and the field type is also a record that's
- BLKmode and with a small constant size, see if we can get an integral
- mode form of the type when appropriate. If we can, show a size was
- specified for the field if there wasn't one already, so we know to make
- this a bitfield and avoid making things wider.
+ BLKmode, see if we can get either an integral mode form of the type or
+ a smaller BLKmode form. If we can, show a size was specified for the
+ field if there wasn't one already, so we know to make this a bitfield
+ and avoid making things wider.
- Doing this is first useful if the record is packed because we can then
+ Doing this is first useful if the record is packed because we may then
place the field at a non-byte-aligned position and so achieve tighter
packing.
@@ -5654,14 +5856,13 @@ gnat_to_gnu_field (Entity_Id gnat_field, tree gnu_record_type, int packed,
if (TREE_CODE (gnu_field_type) == RECORD_TYPE
&& TYPE_MODE (gnu_field_type) == BLKmode
&& host_integerp (TYPE_SIZE (gnu_field_type), 1)
- && compare_tree_int (TYPE_SIZE (gnu_field_type), BIGGEST_ALIGNMENT) <= 0
&& (packed == 1
|| (gnu_size
&& (tree_int_cst_lt (gnu_size, TYPE_SIZE (gnu_field_type))
|| Present (Component_Clause (gnat_field))))))
{
/* See what the alternate type and size would be. */
- tree gnu_packable_type = make_packable_type (gnu_field_type);
+ tree gnu_packable_type = make_packable_type (gnu_field_type, true);
bool has_byte_aligned_clause
= Present (Component_Clause (gnat_field))
@@ -6776,25 +6977,25 @@ make_type_from_size (tree type, tree size_tree, bool biased_p)
static unsigned int
validate_alignment (Uint alignment, Entity_Id gnat_entity, unsigned int align)
{
- Node_Id gnat_error_node = gnat_entity;
- unsigned int new_align;
-
unsigned int max_allowed_alignment = get_target_maximum_allowed_alignment ();
-
- if (Present (Alignment_Clause (gnat_entity)))
- gnat_error_node = Expression (Alignment_Clause (gnat_entity));
+ unsigned int new_align;
+ Node_Id gnat_error_node;
/* Don't worry about checking alignment if alignment was not specified
by the source program and we already posted an error for this entity. */
-
if (Error_Posted (gnat_entity) && !Has_Alignment_Clause (gnat_entity))
return align;
+ /* Post the error on the alignment clause if any. */
+ if (Present (Alignment_Clause (gnat_entity)))
+ gnat_error_node = Expression (Alignment_Clause (gnat_entity));
+ else
+ gnat_error_node = gnat_entity;
+
/* Within GCC, an alignment is an integer, so we must make sure a value is
specified that fits in that range. Also, there is an upper bound to
alignments we can support/allow. */
-
- if (! UI_Is_In_Int_Range (alignment)
+ if (!UI_Is_In_Int_Range (alignment)
|| ((new_align = UI_To_Int (alignment)) > max_allowed_alignment))
post_error_ne_num ("largest supported alignment for& is ^",
gnat_error_node, gnat_entity, max_allowed_alignment);
@@ -6805,7 +7006,11 @@ validate_alignment (Uint alignment, Entity_Id gnat_entity, unsigned int align)
gnat_error_node, gnat_entity,
align / BITS_PER_UNIT);
else
- align = MAX (align, new_align == 0 ? 1 : new_align * BITS_PER_UNIT);
+ {
+ new_align = (new_align > 0 ? new_align * BITS_PER_UNIT : 1);
+ if (new_align > align)
+ align = new_align;
+ }
return align;
}
@@ -7227,8 +7432,7 @@ concat_id_with_name (tree gnu_id, const char *suffix)
{
int len = IDENTIFIER_LENGTH (gnu_id);
- strncpy (Name_Buffer, IDENTIFIER_POINTER (gnu_id),
- IDENTIFIER_LENGTH (gnu_id));
+ strncpy (Name_Buffer, IDENTIFIER_POINTER (gnu_id), len);
strncpy (Name_Buffer + len, "___", 3);
len += 3;
strcpy (Name_Buffer + len, suffix);
diff --git a/gcc/ada/g-awk.adb b/gcc/ada/g-awk.adb
index 4239bb38990..57045bf5661 100644
--- a/gcc/ada/g-awk.adb
+++ b/gcc/ada/g-awk.adb
@@ -644,7 +644,7 @@ package body GNAT.AWK is
when others =>
Raise_With_Info
(File_Error'Identity,
- "Error scaning directory " & Directory
+ "Error scanning directory " & Directory
& " for files " & Filenames & '.',
Session);
end Add_Files;
diff --git a/gcc/ada/g-debpoo.adb b/gcc/ada/g-debpoo.adb
index fa127470712..dc4896c4621 100644
--- a/gcc/ada/g-debpoo.adb
+++ b/gcc/ada/g-debpoo.adb
@@ -1388,7 +1388,7 @@ package body GNAT.Debug_Pools is
if Pool.Marked_Blocks_Deallocated then
Put_Line ("Marked blocks were physically deallocated. This is");
- Put_Line ("potentially dangereous, and you might want to run");
+ Put_Line ("potentially dangerous, and you might want to run");
Put_Line ("again with a lower value of Minimum_To_Free");
end if;
diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi
index cbc5685ffb8..6e7c9ddf520 100644
--- a/gcc/ada/gnat_rm.texi
+++ b/gcc/ada/gnat_rm.texi
@@ -7350,7 +7350,7 @@ There are no such limits.
@sp 1
@cartouche
@noindent
-@strong{27}. Whether or not two non overlapping parts of a composite
+@strong{27}. Whether or not two non-overlapping parts of a composite
object are independently addressable, in the case where packing, record
layout, or @code{Component_Size} is specified for the object. See
9.10(1).
@@ -10520,7 +10520,7 @@ representation values are negative, all values must be in the range:
@end smallexample
@noindent
-For the unsigned case, where all values are non negative, the values must
+For the unsigned case, where all values are nonnegative, the values must
be in the range:
@smallexample @c ada
@@ -15195,7 +15195,7 @@ available after the assignment symbol.
A typed_variable can only be declare once.
@noindent
-a non typed variable can be declared multiple times.
+a non-typed variable can be declared multiple times.
@noindent
Before the completion of its first declaration, the value of variable
@@ -15780,7 +15780,7 @@ The following attributes apply to package @code{Gnatls}:
@table @code
@item Switches
-This is a single attribute with a string list value. Each non empty string
+This is a single attribute with a string list value. Each nonempty string
in the list is an option when invoking @code{gnatls}.
@end table
diff --git a/gcc/ada/gnat_ugn.texi b/gcc/ada/gnat_ugn.texi
index bd8eb83ddf9..77a0eed7fd5 100644
--- a/gcc/ada/gnat_ugn.texi
+++ b/gcc/ada/gnat_ugn.texi
@@ -2884,7 +2884,7 @@ This is relevant only to Windows XP/2000/NT implementations of GNAT,
and specifies that the @code{Stdcall} calling sequence will be used,
as defined by the NT API. Nevertheless, to ease building
cross-platform bindings this convention will be handled as a @code{C} calling
-convention on non Windows platforms.
+convention on non-Windows platforms.
@findex DLL
@cindex Convention DLL
@@ -6894,8 +6894,8 @@ Example:
When the switch @option{-gnatem} is specified, the compiler will create
in memory the two mappings from the specified file. If there is any problem
-(non existent file, truncated file or duplicate entries), no mapping
-will be created.
+(nonexistent file, truncated file or duplicate entries), no mapping will
+be created.
Several @option{-gnatem} switches may be specified; however, only the last
one on the command line will be taken into account.
@@ -6952,7 +6952,7 @@ should be found in the source directories.
@noindent
A preprocessing data file is a text file with significant lines indicating
how should be preprocessed either a specific source or all sources not
-mentioned in other lines. A significant line is a non empty, non comment line.
+mentioned in other lines. A significant line is a nonempty, non-comment line.
Comments are similar to Ada comments.
@noindent
@@ -10846,7 +10846,7 @@ When the source file names do not follow the standard GNAT default file naming
conventions, the GNAT compiler must be given additional information through
a configuration pragmas file (@pxref{Configuration Pragmas})
or a project file.
-When the non standard file naming conventions are well-defined,
+When the non-standard file naming conventions are well-defined,
a small number of pragmas @code{Source_File_Name} specifying a naming pattern
(@pxref{Alternative File Naming Schemes}) may be sufficient. However,
if the file naming conventions are irregular or arbitrary, a number
@@ -10962,9 +10962,9 @@ Look for source files in all directories listed in text file @file{file}.
There may be zero, one or more spaces between @option{^-D^/DIRS_FILE=^}
and @file{file}.
@file{file} must be an existing, readable text file.
-Each non empty line in @file{file} must be a directory.
+Each nonempty line in @file{file} must be a directory.
Specifying switch @option{^-D^/DIRS_FILE^} is equivalent to specifying as many
-switches @option{^-d^/SOURCE_DIRS^} as there are non empty lines in
+switches @option{^-d^/SOURCE_DIRS^} as there are nonempty lines in
@file{file}.
@item ^-f^/FOREIGN_PATTERN=^@file{pattern}
@@ -11484,7 +11484,7 @@ Attribute @code{Executable_Suffix}, when specified, may change the suffix
of the executable files, when no attribute @code{Executable} applies:
its value replace the platform-specific executable suffix.
Attributes @code{Executable} and @code{Executable_Suffix} are the only ways to
-specify a non default executable file name when several mains are built at once
+specify a non-default executable file name when several mains are built at once
in a single @command{gnatmake} command.
@node Source File Naming Conventions
@@ -13418,7 +13418,7 @@ that make a project a Library Project (@code{Library_Name} and
@end group
@end smallexample
-Attribute @code{Library_Interface} has a non empty string list value,
+Attribute @code{Library_Interface} has a nonempty string list value,
each string in the list designating a unit contained in an immediate source
of the project file.
@@ -13441,7 +13441,7 @@ two possible values: "false" or "true" (case-insensitive). Specifying
"false" for attribute @code{Library_Auto_Init} will prevent automatic
initialization of dynamic or relocatable libraries.
-When a non automatically initialized Stand-alone Library is used
+When a non-automatically initialized Stand-alone Library is used
in an executable, its initialization procedure must be called before
any service of the library is used.
When the main subprogram is in Ada, it may mean that the initialization
@@ -14032,7 +14032,7 @@ XREF to invoke @command{^gnatxref^gnatxref^}
@command{^gnatmake -f -u -c^gnatmake -f -u -c^}).
@noindent
-On non VMS platforms, between @command{gnat} and the command, two
+On non-VMS platforms, between @command{gnat} and the command, two
special switches may be used:
@itemize @bullet
@@ -17705,7 +17705,7 @@ Only output information about compilation units.
@cindex @option{^-files^/FILES^} (@code{gnatls})
Take as arguments the files listed in text file @var{file}.
Text file @var{file} may contain empty lines that are ignored.
-Each non empty line should contain the name of an existing file.
+Each nonempty line should contain the name of an existing file.
Several such switches may be specified simultaneously.
@item ^-aO^/OBJECT_SEARCH=^@var{dir}
@@ -19445,7 +19445,7 @@ Allocation Root # 3
Note that the GNAT run time contains itself a certain number of
allocations that have no corresponding deallocation,
as shown here for root #2 and root
-#3. This is a normal behavior when the number of non freed allocations
+#3. This is a normal behavior when the number of non-freed allocations
is one, it allocates dynamic data structures that the run time needs for
the complete lifetime of the program. Note also that there is only one
allocation root in the user program with a single line back trace:
@@ -23272,7 +23272,7 @@ fixed-point types are truncated.
@subsection Record and Array Component Alignment
@noindent
-On HP Ada for OpenVMS Alpha, all non composite components
+On HP Ada for OpenVMS Alpha, all non-composite components
are aligned on natural boundaries. For example, 1-byte
components are aligned on byte boundaries, 2-byte
components on 2-byte boundaries, 4-byte components on 4-byte
@@ -29996,7 +29996,7 @@ of the above limitations, you have two choices:
@enumerate
@item
-Encapsulate your non Ada code in a DLL to be linked with your Ada
+Encapsulate your non-Ada code in a DLL to be linked with your Ada
application. In this case, use the Microsoft or whatever environment to
build the DLL and use GNAT to build your executable
(@pxref{Using DLLs with GNAT}).
@@ -30177,7 +30177,7 @@ pragma Import (Stdcall, My_Var);
@noindent
Note that to ease building cross-platform bindings this convention
-will be handled as a @code{C} calling convention on non Windows platforms.
+will be handled as a @code{C} calling convention on non-Windows platforms.
@node Win32 Calling Convention
@subsection @code{Win32} Calling Convention
diff --git a/gcc/ada/gnatfind.adb b/gcc/ada/gnatfind.adb
index 21ba0cbc3ba..a0e05a88d2d 100644
--- a/gcc/ada/gnatfind.adb
+++ b/gcc/ada/gnatfind.adb
@@ -131,7 +131,7 @@ procedure Gnatfind is
when 'n' =>
if GNAT.Command_Line.Full_Switch = "nostdinc" then
Opt.No_Stdinc := True;
- elsif GNAT.Command_Line.Full_Switch = "nostlib" then
+ elsif GNAT.Command_Line.Full_Switch = "nostdlib" then
Opt.No_Stdlib := True;
end if;
diff --git a/gcc/ada/gnatxref.adb b/gcc/ada/gnatxref.adb
index af61ef7c0bb..b2225ff458c 100644
--- a/gcc/ada/gnatxref.adb
+++ b/gcc/ada/gnatxref.adb
@@ -114,7 +114,7 @@ procedure Gnatxref is
when 'n' =>
if GNAT.Command_Line.Full_Switch = "nostdinc" then
Opt.No_Stdinc := True;
- elsif GNAT.Command_Line.Full_Switch = "nostlib" then
+ elsif GNAT.Command_Line.Full_Switch = "nostdlib" then
Opt.No_Stdlib := True;
end if;
diff --git a/gcc/ada/gprep.adb b/gcc/ada/gprep.adb
index 1aed7ef701f..a08ea7dce3d 100644
--- a/gcc/ada/gprep.adb
+++ b/gcc/ada/gprep.adb
@@ -778,7 +778,7 @@ package body GPrep is
elsif Deffile_Name = No_Name then
Deffile_Name := Name_Find;
else
- Fail ("too many arguments specifed");
+ Fail ("too many arguments specified");
end if;
end;
end loop;
diff --git a/gcc/ada/lang-specs.h b/gcc/ada/lang-specs.h
index b6d9ce1be23..65326d4c5b2 100644
--- a/gcc/ada/lang-specs.h
+++ b/gcc/ada/lang-specs.h
@@ -6,7 +6,7 @@
* *
* C Header File *
* *
- * Copyright (C) 1992-2007, Free Software Foundation, Inc. *
+ * Copyright (C) 1992-2008, Free Software Foundation, Inc. *
* *
* GNAT is free software; you can redistribute it and/or modify it under *
* terms of the GNU General Public License as published by the Free Soft- *
@@ -32,8 +32,8 @@
"\
%{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
%{!S:%{!c:%e-c or -S required for Ada}}\
- gnat1 %{I*} %{k8:-gnatk8} %{w:-gnatws} %{!Q:-quiet} %{nostdinc*}\
- %{nostdlib*}\
+ gnat1 %{I*} %{k8:-gnatk8} %{Wall:-gnatwa} %{w:-gnatws} %{!Q:-quiet}\
+ %{nostdinc*} %{nostdlib*}\
-dumpbase %{.adb:%b.adb}%{.ads:%b.ads}%{!.adb:%{!.ads:%b.ada}}\
%{O*} %{W*} %{w} %{p} %{pg:-p} %{a} %{f*} %{d*} %{g*&m*} "
#if defined(TARGET_VXWORKS_RTP)
diff --git a/gcc/ada/lang.opt b/gcc/ada/lang.opt
index 3aecdc76abf..0d541bf845a 100644
--- a/gcc/ada/lang.opt
+++ b/gcc/ada/lang.opt
@@ -69,16 +69,16 @@ nostdinc
Ada RejectNegative
; Don't look for source files
+nostdlib
+Ada
+; Don't look for object files
+
feliminate-unused-debug-types
Ada
; Effect documented for C - intercepted for Ada to force the associated flag
; not to be set by default, as it currently eliminates unreferenced parallel
; types we need for encoding descriptions to the debugger.
-nostdlib
-Ada
-; Don't look for object files
-
fRTS=
Ada Joined RejectNegative
; Selects the runtime
diff --git a/gcc/ada/make.adb b/gcc/ada/make.adb
index cfccbef89c3..ff14dc40a29 100644
--- a/gcc/ada/make.adb
+++ b/gcc/ada/make.adb
@@ -6716,7 +6716,7 @@ package body Make is
-- Test for simultaneity of -i and -D
if Object_Directory_Path /= null and then In_Place_Mode then
- Make_Failed ("-i and -D cannot be used simutaneously");
+ Make_Failed ("-i and -D cannot be used simultaneously");
end if;
-- Deal with -C= switch
diff --git a/gcc/ada/makegpr.adb b/gcc/ada/makegpr.adb
index e8848846958..c6c39cd74b0 100644
--- a/gcc/ada/makegpr.adb
+++ b/gcc/ada/makegpr.adb
@@ -3030,7 +3030,7 @@ package body Makegpr is
else
Osint.Fail
- ("unknow compiler name for language """,
+ ("unknown compiler name for language """,
Get_Name_String (Language_Names.Table (For_Language)),
"""");
end if;
diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c
index 4ddf10f23a9..da0f2d96a0a 100644
--- a/gcc/ada/misc.c
+++ b/gcc/ada/misc.c
@@ -6,7 +6,7 @@
* *
* C Implementation File *
* *
- * Copyright (C) 1992-2007, Free Software Foundation, Inc. *
+ * Copyright (C) 1992-2008, Free Software Foundation, Inc. *
* *
* GNAT is free software; you can redistribute it and/or modify it under *
* terms of the GNU General Public License as published by the Free Soft- *
@@ -126,7 +126,7 @@ static tree gnat_type_max_size (const_tree);
#undef LANG_HOOKS_PUSHDECL
#define LANG_HOOKS_PUSHDECL gnat_return_tree
#undef LANG_HOOKS_WRITE_GLOBALS
-#define LANG_HOOKS_WRITE_GLOBALS gnat_write_global_declarations
+#define LANG_HOOKS_WRITE_GLOBALS gnat_write_global_declarations
#undef LANG_HOOKS_FINISH_INCOMPLETE_DECL
#define LANG_HOOKS_FINISH_INCOMPLETE_DECL gnat_finish_incomplete_decl
#undef LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS
@@ -249,7 +249,7 @@ gnat_parse_file (int set_yydebug ATTRIBUTE_UNUSED)
from ARGV that it successfully decoded; 0 indicates failure. */
static int
-gnat_handle_option (size_t scode, const char *arg, int value ATTRIBUTE_UNUSED)
+gnat_handle_option (size_t scode, const char *arg, int value)
{
const struct cl_option *option = &cl_options[scode];
enum opt_code code = (enum opt_code) scode;
@@ -271,8 +271,16 @@ gnat_handle_option (size_t scode, const char *arg, int value ATTRIBUTE_UNUSED)
gnat_argc++;
break;
- /* All front ends are expected to accept this. */
case OPT_Wall:
+ set_Wunused (value);
+
+ /* We save the value of warn_uninitialized, since if they put
+ -Wuninitialized on the command line, we need to generate a
+ warning about not using it without also specifying -O. */
+ if (warn_uninitialized != 1)
+ warn_uninitialized = (value ? 2 : 0);
+ break;
+
/* These are used in the GCC Makefile. */
case OPT_Wmissing_prototypes:
case OPT_Wstrict_prototypes:
@@ -295,9 +303,9 @@ gnat_handle_option (size_t scode, const char *arg, int value ATTRIBUTE_UNUSED)
case OPT_feliminate_unused_debug_types:
/* We arrange for post_option to be able to only set the corresponding
- flag to 1 when explicitely requested by the user. We expect the
- default flag value to be either 0 or positive, and expose a positive
- -f as a negative value to post_option. */
+ flag to 1 when explicitely requested by the user. We expect the
+ default flag value to be either 0 or positive, and expose a positive
+ -f as a negative value to post_option. */
flag_eliminate_unused_debug_types = -value;
break;
@@ -357,6 +365,9 @@ gnat_init_options (unsigned int argc, const char **argv)
bool
gnat_post_options (const char **pfilename ATTRIBUTE_UNUSED)
{
+ /* ??? The warning machinery is outsmarted by Ada. */
+ warn_unused_parameter = 0;
+
flag_inline_trees = 1;
if (!flag_no_inline)
@@ -516,7 +527,6 @@ gnat_init_gcc_eh (void)
marked as "cannot trap" if the flag is not set (see emit_libcall_block).
We should not let this be since it is possible for such calls to actually
raise in Ada. */
-
flag_exceptions = 1;
flag_non_call_exceptions = 1;
@@ -604,6 +614,14 @@ gnat_print_type (FILE *file, tree node, int indent)
}
static const char *
+gnat_dwarf_name (tree t, int verbosity ATTRIBUTE_UNUSED)
+{
+ gcc_assert (DECL_P (t));
+
+ return (const char *) IDENTIFIER_POINTER (DECL_NAME (t));
+}
+
+static const char *
gnat_printable_name (tree decl, int verbosity)
{
const char *coded_name = IDENTIFIER_POINTER (DECL_NAME (decl));
@@ -620,14 +638,6 @@ gnat_printable_name (tree decl, int verbosity)
return (const char *) ada_name;
}
-static const char *
-gnat_dwarf_name (tree t, int verbosity ATTRIBUTE_UNUSED)
-{
- gcc_assert (DECL_P (t));
-
- return (const char *) IDENTIFIER_POINTER (DECL_NAME (t));
-}
-
/* Expands GNAT-specific GCC tree nodes. The only ones we support
here are and NULL_EXPR. */
diff --git a/gcc/ada/par-ch6.adb b/gcc/ada/par-ch6.adb
index fee646514be..b2ae242c517 100644
--- a/gcc/ada/par-ch6.adb
+++ b/gcc/ada/par-ch6.adb
@@ -280,7 +280,7 @@ package body Ch6 is
if Token = Tok_New then
if not Pf_Flags.Gins then
- Error_Msg_SC ("generic instantation not allowed here!");
+ Error_Msg_SC ("generic instantiation not allowed here!");
end if;
Scan; -- past NEW
@@ -1289,7 +1289,7 @@ package body Ch6 is
end if;
if Token = Tok_In then
- Error_Msg_SC ("IN must preceed OUT in parameter mode");
+ Error_Msg_SC ("IN must precede OUT in parameter mode");
Scan; -- past IN
Set_In_Present (Node, True);
end if;
diff --git a/gcc/ada/prj-nmsc.adb b/gcc/ada/prj-nmsc.adb
index 128913b8822..ecad20dd8c2 100644
--- a/gcc/ada/prj-nmsc.adb
+++ b/gcc/ada/prj-nmsc.adb
@@ -5171,7 +5171,7 @@ package body Prj.Nmsc is
Error_Msg
(Project, In_Tree,
"symbol file name { is illegal. " &
- "Name canot include directory info.",
+ "Name cannot include directory info.",
Lib_Symbol_File.Location);
end if;
end if;
diff --git a/gcc/ada/s-auxdec-empty.adb b/gcc/ada/s-auxdec-empty.adb
index 57fa5812c1d..dd380a812a4 100644
--- a/gcc/ada/s-auxdec-empty.adb
+++ b/gcc/ada/s-auxdec-empty.adb
@@ -13,8 +13,8 @@
-- ware Foundation; either version 2, Or (at your option) any later ver- --
-- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
--- Or FITNESS FOr A PARTICULAR PURPOSE. See the GNU General Public License --
--- fOr mOre details. You should have received a copy of the GNU General --
+-- OR FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
+-- for more details. You should have received a copy of the GNU General --
-- Public License distributed with GNAT; see file COPYING. If not, write --
-- to the Free Software Foundation, 51 Franklin Street, Fifth Floor, --
-- Boston, MA 02110-1301, USA. --
diff --git a/gcc/ada/s-auxdec.adb b/gcc/ada/s-auxdec.adb
index 5bde295d6b5..ed724322958 100644
--- a/gcc/ada/s-auxdec.adb
+++ b/gcc/ada/s-auxdec.adb
@@ -13,8 +13,8 @@
-- ware Foundation; either version 2, Or (at your option) any later ver- --
-- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
--- Or FITNESS FOr A PARTICULAR PURPOSE. See the GNU General Public License --
--- fOr mOre details. You should have received a copy of the GNU General --
+-- OR FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
+-- for more details. You should have received a copy of the GNU General --
-- Public License distributed with GNAT; see file COPYING. If not, write --
-- to the Free Software Foundation, 51 Franklin Street, Fifth Floor, --
-- Boston, MA 02110-1301, USA. --
diff --git a/gcc/ada/sem_attr.adb b/gcc/ada/sem_attr.adb
index 4bfce0c6cb9..8fc203333a9 100644
--- a/gcc/ada/sem_attr.adb
+++ b/gcc/ada/sem_attr.adb
@@ -2191,7 +2191,7 @@ package body Sem_Attr is
and then Warn_On_Redundant_Constructs
then
Error_Msg_NE
- ("?redudant attribute, & is its own base type", N, Typ);
+ ("?redundant attribute, & is its own base type", N, Typ);
end if;
Set_Etype (N, Base_Type (Entity (P)));
diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb
index ebfdccf86ad..49a1699be51 100644
--- a/gcc/ada/sem_ch4.adb
+++ b/gcc/ada/sem_ch4.adb
@@ -1781,7 +1781,7 @@ package body Sem_Ch4 is
end loop;
if Etype (N) = Any_Type then
- Error_Msg_N ("no legal interpetation for indexed component", N);
+ Error_Msg_N ("no legal interpretation for indexed component", N);
Set_Is_Overloaded (N, False);
end if;
diff --git a/gcc/ada/sem_ch8.adb b/gcc/ada/sem_ch8.adb
index 0a4ac8e0cd6..609f5575320 100644
--- a/gcc/ada/sem_ch8.adb
+++ b/gcc/ada/sem_ch8.adb
@@ -5257,7 +5257,7 @@ package body Sem_Ch8 is
and then False
then
Error_Msg_N
- ("applying 'Class to an untagged imcomplete type"
+ ("applying 'Class to an untagged incomplete type"
& " is an obsolescent feature (RM J.11)", N);
end if;
@@ -5347,7 +5347,7 @@ package body Sem_Ch8 is
and then Warn_On_Redundant_Constructs
then
Error_Msg_NE
- ("?redudant attribute, & is its own base type", N, Typ);
+ ("?redundant attribute, & is its own base type", N, Typ);
end if;
T := Base_Type (Typ);
diff --git a/gcc/ada/sem_type.adb b/gcc/ada/sem_type.adb
index c5ae359e7fe..bff22c411bc 100644
--- a/gcc/ada/sem_type.adb
+++ b/gcc/ada/sem_type.adb
@@ -1515,7 +1515,7 @@ package body Sem_Type is
end if;
-- Check for overloaded CIL convention stuff because the CIL libraries
- -- do sick things like Console.WriteLine where it matches
+ -- do sick things like Console.Write_Line where it matches
-- two different overloads, so just pick the first ???
if Convention (Nam1) = Convention_CIL
diff --git a/gcc/ada/sinfo-cn.adb b/gcc/ada/sinfo-cn.adb
index e79c40a4420..14f6e11134f 100644
--- a/gcc/ada/sinfo-cn.adb
+++ b/gcc/ada/sinfo-cn.adb
@@ -29,7 +29,6 @@
-- record discriminant part, such alterations cannot be permitted in a
-- general manner, but in some specific cases, the fields of related nodes
-- have been deliberately layed out in a manner that permits such alteration.
--- that determin
with Atree; use Atree;
diff --git a/gcc/ada/system-vms-ia64.ads b/gcc/ada/system-vms-ia64.ads
index 83326521c52..6ba59a3bd3e 100644
--- a/gcc/ada/system-vms-ia64.ads
+++ b/gcc/ada/system-vms-ia64.ads
@@ -250,7 +250,7 @@ private
ADA_GNAT : constant Boolean := True;
pragma Export_Object (ADA_GNAT, "ADA$GNAT");
- -- Uniquitous global symbol identifing a GNAT compiled image to VMS Debug.
+ -- Ubiquitous global symbol identifying a GNAT compiled image to VMS Debug.
-- Do not remove!
end System;
diff --git a/gcc/ada/system-vms.ads b/gcc/ada/system-vms.ads
index 65efd10d827..7f95154fa39 100644
--- a/gcc/ada/system-vms.ads
+++ b/gcc/ada/system-vms.ads
@@ -233,7 +233,7 @@ private
ADA_GNAT : constant Boolean := True;
pragma Export_Object (ADA_GNAT, "ADA$GNAT");
- -- Uniquitous global symbol identifing a GNAT compiled image to VMS Debug.
+ -- Ubiquitous global symbol identifying a GNAT compiled image to VMS Debug.
-- Do not remove!
end System;
diff --git a/gcc/ada/system-vms_64.ads b/gcc/ada/system-vms_64.ads
index 67eb5c2b40f..4830378f2fc 100644
--- a/gcc/ada/system-vms_64.ads
+++ b/gcc/ada/system-vms_64.ads
@@ -250,7 +250,7 @@ private
ADA_GNAT : constant Boolean := True;
pragma Export_Object (ADA_GNAT, "ADA$GNAT");
- -- Uniquitous global symbol identifing a GNAT compiled image to VMS Debug.
+ -- Ubiquitous global symbol identifying a GNAT compiled image to VMS Debug.
-- Do not remove!
end System;
diff --git a/gcc/ada/trans.c b/gcc/ada/trans.c
index 34cb297d245..4cfd2253987 100644
--- a/gcc/ada/trans.c
+++ b/gcc/ada/trans.c
@@ -202,7 +202,8 @@ static tree emit_range_check (tree, Node_Id);
static tree emit_index_check (tree, tree, tree, tree);
static tree emit_check (tree, tree, int);
static tree convert_with_check (Entity_Id, tree, bool, bool, bool);
-static bool addressable_p (tree);
+static bool larger_record_type_p (tree, tree);
+static bool addressable_p (tree, tree);
static tree assoc_to_constructor (Entity_Id, Node_Id, tree);
static tree extract_values (tree, tree);
static tree pos_to_constructor (Node_Id, tree, Entity_Id);
@@ -1526,33 +1527,31 @@ Case_Statement_to_gnu (Node_Id gnat_node)
gcc_unreachable ();
}
- /* If the case value is a subtype that raises Constraint_Error at
- run-time because of a wrong bound, then gnu_low or gnu_high
- is not translated into an INTEGER_CST. In such a case, we need
- to ensure that the when statement is not added in the tree,
- otherwise it will crash the gimplifier. */
- if ((!gnu_low || TREE_CODE (gnu_low) == INTEGER_CST)
- && (!gnu_high || TREE_CODE (gnu_high) == INTEGER_CST))
- {
-
- add_stmt_with_node (build3 (CASE_LABEL_EXPR, void_type_node,
- gnu_low, gnu_high,
- create_artificial_label ()),
- gnat_choice);
- choices_added++;
- }
+ /* If the case value is a subtype that raises Constraint_Error at
+ run-time because of a wrong bound, then gnu_low or gnu_high is
+ not transtaleted into an INTEGER_CST. In such a case, we need
+ to ensure that the when statement is not added in the tree,
+ otherwise it will crash the gimplifier. */
+ if ((!gnu_low || TREE_CODE (gnu_low) == INTEGER_CST)
+ && (!gnu_high || TREE_CODE (gnu_high) == INTEGER_CST))
+ {
+ add_stmt_with_node (build3 (CASE_LABEL_EXPR, void_type_node,
+ gnu_low, gnu_high,
+ create_artificial_label ()),
+ gnat_choice);
+ choices_added++;
+ }
}
- /* Push a binding level here in case variables are declared since we want
- them to be local to this set of statements instead of the block
- containing the Case statement. */
-
- if (choices_added > 0)
- {
- add_stmt (build_stmt_group (Statements (gnat_when), true));
- add_stmt (build1 (GOTO_EXPR, void_type_node,
- TREE_VALUE (gnu_switch_label_stack)));
- }
+ /* Push a binding level here in case variables are declared as we want
+ them to be local to this set of statements instead of to the block
+ containing the Case statement. */
+ if (choices_added > 0)
+ {
+ add_stmt (build_stmt_group (Statements (gnat_when), true));
+ add_stmt (build1 (GOTO_EXPR, void_type_node,
+ TREE_VALUE (gnu_switch_label_stack)));
+ }
}
/* Now emit a definition of the label all the cases branched to. */
@@ -1583,6 +1582,8 @@ Loop_Statement_to_gnu (Node_Id gnat_node)
TREE_SIDE_EFFECTS (gnu_loop_stmt) = 1;
LOOP_STMT_LABEL (gnu_loop_stmt) = create_artificial_label ();
set_expr_location_from_node (gnu_loop_stmt, gnat_node);
+ Sloc_to_locus (Sloc (End_Label (gnat_node)),
+ &DECL_SOURCE_LOCATION (LOOP_STMT_LABEL (gnu_loop_stmt)));
/* Save the end label of this LOOP_STMT in a stack so that the corresponding
N_Exit_Statement can find it. */
@@ -2089,8 +2090,7 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, tree gnu_target)
&& Is_Composite_Type (Underlying_Type (Etype (gnat_formal)))));
Node_Id gnat_name = (suppress_type_conversion
? Expression (gnat_actual) : gnat_actual);
- tree gnu_name = gnat_to_gnu (gnat_name);
- tree gnu_name_type = gnat_to_gnu_type (Etype (gnat_name));
+ tree gnu_name = gnat_to_gnu (gnat_name), gnu_name_type;
tree gnu_actual;
/* If it's possible we may need to use this expression twice, make sure
@@ -2109,7 +2109,8 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, tree gnu_target)
|| (TREE_CODE (gnu_formal) == PARM_DECL
&& (DECL_BY_COMPONENT_PTR_P (gnu_formal)
|| (DECL_BY_DESCRIPTOR_P (gnu_formal)))))
- && !addressable_p (gnu_name))
+ && (gnu_name_type = gnat_to_gnu_type (Etype (gnat_name)))
+ && !addressable_p (gnu_name, gnu_name_type))
{
tree gnu_copy = gnu_name, gnu_temp;
@@ -2136,8 +2137,7 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, tree gnu_target)
gnat_formal);
}
- /* Remove any unpadding and make a copy. But if it's a justified
- modular type, just convert to it. */
+ /* Remove any unpadding from the object and reset the copy. */
if (TREE_CODE (gnu_name) == COMPONENT_REF
&& ((TREE_CODE (TREE_TYPE (TREE_OPERAND (gnu_name, 0)))
== RECORD_TYPE)
@@ -2145,14 +2145,23 @@ call_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, tree gnu_target)
(TREE_TYPE (TREE_OPERAND (gnu_name, 0))))))
gnu_name = gnu_copy = TREE_OPERAND (gnu_name, 0);
+ /* Otherwise convert to the nominal type of the object if it's
+ a record type. There are several cases in which we need to
+ make the temporary using this type instead of the actual type
+ of the object if they are distinct, because the expectations
+ of the callee would otherwise not be met:
+ - if it's a justified modular type,
+ - if the actual type is a packed version of it. */
else if (TREE_CODE (gnu_name_type) == RECORD_TYPE
- && (TYPE_JUSTIFIED_MODULAR_P (gnu_name_type)))
+ && (TYPE_JUSTIFIED_MODULAR_P (gnu_name_type)
+ || larger_record_type_p (gnu_name_type,
+ TREE_TYPE (gnu_name))))
gnu_name = convert (gnu_name_type, gnu_name);
/* Make a SAVE_EXPR to both properly account for potential side
effects and handle the creation of a temporary copy. Special
code in gnat_gimplify_expr ensures that the same temporary is
- used as the actual and copied back after the call if needed. */
+ used as the object and copied back after the call if needed. */
gnu_name = build1 (SAVE_EXPR, TREE_TYPE (gnu_name), gnu_name);
TREE_SIDE_EFFECTS (gnu_name) = 1;
TREE_INVARIANT (gnu_name) = 1;
@@ -4233,7 +4242,7 @@ gnat_to_gnu (Node_Id gnat_node)
for (gnat_temp
= First_Formal_With_Extras
- (Defining_Entity (Specification (gnat_node)));
+ (Defining_Entity (Specification (gnat_node)));
Present (gnat_temp);
gnat_temp = Next_Formal_With_Extras (gnat_temp))
if (Is_Itype (Etype (gnat_temp))
@@ -4837,15 +4846,13 @@ gnat_to_gnu (Node_Id gnat_node)
statement or a parameter of a procedure call, return what we have since
the RHS has to be converted to our type there in that case, unless
GNU_RESULT_TYPE has a simpler size. Similarly, if the two types are
- record types with the same name, the expression type has integral mode,
- and GNU_RESULT_TYPE BLKmode, don't convert. This will be the case when
- we are converting from a packable type to its actual type and we need
- those conversions to be NOPs in order for assignments into these types to
- work properly if the inner object is a bitfield and hence can't have
- its address taken. Finally, don't convert integral types that are the
- operand of an unchecked conversion since we need to ignore those
- conversions (for 'Valid). Otherwise, convert the result to the proper
- type. */
+ record types with the same name and GNU_RESULT_TYPE has BLKmode, don't
+ convert. This will be the case when we are converting from a packable
+ type to its actual type and we need those conversions to be NOPs in
+ order for assignments into these types to work properly. Finally,
+ don't convert integral types that are the operand of an unchecked
+ conversion since we need to ignore those conversions (for 'Valid).
+ Otherwise, convert the result to the proper type. */
if (Present (Parent (gnat_node))
&& ((Nkind (Parent (gnat_node)) == N_Assignment_Statement
@@ -4895,9 +4902,7 @@ gnat_to_gnu (Node_Id gnat_node)
== TYPE_NAME (TREE_TYPE (gnu_result)))
&& TREE_CODE (gnu_result_type) == RECORD_TYPE
&& TREE_CODE (TREE_TYPE (gnu_result)) == RECORD_TYPE
- && TYPE_MODE (gnu_result_type) == BLKmode
- && (GET_MODE_CLASS (TYPE_MODE (TREE_TYPE (gnu_result)))
- == MODE_INT)))
+ && TYPE_MODE (gnu_result_type) == BLKmode))
{
/* Remove any padding record, but do nothing more in this case. */
if (TREE_CODE (TREE_TYPE (gnu_result)) == RECORD_TYPE
@@ -5329,6 +5334,7 @@ gnat_gimplify_stmt (tree *stmt_p)
{
tree gnu_start_label = create_artificial_label ();
tree gnu_end_label = LOOP_STMT_LABEL (stmt);
+ tree t;
/* Set to emit the statements of the loop. */
*stmt_p = NULL_TREE;
@@ -5365,9 +5371,10 @@ gnat_gimplify_stmt (tree *stmt_p)
if (LOOP_STMT_UPDATE (stmt))
append_to_statement_list (LOOP_STMT_UPDATE (stmt), stmt_p);
- append_to_statement_list (build1 (GOTO_EXPR, void_type_node,
- gnu_start_label),
- stmt_p);
+ t = build1 (GOTO_EXPR, void_type_node, gnu_start_label);
+ set_expr_location (t, DECL_SOURCE_LOCATION (gnu_end_label));
+ append_to_statement_list (t, stmt_p);
+
append_to_statement_list (build1 (LABEL_EXPR, void_type_node,
gnu_end_label),
stmt_p);
@@ -5750,6 +5757,11 @@ emit_range_check (tree gnu_expr, Entity_Id gnat_range_type)
tree gnu_high = TYPE_MAX_VALUE (gnu_range_type);
tree gnu_compare_type = get_base_type (TREE_TYPE (gnu_expr));
+ /* If GNU_EXPR has GNAT_RANGE_TYPE as its base type, no check is needed.
+ This can for example happen when translating 'Val or 'Value. */
+ if (gnu_compare_type == gnu_range_type)
+ return gnu_expr;
+
/* If GNU_EXPR has an integral type that is narrower than GNU_RANGE_TYPE,
we can't do anything since we might be truncating the bounds. No
check is needed in this case. */
@@ -6047,13 +6059,44 @@ convert_with_check (Entity_Id gnat_type, tree gnu_expr, bool overflowp,
return convert (gnu_type, gnu_result);
}
-/* Return 1 if GNU_EXPR can be directly addressed. This is the case unless
- it is an expression involving computation or if it involves a reference
- to a bitfield or to a field not sufficiently aligned for its type. */
+/* Return true if RECORD_TYPE, a record type, is larger than TYPE. */
static bool
-addressable_p (tree gnu_expr)
+larger_record_type_p (tree record_type, tree type)
{
+ tree rsize, size;
+
+ /* Padding types are not considered larger on their own. */
+ if (TYPE_IS_PADDING_P (record_type))
+ return false;
+
+ rsize = TYPE_SIZE (record_type);
+ size = TYPE_SIZE (type);
+
+ if (!(TREE_CODE (rsize) == INTEGER_CST && TREE_CODE (size) == INTEGER_CST))
+ return false;
+
+ return tree_int_cst_lt (size, rsize) != 0;
+}
+
+/* Return true if GNU_EXPR can be directly addressed. This is the case
+ unless it is an expression involving computation or if it involves a
+ reference to a bitfield or to an object not sufficiently aligned for
+ its type. If GNU_TYPE is non null, return true only if GNU_EXPR can
+ be directly addressed as an object of this type. */
+
+static bool
+addressable_p (tree gnu_expr, tree gnu_type)
+{
+ /* The size of the real type of the object must not be smaller than
+ that of the expected type, otherwise an indirect access in the
+ latter type would be larger than the object. Only records need
+ to be considered in practice. */
+ if (gnu_type
+ && TREE_CODE (gnu_type) == RECORD_TYPE
+ && larger_record_type_p (gnu_type, TREE_TYPE (gnu_expr)))
+ return false;
+
switch (TREE_CODE (gnu_expr))
{
case VAR_DECL:
@@ -6085,23 +6128,22 @@ addressable_p (tree gnu_expr)
aligned field that is not a bit-field. */
|| DECL_ALIGN (TREE_OPERAND (gnu_expr, 1))
>= TYPE_ALIGN (TREE_TYPE (gnu_expr)))
- && addressable_p (TREE_OPERAND (gnu_expr, 0)));
+ && addressable_p (TREE_OPERAND (gnu_expr, 0), NULL_TREE));
case ARRAY_REF: case ARRAY_RANGE_REF:
case REALPART_EXPR: case IMAGPART_EXPR:
case NOP_EXPR:
- return addressable_p (TREE_OPERAND (gnu_expr, 0));
+ return addressable_p (TREE_OPERAND (gnu_expr, 0), NULL_TREE);
case CONVERT_EXPR:
return (AGGREGATE_TYPE_P (TREE_TYPE (gnu_expr))
- && addressable_p (TREE_OPERAND (gnu_expr, 0)));
+ && addressable_p (TREE_OPERAND (gnu_expr, 0), NULL_TREE));
case VIEW_CONVERT_EXPR:
{
/* This is addressable if we can avoid a copy. */
tree type = TREE_TYPE (gnu_expr);
tree inner_type = TREE_TYPE (TREE_OPERAND (gnu_expr, 0));
-
return (((TYPE_MODE (type) == TYPE_MODE (inner_type)
&& (!STRICT_ALIGNMENT
|| TYPE_ALIGN (type) <= TYPE_ALIGN (inner_type)
@@ -6113,7 +6155,7 @@ addressable_p (tree gnu_expr)
|| TYPE_ALIGN (inner_type) >= BIGGEST_ALIGNMENT
|| TYPE_ALIGN_OK (type)
|| TYPE_ALIGN_OK (inner_type))))
- && addressable_p (TREE_OPERAND (gnu_expr, 0)));
+ && addressable_p (TREE_OPERAND (gnu_expr, 0), NULL_TREE));
}
default:
@@ -6260,7 +6302,7 @@ assoc_to_constructor (Entity_Id gnat_entity, Node_Id gnat_assoc, tree gnu_type)
{
tree gnu_field;
- /* Verify every enty in GNU_LIST was used. */
+ /* Verify every entry in GNU_LIST was used. */
for (gnu_field = gnu_list; gnu_field; gnu_field = TREE_CHAIN (gnu_field))
gcc_assert (TREE_ADDRESSABLE (gnu_field));
}
diff --git a/gcc/ada/utils.c b/gcc/ada/utils.c
index 32cbbffa2a9..58f0b68c4fc 100644
--- a/gcc/ada/utils.c
+++ b/gcc/ada/utils.c
@@ -750,9 +750,9 @@ finish_record_type (tree record_type, tree fieldlist, int rep_level,
tree name = TYPE_NAME (record_type);
tree ada_size = bitsize_zero_node;
tree size = bitsize_zero_node;
- bool var_size = false;
bool had_size = TYPE_SIZE (record_type) != 0;
bool had_size_unit = TYPE_SIZE_UNIT (record_type) != 0;
+ bool had_align = TYPE_ALIGN (record_type) != 0;
tree field;
if (name && TREE_CODE (name) == TYPE_DECL)
@@ -805,33 +805,55 @@ finish_record_type (tree record_type, tree fieldlist, int rep_level,
for (field = fieldlist; field; field = TREE_CHAIN (field))
{
- tree pos = bit_position (field);
-
tree type = TREE_TYPE (field);
+ tree pos = bit_position (field);
tree this_size = DECL_SIZE (field);
- tree this_ada_size = DECL_SIZE (field);
+ tree this_ada_size;
- /* We need to make an XVE/XVU record if any field has variable size,
- whether or not the record does. For example, if we have a union,
- it may be that all fields, rounded up to the alignment, have the
- same size, in which case we'll use that size. But the debug
- output routines (except Dwarf2) won't be able to output the fields,
- so we need to make the special record. */
- if (TREE_CODE (this_size) != INTEGER_CST)
- var_size = true;
-
- if ((TREE_CODE (type) == RECORD_TYPE || TREE_CODE (type) == UNION_TYPE
- || TREE_CODE (type) == QUAL_UNION_TYPE)
+ if ((TREE_CODE (type) == RECORD_TYPE
+ || TREE_CODE (type) == UNION_TYPE
+ || TREE_CODE (type) == QUAL_UNION_TYPE)
&& !TYPE_IS_FAT_POINTER_P (type)
&& !TYPE_CONTAINS_TEMPLATE_P (type)
&& TYPE_ADA_SIZE (type))
this_ada_size = TYPE_ADA_SIZE (type);
+ else
+ this_ada_size = this_size;
/* Clear DECL_BIT_FIELD for the cases layout_decl does not handle. */
- if (DECL_BIT_FIELD (field) && !STRICT_ALIGNMENT
- && value_factor_p (pos, BITS_PER_UNIT)
+ if (DECL_BIT_FIELD (field)
&& operand_equal_p (this_size, TYPE_SIZE (type), 0))
- DECL_BIT_FIELD (field) = 0;
+ {
+ unsigned int align = TYPE_ALIGN (type);
+
+ /* In the general case, type alignment is required. */
+ if (value_factor_p (pos, align))
+ {
+ /* The enclosing record type must be sufficiently aligned.
+ Otherwise, if no alignment was specified for it and it
+ has been laid out already, bump its alignment to the
+ desired one if this is compatible with its size. */
+ if (TYPE_ALIGN (record_type) >= align)
+ {
+ DECL_ALIGN (field) = MAX (DECL_ALIGN (field), align);
+ DECL_BIT_FIELD (field) = 0;
+ }
+ else if (!had_align
+ && rep_level == 0
+ && value_factor_p (TYPE_SIZE (record_type), align))
+ {
+ TYPE_ALIGN (record_type) = align;
+ DECL_ALIGN (field) = MAX (DECL_ALIGN (field), align);
+ DECL_BIT_FIELD (field) = 0;
+ }
+ }
+
+ /* In the non-strict alignment case, only byte alignment is. */
+ if (!STRICT_ALIGNMENT
+ && DECL_BIT_FIELD (field)
+ && value_factor_p (pos, BITS_PER_UNIT))
+ DECL_BIT_FIELD (field) = 0;
+ }
/* If we still have DECL_BIT_FIELD set at this point, we know the field
is technically not addressable. Except that it can actually be
@@ -840,7 +862,9 @@ finish_record_type (tree record_type, tree fieldlist, int rep_level,
DECL_NONADDRESSABLE_P (field)
|= DECL_BIT_FIELD (field) && DECL_MODE (field) != BLKmode;
- if ((rep_level > 0) && !DECL_BIT_FIELD (field))
+ /* A type must be as aligned as its most aligned field that is not
+ a bit-field. But this is already enforced by layout_type. */
+ if (rep_level > 0 && !DECL_BIT_FIELD (field))
TYPE_ALIGN (record_type)
= MAX (TYPE_ALIGN (record_type), DECL_ALIGN (field));
@@ -1530,7 +1554,7 @@ aggregate_type_contains_array_p (tree type)
case ARRAY_TYPE:
return true;
-
+
default:
gcc_unreachable ();
}
@@ -1810,7 +1834,7 @@ value_factor_p (tree value, HOST_WIDE_INT factor)
return (value_factor_p (TREE_OPERAND (value, 0), factor)
|| value_factor_p (TREE_OPERAND (value, 1), factor));
- return 0;
+ return false;
}
/* Given 2 consecutive field decls PREV_FIELD and CURR_FIELD, return true
@@ -1908,18 +1932,18 @@ create_subprog_decl (tree subprog_name, tree asm_name,
DECL_ARTIFICIAL (DECL_RESULT (subprog_decl)) = 1;
DECL_IGNORED_P (DECL_RESULT (subprog_decl)) = 1;
- /* TREE_ADDRESSABLE is set on the result type to request the use of the
- target by-reference return mechanism. This is not supported all the
- way down to RTL expansion with GCC 4, which ICEs on temporary creation
- attempts with such a type and expects DECL_BY_REFERENCE to be set on
- the RESULT_DECL instead - see gnat_genericize for more details. */
- if (TREE_ADDRESSABLE (TREE_TYPE (DECL_RESULT (subprog_decl))))
- {
- tree result_decl = DECL_RESULT (subprog_decl);
+ /* TREE_ADDRESSABLE is set on the result type to request the use of the
+ target by-reference return mechanism. This is not supported all the
+ way down to RTL expansion with GCC 4, which ICEs on temporary creation
+ attempts with such a type and expects DECL_BY_REFERENCE to be set on
+ the RESULT_DECL instead - see gnat_genericize for more details. */
+ if (TREE_ADDRESSABLE (TREE_TYPE (DECL_RESULT (subprog_decl))))
+ {
+ tree result_decl = DECL_RESULT (subprog_decl);
- TREE_ADDRESSABLE (TREE_TYPE (result_decl)) = 0;
- DECL_BY_REFERENCE (result_decl) = 1;
- }
+ TREE_ADDRESSABLE (TREE_TYPE (result_decl)) = 0;
+ DECL_BY_REFERENCE (result_decl) = 1;
+ }
if (inline_flag)
DECL_DECLARED_INLINE_P (subprog_decl) = 1;
@@ -2496,9 +2520,9 @@ build_template (tree template_type, tree array_type, tree expr)
tree bound_list = NULL_TREE;
tree field;
- if (TREE_CODE (array_type) == RECORD_TYPE
- && (TYPE_IS_PADDING_P (array_type)
- || TYPE_JUSTIFIED_MODULAR_P (array_type)))
+ while (TREE_CODE (array_type) == RECORD_TYPE
+ && (TYPE_IS_PADDING_P (array_type)
+ || TYPE_JUSTIFIED_MODULAR_P (array_type)))
array_type = TREE_TYPE (TYPE_FIELDS (array_type));
if (TREE_CODE (array_type) == ARRAY_TYPE
diff --git a/gcc/alias.c b/gcc/alias.c
index 56afa86321e..2e4f5aebdb4 100644
--- a/gcc/alias.c
+++ b/gcc/alias.c
@@ -133,6 +133,10 @@ struct alias_set_entry GTY(())
/* The alias set number, as stored in MEM_ALIAS_SET. */
alias_set_type alias_set;
+ /* Nonzero if would have a child of zero: this effectively makes this
+ alias set the same as alias set zero. */
+ int has_zero_child;
+
/* The children of the alias set. These are not just the immediate
children, but, in fact, all descendants. So, if we have:
@@ -141,10 +145,6 @@ struct alias_set_entry GTY(())
continuing our example above, the children here will be all of
`int', `double', `float', and `struct S'. */
splay_tree GTY((param1_is (int), param2_is (int))) children;
-
- /* Nonzero if would have a child of zero: this effectively makes this
- alias set the same as alias set zero. */
- int has_zero_child;
};
typedef struct alias_set_entry *alias_set_entry;
diff --git a/gcc/alias.h b/gcc/alias.h
index 772aea09010..73811d302b1 100644
--- a/gcc/alias.h
+++ b/gcc/alias.h
@@ -20,14 +20,26 @@ along with GCC; see the file COPYING3. If not see
#ifndef GCC_ALIAS_H
#define GCC_ALIAS_H
-/* The type of an alias set. */
-typedef HOST_WIDE_INT alias_set_type;
+#include "coretypes.h"
+
+/* The type of an alias set. Code currently assumes that variables of
+ this type can take the values 0 (the alias set which aliases
+ everything) and -1 (sometimes indicating that the alias set is
+ unknown, sometimes indicating a memory barrier) and -2 (indicating
+ that the alias set should be set to a unique value but has not been
+ set yet). */
+typedef int alias_set_type;
extern alias_set_type new_alias_set (void);
+extern alias_set_type get_alias_set (tree);
extern alias_set_type get_varargs_alias_set (void);
extern alias_set_type get_frame_alias_set (void);
extern bool component_uses_parent_alias_set (const_tree);
extern bool alias_set_subset_of (alias_set_type, alias_set_type);
+extern void record_component_aliases (tree);
+extern int alias_sets_conflict_p (alias_set_type, alias_set_type);
+extern int alias_sets_must_conflict_p (alias_set_type, alias_set_type);
+extern int objects_must_conflict_p (tree, tree);
extern int nonoverlapping_memrefs_p (const_rtx, const_rtx);
/* This alias set can be used to force a memory to conflict with all
diff --git a/gcc/c-common.c b/gcc/c-common.c
index f3de12a7359..2bc74348e6a 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -1196,7 +1196,7 @@ vector_types_convertible_p (const_tree t1, const_tree t2, bool emit_lax_note)
return convertible_lax;
if (TYPE_VECTOR_SUBPARTS (t1) == TYPE_VECTOR_SUBPARTS (t2)
- && comptypes (TREE_TYPE (t1), TREE_TYPE (t2)))
+ && lang_hooks.types_compatible_p (TREE_TYPE (t1), TREE_TYPE (t2)))
return true;
if (emit_lax_note && !emitted_lax_note)
diff --git a/gcc/c-parser.c b/gcc/c-parser.c
index 1e63c14ef8b..831f95ac1e2 100644
--- a/gcc/c-parser.c
+++ b/gcc/c-parser.c
@@ -1,6 +1,7 @@
/* Parser for C and Objective-C.
Copyright (C) 1987, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008
+ Free Software Foundation, Inc.
Parser actions based on the old Bison parser; structure somewhat
influenced by and fragments based on the C++ parser.
@@ -7964,10 +7965,14 @@ c_parser_omp_threadprivate (c_parser *parser)
/* If V had already been marked threadprivate, it doesn't matter
whether it had been used prior to this point. */
- if (TREE_USED (v) && !C_DECL_THREADPRIVATE_P (v))
+ if (TREE_CODE (v) != VAR_DECL)
+ error ("%qD is not a variable", v);
+ else if (TREE_USED (v) && !C_DECL_THREADPRIVATE_P (v))
error ("%qE declared %<threadprivate%> after first use", v);
else if (! TREE_STATIC (v) && ! DECL_EXTERNAL (v))
error ("automatic variable %qE cannot be %<threadprivate%>", v);
+ else if (TREE_TYPE (v) == error_mark_node)
+ ;
else if (! COMPLETE_TYPE_P (TREE_TYPE (v)))
error ("%<threadprivate%> %qE has incomplete type", v);
else
diff --git a/gcc/c.opt b/gcc/c.opt
index d3f81b0e1c7..dd9013e1c37 100644
--- a/gcc/c.opt
+++ b/gcc/c.opt
@@ -423,7 +423,7 @@ Warn if type signatures of candidate methods do not match exactly
Wsynth
C++ ObjC++ Var(warn_synth) Warning
-Warn when synthesis behavior differs from Cfront
+Deprecated. This switch has no effect
Wsystem-headers
C ObjC C++ ObjC++ Warning
diff --git a/gcc/cfg.c b/gcc/cfg.c
index 8a83137aaa5..fe8dba984cf 100644
--- a/gcc/cfg.c
+++ b/gcc/cfg.c
@@ -67,6 +67,7 @@ along with GCC; see the file COPYING3. If not see
#include "alloc-pool.h"
#include "df.h"
#include "cfgloop.h"
+#include "tree-flow.h"
/* The obstack on which the flow graph components are allocated. */
@@ -359,6 +360,9 @@ remove_edge_raw (edge e)
disconnect_src (e);
disconnect_dest (e);
+ /* This is probably not needed, but it doesn't hurt. */
+ redirect_edge_var_map_clear (e);
+
free_edge (e);
}
@@ -395,6 +399,7 @@ redirect_edge_succ_nodup (edge e, basic_block new_succ)
s->probability = REG_BR_PROB_BASE;
s->count += e->count;
remove_edge (e);
+ redirect_edge_var_map_dup (s, e);
e = s;
}
else
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 5db8237467c..4533e0e76c8 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -750,6 +750,7 @@ arm*-*-linux*) # ARM GNU/Linux with ELF
;;
esac
tm_file="$tm_file arm/aout.h arm/arm.h"
+ tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
arm*-*-uclinux*) # ARM ucLinux
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/uclinux-elf.h arm/uclinux-elf.h"
@@ -766,10 +767,12 @@ arm*-*-uclinux*) # ARM ucLinux
default_use_cxa_atexit=yes
esac
tm_file="$tm_file arm/aout.h arm/arm.h"
+ tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
arm*-*-ecos-elf)
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h"
tmake_file="arm/t-arm arm/t-arm-elf"
+ tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
arm*-*-eabi* | arm*-*-symbianelf* )
# The BPABI long long divmod functions return a 128-bit value in
@@ -791,14 +794,17 @@ arm*-*-eabi* | arm*-*-symbianelf* )
;;
esac
tm_file="${tm_file} arm/aout.h arm/arm.h"
+ tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
arm*-*-rtems*)
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/rtems-elf.h rtems.h"
tmake_file="arm/t-arm arm/t-arm-elf t-rtems arm/t-rtems"
+ tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
arm*-*-elf | ep9312-*-elf)
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
tmake_file="arm/t-arm arm/t-arm-elf"
+ tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
arm*-wince-pe*)
tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h arm/pe.h arm/wince-pe.h"
@@ -815,6 +821,7 @@ arm-*-pe*)
arm*-*-kaos*)
tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h kaos.h arm/kaos-arm.h"
tmake_file="arm/t-arm arm/t-arm-elf"
+ tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
avr-*-rtems*)
tm_file="avr/avr.h dbxelf.h avr/rtems.h rtems.h"
@@ -2877,7 +2884,8 @@ case "${target}" in
case "$with_arch" in
"" \
| armv[23456] | armv2a | armv3m | armv4t | armv5t \
- | armv5te | armv6j |armv6k | armv6z | armv6zk \
+ | armv5te | armv6j |armv6k | armv6z | armv6zk | armv6-m \
+ | armv7 | armv7-a | armv7-r | armv7-m \
| iwmmxt | ep9312)
# OK
;;
diff --git a/gcc/config/arm/arm-cores.def b/gcc/config/arm/arm-cores.def
index 748dcb074d1..cce3195a453 100644
--- a/gcc/config/arm/arm-cores.def
+++ b/gcc/config/arm/arm-cores.def
@@ -1,5 +1,5 @@
/* ARM CPU Cores
- Copyright (C) 2003, 2005, 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
Written by CodeSourcery, LLC
This file is part of GCC.
@@ -118,3 +118,4 @@ ARM_CORE("arm1156t2-s", arm1156t2s, 6T2, FL_LDSCHED, 9e)
ARM_CORE("cortex-a8", cortexa8, 7A, FL_LDSCHED, 9e)
ARM_CORE("cortex-r4", cortexr4, 7R, FL_LDSCHED, 9e)
ARM_CORE("cortex-m3", cortexm3, 7M, FL_LDSCHED, 9e)
+ARM_CORE("cortex-m1", cortexm1, 6M, FL_LDSCHED, 9e)
diff --git a/gcc/config/arm/arm-tune.md b/gcc/config/arm/arm-tune.md
index 5b4c46f07b7..d73382bc920 100644
--- a/gcc/config/arm/arm-tune.md
+++ b/gcc/config/arm/arm-tune.md
@@ -1,5 +1,5 @@
;; -*- buffer-read-only: t -*-
;; Generated automatically by gentune.sh from arm-cores.def
(define_attr "tune"
- "arm2,arm250,arm3,arm6,arm60,arm600,arm610,arm620,arm7,arm7d,arm7di,arm70,arm700,arm700i,arm710,arm720,arm710c,arm7100,arm7500,arm7500fe,arm7m,arm7dm,arm7dmi,arm8,arm810,strongarm,strongarm110,strongarm1100,strongarm1110,arm7tdmi,arm7tdmis,arm710t,arm720t,arm740t,arm9,arm9tdmi,arm920,arm920t,arm922t,arm940t,ep9312,arm10tdmi,arm1020t,arm9e,arm946es,arm966es,arm968es,arm10e,arm1020e,arm1022e,xscale,iwmmxt,arm926ejs,arm1026ejs,arm1136js,arm1136jfs,arm1176jzs,arm1176jzfs,mpcorenovfp,mpcore,arm1156t2s,cortexa8,cortexr4,cortexm3"
+ "arm2,arm250,arm3,arm6,arm60,arm600,arm610,arm620,arm7,arm7d,arm7di,arm70,arm700,arm700i,arm710,arm720,arm710c,arm7100,arm7500,arm7500fe,arm7m,arm7dm,arm7dmi,arm8,arm810,strongarm,strongarm110,strongarm1100,strongarm1110,arm7tdmi,arm7tdmis,arm710t,arm720t,arm740t,arm9,arm9tdmi,arm920,arm920t,arm922t,arm940t,ep9312,arm10tdmi,arm1020t,arm9e,arm946es,arm966es,arm968es,arm10e,arm1020e,arm1022e,xscale,iwmmxt,arm926ejs,arm1026ejs,arm1136js,arm1136jfs,arm1176jzs,arm1176jzfs,mpcorenovfp,mpcore,arm1156t2s,cortexa8,cortexr4,cortexm3,cortexm1"
(const (symbol_ref "arm_tune")))
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index c66b51ec328..bddb0e2771a 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -1,6 +1,6 @@
/* Output routines for GCC for ARM.
Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
and Martin Simmons (@harleqn.co.uk).
More major hacks by Richard Earnshaw (rearnsha@arm.com).
@@ -188,6 +188,7 @@ static void arm_target_help (void);
static unsigned HOST_WIDE_INT arm_shift_truncation_mask (enum machine_mode);
static bool arm_cannot_copy_insn_p (rtx);
static bool arm_tls_symbol_p (rtx x);
+static int arm_issue_rate (void);
static void arm_output_dwarf_dtprel (FILE *, int, rtx) ATTRIBUTE_UNUSED;
@@ -358,6 +359,9 @@ static void arm_output_dwarf_dtprel (FILE *, int, rtx) ATTRIBUTE_UNUSED;
#undef TARGET_CANNOT_FORCE_CONST_MEM
#define TARGET_CANNOT_FORCE_CONST_MEM arm_cannot_force_const_mem
+#undef TARGET_SCHED_ISSUE_RATE
+#define TARGET_SCHED_ISSUE_RATE arm_issue_rate
+
#undef TARGET_MANGLE_TYPE
#define TARGET_MANGLE_TYPE arm_mangle_type
@@ -460,6 +464,7 @@ static int thumb_call_reg_needed;
#define FL_FOR_ARCH6Z FL_FOR_ARCH6
#define FL_FOR_ARCH6ZK FL_FOR_ARCH6K
#define FL_FOR_ARCH6T2 (FL_FOR_ARCH6 | FL_THUMB2)
+#define FL_FOR_ARCH6M (FL_FOR_ARCH6 & ~FL_NOTM)
#define FL_FOR_ARCH7 (FL_FOR_ARCH6T2 &~ FL_NOTM)
#define FL_FOR_ARCH7A (FL_FOR_ARCH7 | FL_NOTM)
#define FL_FOR_ARCH7R (FL_FOR_ARCH7A | FL_DIV)
@@ -632,6 +637,7 @@ static const struct processors all_architectures[] =
{"armv6z", arm1176jzs, "6Z", FL_CO_PROC | FL_FOR_ARCH6Z, NULL},
{"armv6zk", arm1176jzs, "6ZK", FL_CO_PROC | FL_FOR_ARCH6ZK, NULL},
{"armv6t2", arm1156t2s, "6T2", FL_CO_PROC | FL_FOR_ARCH6T2, NULL},
+ {"armv6-m", cortexm1, "6M", FL_FOR_ARCH6M, NULL},
{"armv7", cortexa8, "7", FL_CO_PROC | FL_FOR_ARCH7, NULL},
{"armv7-a", cortexa8, "7A", FL_CO_PROC | FL_FOR_ARCH7A, NULL},
{"armv7-r", cortexr4, "7R", FL_CO_PROC | FL_FOR_ARCH7R, NULL},
@@ -17639,12 +17645,23 @@ arm_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
? 1 : 0);
if (mi_delta < 0)
mi_delta = - mi_delta;
- /* When generating 16-bit thumb code, thunks are entered in arm mode. */
+
if (TARGET_THUMB1)
{
int labelno = thunk_label++;
ASM_GENERATE_INTERNAL_LABEL (label, "LTHUMBFUNC", labelno);
- fputs ("\tldr\tr12, ", file);
+ /* Thunks are entered in arm mode when avaiable. */
+ if (TARGET_THUMB1_ONLY)
+ {
+ /* push r3 so we can use it as a temporary. */
+ /* TODO: Omit this save if r3 is not used. */
+ fputs ("\tpush {r3}\n", file);
+ fputs ("\tldr\tr3, ", file);
+ }
+ else
+ {
+ fputs ("\tldr\tr12, ", file);
+ }
assemble_name (file, label);
fputc ('\n', file);
if (flag_pic)
@@ -17658,29 +17675,63 @@ arm_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
Note that we have "+ 1" because some versions of GNU ld
don't set the low bit of the result for R_ARM_REL32
- relocations against thumb function symbols. */
+ relocations against thumb function symbols.
+ On ARMv6M this is +4, not +8. */
ASM_GENERATE_INTERNAL_LABEL (labelpc, "LTHUNKPC", labelno);
assemble_name (file, labelpc);
fputs (":\n", file);
- fputs ("\tadd\tr12, pc, r12\n", file);
+ if (TARGET_THUMB1_ONLY)
+ {
+ /* This is 2 insns after the start of the thunk, so we know it
+ is 4-byte aligned. */
+ fputs ("\tadd\tr3, pc, r3\n", file);
+ fputs ("\tmov r12, r3\n", file);
+ }
+ else
+ fputs ("\tadd\tr12, pc, r12\n", file);
}
+ else if (TARGET_THUMB1_ONLY)
+ fputs ("\tmov r12, r3\n", file);
}
- /* TODO: Use movw/movt for large constants when available. */
- while (mi_delta != 0)
+ if (TARGET_THUMB1_ONLY)
{
- if ((mi_delta & (3 << shift)) == 0)
- shift += 2;
- else
- {
- asm_fprintf (file, "\t%s\t%r, %r, #%d\n",
- mi_op, this_regno, this_regno,
- mi_delta & (0xff << shift));
- mi_delta &= ~(0xff << shift);
- shift += 8;
- }
+ if (mi_delta > 255)
+ {
+ fputs ("\tldr\tr3, ", file);
+ assemble_name (file, label);
+ fputs ("+4\n", file);
+ asm_fprintf (file, "\t%s\t%r, %r, r3\n",
+ mi_op, this_regno, this_regno);
+ }
+ else if (mi_delta != 0)
+ {
+ asm_fprintf (file, "\t%s\t%r, %r, #%d\n",
+ mi_op, this_regno, this_regno,
+ mi_delta);
+ }
+ }
+ else
+ {
+ /* TODO: Use movw/movt for large constants when available. */
+ while (mi_delta != 0)
+ {
+ if ((mi_delta & (3 << shift)) == 0)
+ shift += 2;
+ else
+ {
+ asm_fprintf (file, "\t%s\t%r, %r, #%d\n",
+ mi_op, this_regno, this_regno,
+ mi_delta & (0xff << shift));
+ mi_delta &= ~(0xff << shift);
+ shift += 8;
+ }
+ }
}
if (TARGET_THUMB1)
{
+ if (TARGET_THUMB1_ONLY)
+ fputs ("\tpop\t{r3}\n", file);
+
fprintf (file, "\tbx\tr12\n");
ASM_OUTPUT_ALIGN (file, 2);
assemble_name (file, label);
@@ -17699,6 +17750,9 @@ arm_output_mi_thunk (FILE *file, tree thunk ATTRIBUTE_UNUSED,
else
/* Output ".word .LTHUNKn". */
assemble_integer (XEXP (DECL_RTL (function), 0), 4, BITS_PER_WORD, 1);
+
+ if (TARGET_THUMB1_ONLY && mi_delta > 255)
+ assemble_integer (GEN_INT(mi_delta), 4, BITS_PER_WORD, 1);
}
else
{
@@ -18660,6 +18714,22 @@ thumb2_output_casesi (rtx *operands)
}
}
+/* Most ARM cores are single issue, but some newer ones can dual issue.
+ The scheduler descriptions rely on this being correct. */
+static int
+arm_issue_rate (void)
+{
+ switch (arm_tune)
+ {
+ case cortexr4:
+ case cortexa8:
+ return 2;
+
+ default:
+ return 1;
+ }
+}
+
/* A table and a function to perform ARM-specific name mangling for
NEON vector types in order to conform to the AAPCS (see "Procedure
Call Standard for the ARM Architecture", Appendix A). To qualify
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
index fcb90ab3ca6..d93476ba77c 100644
--- a/gcc/config/arm/arm.h
+++ b/gcc/config/arm/arm.h
@@ -1,6 +1,7 @@
/* Definitions of target machine for GNU compiler, for ARM.
Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+ Free Software Foundation, Inc.
Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
and Martin Simmons (@harleqn.co.uk).
More major hacks by Richard Earnshaw (rearnsha@arm.com)
@@ -207,6 +208,8 @@ extern void (*arm_lang_output_object_attributes_hook)(void);
#define TARGET_32BIT (TARGET_ARM || arm_arch_thumb2)
/* 32-bit Thumb-2 code. */
#define TARGET_THUMB2 (TARGET_THUMB && arm_arch_thumb2)
+/* Thumb-1 only. */
+#define TARGET_THUMB1_ONLY (TARGET_THUMB1 && !arm_arch_notm)
/* The following two macros concern the ability to execute coprocessor
instructions for VFPv3 or NEON. TARGET_VFP3 is currently only ever
@@ -2397,7 +2400,8 @@ extern int making_const_table;
if (TARGET_THUMB) \
{ \
if (is_called_in_ARM_mode (DECL) \
- || (TARGET_THUMB1 && current_function_is_thunk)) \
+ || (TARGET_THUMB1 && !TARGET_THUMB1_ONLY \
+ && current_function_is_thunk)) \
fprintf (STREAM, "\t.code 32\n") ; \
else if (TARGET_THUMB1) \
fprintf (STREAM, "\t.code\t16\n\t.thumb_func\n") ; \
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md
index 765b89bb84c..5b40449cee1 100644
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
@@ -1,6 +1,7 @@
;;- Machine description for ARM for GNU compiler
;; Copyright 1991, 1993, 1994, 1995, 1996, 1996, 1997, 1998, 1999, 2000,
-;; 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+;; 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+;; Free Software Foundation, Inc.
;; Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
;; and Martin Simmons (@harleqn.co.uk).
;; More major hacks by Richard Earnshaw (rearnsha@arm.com).
@@ -93,9 +94,9 @@
(UNSPEC_TLS 20) ; A symbol that has been treated properly for TLS usage.
(UNSPEC_PIC_LABEL 21) ; A label used for PIC access that does not appear in the
; instruction stream.
- (UNSPEC_STACK_ALIGN 20) ; Doubleword aligned stack pointer. Used to
+ (UNSPEC_STACK_ALIGN 22) ; Doubleword aligned stack pointer. Used to
; generate correct unwind information.
- (UNSPEC_PIC_OFFSET 22) ; A symbolic 12-bit OFFSET that has been treated
+ (UNSPEC_PIC_OFFSET 23) ; A symbolic 12-bit OFFSET that has been treated
; correctly for PIC usage.
]
)
@@ -183,7 +184,7 @@
;; scheduling information.
(define_attr "insn"
- "mov,mvn,smulxy,smlaxy,smlalxy,smulwy,smlawx,mul,muls,mla,mlas,umull,umulls,umlal,umlals,smull,smulls,smlal,smlals,smlawy,smuad,smuadx,smlad,smladx,smusd,smusdx,smlsd,smlsdx,smmul,smmulr,smmla,umaal,smlald,smlsld,clz,mrs,msr,xtab,other"
+ "mov,mvn,smulxy,smlaxy,smlalxy,smulwy,smlawx,mul,muls,mla,mlas,umull,umulls,umlal,umlals,smull,smulls,smlal,smlals,smlawy,smuad,smuadx,smlad,smladx,smusd,smusdx,smlsd,smlsdx,smmul,smmulr,smmla,umaal,smlald,smlsld,clz,mrs,msr,xtab,sdiv,udiv,other"
(const_string "other"))
; TYPE attribute is used to detect floating point instructions which, if
@@ -332,7 +333,7 @@
(define_attr "generic_sched" "yes,no"
(const (if_then_else
- (eq_attr "tune" "arm926ejs,arm1020e,arm1026ejs,arm1136js,arm1136jfs,cortexa8")
+ (eq_attr "tune" "arm926ejs,arm1020e,arm1026ejs,arm1136js,arm1136jfs,cortexa8,cortexr4")
(const_string "no")
(const_string "yes"))))
@@ -349,6 +350,7 @@
(include "arm1026ejs.md")
(include "arm1136jfs.md")
(include "cortex-a8.md")
+(include "cortex-r4.md")
;;---------------------------------------------------------------------------
diff --git a/gcc/config/arm/bpabi-v6m.S b/gcc/config/arm/bpabi-v6m.S
new file mode 100644
index 00000000000..fa3b9c41478
--- /dev/null
+++ b/gcc/config/arm/bpabi-v6m.S
@@ -0,0 +1,280 @@
+/* Miscellaneous BPABI functions. ARMv6M implementation
+
+ Copyright (C) 2006, 2008 Free Software Foundation, Inc.
+ Contributed by CodeSourcery.
+
+ This file is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ In addition to the permissions in the GNU General Public License, the
+ Free Software Foundation gives you unlimited permission to link the
+ compiled version of this file into combinations with other programs,
+ and to distribute those combinations without any restriction coming
+ from the use of this file. (The General Public License restrictions
+ do apply in other respects; for example, they cover modification of
+ the file, and distribution when not linked into a combine
+ executable.)
+
+ This file is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; see the file COPYING. If not, write to
+ the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA. */
+
+#ifdef __ARMEB__
+#define xxh r0
+#define xxl r1
+#define yyh r2
+#define yyl r3
+#else
+#define xxh r1
+#define xxl r0
+#define yyh r3
+#define yyl r2
+#endif
+
+#ifdef L_aeabi_lcmp
+
+FUNC_START aeabi_lcmp
+ cmp xxh, yyh
+ beq 1f
+ bgt 2f
+ mov r0, #1
+ neg r0, r0
+ RET
+2:
+ mov r0, #1
+ RET
+1:
+ sub r0, xxl, yyl
+ beq 1f
+ bhi 2f
+ mov r0, #1
+ neg r0, r0
+ RET
+2:
+ mov r0, #1
+1:
+ RET
+ FUNC_END aeabi_lcmp
+
+#endif /* L_aeabi_lcmp */
+
+#ifdef L_aeabi_ulcmp
+
+FUNC_START aeabi_ulcmp
+ cmp xxh, yyh
+ bne 1f
+ sub r0, xxl, yyl
+ beq 2f
+1:
+ bcs 1f
+ mov r0, #1
+ neg r0, r0
+ RET
+1:
+ mov r0, #1
+2:
+ RET
+ FUNC_END aeabi_ulcmp
+
+#endif /* L_aeabi_ulcmp */
+
+#ifdef L_aeabi_ldivmod
+
+FUNC_START aeabi_ldivmod
+ push {r0, r1}
+ mov r0, sp
+ push {r0, lr}
+ ldr r0, [sp, #8]
+ bl SYM(__gnu_ldivmod_helper)
+ ldr r3, [sp, #4]
+ mov lr, r3
+ add sp, sp, #8
+ pop {r2, r3}
+ RET
+ FUNC_END aeabi_ldivmod
+
+#endif /* L_aeabi_ldivmod */
+
+#ifdef L_aeabi_uldivmod
+
+FUNC_START aeabi_uldivmod
+ push {r0, r1}
+ mov r0, sp
+ push {r0, lr}
+ ldr r0, [sp, #8]
+ bl SYM(__gnu_uldivmod_helper)
+ ldr r3, [sp, #4]
+ mov lr, r3
+ add sp, sp, #8
+ pop {r2, r3}
+ RET
+ FUNC_END aeabi_uldivmod
+
+#endif /* L_aeabi_uldivmod */
+
+#ifdef L_arm_addsubsf3
+
+FUNC_START aeabi_frsub
+
+ push {r4, lr}
+ mov r4, #1
+ lsl r4, #31
+ eor r0, r0, r4
+ bl __aeabi_fadd
+ pop {r4, pc}
+
+ FUNC_END aeabi_frsub
+
+#endif /* L_arm_addsubsf3 */
+
+#ifdef L_arm_cmpsf2
+
+FUNC_START aeabi_cfrcmple
+
+ mov ip, r0
+ mov r0, r1
+ mov r1, ip
+ b 6f
+
+FUNC_START aeabi_cfcmpeq
+FUNC_ALIAS aeabi_cfcmple aeabi_cfcmpeq
+
+ @ The status-returning routines are required to preserve all
+ @ registers except ip, lr, and cpsr.
+6: push {r0, r1, r2, r3, r4, lr}
+ bl __lesf2
+ @ Set the Z flag correctly, and the C flag unconditionally.
+ cmp r0, #0
+ @ Clear the C flag if the return value was -1, indicating
+ @ that the first operand was smaller than the second.
+ bmi 1f
+ mov r1, #0
+ cmn r0, r1
+1:
+ pop {r0, r1, r2, r3, r4, pc}
+
+ FUNC_END aeabi_cfcmple
+ FUNC_END aeabi_cfcmpeq
+ FUNC_END aeabi_cfrcmple
+
+FUNC_START aeabi_fcmpeq
+
+ push {r4, lr}
+ bl __eqsf2
+ neg r0, r0
+ add r0, r0, #1
+ pop {r4, pc}
+
+ FUNC_END aeabi_fcmpeq
+
+.macro COMPARISON cond, helper, mode=sf2
+FUNC_START aeabi_fcmp\cond
+
+ push {r4, lr}
+ bl __\helper\mode
+ cmp r0, #0
+ b\cond 1f
+ mov r0, #0
+ pop {r4, pc}
+1:
+ mov r0, #1
+ pop {r4, pc}
+
+ FUNC_END aeabi_fcmp\cond
+.endm
+
+COMPARISON lt, le
+COMPARISON le, le
+COMPARISON gt, ge
+COMPARISON ge, ge
+
+#endif /* L_arm_cmpsf2 */
+
+#ifdef L_arm_addsubdf3
+
+FUNC_START aeabi_drsub
+
+ push {r4, lr}
+ mov r4, #1
+ lsl r4, #31
+ eor xxh, xxh, r4
+ bl __aeabi_dadd
+ pop {r4, pc}
+
+ FUNC_END aeabi_drsub
+
+#endif /* L_arm_addsubdf3 */
+
+#ifdef L_arm_cmpdf2
+
+FUNC_START aeabi_cdrcmple
+
+ mov ip, r0
+ mov r0, r2
+ mov r2, ip
+ mov ip, r1
+ mov r1, r3
+ mov r3, ip
+ b 6f
+
+FUNC_START aeabi_cdcmpeq
+FUNC_ALIAS aeabi_cdcmple aeabi_cdcmpeq
+
+ @ The status-returning routines are required to preserve all
+ @ registers except ip, lr, and cpsr.
+6: push {r0, r1, r2, r3, r4, lr}
+ bl __ledf2
+ @ Set the Z flag correctly, and the C flag unconditionally.
+ cmp r0, #0
+ @ Clear the C flag if the return value was -1, indicating
+ @ that the first operand was smaller than the second.
+ bmi 1f
+ mov r1, #0
+ cmn r0, r1
+1:
+ pop {r0, r1, r2, r3, r4, pc}
+
+ FUNC_END aeabi_cdcmple
+ FUNC_END aeabi_cdcmpeq
+ FUNC_END aeabi_cdrcmple
+
+FUNC_START aeabi_dcmpeq
+
+ push {r4, lr}
+ bl __eqdf2
+ neg r0, r0
+ add r0, r0, #1
+ pop {r4, pc}
+
+ FUNC_END aeabi_dcmpeq
+
+.macro COMPARISON cond, helper, mode=df2
+FUNC_START aeabi_dcmp\cond
+
+ push {r4, lr}
+ bl __\helper\mode
+ cmp r0, #0
+ b\cond 1f
+ mov r0, #0
+ pop {r4, pc}
+1:
+ mov r0, #1
+ pop {r4, pc}
+
+ FUNC_END aeabi_dcmp\cond
+.endm
+
+COMPARISON lt, le
+COMPARISON le, le
+COMPARISON gt, ge
+COMPARISON ge, ge
+
+#endif /* L_arm_cmpdf2 */
diff --git a/gcc/config/arm/bpabi.h b/gcc/config/arm/bpabi.h
index a67f6498cdd..0f3b24faaf3 100644
--- a/gcc/config/arm/bpabi.h
+++ b/gcc/config/arm/bpabi.h
@@ -1,5 +1,5 @@
/* Configuration file for ARM BPABI targets.
- Copyright (C) 2004, 2005, 2007
+ Copyright (C) 2004, 2005, 2007, 2008
Free Software Foundation, Inc.
Contributed by CodeSourcery, LLC
@@ -99,6 +99,21 @@
#define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (floatdisf, l2f)
#endif
+/* These renames are needed on ARMv6M. Other targets get them from
+ assembly routines. */
+#ifdef L_fixunsdfsi
+#define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixunsdfsi, d2uiz)
+#endif
+#ifdef L_fixunssfsi
+#define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (fixunssfsi, f2uiz)
+#endif
+#ifdef L_floatundidf
+#define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (floatundidf, ul2d)
+#endif
+#ifdef L_floatundisf
+#define DECLARE_LIBRARY_RENAMES RENAME_LIBRARY (floatundisf, ul2f)
+#endif
+
/* The BPABI requires that we always use an out-of-line implementation
of RTTI comparison, even if the target supports weak symbols,
because the same object file might be used on a target that does
diff --git a/gcc/config/arm/cortex-r4.md b/gcc/config/arm/cortex-r4.md
new file mode 100644
index 00000000000..d912f205994
--- /dev/null
+++ b/gcc/config/arm/cortex-r4.md
@@ -0,0 +1,288 @@
+;; ARM Cortex-R4 scheduling description.
+;; Copyright (C) 2007, 2008 Free Software Foundation, Inc.
+;; Contributed by CodeSourcery.
+
+;; This file is part of GCC.
+
+;; GCC is distributed in the hope that it will be useful, but WITHOUT
+;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
+;; License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GCC; see the file COPYING. If not, write to
+;; the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+(define_automaton "cortex_r4")
+
+;; We approximate the dual-issue constraints of this core using four
+;; "issue units" and a reservation matrix as follows. The numbers indicate
+;; the instruction groups' preferences in order. Multiple entries for
+;; the same numbered preference indicate units that must be reserved
+;; together.
+;;
+;; Issue unit: A B C ALU
+;;
+;; ALU w/o reg shift 1st 2nd 1st and 2nd
+;; ALU w/ reg shift 1st 2nd 2nd 1st and 2nd
+;; Moves 1st 2nd 2nd
+;; Multiplication 1st 1st
+;; Division 1st 1st
+;; Load/store single 1st 1st
+;; Other load/store 1st 1st
+;; Branches 1st
+
+(define_cpu_unit "cortex_r4_issue_a" "cortex_r4")
+(define_cpu_unit "cortex_r4_issue_b" "cortex_r4")
+(define_cpu_unit "cortex_r4_issue_c" "cortex_r4")
+(define_cpu_unit "cortex_r4_issue_alu" "cortex_r4")
+
+(define_reservation "cortex_r4_alu"
+ "(cortex_r4_issue_a+cortex_r4_issue_alu)|\
+ (cortex_r4_issue_b+cortex_r4_issue_alu)")
+(define_reservation "cortex_r4_alu_shift_reg"
+ "(cortex_r4_issue_a+cortex_r4_issue_alu)|\
+ (cortex_r4_issue_b+cortex_r4_issue_c+\
+ cortex_r4_issue_alu)")
+(define_reservation "cortex_r4_mov"
+ "cortex_r4_issue_a|(cortex_r4_issue_b+\
+ cortex_r4_issue_alu)")
+(define_reservation "cortex_r4_mul" "cortex_r4_issue_a+cortex_r4_issue_alu")
+(define_reservation "cortex_r4_mul_2"
+ "(cortex_r4_issue_a+cortex_r4_issue_alu)*2")
+;; Division instructions execute out-of-order with respect to the
+;; rest of the pipeline and only require reservations on their first and
+;; final cycles.
+(define_reservation "cortex_r4_div_9"
+ "cortex_r4_issue_a+cortex_r4_issue_alu,\
+ nothing*7,\
+ cortex_r4_issue_a+cortex_r4_issue_alu")
+(define_reservation "cortex_r4_div_10"
+ "cortex_r4_issue_a+cortex_r4_issue_alu,\
+ nothing*8,\
+ cortex_r4_issue_a+cortex_r4_issue_alu")
+(define_reservation "cortex_r4_load_store"
+ "cortex_r4_issue_a+cortex_r4_issue_c")
+(define_reservation "cortex_r4_load_store_2"
+ "(cortex_r4_issue_a+cortex_r4_issue_b)*2")
+(define_reservation "cortex_r4_branch" "cortex_r4_issue_b")
+
+;; We assume that all instructions are unconditional.
+
+;; Data processing instructions. Moves without shifts are kept separate
+;; for the purposes of the dual-issue constraints above.
+(define_insn_reservation "cortex_r4_alu" 2
+ (and (eq_attr "tune" "cortexr4")
+ (and (eq_attr "type" "alu")
+ (not (eq_attr "insn" "mov"))))
+ "cortex_r4_alu")
+
+(define_insn_reservation "cortex_r4_mov" 2
+ (and (eq_attr "tune" "cortexr4")
+ (and (eq_attr "type" "alu")
+ (eq_attr "insn" "mov")))
+ "cortex_r4_mov")
+
+(define_insn_reservation "cortex_r4_alu_shift" 2
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "type" "alu_shift"))
+ "cortex_r4_alu")
+
+(define_insn_reservation "cortex_r4_alu_shift_reg" 2
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "type" "alu_shift_reg"))
+ "cortex_r4_alu_shift_reg")
+
+;; An ALU instruction followed by an ALU instruction with no early dep.
+(define_bypass 1 "cortex_r4_alu,cortex_r4_alu_shift,cortex_r4_alu_shift_reg,\
+ cortex_r4_mov"
+ "cortex_r4_alu")
+(define_bypass 1 "cortex_r4_alu,cortex_r4_alu_shift,cortex_r4_alu_shift_reg,\
+ cortex_r4_mov"
+ "cortex_r4_alu_shift"
+ "arm_no_early_alu_shift_dep")
+(define_bypass 1 "cortex_r4_alu,cortex_r4_alu_shift,cortex_r4_alu_shift_reg,\
+ cortex_r4_mov"
+ "cortex_r4_alu_shift_reg"
+ "arm_no_early_alu_shift_value_dep")
+
+;; In terms of availabilities, a consumer mov could theoretically be
+;; issued together with a producer ALU instruction, without stalls.
+;; In practice this cannot happen because mov;add (in that order) is not
+;; eligible for dual issue and furthermore dual issue is not permitted
+;; when a dependency is involved. We therefore note it as latency one.
+;; A mov followed by another of the same is also latency one.
+(define_bypass 1 "cortex_r4_alu,cortex_r4_alu_shift,cortex_r4_alu_shift_reg,\
+ cortex_r4_mov"
+ "cortex_r4_mov")
+
+;; qadd, qdadd, qsub and qdsub are not currently emitted, and neither are
+;; media data processing instructions nor sad instructions.
+
+;; Multiplication instructions.
+
+(define_insn_reservation "cortex_r4_mul_4" 4
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "insn" "mul,smmul"))
+ "cortex_r4_mul_2")
+
+(define_insn_reservation "cortex_r4_mul_3" 3
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "insn" "smulxy,smulwy,smuad,smusd"))
+ "cortex_r4_mul")
+
+(define_insn_reservation "cortex_r4_mla_4" 4
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "insn" "mla,smmla"))
+ "cortex_r4_mul_2")
+
+(define_insn_reservation "cortex_r4_mla_3" 3
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "insn" "smlaxy,smlawy,smlad,smlsd"))
+ "cortex_r4_mul")
+
+(define_insn_reservation "cortex_r4_smlald" 3
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "insn" "smlald,smlsld"))
+ "cortex_r4_mul")
+
+(define_insn_reservation "cortex_r4_mull" 4
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "insn" "smull,umull,umlal,umaal"))
+ "cortex_r4_mul_2")
+
+;; A multiply or an MLA with a single-register result, followed by an
+;; MLA with an accumulator dependency, has its result forwarded.
+(define_bypass 2 "cortex_r4_mul_3,cortex_r4_mla_3"
+ "cortex_r4_mla_3,cortex_r4_mla_4"
+ "arm_mac_accumulator_is_mul_result")
+
+(define_bypass 3 "cortex_r4_mul_4,cortex_r4_mla_4"
+ "cortex_r4_mla_3,cortex_r4_mla_4"
+ "arm_mac_accumulator_is_mul_result")
+
+;; A multiply followed by an ALU instruction needing the multiply
+;; result only at ALU has lower latency than one needing it at Shift.
+(define_bypass 2 "cortex_r4_mul_3,cortex_r4_mla_3,cortex_r4_smlald"
+ "cortex_r4_alu")
+(define_bypass 2 "cortex_r4_mul_3,cortex_r4_mla_3,cortex_r4_smlald"
+ "cortex_r4_alu_shift"
+ "arm_no_early_alu_shift_dep")
+(define_bypass 2 "cortex_r4_mul_3,cortex_r4_mla_3,cortex_r4_smlald"
+ "cortex_r4_alu_shift_reg"
+ "arm_no_early_alu_shift_value_dep")
+(define_bypass 3 "cortex_r4_mul_4,cortex_r4_mla_4,cortex_r4_mull"
+ "cortex_r4_alu")
+(define_bypass 3 "cortex_r4_mul_4,cortex_r4_mla_4,cortex_r4_mull"
+ "cortex_r4_alu_shift"
+ "arm_no_early_alu_shift_dep")
+(define_bypass 3 "cortex_r4_mul_4,cortex_r4_mla_4,cortex_r4_mull"
+ "cortex_r4_alu_shift_reg"
+ "arm_no_early_alu_shift_value_dep")
+
+;; A multiply followed by a mov has one cycle lower latency again.
+(define_bypass 1 "cortex_r4_mul_3,cortex_r4_mla_3,cortex_r4_smlald"
+ "cortex_r4_mov")
+(define_bypass 2 "cortex_r4_mul_4,cortex_r4_mla_4,cortex_r4_mull"
+ "cortex_r4_mov")
+
+;; We guess that division of A/B using sdiv or udiv, on average,
+;; is performed with B having ten more leading zeros than A.
+;; This gives a latency of nine for udiv and ten for sdiv.
+(define_insn_reservation "cortex_r4_udiv" 9
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "insn" "udiv"))
+ "cortex_r4_div_9")
+
+(define_insn_reservation "cortex_r4_sdiv" 10
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "insn" "sdiv"))
+ "cortex_r4_div_10")
+
+;; Branches. We assume correct prediction.
+
+(define_insn_reservation "cortex_r4_branch" 0
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "type" "branch"))
+ "cortex_r4_branch")
+
+;; Call latencies are not predictable. A semi-arbitrary very large
+;; number is used as "positive infinity" so that everything should be
+;; finished by the time of return.
+(define_insn_reservation "cortex_r4_call" 32
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "type" "call"))
+ "nothing")
+
+;; Status register access instructions are not currently emitted.
+
+;; Load instructions.
+;; We do not model the "addr_md_3cycle" cases and assume that
+;; accesses following are correctly aligned.
+
+(define_insn_reservation "cortex_r4_load_1_2" 3
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "type" "load1,load2"))
+ "cortex_r4_load_store")
+
+(define_insn_reservation "cortex_r4_load_3_4" 4
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "type" "load3,load4"))
+ "cortex_r4_load_store_2")
+
+;; If a producing load is followed by an instruction consuming only
+;; as a Normal Reg, there is one fewer cycle of latency.
+
+(define_bypass 2 "cortex_r4_load_1_2"
+ "cortex_r4_alu")
+(define_bypass 2 "cortex_r4_load_1_2"
+ "cortex_r4_alu_shift"
+ "arm_no_early_alu_shift_dep")
+(define_bypass 2 "cortex_r4_load_1_2"
+ "cortex_r4_alu_shift_reg"
+ "arm_no_early_alu_shift_value_dep")
+
+(define_bypass 3 "cortex_r4_load_3_4"
+ "cortex_r4_alu")
+(define_bypass 3 "cortex_r4_load_3_4"
+ "cortex_r4_alu_shift"
+ "arm_no_early_alu_shift_dep")
+(define_bypass 3 "cortex_r4_load_3_4"
+ "cortex_r4_alu_shift_reg"
+ "arm_no_early_alu_shift_value_dep")
+
+;; If a producing load is followed by an instruction consuming only
+;; as a Late Reg, there are two fewer cycles of latency. Such consumer
+;; instructions are moves and stores.
+
+(define_bypass 1 "cortex_r4_load_1_2"
+ "cortex_r4_mov,cortex_r4_store_1_2,cortex_r4_store_3_4")
+(define_bypass 2 "cortex_r4_load_3_4"
+ "cortex_r4_mov,cortex_r4_store_1_2,cortex_r4_store_3_4")
+
+;; If a producer's result is required as the base or offset of a load,
+;; there is an extra cycle latency.
+
+(define_bypass 3 "cortex_r4_alu,cortex_r4_mov,cortex_r4_alu_shift,\
+ cortex_r4_alu_shift_reg"
+ "cortex_r4_load_1_2,cortex_r4_load_3_4")
+
+(define_bypass 4 "cortex_r4_mul_3,cortex_r4_mla_3,cortex_r4_smlald"
+ "cortex_r4_load_1_2,cortex_r4_load_3_4")
+
+(define_bypass 5 "cortex_r4_mul_4,cortex_r4_mla_4,cortex_r4_mull"
+ "cortex_r4_load_1_2,cortex_r4_load_3_4")
+
+;; Store instructions.
+
+(define_insn_reservation "cortex_r4_store_1_2" 0
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "type" "store1,store2"))
+ "cortex_r4_load_store")
+
+(define_insn_reservation "cortex_r4_store_3_4" 0
+ (and (eq_attr "tune" "cortexr4")
+ (eq_attr "type" "store3,store4"))
+ "cortex_r4_load_store_2")
+
diff --git a/gcc/config/arm/elf.h b/gcc/config/arm/elf.h
index 65bd00fdc3c..37c366d5ac8 100644
--- a/gcc/config/arm/elf.h
+++ b/gcc/config/arm/elf.h
@@ -1,7 +1,7 @@
/* Definitions of target machine for GNU compiler.
For ARM with ELF obj format.
- Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2004, 2005, 2007
- Free Software Foundation, Inc.
+ Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2004, 2005, 2007,
+ 2008 Free Software Foundation, Inc.
Contributed by Philip Blundell <philb@gnu.org> and
Catherine Moore <clm@cygnus.com>
@@ -145,3 +145,17 @@
} \
while (0)
+/* Horrible hack: We want to prevent some libgcc routines being included
+ for some multilibs. */
+#ifndef __ARM_ARCH_6M__
+#undef L_fixdfsi
+#undef L_fixunsdfsi
+#undef L_truncdfsf2
+#undef L_fixsfsi
+#undef L_fixunssfsi
+#undef L_floatdidf
+#undef L_floatdisf
+#undef L_floatundidf
+#undef L_floatundisf
+#endif
+
diff --git a/gcc/config/arm/ieee754-df.S b/gcc/config/arm/ieee754-df.S
index ebf7e58dabb..a175fa6bb74 100644
--- a/gcc/config/arm/ieee754-df.S
+++ b/gcc/config/arm/ieee754-df.S
@@ -1,6 +1,6 @@
/* ieee754-df.S double-precision floating point support for ARM
- Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
Contributed by Nicolas Pitre (nico@cam.org)
This file is free software; you can redistribute it and/or modify it
@@ -56,7 +56,7 @@
#endif
-#ifdef L_negdf2
+#ifdef L_arm_negdf2
ARM_FUNC_START negdf2
ARM_FUNC_ALIAS aeabi_dneg negdf2
@@ -70,7 +70,7 @@ ARM_FUNC_ALIAS aeabi_dneg negdf2
#endif
-#ifdef L_addsubdf3
+#ifdef L_arm_addsubdf3
ARM_FUNC_START aeabi_drsub
@@ -603,7 +603,7 @@ LSYM(f0_ret):
#endif /* L_addsubdf3 */
-#ifdef L_muldivdf3
+#ifdef L_arm_muldivdf3
ARM_FUNC_START muldf3
ARM_FUNC_ALIAS aeabi_dmul muldf3
@@ -1103,7 +1103,7 @@ LSYM(Ldv_s):
#endif /* L_muldivdf3 */
-#ifdef L_cmpdf2
+#ifdef L_arm_cmpdf2
@ Note: only r0 (return value) and ip are clobbered here.
@@ -1271,7 +1271,7 @@ ARM_FUNC_START aeabi_dcmpgt
#endif /* L_cmpdf2 */
-#ifdef L_unorddf2
+#ifdef L_arm_unorddf2
ARM_FUNC_START unorddf2
ARM_FUNC_ALIAS aeabi_dcmpun unorddf2
@@ -1297,7 +1297,7 @@ ARM_FUNC_ALIAS aeabi_dcmpun unorddf2
#endif /* L_unorddf2 */
-#ifdef L_fixdfsi
+#ifdef L_arm_fixdfsi
ARM_FUNC_START fixdfsi
ARM_FUNC_ALIAS aeabi_d2iz fixdfsi
@@ -1339,7 +1339,7 @@ ARM_FUNC_ALIAS aeabi_d2iz fixdfsi
#endif /* L_fixdfsi */
-#ifdef L_fixunsdfsi
+#ifdef L_arm_fixunsdfsi
ARM_FUNC_START fixunsdfsi
ARM_FUNC_ALIAS aeabi_d2uiz fixunsdfsi
@@ -1377,7 +1377,7 @@ ARM_FUNC_ALIAS aeabi_d2uiz fixunsdfsi
#endif /* L_fixunsdfsi */
-#ifdef L_truncdfsf2
+#ifdef L_arm_truncdfsf2
ARM_FUNC_START truncdfsf2
ARM_FUNC_ALIAS aeabi_d2f truncdfsf2
diff --git a/gcc/config/arm/ieee754-sf.S b/gcc/config/arm/ieee754-sf.S
index 405487a3855..2da156cd44d 100644
--- a/gcc/config/arm/ieee754-sf.S
+++ b/gcc/config/arm/ieee754-sf.S
@@ -1,6 +1,6 @@
/* ieee754-sf.S single-precision floating point support for ARM
- Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
Contributed by Nicolas Pitre (nico@cam.org)
This file is free software; you can redistribute it and/or modify it
@@ -38,7 +38,7 @@
* if necessary without impacting performances.
*/
-#ifdef L_negsf2
+#ifdef L_arm_negsf2
ARM_FUNC_START negsf2
ARM_FUNC_ALIAS aeabi_fneg negsf2
@@ -51,7 +51,7 @@ ARM_FUNC_ALIAS aeabi_fneg negsf2
#endif
-#ifdef L_addsubsf3
+#ifdef L_arm_addsubsf3
ARM_FUNC_START aeabi_frsub
@@ -448,7 +448,7 @@ LSYM(f0_ret):
#endif /* L_addsubsf3 */
-#ifdef L_muldivsf3
+#ifdef L_arm_muldivsf3
ARM_FUNC_START mulsf3
ARM_FUNC_ALIAS aeabi_fmul mulsf3
@@ -795,7 +795,7 @@ LSYM(Ldv_s):
#endif /* L_muldivsf3 */
-#ifdef L_cmpsf2
+#ifdef L_arm_cmpsf2
@ The return value in r0 is
@
@@ -958,7 +958,7 @@ ARM_FUNC_START aeabi_fcmpgt
#endif /* L_cmpsf2 */
-#ifdef L_unordsf2
+#ifdef L_arm_unordsf2
ARM_FUNC_START unordsf2
ARM_FUNC_ALIAS aeabi_fcmpun unordsf2
@@ -983,7 +983,7 @@ ARM_FUNC_ALIAS aeabi_fcmpun unordsf2
#endif /* L_unordsf2 */
-#ifdef L_fixsfsi
+#ifdef L_arm_fixsfsi
ARM_FUNC_START fixsfsi
ARM_FUNC_ALIAS aeabi_f2iz fixsfsi
@@ -1025,7 +1025,7 @@ ARM_FUNC_ALIAS aeabi_f2iz fixsfsi
#endif /* L_fixsfsi */
-#ifdef L_fixunssfsi
+#ifdef L_arm_fixunssfsi
ARM_FUNC_START fixunssfsi
ARM_FUNC_ALIAS aeabi_f2uiz fixunssfsi
diff --git a/gcc/config/arm/lib1funcs.asm b/gcc/config/arm/lib1funcs.asm
index 0c6e440e598..2fc66be80d5 100644
--- a/gcc/config/arm/lib1funcs.asm
+++ b/gcc/config/arm/lib1funcs.asm
@@ -1,7 +1,7 @@
@ libgcc routines for ARM cpu.
@ Division routines, written by Richard Earnshaw, (rearnsha@armltd.co.uk)
-/* Copyright 1995, 1996, 1998, 1999, 2000, 2003, 2004, 2005, 2007
+/* Copyright 1995, 1996, 1998, 1999, 2000, 2003, 2004, 2005, 2007, 2008
Free Software Foundation, Inc.
This file is free software; you can redistribute it and/or modify it
@@ -94,7 +94,8 @@ Boston, MA 02110-1301, USA. */
#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \
|| defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) \
- || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__)
+ || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) \
+ || defined(__ARM_ARCH_6M__)
# define __ARM_ARCH__ 6
#endif
@@ -367,6 +368,9 @@ _L__\name:
#else /* !(__INTERWORKING_STUBS__ || __thumb2__) */
+#ifdef __ARM_ARCH_6M__
+#define EQUIV .thumb_set
+#else
.macro ARM_FUNC_START name
.text
.globl SYM (__\name)
@@ -379,6 +383,7 @@ SYM (__\name):
.macro ARM_CALL name
bl __\name
.endm
+#endif
#endif
@@ -391,6 +396,7 @@ SYM (__\name):
#endif
.endm
+#ifndef __ARM_ARCH_6M__
.macro ARM_FUNC_ALIAS new old
.globl SYM (__\new)
EQUIV SYM (__\new), SYM (__\old)
@@ -398,6 +404,7 @@ SYM (__\name):
.set SYM (_L__\new), SYM (_L__\old)
#endif
.endm
+#endif
#ifdef __thumb__
/* Register aliases. */
@@ -1256,8 +1263,8 @@ LSYM(Lover12):
#endif /* L_call_via_rX */
/* Don't bother with the old interworking routines for Thumb-2. */
-/* ??? Maybe only omit these on v7m. */
-#ifndef __thumb2__
+/* ??? Maybe only omit these on "m" variants. */
+#if !defined(__thumb2__) && !defined(__ARM_ARCH_6M__)
#if defined L_interwork_call_via_rX
@@ -1387,7 +1394,11 @@ LSYM(Lchange_\register):
#endif /* Arch supports thumb. */
#ifndef __symbian__
+#ifndef __ARM_ARCH_6M__
#include "ieee754-df.S"
#include "ieee754-sf.S"
#include "bpabi.S"
-#endif /* __symbian__ */
+#else /* __ARM_ARCH_6M__ */
+#include "bpabi-v6m.S"
+#endif /* __ARM_ARCH_6M__ */
+#endif /* !__symbian__ */
diff --git a/gcc/config/arm/libunwind.S b/gcc/config/arm/libunwind.S
index 0732e9f0af9..dd958548387 100644
--- a/gcc/config/arm/libunwind.S
+++ b/gcc/config/arm/libunwind.S
@@ -1,5 +1,5 @@
/* Support functions for the unwinder.
- Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
Contributed by Paul Brook
This file is free software; you can redistribute it and/or modify it
@@ -53,6 +53,119 @@
#endif
#endif
+#ifdef __ARM_ARCH_6M__
+
+/* r0 points to a 16-word block. Upload these values to the actual core
+ state. */
+FUNC_START restore_core_regs
+ mov r1, r0
+ add r1, r1, #52
+ ldmia r1!, {r3, r4, r5}
+ sub r3, r3, #4
+ mov ip, r3
+ str r5, [r3]
+ mov lr, r4
+ /* Restore r8-r11. */
+ mov r1, r0
+ add r1, r1, #32
+ ldmia r1!, {r2, r3, r4, r5}
+ mov r8, r2
+ mov r9, r3
+ mov sl, r4
+ mov fp, r5
+ mov r1, r0
+ add r1, r1, #8
+ ldmia r1!, {r2, r3, r4, r5, r6, r7}
+ ldr r1, [r0, #4]
+ ldr r0, [r0]
+ mov sp, ip
+ pop {pc}
+ FUNC_END restore_core_regs
+ UNPREFIX restore_core_regs
+
+/* ARMV6M does not have coprocessors, so these should never be used. */
+FUNC_START gnu_Unwind_Restore_VFP
+ RET
+
+/* Store VFR regsters d0-d15 to the address in r0. */
+FUNC_START gnu_Unwind_Save_VFP
+ RET
+
+/* Load VFP registers d0-d15 from the address in r0.
+ Use this to load from FSTMD format. */
+FUNC_START gnu_Unwind_Restore_VFP_D
+ RET
+
+/* Store VFP registers d0-d15 to the address in r0.
+ Use this to store in FLDMD format. */
+FUNC_START gnu_Unwind_Save_VFP_D
+ RET
+
+/* Load VFP registers d16-d31 from the address in r0.
+ Use this to load from FSTMD (=VSTM) format. Needs VFPv3. */
+FUNC_START gnu_Unwind_Restore_VFP_D_16_to_31
+ RET
+
+/* Store VFP registers d16-d31 to the address in r0.
+ Use this to store in FLDMD (=VLDM) format. Needs VFPv3. */
+FUNC_START gnu_Unwind_Save_VFP_D_16_to_31
+ RET
+
+FUNC_START gnu_Unwind_Restore_WMMXD
+ RET
+
+FUNC_START gnu_Unwind_Save_WMMXD
+ RET
+
+FUNC_START gnu_Unwind_Restore_WMMXC
+ RET
+
+FUNC_START gnu_Unwind_Save_WMMXC
+ RET
+
+.macro UNWIND_WRAPPER name nargs
+ FUNC_START \name
+ /* Create a phase2_vrs structure. */
+ /* Save r0 in the PC slot so we can use it as a scratch register. */
+ push {r0}
+ add r0, sp, #4
+ push {r0, lr} /* Push original SP and LR. */
+ /* Make space for r8-r12. */
+ sub sp, sp, #20
+ /* Save low registers. */
+ push {r0, r1, r2, r3, r4, r5, r6, r7}
+ /* Save high registers. */
+ add r0, sp, #32
+ mov r1, r8
+ mov r2, r9
+ mov r3, sl
+ mov r4, fp
+ mov r5, ip
+ stmia r0!, {r1, r2, r3, r4, r5}
+ /* Restore original low register values. */
+ add r0, sp, #4
+ ldmia r0!, {r1, r2, r3, r4, r5}
+ /* Restore orginial r0. */
+ ldr r0, [sp, #60]
+ str r0, [sp]
+ /* Demand-save flags, plus an extra word for alignment. */
+ mov r3, #0
+ push {r2, r3}
+ /* Point r1 at the block. Pass r[0..nargs) unchanged. */
+ add r\nargs, sp, #4
+
+ bl SYM (__gnu\name)
+
+ ldr r3, [sp, #64]
+ add sp, sp, #72
+ bx r3
+
+ FUNC_END \name
+ UNPREFIX \name
+.endm
+
+#else /* !__ARM_ARCH_6M__ */
+
/* r0 points to a 16-word block. Upload these values to the actual core
state. */
ARM_FUNC_START restore_core_regs
@@ -233,6 +346,8 @@ ARM_FUNC_START gnu_Unwind_Save_WMMXC
UNPREFIX \name
.endm
+#endif /* !__ARM_ARCH_6M__ */
+
UNWIND_WRAPPER _Unwind_RaiseException 1
UNWIND_WRAPPER _Unwind_Resume 1
UNWIND_WRAPPER _Unwind_Resume_or_Rethrow 1
diff --git a/gcc/config/arm/sfp-machine.h b/gcc/config/arm/sfp-machine.h
new file mode 100644
index 00000000000..bc75737d73d
--- /dev/null
+++ b/gcc/config/arm/sfp-machine.h
@@ -0,0 +1,96 @@
+#define _FP_W_TYPE_SIZE 32
+#define _FP_W_TYPE unsigned long
+#define _FP_WS_TYPE signed long
+#define _FP_I_TYPE long
+
+#define _FP_MUL_MEAT_S(R,X,Y) \
+ _FP_MUL_MEAT_1_wide(_FP_WFRACBITS_S,R,X,Y,umul_ppmm)
+#define _FP_MUL_MEAT_D(R,X,Y) \
+ _FP_MUL_MEAT_2_wide(_FP_WFRACBITS_D,R,X,Y,umul_ppmm)
+#define _FP_MUL_MEAT_Q(R,X,Y) \
+ _FP_MUL_MEAT_4_wide(_FP_WFRACBITS_Q,R,X,Y,umul_ppmm)
+
+#define _FP_DIV_MEAT_S(R,X,Y) _FP_DIV_MEAT_1_loop(S,R,X,Y)
+#define _FP_DIV_MEAT_D(R,X,Y) _FP_DIV_MEAT_2_udiv(D,R,X,Y)
+#define _FP_DIV_MEAT_Q(R,X,Y) _FP_DIV_MEAT_4_udiv(Q,R,X,Y)
+
+#define _FP_NANFRAC_S ((_FP_QNANBIT_S << 1) - 1)
+#define _FP_NANFRAC_D ((_FP_QNANBIT_D << 1) - 1), -1
+#define _FP_NANFRAC_Q ((_FP_QNANBIT_Q << 1) - 1), -1, -1, -1
+#define _FP_NANSIGN_S 0
+#define _FP_NANSIGN_D 0
+#define _FP_NANSIGN_Q 0
+
+#define _FP_KEEPNANFRACP 1
+
+/* Someone please check this. */
+#define _FP_CHOOSENAN(fs, wc, R, X, Y, OP) \
+ do { \
+ if ((_FP_FRAC_HIGH_RAW_##fs(X) & _FP_QNANBIT_##fs) \
+ && !(_FP_FRAC_HIGH_RAW_##fs(Y) & _FP_QNANBIT_##fs)) \
+ { \
+ R##_s = Y##_s; \
+ _FP_FRAC_COPY_##wc(R,Y); \
+ } \
+ else \
+ { \
+ R##_s = X##_s; \
+ _FP_FRAC_COPY_##wc(R,X); \
+ } \
+ R##_c = FP_CLS_NAN; \
+ } while (0)
+
+#define __LITTLE_ENDIAN 1234
+#define __BIG_ENDIAN 4321
+
+#if defined __ARMEB__
+# define __BYTE_ORDER __BIG_ENDIAN
+#else
+# define __BYTE_ORDER __LITTLE_ENDIAN
+#endif
+
+
+/* Define ALIASNAME as a strong alias for NAME. */
+# define strong_alias(name, aliasname) _strong_alias(name, aliasname)
+# define _strong_alias(name, aliasname) \
+ extern __typeof (name) aliasname __attribute__ ((alias (#name)));
+
+#ifdef __ARM_EABI__
+/* Rename functions to their EABI names. */
+/* The comparison functions need wrappers for EABI semantics, so
+ leave them unmolested. */
+#define __negsf2 __aeabi_fneg
+#define __subsf3 __aeabi_fsub
+#define __addsf3 __aeabi_fadd
+#define __floatunsisf __aeabi_ui2f
+#define __floatsisf __aeabi_i2f
+#define __floatundisf __aeabi_ul2f
+#define __floatdisf __aeabi_l2f
+#define __mulsf3 __aeabi_fmul
+#define __divsf3 __aeabi_fdiv
+#define __unordsf2 __aeabi_fcmpun
+#define __fixsfsi __aeabi_f2iz
+#define __fixunssfsi __aeabi_f2uiz
+#define __fixsfdi __aeabi_f2lz
+#define __fixunssfdi __aeabi_f2ulz
+#define __floatdisf __aeabi_l2f
+
+#define __negdf2 __aeabi_dneg
+#define __subdf3 __aeabi_dsub
+#define __adddf3 __aeabi_dadd
+#define __floatunsidf __aeabi_ui2d
+#define __floatsidf __aeabi_i2d
+#define __extendsfdf2 __aeabi_f2d
+#define __truncdfsf2 __aeabi_d2f
+#define __floatundidf __aeabi_ul2d
+#define __floatdidf __aeabi_l2d
+#define __muldf3 __aeabi_dmul
+#define __divdf3 __aeabi_ddiv
+#define __unorddf2 __aeabi_dcmpun
+#define __fixdfsi __aeabi_d2iz
+#define __fixunsdfsi __aeabi_d2uiz
+#define __fixdfdi __aeabi_d2lz
+#define __fixunsdfdi __aeabi_d2ulz
+#define __floatdidf __aeabi_l2d
+
+#endif /* __ARM_EABI__ */
diff --git a/gcc/config/arm/t-arm-elf b/gcc/config/arm/t-arm-elf
index b423bbb3597..31ba396b433 100644
--- a/gcc/config/arm/t-arm-elf
+++ b/gcc/config/arm/t-arm-elf
@@ -1,10 +1,16 @@
LIB1ASMSRC = arm/lib1funcs.asm
+# For most CPUs we have an assembly soft-float implementations.
+# However this is not true for ARMv6M. Here we want to use the soft-fp C
+# implementation. The soft-fp code is only build for ARMv6M. This pulls
+# in the asm implementation for other CPUs.
LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func \
_call_via_rX _interwork_call_via_rX \
_lshrdi3 _ashrdi3 _ashldi3 \
- _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
- _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
- _fixsfsi _fixunssfsi _floatdidf _floatdisf _floatundidf _floatundisf
+ _arm_negdf2 _arm_addsubdf3 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \
+ _arm_fixdfsi _arm_fixunsdfsi \
+ _arm_truncdfsf2 _arm_negsf2 _arm_addsubsf3 _arm_muldivsf3 \
+ _arm_cmpsf2 _arm_unordsf2 _arm_fixsfsi _arm_fixunssfsi \
+ _arm_floatdidf _arm_floatdisf _arm_floatundidf _arm_floatundisf
MULTILIB_OPTIONS = marm/mthumb
MULTILIB_DIRNAMES = arm thumb
diff --git a/gcc/config/arm/t-arm-softfp b/gcc/config/arm/t-arm-softfp
new file mode 100644
index 00000000000..4a97747b195
--- /dev/null
+++ b/gcc/config/arm/t-arm-softfp
@@ -0,0 +1,11 @@
+softfp_float_modes := sf df
+softfp_int_modes := si di
+softfp_extensions := sfdf
+softfp_truncations := dfsf
+softfp_machine_header := arm/sfp-machine.h
+softfp_exclude_libgcc2 := y
+softfp_wrap_start := '\#ifdef __ARM_ARCH_6M__'
+softfp_wrap_end := '\#endif'
+
+# softfp seems to be missing a whole bunch of prototypes.
+TARGET_LIBGCC2_CFLAGS += -Wno-missing-prototypes
diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md
index 0efe31f0f6d..ba45c88c2cb 100644
--- a/gcc/config/arm/thumb2.md
+++ b/gcc/config/arm/thumb2.md
@@ -1,5 +1,5 @@
;; ARM Thumb-2 Machine Description
-;; Copyright (C) 2007 Free Software Foundation, Inc.
+;; Copyright (C) 2007, 2008 Free Software Foundation, Inc.
;; Written by CodeSourcery, LLC.
;;
;; This file is part of GCC.
@@ -1131,7 +1131,8 @@
(match_operand:SI 2 "s_register_operand" "r")))]
"TARGET_THUMB2 && arm_arch_hwdiv"
"sdiv%?\t%0, %1, %2"
- [(set_attr "predicable" "yes")]
+ [(set_attr "predicable" "yes")
+ (set_attr "insn" "sdiv")]
)
(define_insn "udivsi3"
@@ -1140,7 +1141,8 @@
(match_operand:SI 2 "s_register_operand" "r")))]
"TARGET_THUMB2 && arm_arch_hwdiv"
"udiv%?\t%0, %1, %2"
- [(set_attr "predicable" "yes")]
+ [(set_attr "predicable" "yes")
+ (set_attr "insn" "udiv")]
)
(define_insn "*thumb2_cbz"
diff --git a/gcc/config/i386/gthr-win32.c b/gcc/config/i386/gthr-win32.c
index c87a771ed8f..3810fc0f26c 100644
--- a/gcc/config/i386/gthr-win32.c
+++ b/gcc/config/i386/gthr-win32.c
@@ -151,6 +151,12 @@ __gthr_win32_mutex_init_function (__gthread_mutex_t *mutex)
mutex->sema = CreateSemaphore (NULL, 0, 65535, NULL);
}
+void
+__gthr_win32_mutex_destroy (__gthread_mutex_t *mutex)
+{
+ CloseHandle ((HANDLE) mutex->sema);
+}
+
int
__gthr_win32_mutex_lock (__gthread_mutex_t *mutex)
{
diff --git a/gcc/config/i386/i386-modes.def b/gcc/config/i386/i386-modes.def
index 105d3872b79..a23e8203ff3 100644
--- a/gcc/config/i386/i386-modes.def
+++ b/gcc/config/i386/i386-modes.def
@@ -17,6 +17,10 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+/* In 32bit, DI mode uses 32bit registers. Only 4 byte alignment
+ is needed. */
+ADJUST_ALIGNMENT (DI, (TARGET_64BIT || TARGET_ALIGN_DOUBLE) ? 8 : 4);
+
/* The x86_64 ABI specifies both XF and TF modes.
XFmode is __float80 is IEEE extended; TFmode is __float128
is IEEE quad. */
@@ -75,6 +79,7 @@ VECTOR_MODES (INT, 8); /* V8QI V4HI V2SI */
VECTOR_MODES (INT, 16); /* V16QI V8HI V4SI V2DI */
VECTOR_MODES (FLOAT, 8); /* V4HF V2SF */
VECTOR_MODES (FLOAT, 16); /* V8HF V4SF V2DF */
+VECTOR_MODE (INT, DI, 1); /* V1DI */
VECTOR_MODE (INT, QI, 2); /* V2QI */
VECTOR_MODE (INT, DI, 4); /* V4DI */
VECTOR_MODE (INT, SI, 8); /* V8SI */
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 5a4456d912b..74b2be23d9b 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -2700,6 +2700,18 @@ override_options (void)
target_flags |= MASK_ACCUMULATE_OUTGOING_ARGS;
}
+ /* If stack probes are required, the space used for large function
+ arguments on the stack must also be probed, so enable
+ -maccumulate-outgoing-args so this happens in the prologue. */
+ if (TARGET_STACK_PROBE
+ && !(target_flags & MASK_ACCUMULATE_OUTGOING_ARGS))
+ {
+ if (target_flags_explicit & MASK_ACCUMULATE_OUTGOING_ARGS)
+ warning (0, "stack probing requires -maccumulate-outgoing-args "
+ "for correctness");
+ target_flags |= MASK_ACCUMULATE_OUTGOING_ARGS;
+ }
+
/* For sane SSE instruction set generation we need fcomi instruction.
It is safe to enable all CMOVE instructions. */
if (TARGET_SSE)
@@ -3826,7 +3838,7 @@ classify_argument (enum machine_mode mode, const_tree type,
}
/* for V1xx modes, just use the base mode */
- if (VECTOR_MODE_P (mode)
+ if (VECTOR_MODE_P (mode) && mode != V1DImode
&& GET_MODE_SIZE (GET_MODE_INNER (mode)) == bytes)
mode = GET_MODE_INNER (mode);
@@ -3898,6 +3910,7 @@ classify_argument (enum machine_mode mode, const_tree type,
classes[0] = X86_64_SSE_CLASS;
classes[1] = X86_64_SSEUP_CLASS;
return 2;
+ case V1DImode:
case V2SFmode:
case V2SImode:
case V4HImode:
@@ -4199,6 +4212,7 @@ function_arg_advance_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode,
case V4HImode:
case V2SImode:
case V2SFmode:
+ case V1DImode:
if (!type || !AGGREGATE_TYPE_P (type))
{
cum->mmx_words += words;
@@ -4362,6 +4376,7 @@ function_arg_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode,
case V4HImode:
case V2SImode:
case V2SFmode:
+ case V1DImode:
if (!type || !AGGREGATE_TYPE_P (type))
{
if (!TARGET_MMX && !warnedmmx && cum->warn_mmx)
@@ -16774,7 +16789,8 @@ ia32_multipass_dfa_lookahead (void)
int
ix86_constant_alignment (tree exp, int align)
{
- if (TREE_CODE (exp) == REAL_CST)
+ if (TREE_CODE (exp) == REAL_CST || TREE_CODE (exp) == VECTOR_CST
+ || TREE_CODE (exp) == INTEGER_CST)
{
if (TYPE_MODE (TREE_TYPE (exp)) == DFmode && align < 64)
return 64;
@@ -17943,11 +17959,11 @@ static const struct builtin_description bdesc_2arg[] =
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_addv8qi3, "__builtin_ia32_paddb", IX86_BUILTIN_PADDB, UNKNOWN, 0 },
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_addv4hi3, "__builtin_ia32_paddw", IX86_BUILTIN_PADDW, UNKNOWN, 0 },
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_addv2si3, "__builtin_ia32_paddd", IX86_BUILTIN_PADDD, UNKNOWN, 0 },
- { OPTION_MASK_ISA_SSE2, CODE_FOR_mmx_adddi3, "__builtin_ia32_paddq", IX86_BUILTIN_PADDQ, UNKNOWN, 0 },
+ { OPTION_MASK_ISA_SSE2, CODE_FOR_mmx_addv1di3, "__builtin_ia32_paddq", IX86_BUILTIN_PADDQ, UNKNOWN, 0 },
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_subv8qi3, "__builtin_ia32_psubb", IX86_BUILTIN_PSUBB, UNKNOWN, 0 },
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_subv4hi3, "__builtin_ia32_psubw", IX86_BUILTIN_PSUBW, UNKNOWN, 0 },
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_subv2si3, "__builtin_ia32_psubd", IX86_BUILTIN_PSUBD, UNKNOWN, 0 },
- { OPTION_MASK_ISA_SSE2, CODE_FOR_mmx_subdi3, "__builtin_ia32_psubq", IX86_BUILTIN_PSUBQ, UNKNOWN, 0 },
+ { OPTION_MASK_ISA_SSE2, CODE_FOR_mmx_subv1di3, "__builtin_ia32_psubq", IX86_BUILTIN_PSUBQ, UNKNOWN, 0 },
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ssaddv8qi3, "__builtin_ia32_paddsb", IX86_BUILTIN_PADDSB, UNKNOWN, 0 },
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ssaddv4hi3, "__builtin_ia32_paddsw", IX86_BUILTIN_PADDSW, UNKNOWN, 0 },
@@ -17998,25 +18014,6 @@ static const struct builtin_description bdesc_2arg[] =
{ OPTION_MASK_ISA_SSE, CODE_FOR_sse_cvtsi2ss, 0, IX86_BUILTIN_CVTSI2SS, UNKNOWN, 0 },
{ OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_64BIT, CODE_FOR_sse_cvtsi2ssq, 0, IX86_BUILTIN_CVTSI642SS, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashlv4hi3, 0, IX86_BUILTIN_PSLLW, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashlv4hi3, 0, IX86_BUILTIN_PSLLWI, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashlv2si3, 0, IX86_BUILTIN_PSLLD, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashlv2si3, 0, IX86_BUILTIN_PSLLDI, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashldi3, 0, IX86_BUILTIN_PSLLQ, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashldi3, 0, IX86_BUILTIN_PSLLQI, UNKNOWN, 0 },
-
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_lshrv4hi3, 0, IX86_BUILTIN_PSRLW, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_lshrv4hi3, 0, IX86_BUILTIN_PSRLWI, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_lshrv2si3, 0, IX86_BUILTIN_PSRLD, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_lshrv2si3, 0, IX86_BUILTIN_PSRLDI, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_lshrdi3, 0, IX86_BUILTIN_PSRLQ, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_lshrdi3, 0, IX86_BUILTIN_PSRLQI, UNKNOWN, 0 },
-
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashrv4hi3, 0, IX86_BUILTIN_PSRAW, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashrv4hi3, 0, IX86_BUILTIN_PSRAWI, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashrv2si3, 0, IX86_BUILTIN_PSRAD, UNKNOWN, 0 },
- { OPTION_MASK_ISA_MMX, CODE_FOR_mmx_ashrv2si3, 0, IX86_BUILTIN_PSRADI, UNKNOWN, 0 },
-
{ OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_3DNOW_A, CODE_FOR_mmx_psadbw, 0, IX86_BUILTIN_PSADBW, UNKNOWN, 0 },
{ OPTION_MASK_ISA_MMX, CODE_FOR_mmx_pmaddwd, 0, IX86_BUILTIN_PMADDWD, UNKNOWN, 0 },
@@ -18128,17 +18125,6 @@ static const struct builtin_description bdesc_2arg[] =
{ OPTION_MASK_ISA_SSE2, CODE_FOR_sse2_umulsidi3, 0, IX86_BUILTIN_PMULUDQ, UNKNOWN, 0 },
{ OPTION_MASK_ISA_SSE2, CODE_FOR_sse2_umulv2siv2di3, 0, IX86_BUILTIN_PMULUDQ128, UNKNOWN, 0 },
- { OPTION_MASK_ISA_SSE2, CODE_FOR_ashlv8hi3, 0, IX86_BUILTIN_PSLLWI128, UNKNOWN, 0 },
- { OPTION_MASK_ISA_SSE2, CODE_FOR_ashlv4si3, 0, IX86_BUILTIN_PSLLDI128, UNKNOWN, 0 },
- { OPTION_MASK_ISA_SSE2, CODE_FOR_ashlv2di3, 0, IX86_BUILTIN_PSLLQI128, UNKNOWN, 0 },
-
- { OPTION_MASK_ISA_SSE2, CODE_FOR_lshrv8hi3, 0, IX86_BUILTIN_PSRLWI128, UNKNOWN, 0 },
- { OPTION_MASK_ISA_SSE2, CODE_FOR_lshrv4si3, 0, IX86_BUILTIN_PSRLDI128, UNKNOWN, 0 },
- { OPTION_MASK_ISA_SSE2, CODE_FOR_lshrv2di3, 0, IX86_BUILTIN_PSRLQI128, UNKNOWN, 0 },
-
- { OPTION_MASK_ISA_SSE2, CODE_FOR_ashrv8hi3, 0, IX86_BUILTIN_PSRAWI128, UNKNOWN, 0 },
- { OPTION_MASK_ISA_SSE2, CODE_FOR_ashrv4si3, 0, IX86_BUILTIN_PSRADI128, UNKNOWN, 0 },
-
{ OPTION_MASK_ISA_SSE2, CODE_FOR_sse2_pmaddwd, 0, IX86_BUILTIN_PMADDWD128, UNKNOWN, 0 },
{ OPTION_MASK_ISA_SSE2, CODE_FOR_sse2_cvtsi2sd, 0, IX86_BUILTIN_CVTSI2SD, UNKNOWN, 0 },
@@ -18200,6 +18186,7 @@ static const struct builtin_description bdesc_2arg[] =
static const struct builtin_description bdesc_1arg[] =
{
+ /* SSE */
{ OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_3DNOW_A, CODE_FOR_mmx_pmovmskb, 0, IX86_BUILTIN_PMOVMSKB, UNKNOWN, 0 },
{ OPTION_MASK_ISA_SSE, CODE_FOR_sse_movmskps, 0, IX86_BUILTIN_MOVMSKPS, UNKNOWN, 0 },
@@ -18216,6 +18203,7 @@ static const struct builtin_description bdesc_1arg[] =
{ OPTION_MASK_ISA_SSE, CODE_FOR_sse_cvttss2si, 0, IX86_BUILTIN_CVTTSS2SI, UNKNOWN, 0 },
{ OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_64BIT, CODE_FOR_sse_cvttss2siq, 0, IX86_BUILTIN_CVTTSS2SI64, UNKNOWN, 0 },
+ /* SSE2 */
{ OPTION_MASK_ISA_SSE2, CODE_FOR_sse2_pmovmskb, 0, IX86_BUILTIN_PMOVMSKB128, UNKNOWN, 0 },
{ OPTION_MASK_ISA_SSE2, CODE_FOR_sse2_movmskpd, 0, IX86_BUILTIN_MOVMSKPD, UNKNOWN, 0 },
@@ -18573,6 +18561,8 @@ ix86_init_mmx_sse_builtins (void)
tree V16QI_type_node = build_vector_type_for_mode (char_type_node, V16QImode);
tree V2SI_type_node = build_vector_type_for_mode (intSI_type_node, V2SImode);
+ tree V1DI_type_node
+ = build_vector_type_for_mode (long_long_integer_type_node, V1DImode);
tree V2SF_type_node = build_vector_type_for_mode (float_type_node, V2SFmode);
tree V2DI_type_node
= build_vector_type_for_mode (long_long_integer_type_node, V2DImode);
@@ -18637,14 +18627,13 @@ ix86_init_mmx_sse_builtins (void)
tree v4hi_ftype_v4hi_int
= build_function_type_list (V4HI_type_node,
V4HI_type_node, integer_type_node, NULL_TREE);
- tree v4hi_ftype_v4hi_di
- = build_function_type_list (V4HI_type_node,
- V4HI_type_node, long_long_unsigned_type_node,
- NULL_TREE);
- tree v2si_ftype_v2si_di
+ tree v2si_ftype_v2si_int
= build_function_type_list (V2SI_type_node,
- V2SI_type_node, long_long_unsigned_type_node,
- NULL_TREE);
+ V2SI_type_node, integer_type_node, NULL_TREE);
+ tree v1di_ftype_v1di_int
+ = build_function_type_list (V1DI_type_node,
+ V1DI_type_node, integer_type_node, NULL_TREE);
+
tree void_ftype_void
= build_function_type (void_type_node, void_list_node);
tree void_ftype_unsigned
@@ -18711,10 +18700,9 @@ ix86_init_mmx_sse_builtins (void)
tree v2si_ftype_v2si_v2si
= build_function_type_list (V2SI_type_node,
V2SI_type_node, V2SI_type_node, NULL_TREE);
- tree di_ftype_di_di
- = build_function_type_list (long_long_unsigned_type_node,
- long_long_unsigned_type_node,
- long_long_unsigned_type_node, NULL_TREE);
+ tree v1di_ftype_v1di_v1di
+ = build_function_type_list (V1DI_type_node,
+ V1DI_type_node, V1DI_type_node, NULL_TREE);
tree di_ftype_di_di_int
= build_function_type_list (long_long_unsigned_type_node,
@@ -19170,8 +19158,8 @@ ix86_init_mmx_sse_builtins (void)
case V2SImode:
type = v2si_ftype_v2si_v2si;
break;
- case DImode:
- type = di_ftype_di_di;
+ case V1DImode:
+ type = v1di_ftype_v1di_v1di;
break;
default:
@@ -19263,16 +19251,25 @@ ix86_init_mmx_sse_builtins (void)
/* Add the remaining MMX insns with somewhat more complicated types. */
def_builtin (OPTION_MASK_ISA_MMX, "__builtin_ia32_emms", void_ftype_void, IX86_BUILTIN_EMMS);
- def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psllw", v4hi_ftype_v4hi_di, IX86_BUILTIN_PSLLW);
- def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_pslld", v2si_ftype_v2si_di, IX86_BUILTIN_PSLLD);
- def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psllq", di_ftype_di_di, IX86_BUILTIN_PSLLQ);
- def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrlw", v4hi_ftype_v4hi_di, IX86_BUILTIN_PSRLW);
- def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrld", v2si_ftype_v2si_di, IX86_BUILTIN_PSRLD);
- def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrlq", di_ftype_di_di, IX86_BUILTIN_PSRLQ);
-
- def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psraw", v4hi_ftype_v4hi_di, IX86_BUILTIN_PSRAW);
- def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrad", v2si_ftype_v2si_di, IX86_BUILTIN_PSRAD);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psllwi", v4hi_ftype_v4hi_int, IX86_BUILTIN_PSLLWI);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_pslldi", v2si_ftype_v2si_int, IX86_BUILTIN_PSLLDI);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psllqi", v1di_ftype_v1di_int, IX86_BUILTIN_PSLLQI);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psllw", v4hi_ftype_v4hi_v4hi, IX86_BUILTIN_PSLLW);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_pslld", v2si_ftype_v2si_v2si, IX86_BUILTIN_PSLLD);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psllq", v1di_ftype_v1di_v1di, IX86_BUILTIN_PSLLQ);
+
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrlwi", v4hi_ftype_v4hi_int, IX86_BUILTIN_PSRLWI);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrldi", v2si_ftype_v2si_int, IX86_BUILTIN_PSRLDI);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrlqi", v1di_ftype_v1di_int, IX86_BUILTIN_PSRLQI);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrlw", v4hi_ftype_v4hi_v4hi, IX86_BUILTIN_PSRLW);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrld", v2si_ftype_v2si_v2si, IX86_BUILTIN_PSRLD);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrlq", v1di_ftype_v1di_v1di, IX86_BUILTIN_PSRLQ);
+
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrawi", v4hi_ftype_v4hi_int, IX86_BUILTIN_PSRAWI);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psradi", v2si_ftype_v2si_int, IX86_BUILTIN_PSRADI);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psraw", v4hi_ftype_v4hi_v4hi, IX86_BUILTIN_PSRAW);
+ def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_psrad", v2si_ftype_v2si_v2si, IX86_BUILTIN_PSRAD);
def_builtin_const (OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_3DNOW_A, "__builtin_ia32_pshufw", v4hi_ftype_v4hi_int, IX86_BUILTIN_PSHUFW);
def_builtin_const (OPTION_MASK_ISA_MMX, "__builtin_ia32_pmaddwd", v2si_ftype_v4hi_v4hi, IX86_BUILTIN_PMADDWD);
@@ -20817,6 +20814,39 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED,
emit_insn (pat);
return target;
+ case IX86_BUILTIN_PSLLW:
+ case IX86_BUILTIN_PSLLWI:
+ icode = CODE_FOR_mmx_ashlv4hi3;
+ goto do_pshift;
+ case IX86_BUILTIN_PSLLD:
+ case IX86_BUILTIN_PSLLDI:
+ icode = CODE_FOR_mmx_ashlv2si3;
+ goto do_pshift;
+ case IX86_BUILTIN_PSLLQ:
+ case IX86_BUILTIN_PSLLQI:
+ icode = CODE_FOR_mmx_ashlv1di3;
+ goto do_pshift;
+ case IX86_BUILTIN_PSRAW:
+ case IX86_BUILTIN_PSRAWI:
+ icode = CODE_FOR_mmx_ashrv4hi3;
+ goto do_pshift;
+ case IX86_BUILTIN_PSRAD:
+ case IX86_BUILTIN_PSRADI:
+ icode = CODE_FOR_mmx_ashrv2si3;
+ goto do_pshift;
+ case IX86_BUILTIN_PSRLW:
+ case IX86_BUILTIN_PSRLWI:
+ icode = CODE_FOR_mmx_lshrv4hi3;
+ goto do_pshift;
+ case IX86_BUILTIN_PSRLD:
+ case IX86_BUILTIN_PSRLDI:
+ icode = CODE_FOR_mmx_lshrv2si3;
+ goto do_pshift;
+ case IX86_BUILTIN_PSRLQ:
+ case IX86_BUILTIN_PSRLQI:
+ icode = CODE_FOR_mmx_lshrv1di3;
+ goto do_pshift;
+
case IX86_BUILTIN_PSLLW128:
case IX86_BUILTIN_PSLLWI128:
icode = CODE_FOR_ashlv8hi3;
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h
index f2429846691..98cb72ac921 100644
--- a/gcc/config/i386/i386.h
+++ b/gcc/config/i386/i386.h
@@ -1120,8 +1120,9 @@ do { \
((MODE) == V2SFmode || (MODE) == SFmode)
#define VALID_MMX_REG_MODE(MODE) \
- ((MODE) == DImode || (MODE) == V8QImode || (MODE) == V4HImode \
- || (MODE) == V2SImode || (MODE) == SImode)
+ ((MODE == V1DImode) || (MODE) == DImode \
+ || (MODE) == V2SImode || (MODE) == SImode \
+ || (MODE) == V4HImode || (MODE) == V8QImode)
/* ??? No autovectorization into MMX or 3DNOW until we can reliably
place emms and femms instructions. */
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 92a37280f5f..eb942d60d9c 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -95,7 +95,6 @@
(UNSPEC_RCP 45)
(UNSPEC_RSQRT 46)
(UNSPEC_SFENCE 47)
- (UNSPEC_NOP 48) ; prevents combiner cleverness
(UNSPEC_PFRCP 49)
(UNSPEC_PFRCPIT1 40)
(UNSPEC_PFRCPIT2 41)
@@ -19873,7 +19872,7 @@
(set (reg:SI SP_REG) (minus:SI (reg:SI SP_REG) (match_dup 0)))
(clobber (reg:CC FLAGS_REG))]
"!TARGET_64BIT && TARGET_STACK_PROBE"
- "call\t__alloca"
+ "call\t___chkstk"
[(set_attr "type" "multi")
(set_attr "length" "5")])
diff --git a/gcc/config/i386/mmintrin.h b/gcc/config/i386/mmintrin.h
index a04109be616..94800ad688e 100644
--- a/gcc/config/i386/mmintrin.h
+++ b/gcc/config/i386/mmintrin.h
@@ -42,6 +42,7 @@ typedef int __m64 __attribute__ ((__vector_size__ (8), __may_alias__));
typedef int __v2si __attribute__ ((__vector_size__ (8)));
typedef short __v4hi __attribute__ ((__vector_size__ (8)));
typedef char __v8qi __attribute__ ((__vector_size__ (8)));
+typedef long long __v1di __attribute__ ((__vector_size__ (8)));
/* Empty the multimedia state. */
static __inline void __attribute__((__always_inline__, __artificial__))
@@ -309,7 +310,7 @@ _m_paddd (__m64 __m1, __m64 __m2)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_add_si64 (__m64 __m1, __m64 __m2)
{
- return (__m64) __builtin_ia32_paddq ((long long)__m1, (long long)__m2);
+ return (__m64) __builtin_ia32_paddq ((__v1di)__m1, (__v1di)__m2);
}
#endif
@@ -413,7 +414,7 @@ _m_psubd (__m64 __m1, __m64 __m2)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_sub_si64 (__m64 __m1, __m64 __m2)
{
- return (__m64) __builtin_ia32_psubq ((long long)__m1, (long long)__m2);
+ return (__m64) __builtin_ia32_psubq ((__v1di)__m1, (__v1di)__m2);
}
#endif
@@ -520,7 +521,7 @@ _m_pmullw (__m64 __m1, __m64 __m2)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_sll_pi16 (__m64 __m, __m64 __count)
{
- return (__m64) __builtin_ia32_psllw ((__v4hi)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psllw ((__v4hi)__m, (__v4hi)__count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -532,7 +533,7 @@ _m_psllw (__m64 __m, __m64 __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_slli_pi16 (__m64 __m, int __count)
{
- return (__m64) __builtin_ia32_psllw ((__v4hi)__m, __count);
+ return (__m64) __builtin_ia32_psllwi ((__v4hi)__m, __count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -545,7 +546,7 @@ _m_psllwi (__m64 __m, int __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_sll_pi32 (__m64 __m, __m64 __count)
{
- return (__m64) __builtin_ia32_pslld ((__v2si)__m, (long long)__count);
+ return (__m64) __builtin_ia32_pslld ((__v2si)__m, (__v2si)__count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -557,7 +558,7 @@ _m_pslld (__m64 __m, __m64 __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_slli_pi32 (__m64 __m, int __count)
{
- return (__m64) __builtin_ia32_pslld ((__v2si)__m, __count);
+ return (__m64) __builtin_ia32_pslldi ((__v2si)__m, __count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -570,7 +571,7 @@ _m_pslldi (__m64 __m, int __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_sll_si64 (__m64 __m, __m64 __count)
{
- return (__m64) __builtin_ia32_psllq ((long long)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psllq ((__v1di)__m, (__v1di)__count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -582,7 +583,7 @@ _m_psllq (__m64 __m, __m64 __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_slli_si64 (__m64 __m, int __count)
{
- return (__m64) __builtin_ia32_psllq ((long long)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psllqi ((__v1di)__m, __count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -595,7 +596,7 @@ _m_psllqi (__m64 __m, int __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_sra_pi16 (__m64 __m, __m64 __count)
{
- return (__m64) __builtin_ia32_psraw ((__v4hi)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psraw ((__v4hi)__m, (__v4hi)__count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -607,7 +608,7 @@ _m_psraw (__m64 __m, __m64 __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_srai_pi16 (__m64 __m, int __count)
{
- return (__m64) __builtin_ia32_psraw ((__v4hi)__m, __count);
+ return (__m64) __builtin_ia32_psrawi ((__v4hi)__m, __count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -620,7 +621,7 @@ _m_psrawi (__m64 __m, int __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_sra_pi32 (__m64 __m, __m64 __count)
{
- return (__m64) __builtin_ia32_psrad ((__v2si)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psrad ((__v2si)__m, (__v2si)__count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -632,7 +633,7 @@ _m_psrad (__m64 __m, __m64 __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_srai_pi32 (__m64 __m, int __count)
{
- return (__m64) __builtin_ia32_psrad ((__v2si)__m, __count);
+ return (__m64) __builtin_ia32_psradi ((__v2si)__m, __count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -645,7 +646,7 @@ _m_psradi (__m64 __m, int __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_srl_pi16 (__m64 __m, __m64 __count)
{
- return (__m64) __builtin_ia32_psrlw ((__v4hi)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psrlw ((__v4hi)__m, (__v4hi)__count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -657,7 +658,7 @@ _m_psrlw (__m64 __m, __m64 __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_srli_pi16 (__m64 __m, int __count)
{
- return (__m64) __builtin_ia32_psrlw ((__v4hi)__m, __count);
+ return (__m64) __builtin_ia32_psrlwi ((__v4hi)__m, __count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -670,7 +671,7 @@ _m_psrlwi (__m64 __m, int __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_srl_pi32 (__m64 __m, __m64 __count)
{
- return (__m64) __builtin_ia32_psrld ((__v2si)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psrld ((__v2si)__m, (__v2si)__count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -682,7 +683,7 @@ _m_psrld (__m64 __m, __m64 __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_srli_pi32 (__m64 __m, int __count)
{
- return (__m64) __builtin_ia32_psrld ((__v2si)__m, __count);
+ return (__m64) __builtin_ia32_psrldi ((__v2si)__m, __count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -695,7 +696,7 @@ _m_psrldi (__m64 __m, int __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_srl_si64 (__m64 __m, __m64 __count)
{
- return (__m64) __builtin_ia32_psrlq ((long long)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psrlq ((__v1di)__m, (__v1di)__count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
@@ -707,7 +708,7 @@ _m_psrlq (__m64 __m, __m64 __count)
static __inline __m64 __attribute__((__always_inline__, __artificial__))
_mm_srli_si64 (__m64 __m, int __count)
{
- return (__m64) __builtin_ia32_psrlq ((long long)__m, (long long)__count);
+ return (__m64) __builtin_ia32_psrlqi ((__v1di)__m, __count);
}
static __inline __m64 __attribute__((__always_inline__, __artificial__))
diff --git a/gcc/config/i386/mmx.md b/gcc/config/i386/mmx.md
index 3371161f82f..1d2a41dd114 100644
--- a/gcc/config/i386/mmx.md
+++ b/gcc/config/i386/mmx.md
@@ -32,16 +32,18 @@
;; 8 byte integral modes handled by MMX (and by extension, SSE)
(define_mode_iterator MMXMODEI [V8QI V4HI V2SI])
+(define_mode_iterator MMXMODEI8 [V8QI V4HI V2SI V1DI])
;; All 8-byte vector modes handled by MMX
-(define_mode_iterator MMXMODE [V8QI V4HI V2SI V2SF])
+(define_mode_iterator MMXMODE [V8QI V4HI V2SI V1DI V2SF])
;; Mix-n-match
(define_mode_iterator MMXMODE12 [V8QI V4HI])
(define_mode_iterator MMXMODE24 [V4HI V2SI])
+(define_mode_iterator MMXMODE248 [V4HI V2SI V1DI])
;; Mapping from integer vector mode to mnemonic suffix
-(define_mode_attr mmxvecsize [(V8QI "b") (V4HI "w") (V2SI "d") (DI "q")])
+(define_mode_attr mmxvecsize [(V8QI "b") (V4HI "w") (V2SI "d") (V1DI "q")])
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
@@ -53,8 +55,8 @@
;; This is essential for maintaining stable calling conventions.
(define_expand "mov<mode>"
- [(set (match_operand:MMXMODEI 0 "nonimmediate_operand" "")
- (match_operand:MMXMODEI 1 "nonimmediate_operand" ""))]
+ [(set (match_operand:MMXMODEI8 0 "nonimmediate_operand" "")
+ (match_operand:MMXMODEI8 1 "nonimmediate_operand" ""))]
"TARGET_MMX"
{
ix86_expand_vector_move (<MODE>mode, operands);
@@ -62,9 +64,9 @@
})
(define_insn "*mov<mode>_internal_rex64"
- [(set (match_operand:MMXMODEI 0 "nonimmediate_operand"
+ [(set (match_operand:MMXMODEI8 0 "nonimmediate_operand"
"=rm,r,!y,!y ,m ,!y,Y2,x,x ,m,r,x")
- (match_operand:MMXMODEI 1 "vector_move_operand"
+ (match_operand:MMXMODEI8 1 "vector_move_operand"
"Cr ,m,C ,!ym,!y,Y2,!y,C,xm,x,x,r"))]
"TARGET_64BIT && TARGET_MMX
&& !(MEM_P (operands[0]) && MEM_P (operands[1]))"
@@ -86,9 +88,9 @@
(set_attr "mode" "DI")])
(define_insn "*mov<mode>_internal"
- [(set (match_operand:MMXMODEI 0 "nonimmediate_operand"
+ [(set (match_operand:MMXMODEI8 0 "nonimmediate_operand"
"=!y,!y ,m ,!y ,*Y2,*Y2,*Y2 ,m ,*x,*x,*x,m ,?r ,?m")
- (match_operand:MMXMODEI 1 "vector_move_operand"
+ (match_operand:MMXMODEI8 1 "vector_move_operand"
"C ,!ym,!y,*Y2,!y ,C ,*Y2m,*Y2,C ,*x,m ,*x,irm,r"))]
"TARGET_MMX
&& !(MEM_P (operands[0]) && MEM_P (operands[1]))"
@@ -557,26 +559,16 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define_insn "mmx_add<mode>3"
- [(set (match_operand:MMXMODEI 0 "register_operand" "=y")
- (plus:MMXMODEI
- (match_operand:MMXMODEI 1 "nonimmediate_operand" "%0")
- (match_operand:MMXMODEI 2 "nonimmediate_operand" "ym")))]
- "TARGET_MMX && ix86_binary_operator_ok (PLUS, <MODE>mode, operands)"
+ [(set (match_operand:MMXMODEI8 0 "register_operand" "=y")
+ (plus:MMXMODEI8
+ (match_operand:MMXMODEI8 1 "nonimmediate_operand" "%0")
+ (match_operand:MMXMODEI8 2 "nonimmediate_operand" "ym")))]
+ "(TARGET_MMX || (TARGET_SSE2 && <MODE>mode == V1DImode))
+ && ix86_binary_operator_ok (PLUS, <MODE>mode, operands)"
"padd<mmxvecsize>\t{%2, %0|%0, %2}"
[(set_attr "type" "mmxadd")
(set_attr "mode" "DI")])
-(define_insn "mmx_adddi3"
- [(set (match_operand:DI 0 "register_operand" "=y")
- (unspec:DI
- [(plus:DI (match_operand:DI 1 "nonimmediate_operand" "%0")
- (match_operand:DI 2 "nonimmediate_operand" "ym"))]
- UNSPEC_NOP))]
- "TARGET_SSE2 && ix86_binary_operator_ok (PLUS, DImode, operands)"
- "paddq\t{%2, %0|%0, %2}"
- [(set_attr "type" "mmxadd")
- (set_attr "mode" "DI")])
-
(define_insn "mmx_ssadd<mode>3"
[(set (match_operand:MMXMODE12 0 "register_operand" "=y")
(ss_plus:MMXMODE12
@@ -598,26 +590,15 @@
(set_attr "mode" "DI")])
(define_insn "mmx_sub<mode>3"
- [(set (match_operand:MMXMODEI 0 "register_operand" "=y")
- (minus:MMXMODEI
- (match_operand:MMXMODEI 1 "register_operand" "0")
- (match_operand:MMXMODEI 2 "nonimmediate_operand" "ym")))]
- "TARGET_MMX"
+ [(set (match_operand:MMXMODEI8 0 "register_operand" "=y")
+ (minus:MMXMODEI8
+ (match_operand:MMXMODEI8 1 "register_operand" "0")
+ (match_operand:MMXMODEI8 2 "nonimmediate_operand" "ym")))]
+ "(TARGET_MMX || (TARGET_SSE2 && <MODE>mode == V1DImode))"
"psub<mmxvecsize>\t{%2, %0|%0, %2}"
[(set_attr "type" "mmxadd")
(set_attr "mode" "DI")])
-(define_insn "mmx_subdi3"
- [(set (match_operand:DI 0 "register_operand" "=y")
- (unspec:DI
- [(minus:DI (match_operand:DI 1 "register_operand" "0")
- (match_operand:DI 2 "nonimmediate_operand" "ym"))]
- UNSPEC_NOP))]
- "TARGET_SSE2"
- "psubq\t{%2, %0|%0, %2}"
- [(set_attr "type" "mmxadd")
- (set_attr "mode" "DI")])
-
(define_insn "mmx_sssub<mode>3"
[(set (match_operand:MMXMODE12 0 "register_operand" "=y")
(ss_minus:MMXMODE12
@@ -778,54 +759,32 @@
[(set (match_operand:MMXMODE24 0 "register_operand" "=y")
(ashiftrt:MMXMODE24
(match_operand:MMXMODE24 1 "register_operand" "0")
- (match_operand:DI 2 "nonmemory_operand" "yi")))]
+ (match_operand:SI 2 "nonmemory_operand" "yN")))]
"TARGET_MMX"
"psra<mmxvecsize>\t{%2, %0|%0, %2}"
[(set_attr "type" "mmxshft")
(set_attr "mode" "DI")])
(define_insn "mmx_lshr<mode>3"
- [(set (match_operand:MMXMODE24 0 "register_operand" "=y")
- (lshiftrt:MMXMODE24
- (match_operand:MMXMODE24 1 "register_operand" "0")
- (match_operand:DI 2 "nonmemory_operand" "yi")))]
+ [(set (match_operand:MMXMODE248 0 "register_operand" "=y")
+ (lshiftrt:MMXMODE248
+ (match_operand:MMXMODE248 1 "register_operand" "0")
+ (match_operand:SI 2 "nonmemory_operand" "yN")))]
"TARGET_MMX"
"psrl<mmxvecsize>\t{%2, %0|%0, %2}"
[(set_attr "type" "mmxshft")
(set_attr "mode" "DI")])
-(define_insn "mmx_lshrdi3"
- [(set (match_operand:DI 0 "register_operand" "=y")
- (unspec:DI
- [(lshiftrt:DI (match_operand:DI 1 "register_operand" "0")
- (match_operand:DI 2 "nonmemory_operand" "yi"))]
- UNSPEC_NOP))]
- "TARGET_MMX"
- "psrlq\t{%2, %0|%0, %2}"
- [(set_attr "type" "mmxshft")
- (set_attr "mode" "DI")])
-
(define_insn "mmx_ashl<mode>3"
- [(set (match_operand:MMXMODE24 0 "register_operand" "=y")
- (ashift:MMXMODE24
- (match_operand:MMXMODE24 1 "register_operand" "0")
- (match_operand:DI 2 "nonmemory_operand" "yi")))]
+ [(set (match_operand:MMXMODE248 0 "register_operand" "=y")
+ (ashift:MMXMODE248
+ (match_operand:MMXMODE248 1 "register_operand" "0")
+ (match_operand:SI 2 "nonmemory_operand" "yN")))]
"TARGET_MMX"
"psll<mmxvecsize>\t{%2, %0|%0, %2}"
[(set_attr "type" "mmxshft")
(set_attr "mode" "DI")])
-(define_insn "mmx_ashldi3"
- [(set (match_operand:DI 0 "register_operand" "=y")
- (unspec:DI
- [(ashift:DI (match_operand:DI 1 "register_operand" "0")
- (match_operand:DI 2 "nonmemory_operand" "yi"))]
- UNSPEC_NOP))]
- "TARGET_MMX"
- "psllq\t{%2, %0|%0, %2}"
- [(set_attr "type" "mmxshft")
- (set_attr "mode" "DI")])
-
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;; Parallel integral comparisons
diff --git a/gcc/config/i386/smmintrin.h b/gcc/config/i386/smmintrin.h
index e5b0ae04c0f..08bfd107232 100644
--- a/gcc/config/i386/smmintrin.h
+++ b/gcc/config/i386/smmintrin.h
@@ -470,30 +470,30 @@ _mm_stream_load_si128 (__m128i *__X)
#ifdef __SSE4_2__
/* These macros specify the source data format. */
-#define SIDD_UBYTE_OPS 0x00
-#define SIDD_UWORD_OPS 0x01
-#define SIDD_SBYTE_OPS 0x02
-#define SIDD_SWORD_OPS 0x03
+#define _SIDD_UBYTE_OPS 0x00
+#define _SIDD_UWORD_OPS 0x01
+#define _SIDD_SBYTE_OPS 0x02
+#define _SIDD_SWORD_OPS 0x03
/* These macros specify the comparison operation. */
-#define SIDD_CMP_EQUAL_ANY 0x00
-#define SIDD_CMP_RANGES 0x04
-#define SIDD_CMP_EQUAL_EACH 0x08
-#define SIDD_CMP_EQUAL_ORDERED 0x0c
+#define _SIDD_CMP_EQUAL_ANY 0x00
+#define _SIDD_CMP_RANGES 0x04
+#define _SIDD_CMP_EQUAL_EACH 0x08
+#define _SIDD_CMP_EQUAL_ORDERED 0x0c
/* These macros specify the the polarity. */
-#define SIDD_POSITIVE_POLARITY 0x00
-#define SIDD_NEGATIVE_POLARITY 0x10
-#define SIDD_MASKED_POSITIVE_POLARITY 0x20
-#define SIDD_MASKED_NEGATIVE_POLARITY 0x30
+#define _SIDD_POSITIVE_POLARITY 0x00
+#define _SIDD_NEGATIVE_POLARITY 0x10
+#define _SIDD_MASKED_POSITIVE_POLARITY 0x20
+#define _SIDD_MASKED_NEGATIVE_POLARITY 0x30
/* These macros specify the output selection in _mm_cmpXstri (). */
-#define SIDD_LEAST_SIGNIFICANT 0x00
-#define SIDD_MOST_SIGNIFICANT 0x40
+#define _SIDD_LEAST_SIGNIFICANT 0x00
+#define _SIDD_MOST_SIGNIFICANT 0x40
/* These macros specify the output selection in _mm_cmpXstrm (). */
-#define SIDD_BIT_MASK 0x00
-#define SIDD_UNIT_MASK 0x40
+#define _SIDD_BIT_MASK 0x00
+#define _SIDD_UNIT_MASK 0x40
/* Intrinsics for text/string processing. */
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index 97250dbd2ed..8ea5bc0048b 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -5969,7 +5969,7 @@
(mult:V8HI
(zero_extend:V8HI
(vec_select:V4QI
- (match_operand:V16QI 1 "nonimmediate_operand" "%0")
+ (match_operand:V16QI 1 "nonimmediate_operand" "0")
(parallel [(const_int 0)
(const_int 2)
(const_int 4)
@@ -6023,7 +6023,7 @@
(mult:V4HI
(zero_extend:V4HI
(vec_select:V4QI
- (match_operand:V8QI 1 "nonimmediate_operand" "%0")
+ (match_operand:V8QI 1 "nonimmediate_operand" "0")
(parallel [(const_int 0)
(const_int 2)
(const_int 4)
diff --git a/gcc/config/rs6000/altivec.md b/gcc/config/rs6000/altivec.md
index 2261a9369f3..95c588ca070 100644
--- a/gcc/config/rs6000/altivec.md
+++ b/gcc/config/rs6000/altivec.md
@@ -64,7 +64,6 @@
(UNSPEC_VPKUWUS 102)
(UNSPEC_VPKSWUS 103)
(UNSPEC_VRL 104)
- (UNSPEC_VSL 107)
(UNSPEC_VSLV4SI 110)
(UNSPEC_VSLO 111)
(UNSPEC_VSR 118)
@@ -576,7 +575,7 @@
/* Generate [-0.0, -0.0, -0.0, -0.0]. */
neg0 = gen_reg_rtx (V4SImode);
emit_insn (gen_altivec_vspltisw (neg0, constm1_rtx));
- emit_insn (gen_altivec_vslw (neg0, neg0, neg0));
+ emit_insn (gen_ashlv4si3 (neg0, neg0, neg0));
/* Use the multiply-add. */
emit_insn (gen_altivec_vmaddfp (operands[0], operands[1], operands[2],
@@ -635,7 +634,7 @@
high_product = gen_reg_rtx (V4SImode);
emit_insn (gen_altivec_vmsumuhm (high_product, one, small_swap, zero));
- emit_insn (gen_altivec_vslw (high_product, high_product, sixteen));
+ emit_insn (gen_ashlv4si3 (high_product, high_product, sixteen));
emit_insn (gen_addv4si3 (operands[0], high_product, low_product));
@@ -1221,15 +1220,6 @@
"vrl<VI_char> %0,%1,%2"
[(set_attr "type" "vecsimple")])
-(define_insn "altivec_vsl<VI_char>"
- [(set (match_operand:VI 0 "register_operand" "=v")
- (unspec:VI [(match_operand:VI 1 "register_operand" "v")
- (match_operand:VI 2 "register_operand" "v")]
- UNSPEC_VSL))]
- "TARGET_ALTIVEC"
- "vsl<VI_char> %0,%1,%2"
- [(set_attr "type" "vecsimple")])
-
(define_insn "altivec_vsl"
[(set (match_operand:V4SI 0 "register_operand" "=v")
(unspec:V4SI [(match_operand:V4SI 1 "register_operand" "v")
@@ -1248,6 +1238,14 @@
"vslo %0,%1,%2"
[(set_attr "type" "vecperm")])
+(define_insn "ashl<mode>3"
+ [(set (match_operand:VI 0 "register_operand" "=v")
+ (ashift:VI (match_operand:VI 1 "register_operand" "v")
+ (match_operand:VI 2 "register_operand" "v") ))]
+ "TARGET_ALTIVEC"
+ "vsl<VI_char> %0,%1,%2"
+ [(set_attr "type" "vecsimple")])
+
(define_insn "lshr<mode>3"
[(set (match_operand:VI 0 "register_operand" "=v")
(lshiftrt:VI (match_operand:VI 1 "register_operand" "v")
@@ -2039,7 +2037,7 @@
[(set (match_dup 2)
(vec_duplicate:V4SI (const_int -1)))
(set (match_dup 3)
- (unspec:V4SI [(match_dup 2) (match_dup 2)] UNSPEC_VSL))
+ (ashift:V4SI (match_dup 2) (match_dup 2)))
(set (match_operand:V4SF 0 "register_operand" "=v")
(and:V4SF (not:V4SF (subreg:V4SF (match_dup 3) 0))
(match_operand:V4SF 1 "register_operand" "v")))]
@@ -2642,7 +2640,7 @@
/* Generate [-0.0, -0.0, -0.0, -0.0]. */
neg0 = gen_reg_rtx (V4SImode);
emit_insn (gen_altivec_vspltisw (neg0, constm1_rtx));
- emit_insn (gen_altivec_vslw (neg0, neg0, neg0));
+ emit_insn (gen_ashlv4si3 (neg0, neg0, neg0));
/* XOR */
emit_insn (gen_xorv4sf3 (operands[0],
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 30f226bf46e..593408f56d5 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -732,7 +732,6 @@ static const char *rs6000_invalid_within_doloop (const_rtx);
static rtx rs6000_generate_compare (enum rtx_code);
static void rs6000_emit_stack_tie (void);
static void rs6000_frame_related (rtx, rtx, HOST_WIDE_INT, rtx, rtx);
-static rtx spe_synthesize_frame_save (rtx);
static bool spe_func_has_64bit_regs_p (void);
static void emit_frame_save (rtx, rtx, enum machine_mode, unsigned int,
int, HOST_WIDE_INT);
@@ -3616,6 +3615,7 @@ rs6000_legitimize_address (rtx x, rtx oldx ATTRIBUTE_UNUSED,
&& GET_CODE (XEXP (x, 1)) == CONST_INT
&& (unsigned HOST_WIDE_INT) (INTVAL (XEXP (x, 1)) + 0x8000) >= 0x10000
&& !(SPE_VECTOR_MODE (mode)
+ || ALTIVEC_VECTOR_MODE (mode)
|| (TARGET_E500_DOUBLE && (mode == DFmode || mode == TFmode
|| mode == DImode))))
{
@@ -3633,11 +3633,12 @@ rs6000_legitimize_address (rtx x, rtx oldx ATTRIBUTE_UNUSED,
&& GET_MODE_NUNITS (mode) == 1
&& ((TARGET_HARD_FLOAT && TARGET_FPRS)
|| TARGET_POWERPC64
- || (((mode != DImode && mode != DFmode && mode != DDmode)
- || TARGET_E500_DOUBLE)
- && mode != TFmode && mode != TDmode))
+ || ((mode != DImode && mode != DFmode && mode != DDmode)
+ || TARGET_E500_DOUBLE))
&& (TARGET_POWERPC64 || mode != DImode)
- && mode != TImode)
+ && mode != TImode
+ && mode != TFmode
+ && mode != TDmode)
{
return gen_rtx_PLUS (Pmode, XEXP (x, 0),
force_reg (Pmode, force_operand (XEXP (x, 1), 0)));
@@ -7089,9 +7090,9 @@ static struct builtin_description bdesc_2arg[] =
{ MASK_ALTIVEC, CODE_FOR_altivec_vrlb, "__builtin_altivec_vrlb", ALTIVEC_BUILTIN_VRLB },
{ MASK_ALTIVEC, CODE_FOR_altivec_vrlh, "__builtin_altivec_vrlh", ALTIVEC_BUILTIN_VRLH },
{ MASK_ALTIVEC, CODE_FOR_altivec_vrlw, "__builtin_altivec_vrlw", ALTIVEC_BUILTIN_VRLW },
- { MASK_ALTIVEC, CODE_FOR_altivec_vslb, "__builtin_altivec_vslb", ALTIVEC_BUILTIN_VSLB },
- { MASK_ALTIVEC, CODE_FOR_altivec_vslh, "__builtin_altivec_vslh", ALTIVEC_BUILTIN_VSLH },
- { MASK_ALTIVEC, CODE_FOR_altivec_vslw, "__builtin_altivec_vslw", ALTIVEC_BUILTIN_VSLW },
+ { MASK_ALTIVEC, CODE_FOR_ashlv16qi3, "__builtin_altivec_vslb", ALTIVEC_BUILTIN_VSLB },
+ { MASK_ALTIVEC, CODE_FOR_ashlv8hi3, "__builtin_altivec_vslh", ALTIVEC_BUILTIN_VSLH },
+ { MASK_ALTIVEC, CODE_FOR_ashlv4si3, "__builtin_altivec_vslw", ALTIVEC_BUILTIN_VSLW },
{ MASK_ALTIVEC, CODE_FOR_altivec_vsl, "__builtin_altivec_vsl", ALTIVEC_BUILTIN_VSL },
{ MASK_ALTIVEC, CODE_FOR_altivec_vslo, "__builtin_altivec_vslo", ALTIVEC_BUILTIN_VSLO },
{ MASK_ALTIVEC, CODE_FOR_altivec_vspltb, "__builtin_altivec_vspltb", ALTIVEC_BUILTIN_VSPLTB },
@@ -13902,6 +13903,9 @@ rs6000_expand_compare_and_swapqhi (rtx dst, rtx mem, rtx oldval, rtx newval)
emit_insn (gen_sync_compare_and_swapqhi_internal (wdst, mask,
oldval, newval, mem));
+ /* Shift the result back. */
+ emit_insn (gen_lshrsi3 (wdst, wdst, shift));
+
emit_move_insn (dst, gen_lowpart (mode, wdst));
}
@@ -15386,77 +15390,12 @@ rs6000_frame_related (rtx insn, rtx reg, HOST_WIDE_INT val,
}
}
- if (TARGET_SPE)
- real = spe_synthesize_frame_save (real);
-
RTX_FRAME_RELATED_P (insn) = 1;
REG_NOTES (insn) = gen_rtx_EXPR_LIST (REG_FRAME_RELATED_EXPR,
real,
REG_NOTES (insn));
}
-/* Given an SPE frame note, return a PARALLEL of SETs with the
- original note, plus a synthetic register save. */
-
-static rtx
-spe_synthesize_frame_save (rtx real)
-{
- rtx synth, offset, reg, real2;
-
- if (GET_CODE (real) != SET
- || GET_MODE (SET_SRC (real)) != V2SImode)
- return real;
-
- /* For the SPE, registers saved in 64-bits, get a PARALLEL for their
- frame related note. The parallel contains a set of the register
- being saved, and another set to a synthetic register (n+1200).
- This is so we can differentiate between 64-bit and 32-bit saves.
- Words cannot describe this nastiness. */
-
- gcc_assert (GET_CODE (SET_DEST (real)) == MEM
- && GET_CODE (XEXP (SET_DEST (real), 0)) == PLUS
- && GET_CODE (SET_SRC (real)) == REG);
-
- /* Transform:
- (set (mem (plus (reg x) (const y)))
- (reg z))
- into:
- (set (mem (plus (reg x) (const y+4)))
- (reg z+1200))
- */
-
- real2 = copy_rtx (real);
- PUT_MODE (SET_DEST (real2), SImode);
- reg = SET_SRC (real2);
- real2 = replace_rtx (real2, reg, gen_rtx_REG (SImode, REGNO (reg)));
- synth = copy_rtx (real2);
-
- if (BYTES_BIG_ENDIAN)
- {
- offset = XEXP (XEXP (SET_DEST (real2), 0), 1);
- real2 = replace_rtx (real2, offset, GEN_INT (INTVAL (offset) + 4));
- }
-
- reg = SET_SRC (synth);
-
- synth = replace_rtx (synth, reg,
- gen_rtx_REG (SImode, REGNO (reg) + 1200));
-
- offset = XEXP (XEXP (SET_DEST (synth), 0), 1);
- synth = replace_rtx (synth, offset,
- GEN_INT (INTVAL (offset)
- + (BYTES_BIG_ENDIAN ? 0 : 4)));
-
- RTX_FRAME_RELATED_P (synth) = 1;
- RTX_FRAME_RELATED_P (real2) = 1;
- if (BYTES_BIG_ENDIAN)
- real = gen_rtx_PARALLEL (VOIDmode, gen_rtvec (2, synth, real2));
- else
- real = gen_rtx_PARALLEL (VOIDmode, gen_rtvec (2, real2, synth));
-
- return real;
-}
-
/* Returns an insn that has a vrsave set operation with the
appropriate CLOBBERs. */
diff --git a/gcc/configure.ac b/gcc/configure.ac
index 1509c009caa..41a5710dac9 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1369,9 +1369,29 @@ AC_SUBST(objext)
AC_ARG_ENABLE(sjlj-exceptions,
[ --enable-sjlj-exceptions
arrange to use setjmp/longjmp exception handling],
-[sjlj=`if test $enableval = yes; then echo 1; else echo 0; fi`
-AC_DEFINE_UNQUOTED(CONFIG_SJLJ_EXCEPTIONS, $sjlj,
- [Define 0/1 to force the choice for exception handling model.])])
+[case $target in
+ *-*-hpux10*)
+ if test $enableval != yes; then
+ AC_MSG_WARN([dwarf2 exceptions not supported, sjlj exceptions forced])
+ enableval=yes
+ fi
+ ;;
+esac
+force_sjlj_exceptions=yes],
+[case $target in
+ *-*-hpux10*)
+ force_sjlj_exceptions=yes
+ enableval=yes
+ ;;
+ *)
+ force_sjlj_exceptions=no
+ ;;
+esac])
+if test $force_sjlj_exceptions = yes; then
+ sjlj=`if test $enableval = yes; then echo 1; else echo 0; fi`
+ AC_DEFINE_UNQUOTED(CONFIG_SJLJ_EXCEPTIONS, $sjlj,
+ [Define 0/1 to force the choice for exception handling model.])
+fi
# For platforms with the unwind ABI which includes an unwind library,
# libunwind, we can choose to use the system libunwind.
diff --git a/gcc/coverage.c b/gcc/coverage.c
index 10db9de83a1..f3a0152ab9b 100644
--- a/gcc/coverage.c
+++ b/gcc/coverage.c
@@ -442,6 +442,23 @@ tree_coverage_counter_ref (unsigned counter, unsigned no)
return build4 (ARRAY_REF, gcov_type_node, tree_ctr_tables[counter],
build_int_cst (NULL_TREE, no), NULL, NULL);
}
+
+/* Generate a tree to access the address of COUNTER NO. */
+
+tree
+tree_coverage_counter_addr (unsigned counter, unsigned no)
+{
+ tree gcov_type_node = get_gcov_type ();
+
+ gcc_assert (no < fn_n_ctrs[counter] - fn_b_ctrs[counter]);
+ no += prg_n_ctrs[counter] + fn_b_ctrs[counter];
+
+ /* "no" here is an array index, scaled to bytes later. */
+ return build_fold_addr_expr (build4 (ARRAY_REF, gcov_type_node,
+ tree_ctr_tables[counter],
+ build_int_cst (NULL_TREE, no),
+ NULL, NULL));
+}
/* Generate a checksum for a string. CHKSUM is the current
checksum. */
diff --git a/gcc/coverage.h b/gcc/coverage.h
index 9fa25f1e2fe..bf9917d5280 100644
--- a/gcc/coverage.h
+++ b/gcc/coverage.h
@@ -38,6 +38,8 @@ extern int coverage_begin_output (void);
extern int coverage_counter_alloc (unsigned /*counter*/, unsigned/*num*/);
/* Use a counter from the most recent allocation. */
extern tree tree_coverage_counter_ref (unsigned /*counter*/, unsigned/*num*/);
+/* Use a counter address from the most recent allocation. */
+extern tree tree_coverage_counter_addr (unsigned /*counter*/, unsigned/*num*/);
/* Get all the counters for the current function. */
extern gcov_type *get_coverage_counts (unsigned /*counter*/,
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 3c79d1dd910..673bc6ac524 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,40 @@
+2008-03-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/35328
+ * semantics.c (finish_omp_clauses): Look through NOP_EXPR even
+ if errorcount.
+
+ PR c++/35337
+ * semantics.c (finish_omp_clauses): Use %qD instead of %qE for
+ DECL_P in not a variable and appears more than once error messages.
+
+2008-03-07 Paolo Bonzini <bonzini@gnu.org>
+
+ Revert:
+
+ 2008-02-06 Douglas Gregor <doug.gregor@gmail.com>
+
+ PR c++/35049
+ PR c++/35096
+ * typeck.c (structural_comptypes): Call cp_comptypes.
+ (comptypes): New; called from the C/C++ common bits to perform
+ strict checks.
+ (cp_comptypes): Renamed from comptypes, which is already used,
+ with a different signature, by the C++ front end.
+ (build_reinterpret_cast_1): Call cp_comptypes.
+ (ptr_reasonably_similar): Ditto.
+ * decl.c (decls_match): Ditto.
+ * cvt.c (convert_to_reference): Ditto.
+ * cp-tree.h (same_type_p): Ditto.
+ (same_or_base_type_p): Ditto.
+ (comptypes): Rename to cp_comptypes.
+ * pt.c (canonical_type_parameter): Call cp_comptypes.
+
+2008-03-07 Paolo Bonzini <bonzini@gnu.org>
+
+ * cp-objcp-common.c (cxx_types_compatible_p): Remove obsolete
+ test for equivalence between pointer and references.
+
2008-03-02 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 24924
diff --git a/gcc/cp/cp-objcp-common.c b/gcc/cp/cp-objcp-common.c
index 42b0054055b..140541db05f 100644
--- a/gcc/cp/cp-objcp-common.c
+++ b/gcc/cp/cp-objcp-common.c
@@ -185,19 +185,7 @@ cxx_initialize_diagnostics (diagnostic_context *context)
int
cxx_types_compatible_p (tree x, tree y)
{
- if (same_type_ignoring_top_level_qualifiers_p (x, y))
- return 1;
-
- /* Once we get to the middle-end, references and pointers are
- interchangeable. FIXME should we try to replace all references with
- pointers? */
- if (POINTER_TYPE_P (x) && POINTER_TYPE_P (y)
- && TYPE_MODE (x) == TYPE_MODE (y)
- && TYPE_REF_CAN_ALIAS_ALL (x) == TYPE_REF_CAN_ALIAS_ALL (y)
- && same_type_p (TREE_TYPE (x), TREE_TYPE (y)))
- return 1;
-
- return 0;
+ return same_type_ignoring_top_level_qualifiers_p (x, y);
}
tree
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 81e88613ff3..4f1a34b404c 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -281,7 +281,7 @@ typedef struct ptrmem_cst * ptrmem_cst_t;
/* Returns nonzero iff TYPE1 and TYPE2 are the same type, in the usual
sense of `same'. */
#define same_type_p(TYPE1, TYPE2) \
- cp_comptypes ((TYPE1), (TYPE2), COMPARE_STRICT)
+ comptypes ((TYPE1), (TYPE2), COMPARE_STRICT)
/* Returns nonzero iff TYPE1 and TYPE2 are the same type, ignoring
top-level qualifiers. */
@@ -3744,7 +3744,7 @@ enum overload_flags { NO_SPECIAL = 0, DTOR_FLAG, OP_FLAG, TYPENAME_FLAG };
#define WANT_VECTOR 32 /* vector types */
#define WANT_ARITH (WANT_INT | WANT_FLOAT | WANT_VECTOR)
-/* Used with cp_comptypes, and related functions, to guide type
+/* Used with comptypes, and related functions, to guide type
comparison. */
#define COMPARE_STRICT 0 /* Just check if the types are the
@@ -3780,7 +3780,7 @@ enum overload_flags { NO_SPECIAL = 0, DTOR_FLAG, OP_FLAG, TYPENAME_FLAG };
is derived from TYPE1, or if TYPE2 is a pointer (reference) to a
class derived from the type pointed to (referred to) by TYPE1. */
#define same_or_base_type_p(TYPE1, TYPE2) \
- cp_comptypes ((TYPE1), (TYPE2), COMPARE_BASE)
+ comptypes ((TYPE1), (TYPE2), COMPARE_BASE)
/* These macros are used to access a TEMPLATE_PARM_INDEX. */
#define TEMPLATE_PARM_INDEX_CAST(NODE) \
@@ -4765,7 +4765,7 @@ extern tree complete_type (tree);
extern tree complete_type_or_else (tree, tree);
extern int type_unknown_p (const_tree);
extern bool comp_except_specs (const_tree, const_tree, bool);
-extern bool cp_comptypes (tree, tree, int);
+extern bool comptypes (tree, tree, int);
extern bool compparms (const_tree, const_tree);
extern int comp_cv_qualification (const_tree, const_tree);
extern int comp_cv_qual_signature (tree, tree);
diff --git a/gcc/cp/cvt.c b/gcc/cp/cvt.c
index ee5759d6b4f..2911fea0643 100644
--- a/gcc/cp/cvt.c
+++ b/gcc/cp/cvt.c
@@ -465,8 +465,8 @@ convert_to_reference (tree reftype, tree expr, int convtype,
/* B* bp; A& ar = (A&)bp; is valid, but it's probably not what they
meant. */
if (TREE_CODE (intype) == POINTER_TYPE
- && (cp_comptypes (TREE_TYPE (intype), type,
- COMPARE_BASE | COMPARE_DERIVED)))
+ && (comptypes (TREE_TYPE (intype), type,
+ COMPARE_BASE | COMPARE_DERIVED)))
warning (0, "casting %qT to %qT does not dereference pointer",
intype, reftype);
@@ -604,7 +604,7 @@ ocp_convert (tree type, tree expr, int convtype, int flags)
/* The call to fold will not always remove the NOP_EXPR as
might be expected, since if one of the types is a typedef;
the comparison in fold is just equality of pointers, not a
- call to cp_comptypes. We don't call fold in this case because
+ call to comptypes. We don't call fold in this case because
that can result in infinite recursion; fold will call
convert, which will call ocp_convert, etc. */
return e;
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 32a0db820ce..a9b068c655e 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -1010,9 +1010,9 @@ decls_match (tree newdecl, tree olddecl)
else if (TREE_TYPE (newdecl) == NULL_TREE)
types_match = 0;
else
- types_match = cp_comptypes (TREE_TYPE (newdecl),
- TREE_TYPE (olddecl),
- COMPARE_REDECLARATION);
+ types_match = comptypes (TREE_TYPE (newdecl),
+ TREE_TYPE (olddecl),
+ COMPARE_REDECLARATION);
}
return types_match;
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index ade17a5cedd..d03ea9f2c38 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -2891,7 +2891,7 @@ canonical_type_parameter (tree type)
VEC_safe_push (tree, gc, canonical_template_parms, NULL_TREE);
list = VEC_index (tree, canonical_template_parms, idx);
- while (list && !cp_comptypes (type, TREE_VALUE (list), COMPARE_STRUCTURAL))
+ while (list && !comptypes (type, TREE_VALUE (list), COMPARE_STRUCTURAL))
list = TREE_CHAIN (list);
if (list)
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 472c5cc72f2..d17a22e3221 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -3400,13 +3400,16 @@ finish_omp_clauses (tree clauses)
{
if (processing_template_decl)
break;
- error ("%qE is not a variable in clause %<firstprivate%>", t);
+ if (DECL_P (t))
+ error ("%qD is not a variable in clause %<firstprivate%>", t);
+ else
+ error ("%qE is not a variable in clause %<firstprivate%>", t);
remove = true;
}
else if (bitmap_bit_p (&generic_head, DECL_UID (t))
|| bitmap_bit_p (&firstprivate_head, DECL_UID (t)))
{
- error ("%qE appears more than once in data clauses", t);
+ error ("%qD appears more than once in data clauses", t);
remove = true;
}
else
@@ -3419,13 +3422,16 @@ finish_omp_clauses (tree clauses)
{
if (processing_template_decl)
break;
- error ("%qE is not a variable in clause %<lastprivate%>", t);
+ if (DECL_P (t))
+ error ("%qD is not a variable in clause %<lastprivate%>", t);
+ else
+ error ("%qE is not a variable in clause %<lastprivate%>", t);
remove = true;
}
else if (bitmap_bit_p (&generic_head, DECL_UID (t))
|| bitmap_bit_p (&lastprivate_head, DECL_UID (t)))
{
- error ("%qE appears more than once in data clauses", t);
+ error ("%qD appears more than once in data clauses", t);
remove = true;
}
else
@@ -3661,7 +3667,7 @@ finish_omp_clauses (tree clauses)
complete_ctor_identifier,
t, inner_type, LOOKUP_NORMAL);
- if (targetm.cxx.cdtor_returns_this ())
+ if (targetm.cxx.cdtor_returns_this () || errorcount)
/* Because constructors and destructors return this,
the call will have been cast to "void". Remove the
cast here. We would like to use STRIP_NOPS, but it
@@ -3683,7 +3689,7 @@ finish_omp_clauses (tree clauses)
t = build_special_member_call (t, complete_dtor_identifier,
NULL, inner_type, LOOKUP_NORMAL);
- if (targetm.cxx.cdtor_returns_this ())
+ if (targetm.cxx.cdtor_returns_this () || errorcount)
/* Because constructors and destructors return this,
the call will have been cast to "void". Remove the
cast here. We would like to use STRIP_NOPS, but it
diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c
index bb8d71cbbfc..d0eaf981a8a 100644
--- a/gcc/cp/typeck.c
+++ b/gcc/cp/typeck.c
@@ -160,7 +160,7 @@ type_unknown_p (const_tree exp)
/* Return the common type of two parameter lists.
- We assume that cp_comptypes has already been done and returned 1;
+ We assume that comptypes has already been done and returned 1;
if that isn't so, this may crash.
As an optimization, free the space we allocate if the parameter
@@ -573,7 +573,7 @@ composite_pointer_type (tree t1, tree t2, tree arg1, tree arg2,
}
/* Return the merged type of two types.
- We assume that cp_comptypes has already been done and returned 1;
+ We assume that comptypes has already been done and returned 1;
if that isn't so, this may crash.
This just combines attributes and default arguments; any other
@@ -735,7 +735,7 @@ merge_types (tree t1, tree t2)
}
/* Return the common type of two types.
- We assume that cp_comptypes has already been done and returned 1;
+ We assume that comptypes has already been done and returned 1;
if that isn't so, this may crash.
This is the type for the result of most arithmetic operations
@@ -926,7 +926,7 @@ comp_array_types (const_tree t1, const_tree t2, bool allow_redeclaration)
return true;
}
-/* Subroutine in cp_comptypes. */
+/* Subroutine in comptypes. */
static bool
structural_comptypes (tree t1, tree t2, int strict)
@@ -1034,8 +1034,8 @@ structural_comptypes (tree t1, tree t2, int strict)
return false;
case OFFSET_TYPE:
- if (!cp_comptypes (TYPE_OFFSET_BASETYPE (t1), TYPE_OFFSET_BASETYPE (t2),
- strict & ~COMPARE_REDECLARATION))
+ if (!comptypes (TYPE_OFFSET_BASETYPE (t1), TYPE_OFFSET_BASETYPE (t2),
+ strict & ~COMPARE_REDECLARATION))
return false;
if (!same_type_p (TREE_TYPE (t1), TREE_TYPE (t2)))
return false;
@@ -1123,22 +1123,11 @@ structural_comptypes (tree t1, tree t2, int strict)
return targetm.comp_type_attributes (t1, t2);
}
-extern int comptypes (tree, tree);
-
-/* Type comparison function that matches the signature of comptypes
- from c-tree.h, which is used by the C front end and some of the
- C/C++ common bits. */
-int
-comptypes (tree t1, tree t2)
-{
- return cp_comptypes (t1, t2, COMPARE_STRICT);
-}
-
/* Return true if T1 and T2 are related as allowed by STRICT. STRICT
is a bitwise-or of the COMPARE_* flags. */
bool
-cp_comptypes (tree t1, tree t2, int strict)
+comptypes (tree t1, tree t2, int strict)
{
if (strict == COMPARE_STRICT)
{
@@ -1235,7 +1224,7 @@ comp_cv_qual_signature (tree type1, tree type2)
return 0;
}
-/* Subroutines of `cp_comptypes'. */
+/* Subroutines of `comptypes'. */
/* Return true if two parameter type lists PARMS1 and PARMS2 are
equivalent in the sense that functions with those parameter types
@@ -5264,8 +5253,8 @@ build_reinterpret_cast_1 (tree type, tree expr, bool c_cast_p,
"B" are related class types; the reinterpret_cast does not
adjust the pointer. */
if (TYPE_PTR_P (intype)
- && (cp_comptypes (TREE_TYPE (intype), TREE_TYPE (type),
- COMPARE_BASE | COMPARE_DERIVED)))
+ && (comptypes (TREE_TYPE (intype), TREE_TYPE (type),
+ COMPARE_BASE | COMPARE_DERIVED)))
warning (0, "casting %qT to %qT does not dereference pointer",
intype, type);
@@ -6923,9 +6912,9 @@ ptr_reasonably_similar (const_tree to, const_tree from)
return 0;
if (TREE_CODE (from) == OFFSET_TYPE
- && cp_comptypes (TYPE_OFFSET_BASETYPE (to),
- TYPE_OFFSET_BASETYPE (from),
- COMPARE_BASE | COMPARE_DERIVED))
+ && comptypes (TYPE_OFFSET_BASETYPE (to),
+ TYPE_OFFSET_BASETYPE (from),
+ COMPARE_BASE | COMPARE_DERIVED))
continue;
if (TREE_CODE (to) == VECTOR_TYPE
@@ -6940,7 +6929,7 @@ ptr_reasonably_similar (const_tree to, const_tree from)
return 1;
if (TREE_CODE (to) != POINTER_TYPE)
- return cp_comptypes
+ return comptypes
(TYPE_MAIN_VARIANT (to), TYPE_MAIN_VARIANT (from),
COMPARE_BASE | COMPARE_DERIVED);
}
diff --git a/gcc/cse.c b/gcc/cse.c
index 9f31e670966..82ea2b70da1 100644
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -5992,6 +5992,21 @@ cse_extended_basic_block (struct cse_basic_block_data *ebb_data)
int no_conflict = 0;
bb = ebb_data->path[path_entry].bb;
+
+ /* Invalidate recorded information for eh regs if there is an EH
+ edge pointing to that bb. */
+ if (bb_has_eh_pred (bb))
+ {
+ struct df_ref **def_rec;
+
+ for (def_rec = df_get_artificial_defs (bb->index); *def_rec; def_rec++)
+ {
+ struct df_ref *def = *def_rec;
+ if (DF_REF_FLAGS (def) & DF_REF_AT_TOP)
+ invalidate (DF_REF_REG (def), GET_MODE (DF_REF_REG (def)));
+ }
+ }
+
FOR_BB_INSNS (bb, insn)
{
/* If we have processed 1,000 insns, flush the hash table to
diff --git a/gcc/df-scan.c b/gcc/df-scan.c
index 3dc759cedb3..b5d88f3aa58 100644
--- a/gcc/df-scan.c
+++ b/gcc/df-scan.c
@@ -95,7 +95,7 @@ static struct df_mw_hardreg * df_null_mw_rec[1];
static void df_ref_record (struct df_collection_rec *,
rtx, rtx *,
basic_block, rtx, enum df_ref_type,
- enum df_ref_flags);
+ enum df_ref_flags, int, int);
static void df_def_record_1 (struct df_collection_rec *,
rtx, basic_block, rtx,
enum df_ref_flags);
@@ -104,11 +104,11 @@ static void df_defs_record (struct df_collection_rec *,
enum df_ref_flags);
static void df_uses_record (struct df_collection_rec *,
rtx *, enum df_ref_type,
- basic_block, rtx, enum df_ref_flags);
+ basic_block, rtx, enum df_ref_flags, int, int);
static struct df_ref *df_ref_create_structure (struct df_collection_rec *, rtx, rtx *,
basic_block, rtx, enum df_ref_type,
- enum df_ref_flags);
+ enum df_ref_flags, int, int);
static void df_insn_refs_collect (struct df_collection_rec*,
basic_block, rtx);
@@ -160,6 +160,7 @@ static bool regs_ever_live[FIRST_PSEUDO_REGISTER];
struct df_scan_problem_data
{
alloc_pool ref_pool;
+ alloc_pool ref_extract_pool;
alloc_pool insn_pool;
alloc_pool reg_pool;
alloc_pool mw_reg_pool;
@@ -214,6 +215,7 @@ df_scan_free_internal (void)
free_alloc_pool (df_scan->block_pool);
free_alloc_pool (problem_data->ref_pool);
+ free_alloc_pool (problem_data->ref_extract_pool);
free_alloc_pool (problem_data->insn_pool);
free_alloc_pool (problem_data->reg_pool);
free_alloc_pool (problem_data->mw_reg_pool);
@@ -296,6 +298,9 @@ df_scan_alloc (bitmap all_blocks ATTRIBUTE_UNUSED)
problem_data->ref_pool
= create_alloc_pool ("df_scan_ref pool",
sizeof (struct df_ref), block_size);
+ problem_data->ref_extract_pool
+ = create_alloc_pool ("df_scan_ref extract pool",
+ sizeof (struct df_ref_extract), block_size);
problem_data->insn_pool
= create_alloc_pool ("df_scan_insn pool",
sizeof (struct df_insn_info), block_size);
@@ -608,13 +613,19 @@ df_scan_blocks (void)
/* Create a new ref of type DF_REF_TYPE for register REG at address
- LOC within INSN of BB. */
+ LOC within INSN of BB. This function is only used externally.
+
+ If the REF_FLAGS field contain DF_REF_SIGN_EXTRACT or
+ DF_REF_ZERO_EXTRACT. WIDTH and OFFSET are used to access the fields
+ if they were constants. Otherwise they should be -1 if those flags
+ were set. */
struct df_ref *
df_ref_create (rtx reg, rtx *loc, rtx insn,
basic_block bb,
enum df_ref_type ref_type,
- enum df_ref_flags ref_flags)
+ enum df_ref_flags ref_flags,
+ int width, int offset)
{
struct df_ref *ref;
struct df_reg_info **reg_info;
@@ -629,7 +640,7 @@ df_ref_create (rtx reg, rtx *loc, rtx insn,
/* You cannot hack artificial refs. */
gcc_assert (insn);
ref = df_ref_create_structure (NULL, reg, loc, bb, insn,
- ref_type, ref_flags);
+ ref_type, ref_flags, width, offset);
if (DF_REF_TYPE (ref) == DF_REF_REG_DEF)
{
@@ -727,6 +738,18 @@ df_ref_create (rtx reg, rtx *loc, rtx insn,
UTILITIES TO CREATE AND DESTROY REFS AND CHAINS.
----------------------------------------------------------------------------*/
+static void
+df_free_ref (struct df_ref *ref)
+{
+ struct df_scan_problem_data *problem_data
+ = (struct df_scan_problem_data *) df_scan->problem_data;
+
+ if (DF_REF_FLAGS_IS_SET (ref, DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
+ pool_free (problem_data->ref_extract_pool, (struct df_ref_extract *)ref);
+ else
+ pool_free (problem_data->ref_pool, ref);
+}
+
/* Unlink and delete REF at the reg_use, reg_eq_use or reg_def chain.
Also delete the def-use or use-def chain if it exists. */
@@ -736,8 +759,6 @@ df_reg_chain_unlink (struct df_ref *ref)
{
struct df_ref *next = DF_REF_NEXT_REG (ref);
struct df_ref *prev = DF_REF_PREV_REG (ref);
- struct df_scan_problem_data *problem_data
- = (struct df_scan_problem_data *) df_scan->problem_data;
int id = DF_REF_ID (ref);
struct df_reg_info *reg_info;
struct df_ref **refs = NULL;
@@ -808,7 +829,7 @@ df_reg_chain_unlink (struct df_ref *ref)
if (next)
DF_REF_PREV_REG (next) = prev;
- pool_free (problem_data->ref_pool, ref);
+ df_free_ref (ref);
}
@@ -1058,13 +1079,13 @@ df_free_collection_rec (struct df_collection_rec *collection_rec)
if (collection_rec->def_vec)
for (ref = collection_rec->def_vec; *ref; ref++)
- pool_free (problem_data->ref_pool, *ref);
+ df_free_ref (*ref);
if (collection_rec->use_vec)
for (ref = collection_rec->use_vec; *ref; ref++)
- pool_free (problem_data->ref_pool, *ref);
+ df_free_ref (*ref);
if (collection_rec->eq_use_vec)
for (ref = collection_rec->eq_use_vec; *ref; ref++)
- pool_free (problem_data->ref_pool, *ref);
+ df_free_ref (*ref);
if (collection_rec->mw_vec)
for (mw = collection_rec->mw_vec; *mw; mw++)
pool_free (problem_data->mw_reg_pool, *mw);
@@ -2045,7 +2066,7 @@ df_notes_rescan (rtx insn)
case REG_EQUAL:
df_uses_record (&collection_rec,
&XEXP (note, 0), DF_REF_REG_USE,
- bb, insn, DF_REF_IN_NOTE);
+ bb, insn, DF_REF_IN_NOTE, -1, -1);
default:
break;
}
@@ -2115,6 +2136,16 @@ df_ref_equal_p (struct df_ref *ref1, struct df_ref *ref2)
{
if (!ref2)
return false;
+
+ /* The two flag tests here are only to make sure we do not look at
+ the offset and width if they are not there. The flags are
+ compared in the next set of tests. */
+ if ((DF_REF_FLAGS_IS_SET (ref1, DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
+ && (DF_REF_FLAGS_IS_SET (ref2, DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
+ && ((DF_REF_OFFSET (ref1) != DF_REF_OFFSET (ref2))
+ || (DF_REF_WIDTH (ref1) != DF_REF_WIDTH (ref2))))
+ return false;
+
return (ref1 == ref2) ||
(DF_REF_REG (ref1) == DF_REF_REG (ref2)
&& DF_REF_REGNO (ref1) == DF_REF_REGNO (ref2)
@@ -2163,6 +2194,16 @@ df_ref_compare (const void *r1, const void *r2)
else
return 1;
}
+
+ /* The flags are the same at this point so it is safe to only look
+ at ref1. */
+ if (DF_REF_FLAGS_IS_SET (ref1, DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
+ {
+ if (DF_REF_OFFSET (ref1) != DF_REF_OFFSET (ref2))
+ return DF_REF_OFFSET (ref1) - DF_REF_OFFSET (ref2);
+ if (DF_REF_WIDTH (ref1) != DF_REF_WIDTH (ref2))
+ return DF_REF_WIDTH (ref1) - DF_REF_WIDTH (ref2);
+ }
return 0;
}
@@ -2179,8 +2220,6 @@ df_swap_refs (struct df_ref **ref_vec, int i, int j)
static unsigned int
df_sort_and_compress_refs (struct df_ref **ref_vec, unsigned int count)
{
- struct df_scan_problem_data *problem_data
- = (struct df_scan_problem_data *) df_scan->problem_data;
unsigned int i;
unsigned int dist = 0;
@@ -2215,7 +2254,7 @@ df_sort_and_compress_refs (struct df_ref **ref_vec, unsigned int count)
/* Find the next ref that is not equal to the current ref. */
while (df_ref_equal_p (ref_vec[i], ref_vec[i + dist + 1]))
{
- pool_free (problem_data->ref_pool, ref_vec[i + dist + 1]);
+ df_free_ref (ref_vec[i + dist + 1]);
dist++;
}
/* Copy it down to the next position. */
@@ -2541,21 +2580,34 @@ df_refs_add_to_chains (struct df_collection_rec *collection_rec,
}
-/* Allocate a ref and initialize its fields. */
+/* Allocate a ref and initialize its fields.
+
+ If the REF_FLAGS field contain DF_REF_SIGN_EXTRACT or
+ DF_REF_ZERO_EXTRACT. WIDTH and OFFSET are used to access the fields
+ if they were constants. Otherwise they should be -1 if those flags
+ were set. */
static struct df_ref *
df_ref_create_structure (struct df_collection_rec *collection_rec,
rtx reg, rtx *loc,
basic_block bb, rtx insn,
enum df_ref_type ref_type,
- enum df_ref_flags ref_flags)
+ enum df_ref_flags ref_flags,
+ int width, int offset)
{
struct df_ref *this_ref;
int regno = REGNO (GET_CODE (reg) == SUBREG ? SUBREG_REG (reg) : reg);
struct df_scan_problem_data *problem_data
= (struct df_scan_problem_data *) df_scan->problem_data;
- this_ref = pool_alloc (problem_data->ref_pool);
+ if (ref_flags & (DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
+ {
+ this_ref = pool_alloc (problem_data->ref_extract_pool);
+ DF_REF_WIDTH (this_ref) = width;
+ DF_REF_OFFSET (this_ref) = offset;
+ }
+ else
+ this_ref = pool_alloc (problem_data->ref_pool);
DF_REF_ID (this_ref) = -1;
DF_REF_REG (this_ref) = reg;
DF_REF_REGNO (this_ref) = regno;
@@ -2604,14 +2656,21 @@ df_ref_create_structure (struct df_collection_rec *collection_rec,
/* Create new references of type DF_REF_TYPE for each part of register REG
- at address LOC within INSN of BB. */
+ at address LOC within INSN of BB.
+
+ If the REF_FLAGS field contain DF_REF_SIGN_EXTRACT or
+ DF_REF_ZERO_EXTRACT. WIDTH and OFFSET are used to access the fields
+ if they were constants. Otherwise they should be -1 if those flags
+ were set. */
+
static void
df_ref_record (struct df_collection_rec *collection_rec,
rtx reg, rtx *loc,
basic_block bb, rtx insn,
enum df_ref_type ref_type,
- enum df_ref_flags ref_flags)
+ enum df_ref_flags ref_flags,
+ int width, int offset)
{
unsigned int regno;
@@ -2660,7 +2719,7 @@ df_ref_record (struct df_collection_rec *collection_rec,
for (i = regno; i < endregno; i++)
{
ref = df_ref_create_structure (collection_rec, regno_reg_rtx[i], loc,
- bb, insn, ref_type, ref_flags);
+ bb, insn, ref_type, ref_flags, width, offset);
gcc_assert (ORIGINAL_REGNO (DF_REF_REG (ref)) == i);
}
@@ -2669,7 +2728,7 @@ df_ref_record (struct df_collection_rec *collection_rec,
{
struct df_ref *ref;
ref = df_ref_create_structure (collection_rec, reg, loc, bb, insn,
- ref_type, ref_flags);
+ ref_type, ref_flags, width, offset);
}
}
@@ -2703,6 +2762,8 @@ df_def_record_1 (struct df_collection_rec *collection_rec,
{
rtx *loc;
rtx dst;
+ int offset = -1;
+ int width = -1;
/* We may recursively call ourselves on EXPR_LIST when dealing with PARALLEL
construct. */
@@ -2730,16 +2791,24 @@ df_def_record_1 (struct df_collection_rec *collection_rec,
return;
}
- /* Maybe, we should flag the use of STRICT_LOW_PART somehow. It might
- be handy for the reg allocator. */
- while (GET_CODE (dst) == STRICT_LOW_PART
- || GET_CODE (dst) == ZERO_EXTRACT)
+ if (GET_CODE (dst) == STRICT_LOW_PART)
{
- flags |= DF_REF_READ_WRITE | DF_REF_PARTIAL;
- if (GET_CODE (dst) == ZERO_EXTRACT)
- flags |= DF_REF_EXTRACT;
- else
- flags |= DF_REF_STRICT_LOWER_PART;
+ flags |= DF_REF_READ_WRITE | DF_REF_PARTIAL | DF_REF_STRICT_LOW_PART;
+
+ loc = &XEXP (dst, 0);
+ dst = *loc;
+ }
+
+ if (GET_CODE (dst) == ZERO_EXTRACT)
+ {
+ flags |= DF_REF_READ_WRITE | DF_REF_PARTIAL | DF_REF_ZERO_EXTRACT;
+
+ if (GET_CODE (XEXP (dst, 1)) == CONST_INT
+ && GET_CODE (XEXP (dst, 2)) == CONST_INT)
+ {
+ width = INTVAL (XEXP (dst, 1));
+ offset = INTVAL (XEXP (dst, 2));
+ }
loc = &XEXP (dst, 0);
dst = *loc;
@@ -2749,13 +2818,13 @@ df_def_record_1 (struct df_collection_rec *collection_rec,
if (REG_P (dst))
{
df_ref_record (collection_rec,
- dst, loc, bb, insn, DF_REF_REG_DEF, flags);
+ dst, loc, bb, insn, DF_REF_REG_DEF, flags, width, offset);
/* We want to keep sp alive everywhere - by making all
writes to sp also use of sp. */
if (REGNO (dst) == STACK_POINTER_REGNUM)
df_ref_record (collection_rec,
- dst, NULL, bb, insn, DF_REF_REG_USE, flags);
+ dst, NULL, bb, insn, DF_REF_REG_USE, flags, width, offset);
}
else if (GET_CODE (dst) == SUBREG && REG_P (SUBREG_REG (dst)))
{
@@ -2765,7 +2834,7 @@ df_def_record_1 (struct df_collection_rec *collection_rec,
flags |= DF_REF_SUBREG;
df_ref_record (collection_rec,
- dst, loc, bb, insn, DF_REF_REG_DEF, flags);
+ dst, loc, bb, insn, DF_REF_REG_DEF, flags, width, offset);
}
}
@@ -2801,12 +2870,18 @@ df_defs_record (struct df_collection_rec *collection_rec,
}
-/* Process all the registers used in the rtx at address LOC. */
+/* Process all the registers used in the rtx at address LOC.
+
+ If the REF_FLAGS field contain DF_REF_SIGN_EXTRACT or
+ DF_REF_ZERO_EXTRACT. WIDTH and LOWER are used to access the fields
+ if they were constants. Otherwise they should be -1 if those flags
+ were set. */
static void
df_uses_record (struct df_collection_rec *collection_rec,
rtx *loc, enum df_ref_type ref_type,
- basic_block bb, rtx insn, enum df_ref_flags flags)
+ basic_block bb, rtx insn, enum df_ref_flags flags,
+ int width, int offset)
{
RTX_CODE code;
rtx x;
@@ -2837,7 +2912,7 @@ df_uses_record (struct df_collection_rec *collection_rec,
if (MEM_P (XEXP (x, 0)))
df_uses_record (collection_rec,
&XEXP (XEXP (x, 0), 0),
- DF_REF_REG_MEM_STORE, bb, insn, flags);
+ DF_REF_REG_MEM_STORE, bb, insn, flags, width, offset);
/* If we're clobbering a REG then we have a def so ignore. */
return;
@@ -2845,7 +2920,7 @@ df_uses_record (struct df_collection_rec *collection_rec,
case MEM:
df_uses_record (collection_rec,
&XEXP (x, 0), DF_REF_REG_MEM_LOAD,
- bb, insn, flags & DF_REF_IN_NOTE);
+ bb, insn, flags & DF_REF_IN_NOTE, width, offset);
return;
case SUBREG:
@@ -2855,22 +2930,46 @@ df_uses_record (struct df_collection_rec *collection_rec,
if (!REG_P (SUBREG_REG (x)))
{
loc = &SUBREG_REG (x);
- df_uses_record (collection_rec, loc, ref_type, bb, insn, flags);
+ df_uses_record (collection_rec, loc, ref_type, bb, insn, flags, width, offset);
return;
}
/* ... Fall through ... */
case REG:
df_ref_record (collection_rec,
- x, loc, bb, insn, ref_type, flags);
+ x, loc, bb, insn, ref_type, flags, width, offset);
return;
+ case SIGN_EXTRACT:
+ case ZERO_EXTRACT:
+ {
+ /* If the parameters to the zero or sign extract are
+ constants, strip them off and recurse, otherwise there is
+ no information that we can gain from this operation. */
+ if (GET_CODE (XEXP (x, 1)) == CONST_INT
+ && GET_CODE (XEXP (x, 2)) == CONST_INT)
+ {
+ width = INTVAL (XEXP (x, 1));
+ offset = INTVAL (XEXP (x, 2));
+
+ if (code == ZERO_EXTRACT)
+ flags |= DF_REF_ZERO_EXTRACT;
+ else
+ flags |= DF_REF_SIGN_EXTRACT;
+
+ df_uses_record (collection_rec,
+ &XEXP (x, 0), ref_type, bb, insn, flags, width, offset);
+ return;
+ }
+ }
+ break;
+
case SET:
{
rtx dst = SET_DEST (x);
gcc_assert (!(flags & DF_REF_IN_NOTE));
df_uses_record (collection_rec,
- &SET_SRC (x), DF_REF_REG_USE, bb, insn, flags);
+ &SET_SRC (x), DF_REF_REG_USE, bb, insn, flags, width, offset);
switch (GET_CODE (dst))
{
@@ -2879,7 +2978,7 @@ df_uses_record (struct df_collection_rec *collection_rec,
{
df_uses_record (collection_rec, &SUBREG_REG (dst),
DF_REF_REG_USE, bb, insn,
- flags | DF_REF_READ_WRITE | DF_REF_SUBREG);
+ flags | DF_REF_READ_WRITE | DF_REF_SUBREG, width, offset);
break;
}
/* Fall through. */
@@ -2891,7 +2990,7 @@ df_uses_record (struct df_collection_rec *collection_rec,
break;
case MEM:
df_uses_record (collection_rec, &XEXP (dst, 0),
- DF_REF_REG_MEM_STORE, bb, insn, flags);
+ DF_REF_REG_MEM_STORE, bb, insn, flags, width, offset);
break;
case STRICT_LOW_PART:
{
@@ -2902,20 +3001,31 @@ df_uses_record (struct df_collection_rec *collection_rec,
df_uses_record (collection_rec,
(GET_CODE (dst) == SUBREG) ? &SUBREG_REG (dst) : temp,
DF_REF_REG_USE, bb, insn,
- DF_REF_READ_WRITE | DF_REF_STRICT_LOWER_PART);
+ DF_REF_READ_WRITE | DF_REF_STRICT_LOW_PART, width, offset);
}
break;
case ZERO_EXTRACT:
- case SIGN_EXTRACT:
- df_uses_record (collection_rec, &XEXP (dst, 0),
- DF_REF_REG_USE, bb, insn,
- DF_REF_READ_WRITE | DF_REF_EXTRACT);
- df_uses_record (collection_rec, &XEXP (dst, 1),
- DF_REF_REG_USE, bb, insn, flags);
- df_uses_record (collection_rec, &XEXP (dst, 2),
- DF_REF_REG_USE, bb, insn, flags);
- dst = XEXP (dst, 0);
+ {
+ if (GET_CODE (XEXP (dst, 1)) == CONST_INT
+ && GET_CODE (XEXP (dst, 2)) == CONST_INT)
+ {
+ width = INTVAL (XEXP (dst, 1));
+ offset = INTVAL (XEXP (dst, 2));
+ }
+ else
+ {
+ df_uses_record (collection_rec, &XEXP (dst, 1),
+ DF_REF_REG_USE, bb, insn, flags, width, offset);
+ df_uses_record (collection_rec, &XEXP (dst, 2),
+ DF_REF_REG_USE, bb, insn, flags, width, offset);
+ }
+
+ df_uses_record (collection_rec, &XEXP (dst, 0),
+ DF_REF_REG_USE, bb, insn,
+ DF_REF_READ_WRITE | DF_REF_ZERO_EXTRACT, width, offset);
+ }
break;
+
default:
gcc_unreachable ();
}
@@ -2962,7 +3072,7 @@ df_uses_record (struct df_collection_rec *collection_rec,
for (j = 0; j < ASM_OPERANDS_INPUT_LENGTH (x); j++)
df_uses_record (collection_rec, &ASM_OPERANDS_INPUT (x, j),
- DF_REF_REG_USE, bb, insn, flags);
+ DF_REF_REG_USE, bb, insn, flags, width, offset);
return;
}
break;
@@ -2977,7 +3087,7 @@ df_uses_record (struct df_collection_rec *collection_rec,
/* Catch the def of the register being modified. */
df_ref_record (collection_rec, XEXP (x, 0), &XEXP (x, 0), bb, insn,
DF_REF_REG_DEF,
- flags | DF_REF_READ_WRITE | DF_REF_PRE_POST_MODIFY);
+ flags | DF_REF_READ_WRITE | DF_REF_PRE_POST_MODIFY, width, offset);
/* ... Fall through to handle uses ... */
@@ -3000,14 +3110,16 @@ df_uses_record (struct df_collection_rec *collection_rec,
loc = &XEXP (x, 0);
goto retry;
}
- df_uses_record (collection_rec, &XEXP (x, i), ref_type, bb, insn, flags);
+ df_uses_record (collection_rec, &XEXP (x, i), ref_type,
+ bb, insn, flags, width, offset);
}
else if (fmt[i] == 'E')
{
int j;
for (j = 0; j < XVECLEN (x, i); j++)
df_uses_record (collection_rec,
- &XVECEXP (x, i, j), ref_type, bb, insn, flags);
+ &XVECEXP (x, i, j), ref_type,
+ bb, insn, flags, width, offset);
}
}
}
@@ -3027,11 +3139,21 @@ df_get_conditional_uses (struct df_collection_rec *collection_rec)
struct df_ref *ref = collection_rec->def_vec[i];
if (DF_REF_FLAGS_IS_SET (ref, DF_REF_CONDITIONAL))
{
- struct df_ref *use
- = df_ref_create_structure (collection_rec, DF_REF_REG (ref),
- DF_REF_LOC (ref), DF_REF_BB (ref),
- DF_REF_INSN (ref), DF_REF_REG_USE,
- DF_REF_FLAGS (ref) & ~DF_REF_CONDITIONAL);
+ int width = -1;
+ int offset = -1;
+ struct df_ref *use;
+
+ if (DF_REF_FLAGS_IS_SET (ref, DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
+ {
+ width = DF_REF_WIDTH (ref);
+ offset = DF_REF_OFFSET (ref);
+ }
+
+ use = df_ref_create_structure (collection_rec, DF_REF_REG (ref),
+ DF_REF_LOC (ref), DF_REF_BB (ref),
+ DF_REF_INSN (ref), DF_REF_REG_USE,
+ DF_REF_FLAGS (ref) & ~DF_REF_CONDITIONAL,
+ width, offset);
DF_REF_REGNO (use) = DF_REF_REGNO (ref);
}
}
@@ -3069,7 +3191,7 @@ df_get_call_refs (struct df_collection_rec * collection_rec,
{
if (GET_CODE (XEXP (note, 0)) == USE)
df_uses_record (collection_rec, &XEXP (XEXP (note, 0), 0),
- DF_REF_REG_USE, bb, insn, flags);
+ DF_REF_REG_USE, bb, insn, flags, -1, -1);
else if (GET_CODE (XEXP (note, 0)) == CLOBBER)
{
if (REG_P (XEXP (XEXP (note, 0), 0)))
@@ -3081,13 +3203,13 @@ df_get_call_refs (struct df_collection_rec * collection_rec,
}
else
df_uses_record (collection_rec, &XEXP (note, 0),
- DF_REF_REG_USE, bb, insn, flags);
+ DF_REF_REG_USE, bb, insn, flags, -1, -1);
}
}
/* The stack ptr is used (honorarily) by a CALL insn. */
df_ref_record (collection_rec, regno_reg_rtx[STACK_POINTER_REGNUM],
- NULL, bb, insn, DF_REF_REG_USE, DF_REF_CALL_STACK_USAGE | flags);
+ NULL, bb, insn, DF_REF_REG_USE, DF_REF_CALL_STACK_USAGE | flags, -1, -1);
/* Calls may also reference any of the global registers,
so they are recorded as used. */
@@ -3095,9 +3217,9 @@ df_get_call_refs (struct df_collection_rec * collection_rec,
if (global_regs[i])
{
df_ref_record (collection_rec, regno_reg_rtx[i],
- NULL, bb, insn, DF_REF_REG_USE, flags);
+ NULL, bb, insn, DF_REF_REG_USE, flags, -1, -1);
df_ref_record (collection_rec, regno_reg_rtx[i],
- NULL, bb, insn, DF_REF_REG_DEF, flags);
+ NULL, bb, insn, DF_REF_REG_DEF, flags, -1, -1);
}
is_sibling_call = SIBLING_CALL_P (insn);
@@ -3110,7 +3232,7 @@ df_get_call_refs (struct df_collection_rec * collection_rec,
|| refers_to_regno_p (ui, ui+1,
current_function_return_rtx, NULL)))
df_ref_record (collection_rec, regno_reg_rtx[ui],
- NULL, bb, insn, DF_REF_REG_DEF, DF_REF_MAY_CLOBBER | flags);
+ NULL, bb, insn, DF_REF_REG_DEF, DF_REF_MAY_CLOBBER | flags, -1, -1);
}
BITMAP_FREE (defs_generated);
@@ -3148,7 +3270,7 @@ df_insn_refs_collect (struct df_collection_rec* collection_rec,
case REG_EQUAL:
df_uses_record (collection_rec,
&XEXP (note, 0), DF_REF_REG_USE,
- bb, insn, DF_REF_IN_NOTE);
+ bb, insn, DF_REF_IN_NOTE, -1, -1);
break;
case REG_NON_LOCAL_GOTO:
/* The frame ptr is used by a non-local goto. */
@@ -3156,13 +3278,13 @@ df_insn_refs_collect (struct df_collection_rec* collection_rec,
regno_reg_rtx[FRAME_POINTER_REGNUM],
NULL,
bb, insn,
- DF_REF_REG_USE, 0);
+ DF_REF_REG_USE, 0, -1, -1);
#if FRAME_POINTER_REGNUM != HARD_FRAME_POINTER_REGNUM
df_ref_record (collection_rec,
regno_reg_rtx[HARD_FRAME_POINTER_REGNUM],
NULL,
bb, insn,
- DF_REF_REG_USE, 0);
+ DF_REF_REG_USE, 0, -1, -1);
#endif
break;
default:
@@ -3176,7 +3298,7 @@ df_insn_refs_collect (struct df_collection_rec* collection_rec,
/* Record the register uses. */
df_uses_record (collection_rec,
- &PATTERN (insn), DF_REF_REG_USE, bb, insn, 0);
+ &PATTERN (insn), DF_REF_REG_USE, bb, insn, 0, -1, -1);
/* DF_REF_CONDITIONAL needs corresponding USES. */
if (is_cond_exec)
@@ -3259,7 +3381,7 @@ df_bb_refs_collect (struct df_collection_rec *collection_rec, basic_block bb)
if (regno == INVALID_REGNUM)
break;
df_ref_record (collection_rec, regno_reg_rtx[regno], NULL,
- bb, NULL, DF_REF_REG_DEF, DF_REF_AT_TOP);
+ bb, NULL, DF_REF_REG_DEF, DF_REF_AT_TOP, -1, -1);
}
}
#endif
@@ -3283,7 +3405,7 @@ df_bb_refs_collect (struct df_collection_rec *collection_rec, basic_block bb)
for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
if (EH_USES (i))
df_ref_record (collection_rec, regno_reg_rtx[i], NULL,
- bb, NULL, DF_REF_REG_USE, DF_REF_AT_TOP);
+ bb, NULL, DF_REF_REG_USE, DF_REF_AT_TOP, -1, -1);
}
#endif
@@ -3291,7 +3413,7 @@ df_bb_refs_collect (struct df_collection_rec *collection_rec, basic_block bb)
non-local goto. */
if (bb->flags & BB_NON_LOCAL_GOTO_TARGET)
df_ref_record (collection_rec, hard_frame_pointer_rtx, NULL,
- bb, NULL, DF_REF_REG_DEF, DF_REF_AT_TOP);
+ bb, NULL, DF_REF_REG_DEF, DF_REF_AT_TOP, -1, -1);
/* Add the artificial uses. */
if (bb->index >= NUM_FIXED_BLOCKS)
@@ -3305,7 +3427,7 @@ df_bb_refs_collect (struct df_collection_rec *collection_rec, basic_block bb)
EXECUTE_IF_SET_IN_BITMAP (au, 0, regno, bi)
{
df_ref_record (collection_rec, regno_reg_rtx[regno], NULL,
- bb, NULL, DF_REF_REG_USE, 0);
+ bb, NULL, DF_REF_REG_USE, 0, -1, -1);
}
}
@@ -3598,7 +3720,7 @@ df_entry_block_defs_collect (struct df_collection_rec *collection_rec,
EXECUTE_IF_SET_IN_BITMAP (entry_block_defs, 0, i, bi)
{
df_ref_record (collection_rec, regno_reg_rtx[i], NULL,
- ENTRY_BLOCK_PTR, NULL, DF_REF_REG_DEF, 0);
+ ENTRY_BLOCK_PTR, NULL, DF_REF_REG_DEF, 0, -1, -1);
}
df_canonize_collection_rec (collection_rec);
@@ -3759,7 +3881,7 @@ df_exit_block_uses_collect (struct df_collection_rec *collection_rec, bitmap exi
EXECUTE_IF_SET_IN_BITMAP (exit_block_uses, 0, i, bi)
df_ref_record (collection_rec, regno_reg_rtx[i], NULL,
- EXIT_BLOCK_PTR, NULL, DF_REF_REG_USE, 0);
+ EXIT_BLOCK_PTR, NULL, DF_REF_REG_USE, 0, -1, -1);
#if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM
/* It is deliberate that this is not put in the exit block uses but
@@ -3769,7 +3891,7 @@ df_exit_block_uses_collect (struct df_collection_rec *collection_rec, bitmap exi
&& bb_has_eh_pred (EXIT_BLOCK_PTR)
&& fixed_regs[ARG_POINTER_REGNUM])
df_ref_record (collection_rec, regno_reg_rtx[ARG_POINTER_REGNUM], NULL,
- EXIT_BLOCK_PTR, NULL, DF_REF_REG_USE, 0);
+ EXIT_BLOCK_PTR, NULL, DF_REF_REG_USE, 0, -1, -1);
#endif
df_canonize_collection_rec (collection_rec);
diff --git a/gcc/df.h b/gcc/df.h
index 7c14f163dc0..cf113aefd50 100644
--- a/gcc/df.h
+++ b/gcc/df.h
@@ -117,14 +117,18 @@ enum df_ref_flags
DF_REF_MUST_CLOBBER = 1 << 7,
- /* This flag is set if this ref is inside a pre/post modify. */
- DF_REF_PRE_POST_MODIFY = 1 << 8,
+ /* If the ref has one of the following two flags set, then the
+ struct df_ref can be cast to struct df_ref_extract to access
+ the width and offset fields. */
+
+ /* This flag is set if the ref contains a SIGN_EXTRACT. */
+ DF_REF_SIGN_EXTRACT = 1 << 8,
- /* This flag is set if the ref contains a ZERO_EXTRACT or SIGN_EXTRACT. */
- DF_REF_EXTRACT = 1 << 9,
+ /* This flag is set if the ref contains a ZERO_EXTRACT. */
+ DF_REF_ZERO_EXTRACT = 1 << 9,
- /* This flag is set if the ref contains a STRICT_LOWER_PART. */
- DF_REF_STRICT_LOWER_PART = 1 << 10,
+ /* This flag is set if the ref contains a STRICT_LOW_PART. */
+ DF_REF_STRICT_LOW_PART = 1 << 10,
/* This flag is set if the ref contains a SUBREG. */
DF_REF_SUBREG = 1 << 11,
@@ -138,7 +142,11 @@ enum df_ref_flags
DF_REF_CALL_STACK_USAGE = 1 << 13,
/* This flag is used for verification of existing refs. */
- DF_REF_REG_MARKER = 1 << 14
+ DF_REF_REG_MARKER = 1 << 14,
+
+ /* This flag is set if this ref is inside a pre/post modify. */
+ DF_REF_PRE_POST_MODIFY = 1 << 15
+
};
/* The possible ordering of refs within the df_ref_info. */
@@ -381,6 +389,17 @@ struct df_ref
struct df_ref *prev_reg; /* Prev ref with same regno and type. */
};
+/* A df_ref_extract is just a df_ref with a width and offset field at
+ the end of it. It is used to hold this information if the ref was
+ wrapped by a SIGN_EXTRACT or a ZERO_EXTRACT and to pass this info
+ to passes that wish to process partial regs precisely. */
+struct df_ref_extract
+{
+ struct df_ref ref;
+ int width;
+ int offset;
+};
+
/* These links are used for two purposes:
1) def-use or use-def chains.
2) Multiword hard registers that underly a single hardware register. */
@@ -598,7 +617,10 @@ struct df
#define DF_REF_IS_REG_MARKED(REF) (DF_REF_FLAGS_IS_SET ((REF),DF_REF_REG_MARKER))
#define DF_REF_NEXT_REG(REF) ((REF)->next_reg)
#define DF_REF_PREV_REG(REF) ((REF)->prev_reg)
-
+/* The following two macros may only be applied if one of
+ DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT is true. */
+#define DF_REF_WIDTH(REF) (((struct df_ref_extract *)(REF))->width)
+#define DF_REF_OFFSET(REF) (((struct df_ref_extract *)(REF))->offset)
/* Macros to determine the reference type. */
#define DF_REF_REG_DEF_P(REF) (DF_REF_TYPE (REF) == DF_REF_REG_DEF)
@@ -862,7 +884,8 @@ extern void df_grow_reg_info (void);
extern void df_grow_insn_info (void);
extern void df_scan_blocks (void);
extern struct df_ref *df_ref_create (rtx, rtx *, rtx,basic_block,
- enum df_ref_type, enum df_ref_flags);
+ enum df_ref_type, enum df_ref_flags,
+ int, int);
extern void df_ref_remove (struct df_ref *);
extern struct df_insn_info * df_insn_create_insn_record (rtx);
extern void df_insn_delete (basic_block, unsigned int);
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 3d543073f4c..9dbdc8ea947 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -7476,6 +7476,24 @@ v2si __builtin_ia32_punpckldq (v2si, v2si)
v8qi __builtin_ia32_packsswb (v4hi, v4hi)
v4hi __builtin_ia32_packssdw (v2si, v2si)
v8qi __builtin_ia32_packuswb (v4hi, v4hi)
+
+v8hi __builtin_ia32_psllw (v4hi, v4hi)
+v4si __builtin_ia32_pslld (v2si, v2si)
+v2di __builtin_ia32_psllq (v1di, v1di)
+v8hi __builtin_ia32_psrlw (v8hi, v2si)
+v4si __builtin_ia32_psrld (v4si, v2si)
+v2di __builtin_ia32_psrlq (v1di, v1di)
+v8hi __builtin_ia32_psraw (v4hi, v4hi)
+v4si __builtin_ia32_psrad (v2si, v2si)
+v8hi __builtin_ia32_psllwi (v4hi, int)
+v4si __builtin_ia32_pslldi (v2si, int)
+v2di __builtin_ia32_psllqi (v1di, int)
+v8hi __builtin_ia32_psrlwi (v4hi, int)
+v4si __builtin_ia32_psrldi (v2si, int)
+v2di __builtin_ia32_psrlqi (v1di, int)
+v8hi __builtin_ia32_psrawi (v4hi, int)
+v4si __builtin_ia32_psradi (v2si, int)
+
@end smallexample
The following built-in functions are made available either with
diff --git a/gcc/doc/frontends.texi b/gcc/doc/frontends.texi
index 827f6a4bc24..9c2d70705e4 100644
--- a/gcc/doc/frontends.texi
+++ b/gcc/doc/frontends.texi
@@ -1,5 +1,5 @@
@c Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-@c 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
+@c 1999, 2000, 2001, 2002, 2004, 2008 Free Software Foundation, Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -14,7 +14,6 @@
@cindex Java
@cindex Objective-C
@cindex Objective-C++
-@cindex treelang
GCC stands for ``GNU Compiler Collection''. GCC is an integrated
distribution of compilers for several major programming languages. These
languages currently include C, C++, Objective-C, Objective-C++, Java,
diff --git a/gcc/doc/include/texinfo.tex b/gcc/doc/include/texinfo.tex
index 1f8becb1598..790673c3e56 100644
--- a/gcc/doc/include/texinfo.tex
+++ b/gcc/doc/include/texinfo.tex
@@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2008-02-04.16}
+\def\texinfoversion{2008-03-07.10}
%
% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -917,16 +917,21 @@ where each line of input produces a line of output.}
\temp
}
-% @include file insert text of that file as input.
+% @include FILE -- \input text of FILE.
%
\def\include{\parseargusing\filenamecatcodes\includezzz}
\def\includezzz#1{%
\pushthisfilestack
\def\thisfile{#1}%
{%
- \makevalueexpandable
- \input #1
- }%
+ \makevalueexpandable % we want to expand any @value in FILE.
+ \turnoffactive % and allow special characters in the expansion
+ \edef\temp{\noexpand\input #1 }%
+ %
+ % This trickery is to read FILE outside of a group, in case it makes
+ % definitions, etc.
+ \expandafter
+ }\temp
\popthisfilestack
}
\def\filenamecatcodes{%
@@ -5725,7 +5730,7 @@ end
\let\/=\ptexslash
\let\*=\ptexstar
\let\t=\ptext
- \expandafter \let\csname top \endcsname=\ptextop % outer
+ \expandafter \let\csname top\endcsname=\ptextop % outer
\let\frenchspacing=\plainfrenchspacing
%
\def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}%
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 9569f9b2157..3bf2305c8d1 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -372,16 +372,6 @@ Necessary to run @samp{make check} for @file{fixinc}.
Necessary to regenerate the top level @file{Makefile.in} file from
@file{Makefile.tpl} and @file{Makefile.def}.
-@item GNU Bison version 1.28 (or later)
-
-Necessary when modifying @file{*.y} files. Necessary to build the
-@code{treelang} front end (which is not enabled by default) from a
-checkout of the SVN repository; the generated files are not in the
-repository. They are included in releases.
-
-Berkeley @command{yacc} (@command{byacc}) has been reported to work
-as well.
-
@item Flex version 2.5.4 (or later)
Necessary when modifying @file{*.l} files.
@@ -1161,11 +1151,11 @@ grep language= */config-lang.in
@end smallexample
Currently, you can use any of the following:
@code{all}, @code{ada}, @code{c}, @code{c++}, @code{fortran}, @code{java},
-@code{objc}, @code{obj-c++}, @code{treelang}.
+@code{objc}, @code{obj-c++}.
Building the Ada compiler has special requirements, see below.
If you do not pass this flag, or specify the option @code{all}, then all
default languages available in the @file{gcc} sub-tree will be configured.
-Ada, Objective-C++, and treelang are not default languages; the rest are.
+Ada and Objective-C++ are not default languages; the rest are.
Re-defining @code{LANGUAGES} when calling @samp{make} @strong{does not}
work anymore, as those language sub-directories might not have been
configured!
@@ -1707,18 +1697,13 @@ that type mismatches occur, this could be the cause.
The solution is not to use such a directory for building GCC@.
-When building from SVN or snapshots and enabling the @code{treelang}
-front end, or if you modify @file{*.y} files, you need the Bison parser
-generator installed. If you do not modify @file{*.y} files, releases
-contain the Bison-generated files and you do not need Bison installed
-to build them. Note that most front ends now use hand-written parsers,
-which can be modified with no need for Bison.
-
Similarly, when building from SVN or snapshots, or if you modify
-@file{*.l} files, you need the Flex lexical analyzer generator installed.
-There is still one Flex-based lexical analyzer (part of the build
-machinery, not of GCC itself) that is used even if you only build the
-C front end.
+@file{*.l} files, you need the Flex lexical analyzer generator
+installed. If you do not modify @file{*.l} files, releases contain
+the Flex-generated files and you do not need Flex installed to build
+them. There is still one Flex-based lexical analyzer (part of the
+build machinery, not of GCC itself) that is used even if you only
+build the C front end.
When building from SVN or snapshots, or if you modify Texinfo
documentation, you need version 4.4 or later of Texinfo installed if you
@@ -2070,7 +2055,7 @@ You can run the testsuites multiple times using combinations of options
with a syntax similar to the brace expansion of popular shells:
@smallexample
- @dots{}"--target_board=arm-sim/@{-mhard-float,-msoft-float@}@{-O1,-O2,-O3,@}"
+ @dots{}"--target_board=arm-sim\@{-mhard-float,-msoft-float\@}\@{-O1,-O2,-O3,\@}"
@end smallexample
(Note the empty option caused by the trailing comma in the final group.)
@@ -2092,7 +2077,7 @@ They can be combined as many times as you wish, in arbitrary ways. This
list:
@smallexample
- @dots{}"--target_board=unix/-Wextra@{-O3,-fno-strength-reduce@}@{-fomit-frame-pointer,@}"
+ @dots{}"--target_board=unix/-Wextra\@{-O3,-fno-strength\@}\@{-fomit-frame,\@}"
@end smallexample
will generate four combinations, all involving @samp{-Wextra}.
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index dbd66eab30c..c56f890fec9 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -235,7 +235,7 @@ Objective-C and Objective-C++ Dialects}.
-Wempty-body -Wno-endif-labels @gol
-Werror -Werror=* @gol
-Wfatal-errors -Wfloat-equal -Wformat -Wformat=2 @gol
--Wno-format-extra-args -Wformat-nonliteral @gol
+-Wno-format-contains-nul -Wno-format-extra-args -Wformat-nonliteral @gol
-Wformat-security -Wformat-y2k @gol
-Wframe-larger-than=@var{len} -Wignored-qualifiers @gol
-Wimplicit -Wimplicit-function-declaration -Wimplicit-int @gol
@@ -1001,7 +1001,6 @@ assembler assembler-with-cpp
ada
f95 f95-cpp-input
java
-treelang
@end smallexample
@item -x none
@@ -2812,6 +2811,12 @@ aspects of format checking, the options @option{-Wformat-y2k},
If @option{-Wformat} is specified, also warn about @code{strftime}
formats which may yield only a two-digit year.
+@item -Wno-format-contains-nul
+@opindex Wno-format-contains-nul
+@opindex Wformat-contains-nul
+If @option{-Wformat} is specified, do not warn about format strings that
+contain NUL bytes.
+
@item -Wno-format-extra-args
@opindex Wno-format-extra-args
@opindex Wformat-extra-args
@@ -5932,7 +5937,22 @@ is used for debugging the data dependence analyzers.
@item -ftree-loop-distribution
Perform loop distribution. This flag can improve cache performance on
big loop bodies and allow further loop optimizations, like
-parallelization or vectorization, to take place.
+parallelization or vectorization, to take place. For example, the loop
+@smallexample
+DO I = 1, N
+ A(I) = B(I) + C
+ D(I) = E(I) * F
+ENDDO
+@end smallexample
+is transformed to
+@smallexample
+DO I = 1, N
+ A(I) = B(I) + C
+ENDDO
+DO I = 1, N
+ D(I) = E(I) * F
+ENDDO
+@end smallexample
@item -ftree-loop-im
@opindex ftree-loop-im
@@ -8569,7 +8589,7 @@ assembly code. Permissible names are: @samp{arm2}, @samp{arm250},
@samp{arm10e}, @samp{arm1020e}, @samp{arm1022e},
@samp{arm1136j-s}, @samp{arm1136jf-s}, @samp{mpcore}, @samp{mpcorenovfp},
@samp{arm1156t2-s}, @samp{arm1176jz-s}, @samp{arm1176jzf-s},
-@samp{cortex-a8}, @samp{cortex-r4}, @samp{cortex-m3},
+@samp{cortex-a8}, @samp{cortex-r4}, @samp{cortex-m3}, @samp{cortex-m1},
@samp{xscale}, @samp{iwmmxt}, @samp{ep9312}.
@itemx -mtune=@var{name}
@@ -8591,8 +8611,9 @@ assembly code. This option can be used in conjunction with or instead
of the @option{-mcpu=} option. Permissible names are: @samp{armv2},
@samp{armv2a}, @samp{armv3}, @samp{armv3m}, @samp{armv4}, @samp{armv4t},
@samp{armv5}, @samp{armv5t}, @samp{armv5te}, @samp{armv6}, @samp{armv6j},
-@samp{armv6t2}, @samp{armv6z}, @samp{armv6zk}, @samp{armv7}, @samp{armv7-a},
-@samp{armv7-r}, @samp{armv7-m}, @samp{iwmmxt}, @samp{ep9312}.
+@samp{armv6t2}, @samp{armv6z}, @samp{armv6zk}, @samp{armv6-m},
+@samp{armv7}, @samp{armv7-a}, @samp{armv7-r}, @samp{armv7-m},
+@samp{iwmmxt}, @samp{ep9312}.
@item -mfpu=@var{name}
@itemx -mfpe=@var{number}
diff --git a/gcc/doc/standards.texi b/gcc/doc/standards.texi
index cd6e82f5fe9..c31849c239f 100644
--- a/gcc/doc/standards.texi
+++ b/gcc/doc/standards.texi
@@ -1,4 +1,4 @@
-@c Copyright (C) 2000, 2001, 2002, 2004, 2006, 2007 Free Software Foundation,
+@c Copyright (C) 2000, 2001, 2002, 2004, 2006, 2007, 2008 Free Software Foundation,
@c Inc.
@c This is part of the GCC manual.
@c For copying conditions, see the file gcc.texi.
@@ -219,14 +219,6 @@ and
have additional useful information.
@end itemize
-@section Treelang language
-@cindex treelang
-There is no standard for treelang, which is a sample language front end
-for GCC@. Its only purpose is as a sample for people wishing to write a
-new language for GCC@. The language is documented in
-@file{gcc/treelang/treelang.texi} which can be turned into info or
-HTML format.
-
@xref{Top, GNAT Reference Manual, About This Guide, gnat_rm,
GNAT Reference Manual}, for information on standard
conformance and compatibility of the Ada compiler.
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index c1df45af12a..410682b9b1a 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -1534,7 +1534,7 @@ static dw_cfa_location cfa_temp;
static void
dwarf2out_frame_debug_expr (rtx expr, const char *label)
{
- rtx src, dest;
+ rtx src, dest, span;
HOST_WIDE_INT offset;
/* If RTX_FRAME_RELATED_P is set on a PARALLEL, process each member of
@@ -1884,7 +1884,32 @@ dwarf2out_frame_debug_expr (rtx expr, const char *label)
}
def_cfa_1 (label, &cfa);
- queue_reg_save (label, src, NULL_RTX, offset);
+ {
+ span = targetm.dwarf_register_span (src);
+
+ if (!span)
+ queue_reg_save (label, src, NULL_RTX, offset);
+ else
+ {
+ /* We have a PARALLEL describing where the contents of SRC
+ live. Queue register saves for each piece of the
+ PARALLEL. */
+ int par_index;
+ int limit;
+ HOST_WIDE_INT span_offset = offset;
+
+ gcc_assert (GET_CODE (span) == PARALLEL);
+
+ limit = XVECLEN (span, 0);
+ for (par_index = 0; par_index < limit; par_index++)
+ {
+ rtx elem = XVECEXP (span, 0, par_index);
+
+ queue_reg_save (label, elem, NULL_RTX, span_offset);
+ span_offset += GET_MODE_SIZE (GET_MODE (elem));
+ }
+ }
+ }
break;
default:
diff --git a/gcc/expr.c b/gcc/expr.c
index 79a039a529f..300b63d8816 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -4654,7 +4654,8 @@ store_expr (tree exp, rtx target, int call_param_p, bool nontemporal)
temp = convert_to_mode (GET_MODE (target), temp, unsignedp);
emit_move_insn (target, temp);
}
- else if (GET_MODE (target) == BLKmode)
+ else if (GET_MODE (target) == BLKmode
+ || GET_MODE (temp) == BLKmode)
emit_block_move (target, temp, expr_size (exp),
(call_param_p
? BLOCK_OP_CALL_PARM
@@ -5893,7 +5894,8 @@ get_inner_reference (tree exp, HOST_WIDE_INT *pbitsize,
else if (TREE_CODE (exp) == BIT_FIELD_REF)
{
size_tree = TREE_OPERAND (exp, 1);
- *punsignedp = BIT_FIELD_REF_UNSIGNED (exp);
+ *punsignedp = (! INTEGRAL_TYPE_P (TREE_TYPE (exp))
+ || TYPE_UNSIGNED (TREE_TYPE (exp)));
/* For vector types, with the correct size of access, use the mode of
inner type. */
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 5af6f0d686a..4774661c4e3 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -109,12 +109,9 @@ static int twoval_comparison_p (tree, tree *, tree *, int *);
static tree eval_subst (tree, tree, tree, tree, tree);
static tree pedantic_omit_one_operand (tree, tree, tree);
static tree distribute_bit_expr (enum tree_code, tree, tree, tree);
-static tree make_bit_field_ref (tree, tree, int, int, int);
-static tree optimize_bit_field_compare (enum tree_code, tree, tree, tree);
static tree decode_field_reference (tree, HOST_WIDE_INT *, HOST_WIDE_INT *,
enum machine_mode *, int *, int *,
tree *, tree *);
-static int all_ones_mask_p (const_tree, int);
static tree sign_bit_p (tree, const_tree);
static int simple_operand_p (const_tree);
static tree range_binop (enum tree_code, tree, tree, int, tree, int);
@@ -3855,202 +3852,6 @@ distribute_real_division (enum tree_code code, tree type, tree arg0, tree arg1)
return NULL_TREE;
}
-/* Return a BIT_FIELD_REF of type TYPE to refer to BITSIZE bits of INNER
- starting at BITPOS. The field is unsigned if UNSIGNEDP is nonzero. */
-
-static tree
-make_bit_field_ref (tree inner, tree type, int bitsize, int bitpos,
- int unsignedp)
-{
- tree result;
-
- if (bitpos == 0)
- {
- tree size = TYPE_SIZE (TREE_TYPE (inner));
- if ((INTEGRAL_TYPE_P (TREE_TYPE (inner))
- || POINTER_TYPE_P (TREE_TYPE (inner)))
- && host_integerp (size, 0)
- && tree_low_cst (size, 0) == bitsize)
- return fold_convert (type, inner);
- }
-
- result = build3 (BIT_FIELD_REF, type, inner,
- size_int (bitsize), bitsize_int (bitpos));
-
- BIT_FIELD_REF_UNSIGNED (result) = unsignedp;
-
- return result;
-}
-
-/* Optimize a bit-field compare.
-
- There are two cases: First is a compare against a constant and the
- second is a comparison of two items where the fields are at the same
- bit position relative to the start of a chunk (byte, halfword, word)
- large enough to contain it. In these cases we can avoid the shift
- implicit in bitfield extractions.
-
- For constants, we emit a compare of the shifted constant with the
- BIT_AND_EXPR of a mask and a byte, halfword, or word of the operand being
- compared. For two fields at the same position, we do the ANDs with the
- similar mask and compare the result of the ANDs.
-
- CODE is the comparison code, known to be either NE_EXPR or EQ_EXPR.
- COMPARE_TYPE is the type of the comparison, and LHS and RHS
- are the left and right operands of the comparison, respectively.
-
- If the optimization described above can be done, we return the resulting
- tree. Otherwise we return zero. */
-
-static tree
-optimize_bit_field_compare (enum tree_code code, tree compare_type,
- tree lhs, tree rhs)
-{
- HOST_WIDE_INT lbitpos, lbitsize, rbitpos, rbitsize, nbitpos, nbitsize;
- tree type = TREE_TYPE (lhs);
- tree signed_type, unsigned_type;
- int const_p = TREE_CODE (rhs) == INTEGER_CST;
- enum machine_mode lmode, rmode, nmode;
- int lunsignedp, runsignedp;
- int lvolatilep = 0, rvolatilep = 0;
- tree linner, rinner = NULL_TREE;
- tree mask;
- tree offset;
-
- /* Get all the information about the extractions being done. If the bit size
- if the same as the size of the underlying object, we aren't doing an
- extraction at all and so can do nothing. We also don't want to
- do anything if the inner expression is a PLACEHOLDER_EXPR since we
- then will no longer be able to replace it. */
- linner = get_inner_reference (lhs, &lbitsize, &lbitpos, &offset, &lmode,
- &lunsignedp, &lvolatilep, false);
- if (linner == lhs || lbitsize == GET_MODE_BITSIZE (lmode) || lbitsize < 0
- || offset != 0 || TREE_CODE (linner) == PLACEHOLDER_EXPR)
- return 0;
-
- if (!const_p)
- {
- /* If this is not a constant, we can only do something if bit positions,
- sizes, and signedness are the same. */
- rinner = get_inner_reference (rhs, &rbitsize, &rbitpos, &offset, &rmode,
- &runsignedp, &rvolatilep, false);
-
- if (rinner == rhs || lbitpos != rbitpos || lbitsize != rbitsize
- || lunsignedp != runsignedp || offset != 0
- || TREE_CODE (rinner) == PLACEHOLDER_EXPR)
- return 0;
- }
-
- /* See if we can find a mode to refer to this field. We should be able to,
- but fail if we can't. */
- nmode = get_best_mode (lbitsize, lbitpos,
- const_p ? TYPE_ALIGN (TREE_TYPE (linner))
- : MIN (TYPE_ALIGN (TREE_TYPE (linner)),
- TYPE_ALIGN (TREE_TYPE (rinner))),
- word_mode, lvolatilep || rvolatilep);
- if (nmode == VOIDmode)
- return 0;
-
- /* Set signed and unsigned types of the precision of this mode for the
- shifts below. */
- signed_type = lang_hooks.types.type_for_mode (nmode, 0);
- unsigned_type = lang_hooks.types.type_for_mode (nmode, 1);
-
- /* Compute the bit position and size for the new reference and our offset
- within it. If the new reference is the same size as the original, we
- won't optimize anything, so return zero. */
- nbitsize = GET_MODE_BITSIZE (nmode);
- nbitpos = lbitpos & ~ (nbitsize - 1);
- lbitpos -= nbitpos;
- if (nbitsize == lbitsize)
- return 0;
-
- if (BYTES_BIG_ENDIAN)
- lbitpos = nbitsize - lbitsize - lbitpos;
-
- /* Make the mask to be used against the extracted field. */
- mask = build_int_cst_type (unsigned_type, -1);
- mask = const_binop (LSHIFT_EXPR, mask, size_int (nbitsize - lbitsize), 0);
- mask = const_binop (RSHIFT_EXPR, mask,
- size_int (nbitsize - lbitsize - lbitpos), 0);
-
- if (! const_p)
- /* If not comparing with constant, just rework the comparison
- and return. */
- return fold_build2 (code, compare_type,
- fold_build2 (BIT_AND_EXPR, unsigned_type,
- make_bit_field_ref (linner,
- unsigned_type,
- nbitsize, nbitpos,
- 1),
- mask),
- fold_build2 (BIT_AND_EXPR, unsigned_type,
- make_bit_field_ref (rinner,
- unsigned_type,
- nbitsize, nbitpos,
- 1),
- mask));
-
- /* Otherwise, we are handling the constant case. See if the constant is too
- big for the field. Warn and return a tree of for 0 (false) if so. We do
- this not only for its own sake, but to avoid having to test for this
- error case below. If we didn't, we might generate wrong code.
-
- For unsigned fields, the constant shifted right by the field length should
- be all zero. For signed fields, the high-order bits should agree with
- the sign bit. */
-
- if (lunsignedp)
- {
- if (! integer_zerop (const_binop (RSHIFT_EXPR,
- fold_convert (unsigned_type, rhs),
- size_int (lbitsize), 0)))
- {
- warning (0, "comparison is always %d due to width of bit-field",
- code == NE_EXPR);
- return constant_boolean_node (code == NE_EXPR, compare_type);
- }
- }
- else
- {
- tree tem = const_binop (RSHIFT_EXPR, fold_convert (signed_type, rhs),
- size_int (lbitsize - 1), 0);
- if (! integer_zerop (tem) && ! integer_all_onesp (tem))
- {
- warning (0, "comparison is always %d due to width of bit-field",
- code == NE_EXPR);
- return constant_boolean_node (code == NE_EXPR, compare_type);
- }
- }
-
- /* Single-bit compares should always be against zero. */
- if (lbitsize == 1 && ! integer_zerop (rhs))
- {
- code = code == EQ_EXPR ? NE_EXPR : EQ_EXPR;
- rhs = build_int_cst (type, 0);
- }
-
- /* Make a new bitfield reference, shift the constant over the
- appropriate number of bits and mask it with the computed mask
- (in case this was a signed field). If we changed it, make a new one. */
- lhs = make_bit_field_ref (linner, unsigned_type, nbitsize, nbitpos, 1);
- if (lvolatilep)
- {
- TREE_SIDE_EFFECTS (lhs) = 1;
- TREE_THIS_VOLATILE (lhs) = 1;
- }
-
- rhs = const_binop (BIT_AND_EXPR,
- const_binop (LSHIFT_EXPR,
- fold_convert (unsigned_type, rhs),
- size_int (lbitpos), 0),
- mask, 0);
-
- return build2 (code, compare_type,
- build2 (BIT_AND_EXPR, unsigned_type, lhs, mask),
- rhs);
-}
-
/* Subroutine for fold_truthop: decode a field reference.
If EXP is a comparison reference, we return the innermost reference.
@@ -4142,27 +3943,6 @@ decode_field_reference (tree exp, HOST_WIDE_INT *pbitsize,
return inner;
}
-/* Return nonzero if MASK represents a mask of SIZE ones in the low-order
- bit positions. */
-
-static int
-all_ones_mask_p (const_tree mask, int size)
-{
- tree type = TREE_TYPE (mask);
- unsigned int precision = TYPE_PRECISION (type);
- tree tmask;
-
- tmask = build_int_cst_type (signed_type_for (type), -1);
-
- return
- tree_int_cst_equal (mask,
- const_binop (RSHIFT_EXPR,
- const_binop (LSHIFT_EXPR, tmask,
- size_int (precision - size),
- 0),
- size_int (precision - size), 0));
-}
-
/* Subroutine for fold: determine if VAL is the INTEGER_CONST that
represents the sign bit of EXP's type. If EXP represents a sign
or zero extension, also test VAL against the unextended type.
@@ -5072,9 +4852,10 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2)
Note that all these transformations are correct if A is
NaN, since the two alternatives (A and -A) are also NaNs. */
- if ((FLOAT_TYPE_P (TREE_TYPE (arg01))
- ? real_zerop (arg01)
- : integer_zerop (arg01))
+ if (!HONOR_SIGNED_ZEROS (TYPE_MODE (type))
+ && (FLOAT_TYPE_P (TREE_TYPE (arg01))
+ ? real_zerop (arg01)
+ : integer_zerop (arg01))
&& ((TREE_CODE (arg2) == NEGATE_EXPR
&& operand_equal_p (TREE_OPERAND (arg2, 0), arg1, 0))
/* In the case that A is of the form X-Y, '-A' (arg2) may
@@ -5127,7 +4908,8 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2)
both transformations are correct when A is NaN: A != 0
is then true, and A == 0 is false. */
- if (integer_zerop (arg01) && integer_zerop (arg2))
+ if (!HONOR_SIGNED_ZEROS (TYPE_MODE (type))
+ && integer_zerop (arg01) && integer_zerop (arg2))
{
if (comp_code == NE_EXPR)
return pedantic_non_lvalue (fold_convert (type, arg1));
@@ -5161,7 +4943,8 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2)
a number and A is not. The conditions in the original
expressions will be false, so all four give B. The min()
and max() versions would give a NaN instead. */
- if (operand_equal_for_comparison_p (arg01, arg2, arg00)
+ if (!HONOR_SIGNED_ZEROS (TYPE_MODE (type))
+ && operand_equal_for_comparison_p (arg01, arg2, arg00)
/* Avoid these transformations if the COND_EXPR may be used
as an lvalue in the C++ front-end. PR c++/19199. */
&& (in_gimple_form
@@ -5485,15 +5268,15 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
tree ll_inner, lr_inner, rl_inner, rr_inner;
HOST_WIDE_INT ll_bitsize, ll_bitpos, lr_bitsize, lr_bitpos;
HOST_WIDE_INT rl_bitsize, rl_bitpos, rr_bitsize, rr_bitpos;
- HOST_WIDE_INT xll_bitpos, xlr_bitpos, xrl_bitpos, xrr_bitpos;
- HOST_WIDE_INT lnbitsize, lnbitpos, rnbitsize, rnbitpos;
+ HOST_WIDE_INT xll_bitpos, xrl_bitpos;
+ HOST_WIDE_INT lnbitsize, lnbitpos;
int ll_unsignedp, lr_unsignedp, rl_unsignedp, rr_unsignedp;
enum machine_mode ll_mode, lr_mode, rl_mode, rr_mode;
- enum machine_mode lnmode, rnmode;
+ enum machine_mode lnmode;
tree ll_mask, lr_mask, rl_mask, rr_mask;
tree ll_and_mask, lr_and_mask, rl_and_mask, rr_and_mask;
tree l_const, r_const;
- tree lntype, rntype, result;
+ tree lntype, result;
int first_bit, end_bit;
int volatilep;
tree orig_lhs = lhs, orig_rhs = rhs;
@@ -5729,118 +5512,6 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
}
}
- /* If the right sides are not constant, do the same for it. Also,
- disallow this optimization if a size or signedness mismatch occurs
- between the left and right sides. */
- if (l_const == 0)
- {
- if (ll_bitsize != lr_bitsize || rl_bitsize != rr_bitsize
- || ll_unsignedp != lr_unsignedp || rl_unsignedp != rr_unsignedp
- /* Make sure the two fields on the right
- correspond to the left without being swapped. */
- || ll_bitpos - rl_bitpos != lr_bitpos - rr_bitpos)
- return 0;
-
- first_bit = MIN (lr_bitpos, rr_bitpos);
- end_bit = MAX (lr_bitpos + lr_bitsize, rr_bitpos + rr_bitsize);
- rnmode = get_best_mode (end_bit - first_bit, first_bit,
- TYPE_ALIGN (TREE_TYPE (lr_inner)), word_mode,
- volatilep);
- if (rnmode == VOIDmode)
- return 0;
-
- rnbitsize = GET_MODE_BITSIZE (rnmode);
- rnbitpos = first_bit & ~ (rnbitsize - 1);
- rntype = lang_hooks.types.type_for_size (rnbitsize, 1);
- xlr_bitpos = lr_bitpos - rnbitpos, xrr_bitpos = rr_bitpos - rnbitpos;
-
- if (BYTES_BIG_ENDIAN)
- {
- xlr_bitpos = rnbitsize - xlr_bitpos - lr_bitsize;
- xrr_bitpos = rnbitsize - xrr_bitpos - rr_bitsize;
- }
-
- lr_mask = const_binop (LSHIFT_EXPR, fold_convert (rntype, lr_mask),
- size_int (xlr_bitpos), 0);
- rr_mask = const_binop (LSHIFT_EXPR, fold_convert (rntype, rr_mask),
- size_int (xrr_bitpos), 0);
-
- /* Make a mask that corresponds to both fields being compared.
- Do this for both items being compared. If the operands are the
- same size and the bits being compared are in the same position
- then we can do this by masking both and comparing the masked
- results. */
- ll_mask = const_binop (BIT_IOR_EXPR, ll_mask, rl_mask, 0);
- lr_mask = const_binop (BIT_IOR_EXPR, lr_mask, rr_mask, 0);
- if (lnbitsize == rnbitsize && xll_bitpos == xlr_bitpos)
- {
- lhs = make_bit_field_ref (ll_inner, lntype, lnbitsize, lnbitpos,
- ll_unsignedp || rl_unsignedp);
- if (! all_ones_mask_p (ll_mask, lnbitsize))
- lhs = build2 (BIT_AND_EXPR, lntype, lhs, ll_mask);
-
- rhs = make_bit_field_ref (lr_inner, rntype, rnbitsize, rnbitpos,
- lr_unsignedp || rr_unsignedp);
- if (! all_ones_mask_p (lr_mask, rnbitsize))
- rhs = build2 (BIT_AND_EXPR, rntype, rhs, lr_mask);
-
- return build2 (wanted_code, truth_type, lhs, rhs);
- }
-
- /* There is still another way we can do something: If both pairs of
- fields being compared are adjacent, we may be able to make a wider
- field containing them both.
-
- Note that we still must mask the lhs/rhs expressions. Furthermore,
- the mask must be shifted to account for the shift done by
- make_bit_field_ref. */
- if ((ll_bitsize + ll_bitpos == rl_bitpos
- && lr_bitsize + lr_bitpos == rr_bitpos)
- || (ll_bitpos == rl_bitpos + rl_bitsize
- && lr_bitpos == rr_bitpos + rr_bitsize))
- {
- tree type;
-
- lhs = make_bit_field_ref (ll_inner, lntype, ll_bitsize + rl_bitsize,
- MIN (ll_bitpos, rl_bitpos), ll_unsignedp);
- rhs = make_bit_field_ref (lr_inner, rntype, lr_bitsize + rr_bitsize,
- MIN (lr_bitpos, rr_bitpos), lr_unsignedp);
-
- ll_mask = const_binop (RSHIFT_EXPR, ll_mask,
- size_int (MIN (xll_bitpos, xrl_bitpos)), 0);
- lr_mask = const_binop (RSHIFT_EXPR, lr_mask,
- size_int (MIN (xlr_bitpos, xrr_bitpos)), 0);
-
- /* Convert to the smaller type before masking out unwanted bits. */
- type = lntype;
- if (lntype != rntype)
- {
- if (lnbitsize > rnbitsize)
- {
- lhs = fold_convert (rntype, lhs);
- ll_mask = fold_convert (rntype, ll_mask);
- type = rntype;
- }
- else if (lnbitsize < rnbitsize)
- {
- rhs = fold_convert (lntype, rhs);
- lr_mask = fold_convert (lntype, lr_mask);
- type = lntype;
- }
- }
-
- if (! all_ones_mask_p (ll_mask, ll_bitsize + rl_bitsize))
- lhs = build2 (BIT_AND_EXPR, type, lhs, ll_mask);
-
- if (! all_ones_mask_p (lr_mask, lr_bitsize + rr_bitsize))
- rhs = build2 (BIT_AND_EXPR, type, rhs, lr_mask);
-
- return build2 (wanted_code, truth_type, lhs, rhs);
- }
-
- return 0;
- }
-
/* Handle the case of comparisons with constants. If there is something in
common between the masks, those bits of the constants must be the same.
If not, the condition is always false. Test for this to avoid generating
@@ -5862,19 +5533,7 @@ fold_truthop (enum tree_code code, tree truth_type, tree lhs, tree rhs)
}
}
- /* Construct the expression we will return. First get the component
- reference we will make. Unless the mask is all ones the width of
- that field, perform the mask operation. Then compare with the
- merged constant. */
- result = make_bit_field_ref (ll_inner, lntype, lnbitsize, lnbitpos,
- ll_unsignedp || rl_unsignedp);
-
- ll_mask = const_binop (BIT_IOR_EXPR, ll_mask, rl_mask, 0);
- if (! all_ones_mask_p (ll_mask, lnbitsize))
- result = build2 (BIT_AND_EXPR, lntype, result, ll_mask);
-
- return build2 (wanted_code, truth_type, result,
- const_binop (BIT_IOR_EXPR, l_const, r_const, 0));
+ return NULL_TREE;
}
/* Optimize T, which is a comparison of a MIN_EXPR or MAX_EXPR with a
@@ -8277,13 +7936,28 @@ fold_unary (enum tree_code code, tree type, tree op0)
case VIEW_CONVERT_EXPR:
if (TREE_TYPE (op0) == type)
return op0;
- if (TREE_CODE (op0) == VIEW_CONVERT_EXPR
- || (TREE_CODE (op0) == NOP_EXPR
- && INTEGRAL_TYPE_P (TREE_TYPE (op0))
- && INTEGRAL_TYPE_P (TREE_TYPE (TREE_OPERAND (op0, 0)))
- && TYPE_PRECISION (TREE_TYPE (op0))
- == TYPE_PRECISION (TREE_TYPE (TREE_OPERAND (op0, 0)))))
+ if (TREE_CODE (op0) == VIEW_CONVERT_EXPR)
+ return fold_build1 (VIEW_CONVERT_EXPR, type, TREE_OPERAND (op0, 0));
+
+ /* For integral conversions with the same precision or pointer
+ conversions use a NOP_EXPR instead. */
+ if ((INTEGRAL_TYPE_P (type) && INTEGRAL_TYPE_P (TREE_TYPE (op0))
+ && TYPE_PRECISION (type) == TYPE_PRECISION (TREE_TYPE (op0))
+ /* Do not muck with VIEW_CONVERT_EXPRs that convert from
+ a sub-type to its base type as generated by the Ada FE. */
+ && !TREE_TYPE (TREE_TYPE (op0)))
+ || (POINTER_TYPE_P (type) && POINTER_TYPE_P (TREE_TYPE (op0))))
+ return fold_convert (type, op0);
+
+ /* Strip inner integral conversions that do not change the precision. */
+ if ((TREE_CODE (op0) == NOP_EXPR
+ || TREE_CODE (op0) == CONVERT_EXPR)
+ && INTEGRAL_TYPE_P (TREE_TYPE (op0))
+ && INTEGRAL_TYPE_P (TREE_TYPE (TREE_OPERAND (op0, 0)))
+ && (TYPE_PRECISION (TREE_TYPE (op0))
+ == TYPE_PRECISION (TREE_TYPE (TREE_OPERAND (op0, 0)))))
return fold_build1 (VIEW_CONVERT_EXPR, type, TREE_OPERAND (op0, 0));
+
return fold_view_convert_expr (type, op0);
case NEGATE_EXPR:
@@ -12174,18 +11848,6 @@ fold_binary (enum tree_code code, tree type, tree op0, tree op1)
return omit_one_operand (type, rslt, arg0);
}
- /* If this is a comparison of a field, we may be able to simplify it. */
- if ((TREE_CODE (arg0) == COMPONENT_REF
- || TREE_CODE (arg0) == BIT_FIELD_REF)
- /* Handle the constant case even without -O
- to make sure the warnings are given. */
- && (optimize || TREE_CODE (arg1) == INTEGER_CST))
- {
- t1 = optimize_bit_field_compare (code, type, arg0, arg1);
- if (t1)
- return t1;
- }
-
/* Optimize comparisons of strlen vs zero to a compare of the
first character of the string vs zero. To wit,
strlen(ptr) == 0 => *ptr == 0
@@ -13271,9 +12933,7 @@ fold_ternary (enum tree_code code, tree type, tree op0, tree op1, tree op2)
case BIT_FIELD_REF:
if ((TREE_CODE (arg0) == VECTOR_CST
|| (TREE_CODE (arg0) == CONSTRUCTOR && TREE_CONSTANT (arg0)))
- && type == TREE_TYPE (TREE_TYPE (arg0))
- && host_integerp (arg1, 1)
- && host_integerp (op2, 1))
+ && type == TREE_TYPE (TREE_TYPE (arg0)))
{
unsigned HOST_WIDE_INT width = tree_low_cst (arg1, 1);
unsigned HOST_WIDE_INT idx = tree_low_cst (op2, 1);
@@ -14025,106 +13685,161 @@ multiple_of_p (tree type, const_tree top, const_tree bottom)
}
}
-/* Return true if `t' is known to be non-negative. If the return
+/* Return true if CODE or TYPE is known to be non-negative. */
+
+static bool
+tree_simple_nonnegative_warnv_p (enum tree_code code, tree type)
+{
+ if ((TYPE_PRECISION (type) != 1 || TYPE_UNSIGNED (type))
+ && truth_value_p (code))
+ /* Truth values evaluate to 0 or 1, which is nonnegative unless we
+ have a signed:1 type (where the value is -1 and 0). */
+ return true;
+ return false;
+}
+
+/* Return true if (CODE OP0) is known to be non-negative. If the return
value is based on the assumption that signed overflow is undefined,
set *STRICT_OVERFLOW_P to true; otherwise, don't change
*STRICT_OVERFLOW_P. */
-bool
-tree_expr_nonnegative_warnv_p (tree t, bool *strict_overflow_p)
+static bool
+tree_unary_nonnegative_warnv_p (enum tree_code code, tree type, tree op0,
+ bool *strict_overflow_p)
{
- if (t == error_mark_node)
- return false;
-
- if (TYPE_UNSIGNED (TREE_TYPE (t)))
+ if (TYPE_UNSIGNED (type))
return true;
- switch (TREE_CODE (t))
+ switch (code)
{
- case SSA_NAME:
- /* Query VRP to see if it has recorded any information about
- the range of this object. */
- return ssa_name_nonnegative_p (t);
-
case ABS_EXPR:
/* We can't return 1 if flag_wrapv is set because
ABS_EXPR<INT_MIN> = INT_MIN. */
- if (!INTEGRAL_TYPE_P (TREE_TYPE (t)))
+ if (!INTEGRAL_TYPE_P (type))
return true;
- if (TYPE_OVERFLOW_UNDEFINED (TREE_TYPE (t)))
+ if (TYPE_OVERFLOW_UNDEFINED (type))
{
*strict_overflow_p = true;
return true;
}
break;
- case INTEGER_CST:
- return tree_int_cst_sgn (t) >= 0;
+ case NON_LVALUE_EXPR:
+ case FLOAT_EXPR:
+ case FIX_TRUNC_EXPR:
+ return tree_expr_nonnegative_warnv_p (op0,
+ strict_overflow_p);
- case REAL_CST:
- return ! REAL_VALUE_NEGATIVE (TREE_REAL_CST (t));
+ case NOP_EXPR:
+ {
+ tree inner_type = TREE_TYPE (op0);
+ tree outer_type = type;
- case FIXED_CST:
- return ! FIXED_VALUE_NEGATIVE (TREE_FIXED_CST (t));
+ if (TREE_CODE (outer_type) == REAL_TYPE)
+ {
+ if (TREE_CODE (inner_type) == REAL_TYPE)
+ return tree_expr_nonnegative_warnv_p (op0,
+ strict_overflow_p);
+ if (TREE_CODE (inner_type) == INTEGER_TYPE)
+ {
+ if (TYPE_UNSIGNED (inner_type))
+ return true;
+ return tree_expr_nonnegative_warnv_p (op0,
+ strict_overflow_p);
+ }
+ }
+ else if (TREE_CODE (outer_type) == INTEGER_TYPE)
+ {
+ if (TREE_CODE (inner_type) == REAL_TYPE)
+ return tree_expr_nonnegative_warnv_p (op0,
+ strict_overflow_p);
+ if (TREE_CODE (inner_type) == INTEGER_TYPE)
+ return TYPE_PRECISION (inner_type) < TYPE_PRECISION (outer_type)
+ && TYPE_UNSIGNED (inner_type);
+ }
+ }
+ break;
+ default:
+ return tree_simple_nonnegative_warnv_p (code, type);
+ }
+
+ /* We don't know sign of `t', so be conservative and return false. */
+ return false;
+}
+
+/* Return true if (CODE OP0 OP1) is known to be non-negative. If the return
+ value is based on the assumption that signed overflow is undefined,
+ set *STRICT_OVERFLOW_P to true; otherwise, don't change
+ *STRICT_OVERFLOW_P. */
+
+static bool
+tree_binary_nonnegative_warnv_p (enum tree_code code, tree type, tree op0,
+ tree op1, bool *strict_overflow_p)
+{
+ if (TYPE_UNSIGNED (type))
+ return true;
+
+ switch (code)
+ {
case POINTER_PLUS_EXPR:
case PLUS_EXPR:
- if (FLOAT_TYPE_P (TREE_TYPE (t)))
- return (tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
+ if (FLOAT_TYPE_P (type))
+ return (tree_expr_nonnegative_warnv_p (op0,
strict_overflow_p)
- && tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 1),
+ && tree_expr_nonnegative_warnv_p (op1,
strict_overflow_p));
/* zero_extend(x) + zero_extend(y) is non-negative if x and y are
both unsigned and at least 2 bits shorter than the result. */
- if (TREE_CODE (TREE_TYPE (t)) == INTEGER_TYPE
- && TREE_CODE (TREE_OPERAND (t, 0)) == NOP_EXPR
- && TREE_CODE (TREE_OPERAND (t, 1)) == NOP_EXPR)
+ if (TREE_CODE (type) == INTEGER_TYPE
+ && TREE_CODE (op0) == NOP_EXPR
+ && TREE_CODE (op1) == NOP_EXPR)
{
- tree inner1 = TREE_TYPE (TREE_OPERAND (TREE_OPERAND (t, 0), 0));
- tree inner2 = TREE_TYPE (TREE_OPERAND (TREE_OPERAND (t, 1), 0));
+ tree inner1 = TREE_TYPE (TREE_OPERAND (op0, 0));
+ tree inner2 = TREE_TYPE (TREE_OPERAND (op1, 0));
if (TREE_CODE (inner1) == INTEGER_TYPE && TYPE_UNSIGNED (inner1)
&& TREE_CODE (inner2) == INTEGER_TYPE && TYPE_UNSIGNED (inner2))
{
unsigned int prec = MAX (TYPE_PRECISION (inner1),
TYPE_PRECISION (inner2)) + 1;
- return prec < TYPE_PRECISION (TREE_TYPE (t));
+ return prec < TYPE_PRECISION (type);
}
}
break;
case MULT_EXPR:
- if (FLOAT_TYPE_P (TREE_TYPE (t)))
+ if (FLOAT_TYPE_P (type))
{
/* x * x for floating point x is always non-negative. */
- if (operand_equal_p (TREE_OPERAND (t, 0), TREE_OPERAND (t, 1), 0))
+ if (operand_equal_p (op0, op1, 0))
return true;
- return (tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
+ return (tree_expr_nonnegative_warnv_p (op0,
strict_overflow_p)
- && tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 1),
+ && tree_expr_nonnegative_warnv_p (op1,
strict_overflow_p));
}
/* zero_extend(x) * zero_extend(y) is non-negative if x and y are
both unsigned and their total bits is shorter than the result. */
- if (TREE_CODE (TREE_TYPE (t)) == INTEGER_TYPE
- && TREE_CODE (TREE_OPERAND (t, 0)) == NOP_EXPR
- && TREE_CODE (TREE_OPERAND (t, 1)) == NOP_EXPR)
+ if (TREE_CODE (type) == INTEGER_TYPE
+ && TREE_CODE (op0) == NOP_EXPR
+ && TREE_CODE (op1) == NOP_EXPR)
{
- tree inner1 = TREE_TYPE (TREE_OPERAND (TREE_OPERAND (t, 0), 0));
- tree inner2 = TREE_TYPE (TREE_OPERAND (TREE_OPERAND (t, 1), 0));
+ tree inner1 = TREE_TYPE (TREE_OPERAND (op0, 0));
+ tree inner2 = TREE_TYPE (TREE_OPERAND (op1, 0));
if (TREE_CODE (inner1) == INTEGER_TYPE && TYPE_UNSIGNED (inner1)
&& TREE_CODE (inner2) == INTEGER_TYPE && TYPE_UNSIGNED (inner2))
return TYPE_PRECISION (inner1) + TYPE_PRECISION (inner2)
- < TYPE_PRECISION (TREE_TYPE (t));
+ < TYPE_PRECISION (type);
}
return false;
case BIT_AND_EXPR:
case MAX_EXPR:
- return (tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
+ return (tree_expr_nonnegative_warnv_p (op0,
strict_overflow_p)
- || tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 1),
+ || tree_expr_nonnegative_warnv_p (op1,
strict_overflow_p));
case BIT_IOR_EXPR:
@@ -14135,68 +13850,79 @@ tree_expr_nonnegative_warnv_p (tree t, bool *strict_overflow_p)
case CEIL_DIV_EXPR:
case FLOOR_DIV_EXPR:
case ROUND_DIV_EXPR:
- return (tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
+ return (tree_expr_nonnegative_warnv_p (op0,
strict_overflow_p)
- && tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 1),
+ && tree_expr_nonnegative_warnv_p (op1,
strict_overflow_p));
case TRUNC_MOD_EXPR:
case CEIL_MOD_EXPR:
case FLOOR_MOD_EXPR:
case ROUND_MOD_EXPR:
- case SAVE_EXPR:
- case NON_LVALUE_EXPR:
- case FLOAT_EXPR:
- case FIX_TRUNC_EXPR:
- return tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
+ return tree_expr_nonnegative_warnv_p (op0,
strict_overflow_p);
+ default:
+ return tree_simple_nonnegative_warnv_p (code, type);
+ }
- case COMPOUND_EXPR:
- case MODIFY_EXPR:
- case GIMPLE_MODIFY_STMT:
- return tree_expr_nonnegative_warnv_p (GENERIC_TREE_OPERAND (t, 1),
- strict_overflow_p);
+ /* We don't know sign of `t', so be conservative and return false. */
+ return false;
+}
- case BIND_EXPR:
- return tree_expr_nonnegative_warnv_p (expr_last (TREE_OPERAND (t, 1)),
- strict_overflow_p);
+/* Return true if T is known to be non-negative. If the return
+ value is based on the assumption that signed overflow is undefined,
+ set *STRICT_OVERFLOW_P to true; otherwise, don't change
+ *STRICT_OVERFLOW_P. */
+
+static bool
+tree_single_nonnegative_warnv_p (tree t, bool *strict_overflow_p)
+{
+ if (TYPE_UNSIGNED (TREE_TYPE (t)))
+ return true;
+
+ switch (TREE_CODE (t))
+ {
+ case SSA_NAME:
+ /* Query VRP to see if it has recorded any information about
+ the range of this object. */
+ return ssa_name_nonnegative_p (t);
+
+ case INTEGER_CST:
+ return tree_int_cst_sgn (t) >= 0;
+
+ case REAL_CST:
+ return ! REAL_VALUE_NEGATIVE (TREE_REAL_CST (t));
+
+ case FIXED_CST:
+ return ! FIXED_VALUE_NEGATIVE (TREE_FIXED_CST (t));
case COND_EXPR:
return (tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 1),
strict_overflow_p)
&& tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 2),
strict_overflow_p));
+ default:
+ return tree_simple_nonnegative_warnv_p (TREE_CODE (t),
+ TREE_TYPE (t));
+ }
+ /* We don't know sign of `t', so be conservative and return false. */
+ return false;
+}
- case NOP_EXPR:
- {
- tree inner_type = TREE_TYPE (TREE_OPERAND (t, 0));
- tree outer_type = TREE_TYPE (t);
+/* Return true if T is known to be non-negative. If the return
+ value is based on the assumption that signed overflow is undefined,
+ set *STRICT_OVERFLOW_P to true; otherwise, don't change
+ *STRICT_OVERFLOW_P. */
- if (TREE_CODE (outer_type) == REAL_TYPE)
- {
- if (TREE_CODE (inner_type) == REAL_TYPE)
- return tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
- strict_overflow_p);
- if (TREE_CODE (inner_type) == INTEGER_TYPE)
- {
- if (TYPE_UNSIGNED (inner_type))
- return true;
- return tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
- strict_overflow_p);
- }
- }
- else if (TREE_CODE (outer_type) == INTEGER_TYPE)
- {
- if (TREE_CODE (inner_type) == REAL_TYPE)
- return tree_expr_nonnegative_warnv_p (TREE_OPERAND (t,0),
- strict_overflow_p);
- if (TREE_CODE (inner_type) == INTEGER_TYPE)
- return TYPE_PRECISION (inner_type) < TYPE_PRECISION (outer_type)
- && TYPE_UNSIGNED (inner_type);
- }
- }
- break;
+static bool
+tree_invalid_nonnegative_warnv_p (tree t, bool *strict_overflow_p)
+{
+ enum tree_code code = TREE_CODE (t);
+ if (TYPE_UNSIGNED (TREE_TYPE (t)))
+ return true;
+ switch (code)
+ {
case TARGET_EXPR:
{
tree temp = TARGET_EXPR_SLOT (t);
@@ -14354,25 +14080,102 @@ tree_expr_nonnegative_warnv_p (tree t, bool *strict_overflow_p)
default:
break;
}
+ return tree_simple_nonnegative_warnv_p (TREE_CODE (t),
+ TREE_TYPE (t));
}
+ break;
- /* ... fall through ... */
+ case COMPOUND_EXPR:
+ case MODIFY_EXPR:
+ case GIMPLE_MODIFY_STMT:
+ return tree_expr_nonnegative_warnv_p (GENERIC_TREE_OPERAND (t, 1),
+ strict_overflow_p);
+ case BIND_EXPR:
+ return tree_expr_nonnegative_warnv_p (expr_last (TREE_OPERAND (t, 1)),
+ strict_overflow_p);
+ case SAVE_EXPR:
+ return tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
+ strict_overflow_p);
default:
- {
- tree type = TREE_TYPE (t);
- if ((TYPE_PRECISION (type) != 1 || TYPE_UNSIGNED (type))
- && truth_value_p (TREE_CODE (t)))
- /* Truth values evaluate to 0 or 1, which is nonnegative unless we
- have a signed:1 type (where the value is -1 and 0). */
- return true;
- }
+ return tree_simple_nonnegative_warnv_p (TREE_CODE (t),
+ TREE_TYPE (t));
}
/* We don't know sign of `t', so be conservative and return false. */
return false;
}
+/* Return true if T is known to be non-negative. If the return
+ value is based on the assumption that signed overflow is undefined,
+ set *STRICT_OVERFLOW_P to true; otherwise, don't change
+ *STRICT_OVERFLOW_P. */
+
+bool
+tree_expr_nonnegative_warnv_p (tree t, bool *strict_overflow_p)
+{
+ enum tree_code code;
+ if (t == error_mark_node)
+ return false;
+
+ code = TREE_CODE (t);
+ switch (TREE_CODE_CLASS (code))
+ {
+ case tcc_binary:
+ case tcc_comparison:
+ return tree_binary_nonnegative_warnv_p (TREE_CODE (t),
+ TREE_TYPE (t),
+ TREE_OPERAND (t, 0),
+ TREE_OPERAND (t, 1),
+ strict_overflow_p);
+
+ case tcc_unary:
+ return tree_unary_nonnegative_warnv_p (TREE_CODE (t),
+ TREE_TYPE (t),
+ TREE_OPERAND (t, 0),
+ strict_overflow_p);
+
+ case tcc_constant:
+ case tcc_declaration:
+ case tcc_reference:
+ return tree_single_nonnegative_warnv_p (t, strict_overflow_p);
+
+ default:
+ break;
+ }
+
+ switch (code)
+ {
+ case TRUTH_AND_EXPR:
+ case TRUTH_OR_EXPR:
+ case TRUTH_XOR_EXPR:
+ return tree_binary_nonnegative_warnv_p (TREE_CODE (t),
+ TREE_TYPE (t),
+ TREE_OPERAND (t, 0),
+ TREE_OPERAND (t, 1),
+ strict_overflow_p);
+ case TRUTH_NOT_EXPR:
+ return tree_unary_nonnegative_warnv_p (TREE_CODE (t),
+ TREE_TYPE (t),
+ TREE_OPERAND (t, 0),
+ strict_overflow_p);
+
+ case COND_EXPR:
+ case CONSTRUCTOR:
+ case OBJ_TYPE_REF:
+ case ASSERT_EXPR:
+ case ADDR_EXPR:
+ case WITH_SIZE_EXPR:
+ case EXC_PTR_EXPR:
+ case SSA_NAME:
+ case FILTER_EXPR:
+ return tree_single_nonnegative_warnv_p (t, strict_overflow_p);
+
+ default:
+ return tree_invalid_nonnegative_warnv_p (t, strict_overflow_p);
+ }
+}
+
/* Return true if `t' is known to be non-negative. Handle warnings
about undefined signed overflow. */
@@ -14391,7 +14194,8 @@ tree_expr_nonnegative_p (tree t)
return ret;
}
-/* Return true when T is an address and is known to be nonzero.
+
+/* Return true when (CODE OP0) is an address and is known to be nonzero.
For floating point we further ensure that T is not denormal.
Similar logic is present in nonzero_address in rtlanal.h.
@@ -14399,30 +14203,55 @@ tree_expr_nonnegative_p (tree t)
is undefined, set *STRICT_OVERFLOW_P to true; otherwise, don't
change *STRICT_OVERFLOW_P. */
-bool
-tree_expr_nonzero_warnv_p (tree t, bool *strict_overflow_p)
+static bool
+tree_unary_nonzero_warnv_p (enum tree_code code, tree type, tree op0,
+ bool *strict_overflow_p)
{
- tree type = TREE_TYPE (t);
- bool sub_strict_overflow_p;
+ switch (code)
+ {
+ case ABS_EXPR:
+ return tree_expr_nonzero_warnv_p (op0,
+ strict_overflow_p);
- /* Doing something useful for floating point would need more work. */
- if (!INTEGRAL_TYPE_P (type) && !POINTER_TYPE_P (type))
- return false;
+ case NOP_EXPR:
+ {
+ tree inner_type = TREE_TYPE (op0);
+ tree outer_type = type;
- switch (TREE_CODE (t))
- {
- case SSA_NAME:
- /* Query VRP to see if it has recorded any information about
- the range of this object. */
- return ssa_name_nonzero_p (t);
+ return (TYPE_PRECISION (outer_type) >= TYPE_PRECISION (inner_type)
+ && tree_expr_nonzero_warnv_p (op0,
+ strict_overflow_p));
+ }
+ break;
- case ABS_EXPR:
- return tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 0),
+ case NON_LVALUE_EXPR:
+ return tree_expr_nonzero_warnv_p (op0,
strict_overflow_p);
- case INTEGER_CST:
- return !integer_zerop (t);
+ default:
+ break;
+ }
+ return false;
+}
+
+/* Return true when (CODE OP0 OP1) is an address and is known to be nonzero.
+ For floating point we further ensure that T is not denormal.
+ Similar logic is present in nonzero_address in rtlanal.h.
+
+ If the return value is based on the assumption that signed overflow
+ is undefined, set *STRICT_OVERFLOW_P to true; otherwise, don't
+ change *STRICT_OVERFLOW_P. */
+
+static bool
+tree_binary_nonzero_warnv_p (enum tree_code code,
+ tree type,
+ tree op0,
+ tree op1, bool *strict_overflow_p)
+{
+ bool sub_strict_overflow_p;
+ switch (code)
+ {
case POINTER_PLUS_EXPR:
case PLUS_EXPR:
if (TYPE_OVERFLOW_UNDEFINED (type))
@@ -14430,18 +14259,18 @@ tree_expr_nonzero_warnv_p (tree t, bool *strict_overflow_p)
/* With the presence of negative values it is hard
to say something. */
sub_strict_overflow_p = false;
- if (!tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
+ if (!tree_expr_nonnegative_warnv_p (op0,
&sub_strict_overflow_p)
- || !tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 1),
+ || !tree_expr_nonnegative_warnv_p (op1,
&sub_strict_overflow_p))
return false;
/* One of operands must be positive and the other non-negative. */
/* We don't set *STRICT_OVERFLOW_P here: even if this value
overflows, on a twos-complement machine the sum of two
nonnegative numbers can never be zero. */
- return (tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 0),
+ return (tree_expr_nonzero_warnv_p (op0,
strict_overflow_p)
- || tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 1),
+ || tree_expr_nonzero_warnv_p (op1,
strict_overflow_p));
}
break;
@@ -14449,9 +14278,9 @@ tree_expr_nonzero_warnv_p (tree t, bool *strict_overflow_p)
case MULT_EXPR:
if (TYPE_OVERFLOW_UNDEFINED (type))
{
- if (tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 0),
+ if (tree_expr_nonzero_warnv_p (op0,
strict_overflow_p)
- && tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 1),
+ && tree_expr_nonzero_warnv_p (op1,
strict_overflow_p))
{
*strict_overflow_p = true;
@@ -14460,18 +14289,83 @@ tree_expr_nonzero_warnv_p (tree t, bool *strict_overflow_p)
}
break;
- case NOP_EXPR:
- {
- tree inner_type = TREE_TYPE (TREE_OPERAND (t, 0));
- tree outer_type = TREE_TYPE (t);
+ case MIN_EXPR:
+ sub_strict_overflow_p = false;
+ if (tree_expr_nonzero_warnv_p (op0,
+ &sub_strict_overflow_p)
+ && tree_expr_nonzero_warnv_p (op1,
+ &sub_strict_overflow_p))
+ {
+ if (sub_strict_overflow_p)
+ *strict_overflow_p = true;
+ }
+ break;
- return (TYPE_PRECISION (outer_type) >= TYPE_PRECISION (inner_type)
- && tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 0),
- strict_overflow_p));
- }
+ case MAX_EXPR:
+ sub_strict_overflow_p = false;
+ if (tree_expr_nonzero_warnv_p (op0,
+ &sub_strict_overflow_p))
+ {
+ if (sub_strict_overflow_p)
+ *strict_overflow_p = true;
+
+ /* When both operands are nonzero, then MAX must be too. */
+ if (tree_expr_nonzero_warnv_p (op1,
+ strict_overflow_p))
+ return true;
+
+ /* MAX where operand 0 is positive is positive. */
+ return tree_expr_nonnegative_warnv_p (op0,
+ strict_overflow_p);
+ }
+ /* MAX where operand 1 is positive is positive. */
+ else if (tree_expr_nonzero_warnv_p (op1,
+ &sub_strict_overflow_p)
+ && tree_expr_nonnegative_warnv_p (op1,
+ &sub_strict_overflow_p))
+ {
+ if (sub_strict_overflow_p)
+ *strict_overflow_p = true;
+ return true;
+ }
+ break;
+
+ case BIT_IOR_EXPR:
+ return (tree_expr_nonzero_warnv_p (op1,
+ strict_overflow_p)
+ || tree_expr_nonzero_warnv_p (op0,
+ strict_overflow_p));
+
+ default:
break;
+ }
+
+ return false;
+}
- case ADDR_EXPR:
+/* Return true when T is an address and is known to be nonzero.
+ For floating point we further ensure that T is not denormal.
+ Similar logic is present in nonzero_address in rtlanal.h.
+
+ If the return value is based on the assumption that signed overflow
+ is undefined, set *STRICT_OVERFLOW_P to true; otherwise, don't
+ change *STRICT_OVERFLOW_P. */
+
+static bool
+tree_single_nonzero_warnv_p (tree t, bool *strict_overflow_p)
+{
+ bool sub_strict_overflow_p;
+ switch (TREE_CODE (t))
+ {
+ case SSA_NAME:
+ /* Query VRP to see if it has recorded any information about
+ the range of this object. */
+ return ssa_name_nonzero_p (t);
+
+ case INTEGER_CST:
+ return !integer_zerop (t);
+
+ case ADDR_EXPR:
{
tree base = get_base_address (TREE_OPERAND (t, 0));
@@ -14502,46 +14396,75 @@ tree_expr_nonzero_warnv_p (tree t, bool *strict_overflow_p)
}
break;
- case MIN_EXPR:
- sub_strict_overflow_p = false;
- if (tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 0),
- &sub_strict_overflow_p)
- && tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 1),
- &sub_strict_overflow_p))
- {
- if (sub_strict_overflow_p)
- *strict_overflow_p = true;
- }
+ default:
break;
+ }
+ return false;
+}
- case MAX_EXPR:
- sub_strict_overflow_p = false;
- if (tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 0),
- &sub_strict_overflow_p))
- {
- if (sub_strict_overflow_p)
- *strict_overflow_p = true;
+/* Return true when T is an address and is known to be nonzero.
+ For floating point we further ensure that T is not denormal.
+ Similar logic is present in nonzero_address in rtlanal.h.
- /* When both operands are nonzero, then MAX must be too. */
- if (tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 1),
- strict_overflow_p))
- return true;
+ If the return value is based on the assumption that signed overflow
+ is undefined, set *STRICT_OVERFLOW_P to true; otherwise, don't
+ change *STRICT_OVERFLOW_P. */
- /* MAX where operand 0 is positive is positive. */
- return tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 0),
+bool
+tree_expr_nonzero_warnv_p (tree t, bool *strict_overflow_p)
+{
+ tree type = TREE_TYPE (t);
+ enum tree_code code;
+
+ /* Doing something useful for floating point would need more work. */
+ if (!INTEGRAL_TYPE_P (type) && !POINTER_TYPE_P (type))
+ return false;
+
+ code = TREE_CODE (t);
+ switch (TREE_CODE_CLASS (code))
+ {
+ case tcc_unary:
+ return tree_unary_nonzero_warnv_p (code, type, TREE_OPERAND (t, 0),
+ strict_overflow_p);
+ case tcc_binary:
+ case tcc_comparison:
+ return tree_binary_nonzero_warnv_p (code, type,
+ TREE_OPERAND (t, 0),
+ TREE_OPERAND (t, 1),
strict_overflow_p);
- }
- /* MAX where operand 1 is positive is positive. */
- else if (tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 1),
- &sub_strict_overflow_p)
- && tree_expr_nonnegative_warnv_p (TREE_OPERAND (t, 1),
- &sub_strict_overflow_p))
- {
- if (sub_strict_overflow_p)
- *strict_overflow_p = true;
- return true;
- }
+ case tcc_constant:
+ case tcc_declaration:
+ case tcc_reference:
+ return tree_single_nonzero_warnv_p (t, strict_overflow_p);
+
+ default:
break;
+ }
+
+ switch (code)
+ {
+ case TRUTH_NOT_EXPR:
+ return tree_unary_nonzero_warnv_p (code, type, TREE_OPERAND (t, 0),
+ strict_overflow_p);
+
+ case TRUTH_AND_EXPR:
+ case TRUTH_OR_EXPR:
+ case TRUTH_XOR_EXPR:
+ return tree_binary_nonzero_warnv_p (code, type,
+ TREE_OPERAND (t, 0),
+ TREE_OPERAND (t, 1),
+ strict_overflow_p);
+
+ case COND_EXPR:
+ case CONSTRUCTOR:
+ case OBJ_TYPE_REF:
+ case ASSERT_EXPR:
+ case ADDR_EXPR:
+ case WITH_SIZE_EXPR:
+ case EXC_PTR_EXPR:
+ case SSA_NAME:
+ case FILTER_EXPR:
+ return tree_single_nonzero_warnv_p (t, strict_overflow_p);
case COMPOUND_EXPR:
case MODIFY_EXPR:
@@ -14551,16 +14474,9 @@ tree_expr_nonzero_warnv_p (tree t, bool *strict_overflow_p)
strict_overflow_p);
case SAVE_EXPR:
- case NON_LVALUE_EXPR:
return tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 0),
strict_overflow_p);
- case BIT_IOR_EXPR:
- return (tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 1),
- strict_overflow_p)
- || tree_expr_nonzero_warnv_p (TREE_OPERAND (t, 0),
- strict_overflow_p));
-
case CALL_EXPR:
return alloca_call_p (t);
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 841c9d4c0d8..e660d9cd8ff 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,64 @@
+2008-03-09 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/35474
+ * module.c (mio_symtree_ref): After providing a symbol for a
+ missing equivalence member, resolve and NULL the fixups.
+
+2008-03-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * invoke.texi (Error and Warning Options): Document
+ -Wline-truncation.
+
+2008-03-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/34956
+ * trans-array.c (gfc_conv_ss_startstride): Fix the logic to avoid
+ checking bounds of absent optional arguments.
+
+2008-03-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33197
+ * intrinsic.c (add_functions): Add simplification routines for
+ ERF, DERF, ERFC and DERFC.
+ * decl.c (gfc_match_suffix, gfc_match_subroutine): Change GNU
+ extensions into Fortran 2008 features.
+ * intrinsic.h (gfc_simplify_erf, gfc_simplify_erfc): New
+ prototypes.
+ * simplify.c (gfc_simplify_erf, gfc_simplify_erfc): New functions.
+
+2008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33197
+ * intrinsic.c (add_functions): Modify intrinsics ACOSH, ASINH,
+ ATANH, ERF, ERFC and GAMMA. Add intrinsics BESSEL_{J,Y}{0,1,N},
+ ERFC_SCALED, LOG_GAMMA and HYPOT.
+ * intrinsic.h (gfc_check_hypot, gfc_simplify_hypot,
+ gfc_resolve_hypot): New prototypes.
+ * mathbuiltins.def: Add HYPOT builtin. Make complex versions of
+ ACOSH, ASINH and ATANH available.
+ * gfortran.h (GFC_ISYM_ERFC_SCALED, GFC_ISYM_HYPOT): New values.
+ * lang.opt: Add -std=f2008 option.
+ * libgfortran.h: Define GFC_STD_F2008.
+ * lang-specs.h: Add .f08 and .F08 file suffixes.
+ * iresolve.c (gfc_resolve_hypot): New function.
+ * parse.c (parse_contained): Allow empty CONTAINS for Fortran 2008.
+ * check.c (gfc_check_hypot): New function.
+ * trans-intrinsic.c (gfc_intrinsic_map): Define ERFC_SCALE builtin.
+ * options.c (set_default_std_flags): Allow Fortran 2008 by default.
+ (form_from_filename): Add .f08 suffix.
+ (gfc_handle_option): Handle -std=f2008 option.
+ * simplify.c (gfc_simplify_hypot): New function.
+ * gfortran.texi: Document Fortran 2008 status and file extensions.
+ * intrinsic.texi: Document new BESSEL_{J,Y}{0,1,N} intrinsics,
+ as well as HYPOT and ERFC_SCALED. Update documentation of ERF,
+ ERFC, GAMMA, LGAMMA, ASINH, ACOSH and ATANH.
+ * invoke.texi: Document the new -std=f2008 option.
+
+2008-03-02 Jakub Jelinek <jakub@redhat.com>
+
+ * gfortranspec.c (lang_specific_driver): Update copyright notice
+ dates.
+
2008-02-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/35059
diff --git a/gcc/fortran/check.c b/gcc/fortran/check.c
index 5c7353d1168..c02656ce669 100644
--- a/gcc/fortran/check.c
+++ b/gcc/fortran/check.c
@@ -1111,6 +1111,18 @@ gfc_check_huge (gfc_expr *x)
}
+try
+gfc_check_hypot (gfc_expr *x, gfc_expr *y)
+{
+ if (type_check (x, 0, BT_REAL) == FAILURE)
+ return FAILURE;
+ if (same_type_check (x, 0, y, 1) == FAILURE)
+ return FAILURE;
+
+ return SUCCESS;
+}
+
+
/* Check that the single argument is an integer. */
try
diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c
index 892c80a46d3..d6a5633a2f6 100644
--- a/gcc/fortran/decl.c
+++ b/gcc/fortran/decl.c
@@ -3999,9 +3999,9 @@ gfc_match_suffix (gfc_symbol *sym, gfc_symbol **result)
/* Fortran 2008 draft allows BIND(C) for internal procedures. */
if (gfc_current_state () == COMP_CONTAINS
&& sym->ns->proc_name->attr.flavor != FL_MODULE
- && gfc_notify_std (GFC_STD_GNU, "Extension: BIND(C) attribute at %L "
- "may not be specified for an internal procedure",
- &gfc_current_locus)
+ && gfc_notify_std (GFC_STD_F2008, "Fortran 2008: BIND(C) attribute "
+ "at %L may not be specified for an internal "
+ "procedure", &gfc_current_locus)
== FAILURE)
return MATCH_ERROR;
@@ -4733,9 +4733,9 @@ gfc_match_subroutine (void)
/* The following is allowed in the Fortran 2008 draft. */
if (gfc_current_state () == COMP_CONTAINS
&& sym->ns->proc_name->attr.flavor != FL_MODULE
- && gfc_notify_std (GFC_STD_GNU, "Extension: BIND(C) attribute at "
- "%L may not be specified for an internal procedure",
- &gfc_current_locus)
+ && gfc_notify_std (GFC_STD_F2008, "Fortran 2008: BIND(C) attribute "
+ "at %L may not be specified for an internal "
+ "procedure", &gfc_current_locus)
== FAILURE)
return MATCH_ERROR;
diff --git a/gcc/fortran/gfortran.h b/gcc/fortran/gfortran.h
index cc749792604..07518ee8d13 100644
--- a/gcc/fortran/gfortran.h
+++ b/gcc/fortran/gfortran.h
@@ -347,6 +347,7 @@ enum gfc_isym_id
GFC_ISYM_EPSILON,
GFC_ISYM_ERF,
GFC_ISYM_ERFC,
+ GFC_ISYM_ERFC_SCALED,
GFC_ISYM_ETIME,
GFC_ISYM_EXIT,
GFC_ISYM_EXP,
@@ -379,6 +380,7 @@ enum gfc_isym_id
GFC_ISYM_GMTIME,
GFC_ISYM_HOSTNM,
GFC_ISYM_HUGE,
+ GFC_ISYM_HYPOT,
GFC_ISYM_IACHAR,
GFC_ISYM_IAND,
GFC_ISYM_IARGC,
diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi
index 098f1f05bd9..afbfe03317f 100644
--- a/gcc/fortran/gfortran.texi
+++ b/gcc/fortran/gfortran.texi
@@ -181,7 +181,7 @@ Part I: Invoking GNU Fortran
* Runtime:: Influencing runtime behavior with environment variables.
Part II: Language Reference
-* Fortran 2003 status:: Fortran 2003 features supported by GNU Fortran.
+* Fortran 2003 and 2008 status:: Fortran 2003 and 2008 features supported by GNU Fortran.
* Extensions:: Language extensions implemented by GNU Fortran.
* Intrinsic Procedures:: Intrinsic procedures supported by GNU Fortran.
* Intrinsic Modules:: Intrinsic modules supported by GNU Fortran.
@@ -251,7 +251,7 @@ it will do everything you expect from any decent compiler:
@item
Read a user's program,
stored in a file and containing instructions written
-in Fortran 77, Fortran 90, Fortran 95 or Fortran 2003.
+in Fortran 77, Fortran 90, Fortran 95, Fortran 2003 or Fortran 2008.
This file contains @dfn{source code}.
@item
@@ -369,17 +369,19 @@ Fortran) for each file in the source code, and then calls the assembler
and linker as appropriate to produce the compiled output. In a copy of
GCC which has been compiled with Fortran language support enabled,
@command{gcc} will recognize files with @file{.f}, @file{.for}, @file{.ftn},
-@file{.f90}, @file{.f95}, and @file{.f03} extensions as Fortran source code,
-and compile it accordingly. A @command{gfortran} driver program is also
-provided, which is identical to @command{gcc} except that it automatically
-links the Fortran runtime libraries into the compiled program.
+@file{.f90}, @file{.f95}, @file{.f03} and @file{.f08} extensions as
+Fortran source code, and compile it accordingly. A @command{gfortran}
+driver program is also provided, which is identical to @command{gcc}
+except that it automatically links the Fortran runtime libraries into the
+compiled program.
Source files with @file{.f}, @file{.for}, @file{.fpp}, @file{.ftn}, @file{.F},
@file{.FOR}, @file{.FPP}, and @file{.FTN} extensions are treated as fixed form.
-Source files with @file{.f90}, @file{.f95}, @file{.f03}, @file{.F90},
-@file{.F95}, and @file{.F03} extensions are treated as free form. The
-capitalized versions of either form are run through preprocessing. Source files
-with the lower case @file{.fpp} extension are also run through preprocessing.
+Source files with @file{.f90}, @file{.f95}, @file{.f03}, @file{.f08},
+@file{.F90}, @file{.F95}, @file{.F03} and @file{.F08} extensions are
+treated as free form. The capitalized versions of either form are run
+through preprocessing. Source files with the lower case @file{.fpp}
+extension are also run through preprocessing.
This manual specifically documents the Fortran front end, which handles
the programming language's syntax and semantics. The aspects of GCC
@@ -407,10 +409,10 @@ FPP) to allow for conditional compilation. In the case of GNU Fortran,
this is the GNU C Preprocessor in the traditional mode. On systems with
case-preserving file names, the preprocessor is automatically invoked if the
file extension is @code{.F}, @code{.FOR}, @code{.FTN}, @code{.F90},
-@code{.F95} or @code{.F03}; otherwise use for fixed-format code the option
-@code{-x f77-cpp-input} and for free-format code @code{-x f95-cpp-input}.
-Invocation of the preprocessor can be suppressed using @code{-x f77} or
-@code{-x f95}.
+@code{.F95}, @code{.F03} or @code{.F08}; otherwise use for fixed-format
+code the option @code{-x f77-cpp-input} and for free-format code @code{-x
+f95-cpp-input}. Invocation of the preprocessor can be suppressed using
+@code{-x f77} or @code{-x f95}.
If the GNU Fortran invoked the preprocessor, @code{__GFORTRAN__}
is defined and @code{__GNUC__}, @code{__GNUC_MINOR__} and
@@ -468,10 +470,10 @@ The GNU Fortran compiler is able to compile nearly all
standard-compliant Fortran 95, Fortran 90, and Fortran 77 programs,
including a number of standard and non-standard extensions, and can be
used on real-world programs. In particular, the supported extensions
-include OpenMP, Cray-style pointers, and several Fortran 2003 features
-such as enumeration, stream I/O, and some of the enhancements to
-allocatable array support from TR 15581. However, it is still under
-development and has a few remaining rough edges.
+include OpenMP, Cray-style pointers, and several Fortran 2003 and Fortran
+2008 features such as enumeration, stream I/O, and some of the
+enhancements to allocatable array support from TR 15581. However, it is
+still under development and has a few remaining rough edges.
At present, the GNU Fortran compiler passes the
@uref{http://www.fortran-2000.com/ArnaudRecipes/fcvs21_f95.html,
@@ -516,9 +518,18 @@ the ISO/IEC TR-15581 enhancements to allocatable arrays, and
the @uref{http://www.openmp.org/drupal/mp-documents/spec25.pdf,
OpenMP Application Program Interface v2.5} specification.
-In the future, the GNU Fortran compiler may also support other standard
-variants of and extensions to the Fortran language. These include
-ISO/IEC 1539-1:2004 (Fortran 2003).
+In the future, the GNU Fortran compiler will also support ISO/IEC
+1539-1:2004 (Fortran 2003) and future Fortran standards. Partial support
+of that standard is already provided; the current status of Fortran 2003
+support is reported in the @ref{Fortran 2003 status} section of the
+documentation.
+
+The next version of the Fortran standard after Fortran 2003 is currently
+being developped and the GNU Fortran compiler supports some of its new
+features. This support is based on the latest draft of the standard
+(available from @url{http://www.nag.co.uk/sc22wg5/}) and no guarantee of
+future compatibility is made, as the final standard might differ from the
+draft. For more information, see the @ref{Fortran 2008 status} section.
@c =====================================================================
@@ -758,11 +769,19 @@ was used.
@end tex
@c ---------------------------------------------------------------------
-@c Fortran 2003 Status
+@c Fortran 2003 and 2008 Status
@c ---------------------------------------------------------------------
+@node Fortran 2003 and 2008 status
+@chapter Fortran 2003 and 2008 Status
+
+@menu
+* Fortran 2003 status::
+* Fortran 2008 status::
+@end menu
+
@node Fortran 2003 status
-@chapter Fortran 2003 Status
+@section Fortran 2003 status
Although GNU Fortran focuses on implementing the Fortran 95
standard for the time being, a few Fortran 2003 features are currently
@@ -867,6 +886,22 @@ BOZ as argument of INT, REAL, DBLE and CMPLX.
@end itemize
+@node Fortran 2008 status
+@section Fortran 2008 status
+
+The next version of the Fortran standard after Fortran 2003 is currently
+being worked on by the Working Group 5 of Sub-Committee 22 of the Joint
+Technical Committee 1 of the International Organization for
+Standardization (ISO) and the International Electrotechnical Commission
+(IEC). This group is known at @uref{http://www.nag.co.uk/sc22wg5/, WG5}.
+The next revision of the Fortran standard is informally referred to as
+Fortran 2008, reflecting its planned release year. The GNU Fortran
+compiler has support for some of the new features in Fortran 2008. This
+support is based on the latest draft, available from
+@url{http://www.nag.co.uk/sc22wg5/}. However, as the final standard may
+differ from the drafts, no guarantee of backward compatibility can be
+made and you should only use it for experimental purposes.
+
@c ---------------------------------------------------------------------
@c Extensions
@c ---------------------------------------------------------------------
@@ -903,8 +938,9 @@ by any standard, and those that are supported by GNU Fortran
purely for backward compatibility with legacy compilers. By default,
@option{-std=gnu} allows the compiler to accept both types of
extensions, but to warn about the use of the latter. Specifying
-either @option{-std=f95} or @option{-std=f2003} disables both types
-of extensions, and @option{-std=legacy} allows both without warning.
+either @option{-std=f95}, @option{-std=f2003} or @option{-std=f2008}
+disables both types of extensions, and @option{-std=legacy} allows both
+without warning.
@menu
* Old-style kind specifications::
diff --git a/gcc/fortran/gfortranspec.c b/gcc/fortran/gfortranspec.c
index c8263ad49df..9a4428728b9 100644
--- a/gcc/fortran/gfortranspec.c
+++ b/gcc/fortran/gfortranspec.c
@@ -377,7 +377,7 @@ lang_specific_driver (int *in_argc, const char *const **in_argv,
case OPTION_version:
printf ("GNU Fortran %s%s\n", pkgversion_string, version_string);
- printf ("Copyright %s 2007 Free Software Foundation, Inc.\n\n",
+ printf ("Copyright %s 2008 Free Software Foundation, Inc.\n\n",
_("(C)"));
printf (_("GNU Fortran comes with NO WARRANTY, to the extent permitted by law.\n\
You may redistribute copies of GNU Fortran\n\
diff --git a/gcc/fortran/intrinsic.c b/gcc/fortran/intrinsic.c
index 96bf62ba0b9..258123b92b5 100644
--- a/gcc/fortran/intrinsic.c
+++ b/gcc/fortran/intrinsic.c
@@ -964,15 +964,15 @@ add_functions (void)
make_generic ("acos", GFC_ISYM_ACOS, GFC_STD_F77);
- add_sym_1 ("acosh", GFC_ISYM_ACOSH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dr, GFC_STD_GNU,
- gfc_check_fn_r, gfc_simplify_acosh, gfc_resolve_acosh,
- x, BT_REAL, dr, REQUIRED);
+ add_sym_1 ("acosh", GFC_ISYM_ACOSH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dr,
+ GFC_STD_F2008, gfc_check_fn_r, gfc_simplify_acosh,
+ gfc_resolve_acosh, x, BT_REAL, dr, REQUIRED);
add_sym_1 ("dacosh", GFC_ISYM_ACOSH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dd, GFC_STD_GNU,
gfc_check_fn_d, gfc_simplify_acosh, gfc_resolve_acosh,
x, BT_REAL, dd, REQUIRED);
- make_generic ("acosh", GFC_ISYM_ACOSH, GFC_STD_GNU);
+ make_generic ("acosh", GFC_ISYM_ACOSH, GFC_STD_F2008);
add_sym_1 ("adjustl", GFC_ISYM_ADJUSTL, CLASS_ELEMENTAL, ACTUAL_NO, BT_CHARACTER, dc, GFC_STD_F95,
NULL, gfc_simplify_adjustl, NULL,
@@ -1047,15 +1047,15 @@ add_functions (void)
make_generic ("asin", GFC_ISYM_ASIN, GFC_STD_F77);
- add_sym_1 ("asinh", GFC_ISYM_ASINH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dr, GFC_STD_GNU,
- gfc_check_fn_r, gfc_simplify_asinh, gfc_resolve_asinh,
- x, BT_REAL, dr, REQUIRED);
+ add_sym_1 ("asinh", GFC_ISYM_ASINH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dr,
+ GFC_STD_F2008, gfc_check_fn_r, gfc_simplify_asinh,
+ gfc_resolve_asinh, x, BT_REAL, dr, REQUIRED);
add_sym_1 ("dasinh", GFC_ISYM_ASINH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dd, GFC_STD_GNU,
gfc_check_fn_d, gfc_simplify_asinh, gfc_resolve_asinh,
x, BT_REAL, dd, REQUIRED);
- make_generic ("asinh", GFC_ISYM_ASINH, GFC_STD_GNU);
+ make_generic ("asinh", GFC_ISYM_ASINH, GFC_STD_F2008);
add_sym_2 ("associated", GFC_ISYM_ASSOCIATED, CLASS_INQUIRY, ACTUAL_NO, BT_LOGICAL, dl,
GFC_STD_F95, gfc_check_associated, NULL, NULL,
@@ -1073,15 +1073,15 @@ add_functions (void)
make_generic ("atan", GFC_ISYM_ATAN, GFC_STD_F77);
- add_sym_1 ("atanh", GFC_ISYM_ATANH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dr, GFC_STD_GNU,
- gfc_check_fn_r, gfc_simplify_atanh, gfc_resolve_atanh,
- x, BT_REAL, dr, REQUIRED);
+ add_sym_1 ("atanh", GFC_ISYM_ATANH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dr,
+ GFC_STD_F2008, gfc_check_fn_r, gfc_simplify_atanh,
+ gfc_resolve_atanh, x, BT_REAL, dr, REQUIRED);
add_sym_1 ("datanh", GFC_ISYM_ATANH, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dd, GFC_STD_GNU,
gfc_check_fn_d, gfc_simplify_atanh, gfc_resolve_atanh,
x, BT_REAL, dd, REQUIRED);
- make_generic ("atanh", GFC_ISYM_ATANH, GFC_STD_GNU);
+ make_generic ("atanh", GFC_ISYM_ATANH, GFC_STD_F2008);
add_sym_2 ("atan2", GFC_ISYM_ATAN2, CLASS_ELEMENTAL, ACTUAL_YES, BT_REAL, dr, GFC_STD_F77,
gfc_check_atan2, gfc_simplify_atan2, gfc_resolve_atan2,
@@ -1098,61 +1098,73 @@ add_functions (void)
gfc_check_fn_r, NULL, gfc_resolve_g77_math1,
x, BT_REAL, dr, REQUIRED);
+ make_alias ("bessel_j0", GFC_STD_F2008);
+
add_sym_1 ("dbesj0", GFC_ISYM_J0, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd, GFC_STD_GNU,
gfc_check_fn_d, NULL, gfc_resolve_g77_math1,
x, BT_REAL, dd, REQUIRED);
- make_generic ("besj0", GFC_ISYM_J0, GFC_STD_GNU);
+ make_generic ("bessel_j0", GFC_ISYM_J0, GFC_STD_F2008);
add_sym_1 ("besj1", GFC_ISYM_J1, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
gfc_check_fn_r, NULL, gfc_resolve_g77_math1,
x, BT_REAL, dr, REQUIRED);
+ make_alias ("bessel_j1", GFC_STD_F2008);
+
add_sym_1 ("dbesj1", GFC_ISYM_J1, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd, GFC_STD_GNU,
gfc_check_fn_d, NULL, gfc_resolve_g77_math1,
x, BT_REAL, dd, REQUIRED);
- make_generic ("besj1", GFC_ISYM_J1, GFC_STD_GNU);
+ make_generic ("bessel_j1", GFC_ISYM_J1, GFC_STD_F2008);
add_sym_2 ("besjn", GFC_ISYM_JN, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
gfc_check_besn, NULL, gfc_resolve_besn,
n, BT_INTEGER, di, REQUIRED, x, BT_REAL, dr, REQUIRED);
+ make_alias ("bessel_jn", GFC_STD_F2008);
+
add_sym_2 ("dbesjn", GFC_ISYM_JN, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd, GFC_STD_GNU,
gfc_check_besn, NULL, gfc_resolve_besn,
n, BT_INTEGER, di, REQUIRED, x, BT_REAL, dd, REQUIRED);
- make_generic ("besjn", GFC_ISYM_JN, GFC_STD_GNU);
+ make_generic ("bessel_jn", GFC_ISYM_JN, GFC_STD_F2008);
add_sym_1 ("besy0", GFC_ISYM_Y0, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
gfc_check_fn_r, NULL, gfc_resolve_g77_math1,
x, BT_REAL, dr, REQUIRED);
+ make_alias ("bessel_y0", GFC_STD_F2008);
+
add_sym_1 ("dbesy0", GFC_ISYM_Y0, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd, GFC_STD_GNU,
gfc_check_fn_d, NULL, gfc_resolve_g77_math1,
x, BT_REAL, dd, REQUIRED);
- make_generic ("besy0", GFC_ISYM_Y0, GFC_STD_GNU);
+ make_generic ("bessel_y0", GFC_ISYM_Y0, GFC_STD_F2008);
add_sym_1 ("besy1", GFC_ISYM_Y1, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
gfc_check_fn_r, NULL, gfc_resolve_g77_math1,
x, BT_REAL, dr, REQUIRED);
+ make_alias ("bessel_y1", GFC_STD_F2008);
+
add_sym_1 ("dbesy1", GFC_ISYM_Y1, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd, GFC_STD_GNU,
gfc_check_fn_d, NULL, gfc_resolve_g77_math1,
x, BT_REAL, dd, REQUIRED);
- make_generic ("besy1", GFC_ISYM_Y1, GFC_STD_GNU);
+ make_generic ("bessel_y1", GFC_ISYM_Y1, GFC_STD_F2008);
add_sym_2 ("besyn", GFC_ISYM_YN, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
gfc_check_besn, NULL, gfc_resolve_besn,
n, BT_INTEGER, di, REQUIRED, x, BT_REAL, dr, REQUIRED);
+ make_alias ("bessel_yn", GFC_STD_F2008);
+
add_sym_2 ("dbesyn", GFC_ISYM_YN, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd, GFC_STD_GNU,
gfc_check_besn, NULL, gfc_resolve_besn,
n, BT_INTEGER, di, REQUIRED, x, BT_REAL, dd, REQUIRED);
- make_generic ("besyn", GFC_ISYM_YN, GFC_STD_GNU);
+ make_generic ("bessel_yn", GFC_ISYM_YN, GFC_STD_F2008);
add_sym_1 ("bit_size", GFC_ISYM_BIT_SIZE, CLASS_INQUIRY, ACTUAL_NO, BT_INTEGER, di, GFC_STD_F95,
gfc_check_i, gfc_simplify_bit_size, NULL,
@@ -1339,25 +1351,31 @@ add_functions (void)
make_generic ("epsilon", GFC_ISYM_EPSILON, GFC_STD_F95);
/* G77 compatibility for the ERF() and ERFC() functions. */
- add_sym_1 ("erf", GFC_ISYM_ERF, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
- gfc_check_fn_r, NULL, gfc_resolve_g77_math1,
- x, BT_REAL, dr, REQUIRED);
+ add_sym_1 ("erf", GFC_ISYM_ERF, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr,
+ GFC_STD_F2008, gfc_check_fn_r, gfc_simplify_erf,
+ gfc_resolve_g77_math1, x, BT_REAL, dr, REQUIRED);
- add_sym_1 ("derf", GFC_ISYM_ERF, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd, GFC_STD_GNU,
- gfc_check_fn_d, NULL, gfc_resolve_g77_math1,
- x, BT_REAL, dd, REQUIRED);
+ add_sym_1 ("derf", GFC_ISYM_ERF, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd,
+ GFC_STD_GNU, gfc_check_fn_d, gfc_simplify_erf,
+ gfc_resolve_g77_math1, x, BT_REAL, dd, REQUIRED);
- make_generic ("erf", GFC_ISYM_ERF, GFC_STD_GNU);
+ make_generic ("erf", GFC_ISYM_ERF, GFC_STD_F2008);
- add_sym_1 ("erfc", GFC_ISYM_ERFC, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
- gfc_check_fn_r, NULL, gfc_resolve_g77_math1,
- x, BT_REAL, dr, REQUIRED);
+ add_sym_1 ("erfc", GFC_ISYM_ERFC, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr,
+ GFC_STD_F2008, gfc_check_fn_r, gfc_simplify_erfc,
+ gfc_resolve_g77_math1, x, BT_REAL, dr, REQUIRED);
- add_sym_1 ("derfc", GFC_ISYM_ERFC, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd, GFC_STD_GNU,
- gfc_check_fn_d, NULL, gfc_resolve_g77_math1,
- x, BT_REAL, dd, REQUIRED);
+ add_sym_1 ("derfc", GFC_ISYM_ERFC, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dd,
+ GFC_STD_GNU, gfc_check_fn_d, gfc_simplify_erfc,
+ gfc_resolve_g77_math1, x, BT_REAL, dd, REQUIRED);
+
+ make_generic ("erfc", GFC_ISYM_ERFC, GFC_STD_F2008);
- make_generic ("erfc", GFC_ISYM_ERFC, GFC_STD_GNU);
+ add_sym_1 ("erfc_scaled", GFC_ISYM_ERFC_SCALED, CLASS_ELEMENTAL, ACTUAL_NO,
+ BT_REAL, dr, GFC_STD_F2008, gfc_check_fn_r, NULL,
+ gfc_resolve_g77_math1, x, BT_REAL, dr, REQUIRED);
+
+ make_generic ("erfc_scaled", GFC_ISYM_ERFC_SCALED, GFC_STD_F2008);
/* G77 compatibility */
add_sym_1 ("dtime", GFC_ISYM_DTIME, NO_CLASS, ACTUAL_NO, BT_REAL, 4, GFC_STD_GNU,
@@ -1458,15 +1476,15 @@ add_functions (void)
make_generic ("fput", GFC_ISYM_FPUT, GFC_STD_GNU);
- add_sym_1 ("gamma", GFC_ISYM_GAMMA, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
- gfc_check_fn_r, gfc_simplify_gamma, gfc_resolve_gamma,
- x, BT_REAL, dr, REQUIRED);
+ add_sym_1 ("gamma", GFC_ISYM_GAMMA, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr,
+ GFC_STD_F2008, gfc_check_fn_r, gfc_simplify_gamma,
+ gfc_resolve_gamma, x, BT_REAL, dr, REQUIRED);
add_sym_1 ("dgamma", GFC_ISYM_GAMMA, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
gfc_check_fn_d, gfc_simplify_gamma, gfc_resolve_gamma,
x, BT_REAL, dr, REQUIRED);
- make_generic ("gamma", GFC_ISYM_GAMMA, GFC_STD_GNU);
+ make_generic ("gamma", GFC_ISYM_GAMMA, GFC_STD_F2008);
/* Unix IDs (g77 compatibility) */
add_sym_1 ("getcwd", GFC_ISYM_GETCWD, NO_CLASS, ACTUAL_NO, BT_INTEGER, di, GFC_STD_GNU,
@@ -1502,6 +1520,13 @@ add_functions (void)
make_generic ("huge", GFC_ISYM_HUGE, GFC_STD_F95);
+ add_sym_2 ("hypot", GFC_ISYM_HYPOT, CLASS_ELEMENTAL, ACTUAL_NO,
+ BT_REAL, dr, GFC_STD_F2008,
+ gfc_check_hypot, gfc_simplify_hypot, gfc_resolve_hypot,
+ x, BT_REAL, dr, REQUIRED, y, BT_REAL, dr, REQUIRED);
+
+ make_generic ("hypot", GFC_ISYM_HYPOT, GFC_STD_F2008);
+
add_sym_2 ("iachar", GFC_ISYM_IACHAR, CLASS_ELEMENTAL, ACTUAL_NO,
BT_INTEGER, di, GFC_STD_F95,
gfc_check_ichar_iachar, gfc_simplify_iachar, gfc_resolve_iachar,
@@ -1717,10 +1742,13 @@ add_functions (void)
make_generic ("len_trim", GFC_ISYM_LEN_TRIM, GFC_STD_F95);
- add_sym_1 ("lgamma", GFC_ISYM_LGAMMA, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
+ add_sym_1 ("lgamma", GFC_ISYM_LGAMMA, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL,
+ dr, GFC_STD_GNU,
gfc_check_fn_r, gfc_simplify_lgamma, gfc_resolve_lgamma,
x, BT_REAL, dr, REQUIRED);
+ make_alias ("log_gamma", GFC_STD_F2008);
+
add_sym_1 ("algama", GFC_ISYM_LGAMMA, CLASS_ELEMENTAL, ACTUAL_NO, BT_REAL, dr, GFC_STD_GNU,
gfc_check_fn_r, gfc_simplify_lgamma, gfc_resolve_lgamma,
x, BT_REAL, dr, REQUIRED);
@@ -1729,7 +1757,7 @@ add_functions (void)
gfc_check_fn_d, gfc_simplify_lgamma, gfc_resolve_lgamma,
x, BT_REAL, dr, REQUIRED);
- make_generic ("lgamma", GFC_ISYM_LGAMMA, GFC_STD_GNU);
+ make_generic ("log_gamma", GFC_ISYM_LGAMMA, GFC_STD_F2008);
add_sym_2 ("lge", GFC_ISYM_LGE, CLASS_ELEMENTAL, ACTUAL_NO, BT_LOGICAL, dl, GFC_STD_F77,
diff --git a/gcc/fortran/intrinsic.h b/gcc/fortran/intrinsic.h
index 55fe6452bf7..dc91e77caaf 100644
--- a/gcc/fortran/intrinsic.h
+++ b/gcc/fortran/intrinsic.h
@@ -67,6 +67,7 @@ try gfc_check_fn_rc (gfc_expr *);
try gfc_check_fnum (gfc_expr *);
try gfc_check_hostnm (gfc_expr *);
try gfc_check_huge (gfc_expr *);
+try gfc_check_hypot (gfc_expr *, gfc_expr *);
try gfc_check_i (gfc_expr *);
try gfc_check_iand (gfc_expr *, gfc_expr *);
try gfc_check_and (gfc_expr *, gfc_expr *);
@@ -221,6 +222,8 @@ gfc_expr *gfc_simplify_digits (gfc_expr *);
gfc_expr *gfc_simplify_dim (gfc_expr *, gfc_expr *);
gfc_expr *gfc_simplify_dprod (gfc_expr *, gfc_expr *);
gfc_expr *gfc_simplify_epsilon (gfc_expr *);
+gfc_expr *gfc_simplify_erf (gfc_expr *);
+gfc_expr *gfc_simplify_erfc (gfc_expr *);
gfc_expr *gfc_simplify_exp (gfc_expr *);
gfc_expr *gfc_simplify_exponent (gfc_expr *);
gfc_expr *gfc_simplify_float (gfc_expr *);
@@ -228,6 +231,7 @@ gfc_expr *gfc_simplify_floor (gfc_expr *, gfc_expr *);
gfc_expr *gfc_simplify_fraction (gfc_expr *);
gfc_expr *gfc_simplify_gamma (gfc_expr *);
gfc_expr *gfc_simplify_huge (gfc_expr *);
+gfc_expr *gfc_simplify_hypot (gfc_expr *, gfc_expr *);
gfc_expr *gfc_simplify_iachar (gfc_expr *, gfc_expr *);
gfc_expr *gfc_simplify_iand (gfc_expr *, gfc_expr *);
gfc_expr *gfc_simplify_ibclr (gfc_expr *, gfc_expr *);
@@ -368,6 +372,7 @@ void gfc_resolve_getgid (gfc_expr *);
void gfc_resolve_getpid (gfc_expr *);
void gfc_resolve_getuid (gfc_expr *);
void gfc_resolve_hostnm (gfc_expr *, gfc_expr *);
+void gfc_resolve_hypot (gfc_expr *, gfc_expr *, gfc_expr *);
void gfc_resolve_iand (gfc_expr *, gfc_expr *, gfc_expr *);
void gfc_resolve_ibclr (gfc_expr *, gfc_expr *, gfc_expr *);
void gfc_resolve_ibits (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi
index 0b5e65f0eec..c2630b249be 100644
--- a/gcc/fortran/intrinsic.texi
+++ b/gcc/fortran/intrinsic.texi
@@ -62,12 +62,12 @@ Some basic guidelines for editing this document:
* @code{ATAN}: ATAN, Arctangent function
* @code{ATAN2}: ATAN2, Arctangent function
* @code{ATANH}: ATANH, Hyperbolic arctangent function
-* @code{BESJ0}: BESJ0, Bessel function of the first kind of order 0
-* @code{BESJ1}: BESJ1, Bessel function of the first kind of order 1
-* @code{BESJN}: BESJN, Bessel function of the first kind
-* @code{BESY0}: BESY0, Bessel function of the second kind of order 0
-* @code{BESY1}: BESY1, Bessel function of the second kind of order 1
-* @code{BESYN}: BESYN, Bessel function of the second kind
+* @code{BESSEL_J0}: BESSEL_J0, Bessel function of the first kind of order 0
+* @code{BESSEL_J1}: BESSEL_J1, Bessel function of the first kind of order 1
+* @code{BESSEL_JN}: BESSEL_JN, Bessel function of the first kind
+* @code{BESSEL_Y0}: BESSEL_Y0, Bessel function of the second kind of order 0
+* @code{BESSEL_Y1}: BESSEL_Y1, Bessel function of the second kind of order 1
+* @code{BESSEL_YN}: BESSEL_YN, Bessel function of the second kind
* @code{BIT_SIZE}: BIT_SIZE, Bit size inquiry function
* @code{BTEST}: BTEST, Bit test function
* @code{C_ASSOCIATED}: C_ASSOCIATED, Status of a C pointer
@@ -103,6 +103,7 @@ Some basic guidelines for editing this document:
* @code{EPSILON}: EPSILON, Epsilon function
* @code{ERF}: ERF, Error function
* @code{ERFC}: ERFC, Complementary error function
+* @code{ERFC_SCALED}: ERFC_SCALED, Exponentially-scaled complementary error function
* @code{ETIME}: ETIME, Execution time subroutine (or function)
* @code{EXIT}: EXIT, Exit the program with status.
* @code{EXP}: EXP, Exponential function
@@ -136,6 +137,7 @@ Some basic guidelines for editing this document:
* @code{GMTIME}: GMTIME, Convert time to GMT info
* @code{HOSTNM}: HOSTNM, Get system host name
* @code{HUGE}: HUGE, Largest number of a kind
+* @code{HYPOT}: HYPOT, Euclidian distance function
* @code{IACHAR}: IACHAR, Code in @acronym{ASCII} collating sequence
* @code{IAND}: IAND, Bitwise logical and
* @code{IARGC}: IARGC, Get the number of command line arguments
@@ -164,7 +166,7 @@ Some basic guidelines for editing this document:
* @code{LBOUND}: LBOUND, Lower dimension bounds of an array
* @code{LEN}: LEN, Length of a character entity
* @code{LEN_TRIM}: LEN_TRIM, Length of a character entity without trailing blank characters
-* @code{LGAMMA}: LGAMMA, Logarithm of the Gamma function
+* @code{LOG_GAMMA}: LOG_GAMMA, Logarithm of the Gamma function
* @code{LGE}: LGE, Lexical greater than or equal
* @code{LGT}: LGT, Lexical greater than
* @code{LINK}: LINK, Create a hard link
@@ -266,11 +268,12 @@ Some basic guidelines for editing this document:
The intrinsic procedures provided by GNU Fortran include all of the
intrinsic procedures required by the Fortran 95 standard, a set of
-intrinsic procedures for backwards compatibility with G77, and a small
-selection of intrinsic procedures from the Fortran 2003 standard. Any
-conflict between a description here and a description in either the
-Fortran 95 standard or the Fortran 2003 standard is unintentional, and
-the standard(s) should be considered authoritative.
+intrinsic procedures for backwards compatibility with G77, and a
+selection of intrinsic procedures from the Fortran 2003 and Fortran 2008
+standards. Any conflict between a description here and a description in
+either the Fortran 95 standard, the Fortran 2003 standard or the Fortran
+2008 standard is unintentional, and the standard(s) should be considered
+authoritative.
The enumeration of the @code{KIND} type parameter is processor defined in
the Fortran 95 standard. GNU Fortran defines the default integer type and
@@ -574,7 +577,7 @@ Inverse function: @ref{COS}
@code{COSH(X)}).
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@@ -584,13 +587,11 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{X} @tab The type shall be @code{REAL(*)} with a magnitude that is
-greater or equal to one.
+@item @var{X} @tab The type shall be @code{REAL} or @code{COMPLEX}.
@end multitable
@item @emph{Return value}:
-The return value is of type @code{REAL(*)} and it lies in the
-range @math{0 \leq \acosh (x) \leq \infty}.
+The return value has the same type and kind as @var{X}
@item @emph{Example}:
@smallexample
@@ -1213,7 +1214,7 @@ Inverse function: @ref{SIN}
@code{ASINH(X)} computes the hyperbolic arcsine of @var{X} (inverse of @code{SINH(X)}).
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@@ -1223,12 +1224,11 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{X} @tab The type shall be @code{REAL(*)}, with @var{X} a real number.
+@item @var{X} @tab The type shall be @code{REAL} or @code{COMPLEX}.
@end multitable
@item @emph{Return value}:
-The return value is of type @code{REAL(*)} and it lies in the
-range @math{-\infty \leq \asinh (x) \leq \infty}.
+The return value is of the same type and kind as @var{X}.
@item @emph{Example}:
@smallexample
@@ -1445,7 +1445,7 @@ end program test_atan2
of @code{TANH(X)}).
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@@ -1455,13 +1455,11 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{X} @tab The type shall be @code{REAL(*)} with a magnitude
-that is less than or equal to one.
+@item @var{X} @tab The type shall be @code{REAL} or @code{COMPLEX}.
@end multitable
@item @emph{Return value}:
-The return value is of type @code{REAL(*)} and it lies in the
-range @math{-\infty \leq \atanh(x) \leq \infty}.
+The return value has same type and kind as @var{X}.
@item @emph{Example}:
@smallexample
@@ -1483,25 +1481,27 @@ Inverse function: @ref{TANH}
-@node BESJ0
-@section @code{BESJ0} --- Bessel function of the first kind of order 0
+@node BESSEL_J0
+@section @code{BESSEL_J0} --- Bessel function of the first kind of order 0
+@fnindex BESSEL_J0
@fnindex BESJ0
@fnindex DBESJ0
@cindex Bessel function, first kind
@table @asis
@item @emph{Description}:
-@code{BESJ0(X)} computes the Bessel function of the first kind of order 0
-of @var{X}.
+@code{BESSEL_J0(X)} computes the Bessel function of the first kind of
+order 0 of @var{X}. This function is available under the name
+@code{BESJ0} as a GNU extension.
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@item @emph{Syntax}:
-@code{RESULT = BESJ0(X)}
+@code{RESULT = BESSEL_J0(X)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -1516,7 +1516,7 @@ range @math{ - 0.4027... \leq Bessel (0,x) \leq 1}.
@smallexample
program test_besj0
real(8) :: x = 0.0_8
- x = besj0(x)
+ x = bessel_j0(x)
end program test_besj0
@end smallexample
@@ -1529,25 +1529,27 @@ end program test_besj0
-@node BESJ1
-@section @code{BESJ1} --- Bessel function of the first kind of order 1
+@node BESSEL_J1
+@section @code{BESEL_J1} --- Bessel function of the first kind of order 1
+@fnindex BESSEL_J1
@fnindex BESJ1
@fnindex DBESJ1
@cindex Bessel function, first kind
@table @asis
@item @emph{Description}:
-@code{BESJ1(X)} computes the Bessel function of the first kind of order 1
-of @var{X}.
+@code{BESSEL_J1(X)} computes the Bessel function of the first kind of
+order 1 of @var{X}. This function is available under the name
+@code{BESJ1} as a GNU extension.
@item @emph{Standard}:
-GNU extension
+Fortran 2008
@item @emph{Class}:
Elemental function
@item @emph{Syntax}:
-@code{RESULT = BESJ1(X)}
+@code{RESULT = BESSEL_J1(X)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -1562,7 +1564,7 @@ range @math{ - 0.5818... \leq Bessel (0,x) \leq 0.5818 }.
@smallexample
program test_besj1
real(8) :: x = 1.0_8
- x = besj1(x)
+ x = bessel_j1(x)
end program test_besj1
@end smallexample
@@ -1575,27 +1577,29 @@ end program test_besj1
-@node BESJN
-@section @code{BESJN} --- Bessel function of the first kind
+@node BESSEL_JN
+@section @code{BESSEL_JN} --- Bessel function of the first kind
+@fnindex BESSEL_JN
@fnindex BESJN
@fnindex DBESJN
@cindex Bessel function, first kind
@table @asis
@item @emph{Description}:
-@code{BESJN(N, X)} computes the Bessel function of the first kind of order
-@var{N} of @var{X}.
+@code{BESSEL_JN(N, X)} computes the Bessel function of the first kind of
+order @var{N} of @var{X}. This function is available under the name
+@code{BESJN} as a GNU extension.
If both arguments are arrays, their ranks and shapes shall conform.
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@item @emph{Syntax}:
-@code{RESULT = BESJN(N, X)}
+@code{RESULT = BESSEL_JN(N, X)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -1610,7 +1614,7 @@ The return value is a scalar of type @code{REAL(*)}.
@smallexample
program test_besjn
real(8) :: x = 1.0_8
- x = besjn(5,x)
+ x = bessel_jn(5,x)
end program test_besjn
@end smallexample
@@ -1624,25 +1628,27 @@ end program test_besjn
-@node BESY0
-@section @code{BESY0} --- Bessel function of the second kind of order 0
+@node BESSEL_Y0
+@section @code{BESSEL_Y0} --- Bessel function of the second kind of order 0
+@fnindex BESSEL_Y0
@fnindex BESY0
@fnindex DBESY0
@cindex Bessel function, second kind
@table @asis
@item @emph{Description}:
-@code{BESY0(X)} computes the Bessel function of the second kind of order 0
-of @var{X}.
+@code{BESSEL_Y0(X)} computes the Bessel function of the second kind of
+order 0 of @var{X}. This function is available under the name
+@code{BESY0} as a GNU extension.
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@item @emph{Syntax}:
-@code{RESULT = BESY0(X)}
+@code{RESULT = BESSEL_Y0(X)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -1656,7 +1662,7 @@ The return value is a scalar of type @code{REAL(*)}.
@smallexample
program test_besy0
real(8) :: x = 0.0_8
- x = besy0(x)
+ x = bessel_y0(x)
end program test_besy0
@end smallexample
@@ -1669,25 +1675,27 @@ end program test_besy0
-@node BESY1
-@section @code{BESY1} --- Bessel function of the second kind of order 1
+@node BESSEL_Y1
+@section @code{BESSEL_Y1} --- Bessel function of the second kind of order 1
+@fnindex BESSEL_Y1
@fnindex BESY1
@fnindex DBESY1
@cindex Bessel function, second kind
@table @asis
@item @emph{Description}:
-@code{BESY1(X)} computes the Bessel function of the second kind of order 1
-of @var{X}.
+@code{BESSEL_Y1(X)} computes the Bessel function of the second kind of
+order 1 of @var{X}. This function is available under the name
+@code{BESY1} as a GNU extension.
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@item @emph{Syntax}:
-@code{RESULT = BESY1(X)}
+@code{RESULT = BESSEL_Y1(X)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -1701,7 +1709,7 @@ The return value is a scalar of type @code{REAL(*)}.
@smallexample
program test_besy1
real(8) :: x = 1.0_8
- x = besy1(x)
+ x = bessel_y1(x)
end program test_besy1
@end smallexample
@@ -1714,27 +1722,29 @@ end program test_besy1
-@node BESYN
-@section @code{BESYN} --- Bessel function of the second kind
+@node BESSEL_YN
+@section @code{BESSEL_YN} --- Bessel function of the second kind
+@fnindex BESSEL_YN
@fnindex BESYN
@fnindex DBESYN
@cindex Bessel function, second kind
@table @asis
@item @emph{Description}:
-@code{BESYN(N, X)} computes the Bessel function of the second kind of order
-@var{N} of @var{X}.
+@code{BESSEL_YN(N, X)} computes the Bessel function of the second kind of
+order @var{N} of @var{X}. This function is available under the name
+@code{BESYN} as a GNU extension.
If both arguments are arrays, their ranks and shapes shall conform.
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@item @emph{Syntax}:
-@code{RESULT = BESYN(N, X)}
+@code{RESULT = BESSEL_YN(N, X)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -1749,7 +1759,7 @@ The return value is a scalar of type @code{REAL(*)}.
@smallexample
program test_besyn
real(8) :: x = 1.0_8
- x = besyn(5,x)
+ x = bessel_yn(5,x)
end program test_besyn
@end smallexample
@@ -1859,7 +1869,7 @@ end program test_btest
or if @var{c_ptr1} is associated with the target @var{c_ptr2}.
@item @emph{Standard}:
-F2003 and later
+Fortran 2003 and later
@item @emph{Class}:
Inquiry function
@@ -1905,7 +1915,7 @@ end subroutine association_test
@code{C_FUNLOC(x)} determines the C address of the argument.
@item @emph{Standard}:
-F2003 and later
+Fortran 2003 and later
@item @emph{Class}:
Inquiry function
@@ -1966,7 +1976,7 @@ Note: Due to the currently lacking support of procedure pointers in GNU Fortran
this function is not fully operable.
@item @emph{Standard}:
-F2003 and later
+Fortran 2003 and later
@item @emph{Class}:
Subroutine
@@ -2024,7 +2034,7 @@ end program main
shape.
@item @emph{Standard}:
-F2003 and later
+Fortran 2003 and later
@item @emph{Class}:
Subroutine
@@ -2077,7 +2087,7 @@ end program main
@code{C_LOC(x)} determines the C address of the argument.
@item @emph{Standard}:
-F2003 and later
+Fortran 2003 and later
@item @emph{Class}:
Inquiry function
@@ -2399,7 +2409,7 @@ end program test_cmplx
command line when the containing program was invoked.
@item @emph{Standard}:
-F2003
+Fortran 2003 and later
@item @emph{Class}:
Inquiry function
@@ -3511,7 +3521,7 @@ end program test_epsilon
@code{ERF(X)} computes the error function of @var{X}.
@item @emph{Standard}:
-GNU Extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@@ -3521,12 +3531,12 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{X} @tab The type shall be @code{REAL(*)}, and it shall be scalar.
+@item @var{X} @tab The type shall be @code{REAL}.
@end multitable
@item @emph{Return value}:
-The return value is a scalar of type @code{REAL(*)} and it is positive
-(@math{ - 1 \leq erf (x) \leq 1 }.
+The return value is of type @code{REAL}, of the same kind as
+@var{X} and lies in the range @math{-1 \leq erf (x) \leq 1 }.
@item @emph{Example}:
@smallexample
@@ -3555,7 +3565,7 @@ end program test_erf
@code{ERFC(X)} computes the complementary error function of @var{X}.
@item @emph{Standard}:
-GNU extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@@ -3565,12 +3575,12 @@ Elemental function
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
-@item @var{X} @tab The type shall be @code{REAL(*)}, and it shall be scalar.
+@item @var{X} @tab The type shall be @code{REAL}.
@end multitable
@item @emph{Return value}:
-The return value is a scalar of type @code{REAL(*)} and it is positive
-(@math{ 0 \leq erfc (x) \leq 2 }.
+The return value is of type @code{REAL} and of the same kind as @var{X}.
+It lies in the range @math{ 0 \leq erfc (x) \leq 2 }.
@item @emph{Example}:
@smallexample
@@ -3589,6 +3599,44 @@ end program test_erfc
+@node ERFC_SCALED
+@section @code{ERFC_SCALED} --- Error function
+@fnindex ERFC_SCALED
+@cindex error function, complementary, exponentially-scaled
+
+@table @asis
+@item @emph{Description}:
+@code{ERFC_SCALED(X)} computes the exponentially-scaled complementary
+error function of @var{X}.
+
+@item @emph{Standard}:
+Fortran 2008 and later
+
+@item @emph{Class}:
+Elemental function
+
+@item @emph{Syntax}:
+@code{RESULT = ERFC_SCALED(X)}
+
+@item @emph{Arguments}:
+@multitable @columnfractions .15 .70
+@item @var{X} @tab The type shall be @code{REAL}.
+@end multitable
+
+@item @emph{Return value}:
+The return value is of type @code{REAL} and of the same kind as @var{X}.
+
+@item @emph{Example}:
+@smallexample
+program test_erfc_scaled
+ real(8) :: x = 0.17_8
+ x = erfc_scaled(x)
+end program test_erfc_scaled
+@end smallexample
+@end table
+
+
+
@node ETIME
@section @code{ETIME} --- Execution time subroutine (or function)
@fnindex ETIME
@@ -4529,7 +4577,7 @@ $$
@end tex
@item @emph{Standard}:
-GNU Extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@@ -4562,7 +4610,7 @@ end program test_gamma
@end multitable
@item @emph{See also}:
-Logarithm of the Gamma function: @ref{LGAMMA}
+Logarithm of the Gamma function: @ref{LOG_GAMMA}
@end table
@@ -4663,8 +4711,8 @@ END PROGRAM
@item @emph{See also}:
GNU Fortran 77 compatibility function: @ref{IARGC}
-F2003 functions and subroutines: @ref{GET_COMMAND}, @ref{GET_COMMAND_ARGUMENT},
-@ref{COMMAND_ARGUMENT_COUNT}
+Fortran 2003 functions and subroutines: @ref{GET_COMMAND},
+@ref{GET_COMMAND_ARGUMENT}, @ref{COMMAND_ARGUMENT_COUNT}
@end table
@@ -4680,7 +4728,7 @@ F2003 functions and subroutines: @ref{GET_COMMAND}, @ref{GET_COMMAND_ARGUMENT},
Retrieve the entire command line that was used to invoke the program.
@item @emph{Standard}:
-F2003
+Fortran 2003 and later
@item @emph{Class}:
Subroutine
@@ -4724,7 +4772,7 @@ Retrieve the @var{N}th argument that was passed on the
command line when the containing program was invoked.
@item @emph{Standard}:
-F2003
+Fortran 2003 and later
@item @emph{Class}:
Subroutine
@@ -4871,7 +4919,7 @@ END PROGRAM
Get the @var{VALUE} of the environmental variable @var{ENVVAR}.
@item @emph{Standard}:
-F2003
+Fortran 2003 and later
@item @emph{Class}:
Subroutine
@@ -5184,6 +5232,46 @@ end program test_huge_tiny
+@node HYPOT
+@section @code{HYPOT} --- Euclidean distance function
+@fnindex HYPOT
+@cindex Euclidean distance
+
+@table @asis
+@item @emph{Description}:
+@code{HYPOT(X,Y)} is the Euclidean distance function. It is equal to
+@math{\sqrt{X^2 + Y^2}}, without undue underflow or overflow.
+
+@item @emph{Standard}:
+Fortran 2008 and later
+
+@item @emph{Class}:
+Elemental function
+
+@item @emph{Syntax}:
+@code{RESULT = HYPOT(X,Y)}
+
+@item @emph{Arguments}:
+@multitable @columnfractions .15 .70
+@item @var{X} @tab The type shall be @code{REAL}.
+@item @var{Y} @tab The type and kind type parameter shall be the same as
+@var{X}.
+@end multitable
+
+@item @emph{Return value}:
+The return value has the same type and kind type parameter as @var{X}.
+
+@item @emph{Example}:
+@smallexample
+program test_hypot
+ real(4) :: x = 1.e0_4, y = 0.5e0_4
+ x = hypot(x,y)
+end program test_hypot
+@end smallexample
+@end table
+
+
+
@node IACHAR
@section @code{IACHAR} --- Code in @acronym{ASCII} collating sequence
@fnindex IACHAR
@@ -5322,8 +5410,8 @@ See @ref{GETARG}
@item @emph{See also}:
GNU Fortran 77 compatibility subroutine: @ref{GETARG}
-F2003 functions and subroutines: @ref{GET_COMMAND}, @ref{GET_COMMAND_ARGUMENT},
-@ref{COMMAND_ARGUMENT_COUNT}
+Fortran 2003 functions and subroutines: @ref{GET_COMMAND},
+@ref{GET_COMMAND_ARGUMENT}, @ref{COMMAND_ARGUMENT_COUNT}
@end table
@@ -5915,7 +6003,7 @@ with the @code{IOSTAT_END} parameter of the intrinsic module
@code{ISO_FORTRAN_ENV}.
@item @emph{Standard}:
-Fortran 2003.
+Fortran 2003 and later
@item @emph{Class}:
Elemental function
@@ -5960,7 +6048,7 @@ variable with the @code{IOSTAT_EOR} parameter of the intrinsic module
@code{ISO_FORTRAN_ENV}.
@item @emph{Standard}:
-Fortran 2003.
+Fortran 2003 and later
@item @emph{Class}:
Elemental function
@@ -6405,26 +6493,27 @@ The return value is of type @code{INTEGER} and of kind @var{KIND}. If
-@node LGAMMA
-@section @code{LGAMMA} --- Logarithm of the Gamma function
-@fnindex GAMMA
+@node LOG_GAMMA
+@section @code{LOG_GAMMA} --- Logarithm of the Gamma function
+@fnindex LOG_GAMMA
+@fnindex LGAMMA
@fnindex ALGAMA
@fnindex DLGAMA
@cindex Gamma function, logarithm of
@table @asis
@item @emph{Description}:
-@code{GAMMA(X)} computes the natural logarithm of the absolute value of the
-Gamma (@math{\Gamma}) function.
+@code{LOG_GAMMA(X)} computes the natural logarithm of the absolute value
+of the Gamma (@math{\Gamma}) function.
@item @emph{Standard}:
-GNU Extension
+Fortran 2008 and later
@item @emph{Class}:
Elemental function
@item @emph{Syntax}:
-@code{X = LGAMMA(X)}
+@code{X = LOG_GAMMA(X)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -7840,7 +7929,7 @@ end program
@var{DEST}. @var{SRC} will become deallocated in the process.
@item @emph{Standard}:
-F2003 and later
+Fortran 2003 and later
@item @emph{Class}:
Subroutine
@@ -7972,7 +8061,7 @@ end program test_nearest
@code{NEW_LINE(C)} returns the new-line character.
@item @emph{Standard}:
-F2003 and later
+Fortran 2003 and later
@item @emph{Class}:
Inquiry function
@@ -8103,8 +8192,8 @@ Returns a disassociated pointer.
If @var{MOLD} is present, a dissassociated pointer of the same type is
returned, otherwise the type is determined by context.
-In Fortran 95, @var{MOLD} is optional. Please note that F2003 includes
-cases where it is required.
+In Fortran 95, @var{MOLD} is optional. Please note that Fortran 2003
+includes cases where it is required.
@item @emph{Standard}:
F95 and later
@@ -10892,7 +10981,7 @@ F95 elemental function: @ref{IEOR}
@section @code{ISO_FORTRAN_ENV}
@table @asis
@item @emph{Standard}:
-Fortran 2003
+Fortran 2003 and later
@end table
The @code{ISO_FORTRAN_ENV} module provides the following scalar default-integer
@@ -10932,7 +11021,7 @@ Identifies the preconnected unit identified by the asterisk
@section @code{ISO_C_BINDING}
@table @asis
@item @emph{Standard}:
-Fortran 2003
+Fortran 2003 and later
@end table
The following intrinsic procedures are provided by the module; their
diff --git a/gcc/fortran/invoke.texi b/gcc/fortran/invoke.texi
index 06d36b96e89..2bac12c7962 100644
--- a/gcc/fortran/invoke.texi
+++ b/gcc/fortran/invoke.texi
@@ -281,7 +281,7 @@ lines in the source file. The default value is 132.
@item -fmax-identifier-length=@var{n}
@opindex @code{fmax-identifier-length=}@var{n}
Specify the maximum allowed identifier length. Typical values are
-31 (Fortran 95) and 63 (Fortran 2003).
+31 (Fortran 95) and 63 (Fortran 2003 and Fortran 2008).
@item -fimplicit-none
@opindex @code{fimplicit-none}
@@ -322,18 +322,18 @@ on most systems, but with @option{-fno-range-check} the value will
@item -std=@var{std}
@opindex @code{std=}@var{std} option
Specify the standard to which the program is expected to conform, which
-may be one of @samp{f95}, @samp{f2003}, @samp{gnu}, or @samp{legacy}.
-The default value for @var{std} is @samp{gnu}, which specifies a
-superset of the Fortran 95 standard that includes all of the extensions
-supported by GNU Fortran, although warnings will be given for obsolete
-extensions not recommended for use in new code. The @samp{legacy} value
-is equivalent but without the warnings for obsolete extensions, and may
-be useful for old non-standard programs. The @samp{f95} and
-@samp{f2003} values specify strict conformance to the Fortran 95 and
-Fortran 2003 standards, respectively; errors are given for all
-extensions beyond the relevant language standard, and warnings are given
-for the Fortran 77 features that are permitted but obsolescent in later
-standards.
+may be one of @samp{f95}, @samp{f2003}, @samp{f2008}, @samp{gnu}, or
+@samp{legacy}. The default value for @var{std} is @samp{gnu}, which
+specifies a superset of the Fortran 95 standard that includes all of the
+extensions supported by GNU Fortran, although warnings will be given for
+obsolete extensions not recommended for use in new code. The
+@samp{legacy} value is equivalent but without the warnings for obsolete
+extensions, and may be useful for old non-standard programs. The
+@samp{f95}, @samp{f2003} and @samp{f2008} values specify strict
+conformance to the Fortran 95, Fortran 2003 and Fortran 2008 standards,
+respectively; errors are given for all extensions beyond the relevant
+language standard, and warnings are given for the Fortran 77 features
+that are permitted but obsolescent in later standards.
@end table
@@ -400,8 +400,8 @@ They soon find that it does not do quite what they want---it finds some
nonstandard practices, but not all.
However, improvements to GNU Fortran in this area are welcome.
-This should be used in conjunction with @option{-std=f95} or
-@option{-std=f2003}.
+This should be used in conjunction with @option{-std=f95},
+@option{-std=f2003} or @option{-std=f2008}.
@item -pedantic-errors
@opindex @code{pedantic-errors}
@@ -445,16 +445,22 @@ The following example will trigger the warning.
@cindex warnings, ampersand
@cindex &
Warn about missing ampersand in continued character constants. The warning is
-given with @option{-Wampersand}, @option{-pedantic}, @option{-std=f95}, and
-@option{-std=f2003}. Note: With no ampersand given in a continued character
-constant, GNU Fortran assumes continuation at the first non-comment,
-non-whitespace character after the ampersand that initiated the continuation.
+given with @option{-Wampersand}, @option{-pedantic}, @option{-std=f95},
+@option{-std=f2003} and @option{-std=f2008}. Note: With no ampersand
+given in a continued character constant, GNU Fortran assumes continuation
+at the first non-comment, non-whitespace character after the ampersand
+that initiated the continuation.
@item -Wcharacter-truncation
@opindex @code{Wcharacter-truncation}
@cindex warnings, character truncation
Warn when a character assignment will truncate the assigned string.
+@item -Wline-truncation
+@opindex @code{Wline-truncation}
+@cindex warnings, line truncation
+Warn when a source code line will be truncated.
+
@item -Wconversion
@opindex @code{Wconversion}
@cindex warnings, conversion
@@ -503,7 +509,7 @@ of the Fortran Character Set. For continuation lines, a tab followed
by a digit between 1 and 9 is supported. @option{-Wno-tabs} will cause
a warning to be issued if a tab is encountered. Note, @option{-Wno-tabs}
is active for @option{-pedantic}, @option{-std=f95}, @option{-std=f2003},
-and @option{-Wall}.
+@option{-std=f2008} and @option{-Wall}.
@item -Wunderflow
@opindex @code{Wunderflow}
diff --git a/gcc/fortran/iresolve.c b/gcc/fortran/iresolve.c
index 27a0022261f..bdb6928c4a5 100644
--- a/gcc/fortran/iresolve.c
+++ b/gcc/fortran/iresolve.c
@@ -880,6 +880,14 @@ gfc_resolve_hostnm (gfc_expr *f, gfc_expr *n ATTRIBUTE_UNUSED)
void
+gfc_resolve_hypot (gfc_expr *f, gfc_expr *x, gfc_expr *y ATTRIBUTE_UNUSED)
+{
+ f->ts = x->ts;
+ f->value.function.name = gfc_get_string ("__hypot_r%d", x->ts.kind);
+}
+
+
+void
gfc_resolve_iand (gfc_expr *f, gfc_expr *i, gfc_expr *j)
{
/* If the kind of i and j are different, then g77 cross-promoted the
diff --git a/gcc/fortran/lang-specs.h b/gcc/fortran/lang-specs.h
index e49b073aca3..e5c54ae0011 100644
--- a/gcc/fortran/lang-specs.h
+++ b/gcc/fortran/lang-specs.h
@@ -34,6 +34,7 @@
{".F90", "@f95-cpp-input", 0, 0, 0},
{".F95", "@f95-cpp-input", 0, 0, 0},
{".F03", "@f95-cpp-input", 0, 0, 0},
+{".F08", "@f95-cpp-input", 0, 0, 0},
{"@f95-cpp-input",
"cc1 -E -lang-fortran -traditional-cpp -D_LANGUAGE_FORTRAN %(cpp_options) \
%{E|M|MM:%(cpp_debug_options)}\
@@ -43,6 +44,7 @@
{".f90", "@f95", 0, 0, 0},
{".f95", "@f95", 0, 0, 0},
{".f03", "@f95", 0, 0, 0},
+{".f08", "@f95", 0, 0, 0},
{"@f95", "%{!E:f951 %i %(cc1_options) %{J*} %{I*}\
%{!nostdinc:-fintrinsic-modules-path finclude%s} %{!fsyntax-only:%(invoke_as)}}", 0, 0, 0},
{".f", "@f77", 0, 0, 0},
diff --git a/gcc/fortran/lang.opt b/gcc/fortran/lang.opt
index 16db1928522..a3761925f01 100644
--- a/gcc/fortran/lang.opt
+++ b/gcc/fortran/lang.opt
@@ -297,6 +297,10 @@ std=f2003
Fortran
Conform to the ISO Fortran 2003 standard
+std=f2008
+Fortran
+Conform to the ISO Fortran 2008 standard
+
std=f95
Fortran
Conform to the ISO Fortran 95 standard
diff --git a/gcc/fortran/libgfortran.h b/gcc/fortran/libgfortran.h
index be9716e0e9b..513dbd228ab 100644
--- a/gcc/fortran/libgfortran.h
+++ b/gcc/fortran/libgfortran.h
@@ -20,6 +20,7 @@ along with GCC; see the file COPYING3. If not see
/* Flags to specify which standard/extension contains a feature.
Note that no features were obsoleted nor deleted in F2003. */
+#define GFC_STD_F2008 (1<<7) /* New in F2008. */
#define GFC_STD_LEGACY (1<<6) /* Backward compatibility. */
#define GFC_STD_GNU (1<<5) /* GNU Fortran extension. */
#define GFC_STD_F2003 (1<<4) /* New in F2003. */
diff --git a/gcc/fortran/mathbuiltins.def b/gcc/fortran/mathbuiltins.def
index 37758e1adfa..6db416ef6d0 100644
--- a/gcc/fortran/mathbuiltins.def
+++ b/gcc/fortran/mathbuiltins.def
@@ -6,11 +6,11 @@
Use DEFINE_MATH_BUILTIN_C if the complex versions of the builtin are
also available. */
DEFINE_MATH_BUILTIN_C (ACOS, "acos", 0)
-DEFINE_MATH_BUILTIN (ACOSH, "acosh", 0)
+DEFINE_MATH_BUILTIN_C (ACOSH, "acosh", 0)
DEFINE_MATH_BUILTIN_C (ASIN, "asin", 0)
-DEFINE_MATH_BUILTIN (ASINH, "asinh", 0)
+DEFINE_MATH_BUILTIN_C (ASINH, "asinh", 0)
DEFINE_MATH_BUILTIN_C (ATAN, "atan", 0)
-DEFINE_MATH_BUILTIN (ATANH, "atanh", 0)
+DEFINE_MATH_BUILTIN_C (ATANH, "atanh", 0)
DEFINE_MATH_BUILTIN (ATAN2, "atan2", 1)
DEFINE_MATH_BUILTIN_C (COS, "cos", 0)
DEFINE_MATH_BUILTIN_C (COSH, "cosh", 0)
@@ -32,3 +32,4 @@ DEFINE_MATH_BUILTIN (ERF, "erf", 0)
DEFINE_MATH_BUILTIN (ERFC, "erfc", 0)
DEFINE_MATH_BUILTIN (GAMMA, "tgamma", 0)
DEFINE_MATH_BUILTIN (LGAMMA,"lgamma", 0)
+DEFINE_MATH_BUILTIN (HYPOT, "hypot", 1)
diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c
index e9303a4f367..bc45e9eb9c1 100644
--- a/gcc/fortran/module.c
+++ b/gcc/fortran/module.c
@@ -2310,6 +2310,12 @@ mio_symtree_ref (gfc_symtree **stp)
p->u.rsym.symtree->n.sym = p->u.rsym.sym;
p->u.rsym.symtree->n.sym->refs++;
p->u.rsym.referenced = 1;
+
+ /* If the symbol is PRIVATE and in COMMON, load_commons will
+ generate a fixup symbol, which must be associated. */
+ if (p->fixup)
+ resolve_fixups (p->fixup, p->u.rsym.sym);
+ p->fixup = NULL;
}
if (p->type == P_UNKNOWN)
diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c
index ecab0c5850b..61481b3a9d0 100644
--- a/gcc/fortran/options.c
+++ b/gcc/fortran/options.c
@@ -42,8 +42,8 @@ static void
set_default_std_flags (void)
{
gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F95_DEL
- | GFC_STD_F2003 | GFC_STD_F95 | GFC_STD_F77 | GFC_STD_GNU
- | GFC_STD_LEGACY;
+ | GFC_STD_F2003 | GFC_STD_F2008 | GFC_STD_F95 | GFC_STD_F77
+ | GFC_STD_GNU | GFC_STD_LEGACY;
gfc_option.warn_std = GFC_STD_F95_DEL | GFC_STD_LEGACY;
}
@@ -155,6 +155,9 @@ form_from_filename (const char *filename)
".f03", FORM_FREE}
,
{
+ ".f08", FORM_FREE}
+ ,
+ {
".f", FORM_FIXED}
,
{
@@ -752,6 +755,17 @@ gfc_handle_option (size_t scode, const char *arg, int value)
gfc_option.warn_tabs = 0;
break;
+ case OPT_std_f2008:
+ gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F77
+ | GFC_STD_F2003 | GFC_STD_F95 | GFC_STD_F2008;
+ gfc_option.warn_std = GFC_STD_F95_OBS;
+ gfc_option.max_continue_fixed = 255;
+ gfc_option.max_continue_free = 255;
+ gfc_option.max_identifier_length = 63;
+ gfc_option.warn_ampersand = 1;
+ gfc_option.warn_tabs = 0;
+ break;
+
case OPT_std_gnu:
set_default_std_flags ();
break;
diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c
index 67f4cc775c5..ff1d56548c8 100644
--- a/gcc/fortran/parse.c
+++ b/gcc/fortran/parse.c
@@ -3197,8 +3197,7 @@ parse_contained (int module)
pop_state ();
if (!contains_statements)
- /* This is valid in Fortran 2008. */
- gfc_notify_std (GFC_STD_GNU, "Extension: CONTAINS statement without "
+ gfc_notify_std (GFC_STD_F2008, "Fortran 2008: CONTAINS statement without "
"FUNCTION or SUBROUTINE statement at %C");
}
diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c
index 264f689b96b..2272bb567b5 100644
--- a/gcc/fortran/simplify.c
+++ b/gcc/fortran/simplify.c
@@ -1061,6 +1061,38 @@ gfc_simplify_dprod (gfc_expr *x, gfc_expr *y)
gfc_expr *
+gfc_simplify_erf (gfc_expr *x)
+{
+ gfc_expr *result;
+
+ if (x->expr_type != EXPR_CONSTANT)
+ return NULL;
+
+ result = gfc_constant_result (x->ts.type, x->ts.kind, &x->where);
+
+ mpfr_erf (result->value.real, x->value.real, GFC_RND_MODE);
+
+ return range_check (result, "ERF");
+}
+
+
+gfc_expr *
+gfc_simplify_erfc (gfc_expr *x)
+{
+ gfc_expr *result;
+
+ if (x->expr_type != EXPR_CONSTANT)
+ return NULL;
+
+ result = gfc_constant_result (x->ts.type, x->ts.kind, &x->where);
+
+ mpfr_erfc (result->value.real, x->value.real, GFC_RND_MODE);
+
+ return range_check (result, "ERFC");
+}
+
+
+gfc_expr *
gfc_simplify_epsilon (gfc_expr *e)
{
gfc_expr *result;
@@ -1280,6 +1312,21 @@ gfc_simplify_huge (gfc_expr *e)
return result;
}
+
+gfc_expr *
+gfc_simplify_hypot (gfc_expr *x, gfc_expr *y)
+{
+ gfc_expr *result;
+
+ if (x->expr_type != EXPR_CONSTANT || y->expr_type != EXPR_CONSTANT)
+ return NULL;
+
+ result = gfc_constant_result (x->ts.type, x->ts.kind, &x->where);
+ mpfr_hypot (result->value.real, x->value.real, y->value.real, GFC_RND_MODE);
+ return range_check (result, "HYPOT");
+}
+
+
/* We use the processor's collating sequence, because all
systems that gfortran currently works on are ASCII. */
diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c
index 07b0f60c86d..542e22f97fe 100644
--- a/gcc/fortran/trans-array.c
+++ b/gcc/fortran/trans-array.c
@@ -2924,9 +2924,13 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop)
for (ss = loop->ss; ss != gfc_ss_terminator; ss = ss->loop_chain)
{
+ stmtblock_t inner;
+
if (ss->type != GFC_SS_SECTION)
continue;
+ gfc_start_block (&inner);
+
/* TODO: range checking for mapped dimensions. */
info = &ss->data.info;
@@ -2953,7 +2957,7 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop)
asprintf (&msg, "Zero stride is not allowed, for dimension %d "
"of array '%s'", info->dim[n]+1,
ss->expr->symtree->name);
- gfc_trans_runtime_check (tmp, &block, &ss->expr->where, msg);
+ gfc_trans_runtime_check (tmp, &inner, &ss->expr->where, msg);
gfc_free (msg);
desc = ss->data.info.descriptor;
@@ -2995,7 +2999,7 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop)
asprintf (&msg, "%s, lower bound of dimension %d of array '%s'"
" exceeded (%%ld < %%ld)", gfc_msg_fault,
info->dim[n]+1, ss->expr->symtree->name);
- gfc_trans_runtime_check (tmp, &block, &ss->expr->where, msg,
+ gfc_trans_runtime_check (tmp, &inner, &ss->expr->where, msg,
fold_convert (long_integer_type_node,
info->start[n]),
fold_convert (long_integer_type_node,
@@ -3011,7 +3015,7 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop)
asprintf (&msg, "%s, upper bound of dimension %d of array "
"'%s' exceeded (%%ld > %%ld)", gfc_msg_fault,
info->dim[n]+1, ss->expr->symtree->name);
- gfc_trans_runtime_check (tmp, &block, &ss->expr->where, msg,
+ gfc_trans_runtime_check (tmp, &inner, &ss->expr->where, msg,
fold_convert (long_integer_type_node, info->start[n]),
fold_convert (long_integer_type_node, ubound));
gfc_free (msg);
@@ -3033,7 +3037,7 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop)
asprintf (&msg, "%s, lower bound of dimension %d of array '%s'"
" exceeded (%%ld < %%ld)", gfc_msg_fault,
info->dim[n]+1, ss->expr->symtree->name);
- gfc_trans_runtime_check (tmp, &block, &ss->expr->where, msg,
+ gfc_trans_runtime_check (tmp, &inner, &ss->expr->where, msg,
fold_convert (long_integer_type_node,
tmp2),
fold_convert (long_integer_type_node,
@@ -3048,7 +3052,7 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop)
asprintf (&msg, "%s, upper bound of dimension %d of array "
"'%s' exceeded (%%ld > %%ld)", gfc_msg_fault,
info->dim[n]+1, ss->expr->symtree->name);
- gfc_trans_runtime_check (tmp, &block, &ss->expr->where, msg,
+ gfc_trans_runtime_check (tmp, &inner, &ss->expr->where, msg,
fold_convert (long_integer_type_node, tmp2),
fold_convert (long_integer_type_node, ubound));
gfc_free (msg);
@@ -3066,30 +3070,30 @@ gfc_conv_ss_startstride (gfc_loopinfo * loop)
tree tmp3;
tmp3 = fold_build2 (NE_EXPR, boolean_type_node, tmp, size[n]);
-
- /* For optional arguments, only check bounds if the
- argument is present. */
- if (ss->expr->symtree->n.sym->attr.optional
- || ss->expr->symtree->n.sym->attr.not_always_present)
- {
- tree cond;
-
- cond = gfc_conv_expr_present (ss->expr->symtree->n.sym);
- tmp3 = fold_build2 (TRUTH_AND_EXPR, boolean_type_node,
- cond, tmp3);
- }
-
asprintf (&msg, "%s, size mismatch for dimension %d "
"of array '%s' (%%ld/%%ld)", gfc_msg_bounds,
info->dim[n]+1, ss->expr->symtree->name);
- gfc_trans_runtime_check (tmp3, &block, &ss->expr->where, msg,
+ gfc_trans_runtime_check (tmp3, &inner, &ss->expr->where, msg,
fold_convert (long_integer_type_node, tmp),
fold_convert (long_integer_type_node, size[n]));
gfc_free (msg);
}
else
- size[n] = gfc_evaluate_now (tmp, &block);
+ size[n] = gfc_evaluate_now (tmp, &inner);
}
+
+ tmp = gfc_finish_block (&inner);
+
+ /* For optional arguments, only check bounds if the argument is
+ present. */
+ if (ss->expr->symtree->n.sym->attr.optional
+ || ss->expr->symtree->n.sym->attr.not_always_present)
+ tmp = build3_v (COND_EXPR,
+ gfc_conv_expr_present (ss->expr->symtree->n.sym),
+ tmp, build_empty_stmt ());
+
+ gfc_add_expr_to_block (&block, tmp);
+
}
tmp = gfc_finish_block (&block);
diff --git a/gcc/fortran/trans-intrinsic.c b/gcc/fortran/trans-intrinsic.c
index 49f2094561f..066b18ea8c2 100644
--- a/gcc/fortran/trans-intrinsic.c
+++ b/gcc/fortran/trans-intrinsic.c
@@ -104,17 +104,25 @@ gfc_intrinsic_map_t;
true, true, NAME, NULL_TREE, NULL_TREE, NULL_TREE, NULL_TREE, \
NULL_TREE, NULL_TREE, NULL_TREE, NULL_TREE},
+#define LIB_FUNCTION(ID, NAME, HAVE_COMPLEX) \
+ { GFC_ISYM_ ## ID, END_BUILTINS, END_BUILTINS, END_BUILTINS, END_BUILTINS, \
+ END_BUILTINS, END_BUILTINS, END_BUILTINS, END_BUILTINS, \
+ false, HAVE_COMPLEX, true, NAME, NULL_TREE, NULL_TREE, NULL_TREE, \
+ NULL_TREE, NULL_TREE, NULL_TREE, NULL_TREE, NULL_TREE }
+
static GTY(()) gfc_intrinsic_map_t gfc_intrinsic_map[] =
{
/* Functions built into gcc itself. */
#include "mathbuiltins.def"
+ /* Functions in libgfortran. */
+ LIB_FUNCTION (ERFC_SCALED, "erfc_scaled", false),
+
/* End the list. */
- { GFC_ISYM_NONE, END_BUILTINS, END_BUILTINS, END_BUILTINS, END_BUILTINS,
- END_BUILTINS, END_BUILTINS, END_BUILTINS, END_BUILTINS,
- true, false, true, NULL, NULL_TREE, NULL_TREE, NULL_TREE,
- NULL_TREE, NULL_TREE, NULL_TREE, NULL_TREE, NULL_TREE }
+ LIB_FUNCTION (NONE, NULL, false)
+
};
+#undef LIB_FUNCTION
#undef DEFINE_MATH_BUILTIN
#undef DEFINE_MATH_BUILTIN_C
diff --git a/gcc/fwprop.c b/gcc/fwprop.c
index 1e0327230bb..089c571a635 100644
--- a/gcc/fwprop.c
+++ b/gcc/fwprop.c
@@ -642,17 +642,25 @@ update_df (rtx insn, rtx *loc, struct df_ref **use_rec, enum df_ref_type type,
{
struct df_ref *use = *use_rec;
struct df_ref *orig_use = use, *new_use;
+ int width = -1;
+ int offset = -1;
rtx *new_loc = find_occurrence (loc, DF_REF_REG (orig_use));
use_rec++;
if (!new_loc)
continue;
+ if (DF_REF_FLAGS_IS_SET (orig_use, DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
+ {
+ width = DF_REF_WIDTH (orig_use);
+ offset = DF_REF_OFFSET (orig_use);
+ }
+
/* Add a new insn use. Use the original type, because it says if the
use was within a MEM. */
new_use = df_ref_create (DF_REF_REG (orig_use), new_loc,
insn, BLOCK_FOR_INSN (insn),
- type, DF_REF_FLAGS (orig_use) | new_flags);
+ type, DF_REF_FLAGS (orig_use) | new_flags, width, offset);
/* Set up the use-def chain. */
df_chain_copy (new_use, DF_REF_CHAIN (orig_use));
diff --git a/gcc/gcc.c b/gcc/gcc.c
index b63c0da1d1a..087fdfe0af3 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1,6 +1,6 @@
/* Compiler driver program that can handle many languages.
Copyright (C) 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
Free Software Foundation, Inc.
This file is part of GCC.
@@ -3605,7 +3605,7 @@ process_command (int argc, const char **argv)
/* translate_options () has turned --version into -fversion. */
printf (_("%s %s%s\n"), programname, pkgversion_string,
version_string);
- printf ("Copyright %s 2007 Free Software Foundation, Inc.\n",
+ printf ("Copyright %s 2008 Free Software Foundation, Inc.\n",
_("(C)"));
fputs (_("This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"),
diff --git a/gcc/gcov-dump.c b/gcc/gcov-dump.c
index b47873342a7..916d73ce698 100644
--- a/gcc/gcov-dump.c
+++ b/gcc/gcov-dump.c
@@ -1,5 +1,6 @@
/* Dump a gcov file, for debugging use.
- Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008
+ Free Software Foundation, Inc.
Contributed by Nathan Sidwell <nathan@codesourcery.com>
Gcov is free software; you can redistribute it and/or modify
@@ -120,7 +121,7 @@ static void
print_version (void)
{
printf ("gcov-dump %s%s\n", pkgversion_string, version_string);
- printf ("Copyright (C) 2007 Free Software Foundation, Inc.\n");
+ printf ("Copyright (C) 2008 Free Software Foundation, Inc.\n");
printf ("This is free software; see the source for copying conditions.\n"
"There is NO warranty; not even for MERCHANTABILITY or \n"
"FITNESS FOR A PARTICULAR PURPOSE.\n\n");
diff --git a/gcc/gcov.c b/gcc/gcov.c
index 34ad98dda34..4f259a9228f 100644
--- a/gcc/gcov.c
+++ b/gcc/gcov.c
@@ -1,7 +1,8 @@
/* Gcov.c: prepend line execution counts and branch probabilities to a
source file.
Copyright (C) 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 1999,
- 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+ 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+ Free Software Foundation, Inc.
Contributed by James E. Wilson of Cygnus Support.
Mangled by Bob Manson of Cygnus Support.
Mangled further by Nathan Sidwell <nathan@codesourcery.com>
@@ -422,7 +423,7 @@ static void
print_version (void)
{
fnotice (stdout, "gcov %s%s\n", pkgversion_string, version_string);
- fprintf (stdout, "Copyright %s 2007 Free Software Foundation, Inc.\n",
+ fprintf (stdout, "Copyright %s 2008 Free Software Foundation, Inc.\n",
_("(C)"));
fnotice (stdout,
_("This is free software; see the source for copying conditions.\n"
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 04ed39c533a..a75c711384f 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -5464,7 +5464,11 @@ goa_lhs_expr_p (tree expr, tree addr)
expr = TREE_OPERAND (expr, 0);
addr = TREE_OPERAND (addr, 0);
}
- return expr == addr;
+ if (expr == addr)
+ return true;
+ return (TREE_CODE (addr) == ADDR_EXPR
+ && TREE_CODE (expr) == ADDR_EXPR
+ && TREE_OPERAND (addr, 0) == TREE_OPERAND (expr, 0));
}
if (TREE_CODE (addr) == ADDR_EXPR && expr == TREE_OPERAND (addr, 0))
return true;
diff --git a/gcc/global.c b/gcc/global.c
index 12641a60cba..ca9f4fb1a8a 100644
--- a/gcc/global.c
+++ b/gcc/global.c
@@ -1490,7 +1490,7 @@ build_insn_chain (void)
/* We can model subregs, but not if they are
wrapped in ZERO_EXTRACTS. */
if (GET_CODE (reg) == SUBREG
- && !DF_REF_FLAGS_IS_SET (def, DF_REF_EXTRACT))
+ && !DF_REF_FLAGS_IS_SET (def, DF_REF_ZERO_EXTRACT))
{
unsigned int start = SUBREG_BYTE (reg);
unsigned int last = start
@@ -1503,7 +1503,7 @@ build_insn_chain (void)
regno, reg);
if (!DF_REF_FLAGS_IS_SET
- (def, DF_REF_STRICT_LOWER_PART))
+ (def, DF_REF_STRICT_LOW_PART))
{
/* Expand the range to cover entire words.
Bytes added here are "don't care". */
@@ -1566,7 +1566,7 @@ build_insn_chain (void)
precisely so we do not need to look at the
fabricated use. */
if (DF_REF_FLAGS_IS_SET (use, DF_REF_READ_WRITE)
- && !DF_REF_FLAGS_IS_SET (use, DF_REF_EXTRACT)
+ && !DF_REF_FLAGS_IS_SET (use, DF_REF_ZERO_EXTRACT)
&& DF_REF_FLAGS_IS_SET (use, DF_REF_SUBREG))
continue;
@@ -1585,7 +1585,8 @@ build_insn_chain (void)
if (regno < FIRST_PSEUDO_REGISTER || reg_renumber[regno] >= 0)
{
if (GET_CODE (reg) == SUBREG
- && !DF_REF_FLAGS_IS_SET (use, DF_REF_EXTRACT))
+ && !DF_REF_FLAGS_IS_SET (use,
+ DF_REF_SIGN_EXTRACT | DF_REF_ZERO_EXTRACT))
{
unsigned int start = SUBREG_BYTE (reg);
unsigned int last = start
diff --git a/gcc/gthr-rtems.h b/gcc/gthr-rtems.h
index 425d7dee0e9..e926d534c5e 100644
--- a/gcc/gthr-rtems.h
+++ b/gcc/gthr-rtems.h
@@ -62,6 +62,7 @@ extern int rtems_gxx_setspecific (__gthread_key_t key, const void *ptr);
/* mutex support */
extern void rtems_gxx_mutex_init (__gthread_mutex_t *mutex);
+extern int rtems_gxx_mutex_destroy (__gthread_mutex_t *mutex);
extern int rtems_gxx_mutex_lock (__gthread_mutex_t *mutex);
extern int rtems_gxx_mutex_trylock (__gthread_mutex_t *mutex);
extern int rtems_gxx_mutex_unlock (__gthread_mutex_t *mutex);
@@ -111,9 +112,9 @@ __gthread_setspecific (__gthread_key_t key, const void *ptr)
}
static inline int
-__gthread_mutex_destroy (__gthread_mutex_t * UNUSED(mutex))
+__gthread_mutex_destroy (__gthread_mutex_t *mutex)
{
- return 0;
+ return rtems_gxx_mutex_destroy (mutex);
}
static inline int
diff --git a/gcc/gthr-win32.h b/gcc/gthr-win32.h
index b75c8654a08..adf6efb81a5 100644
--- a/gcc/gthr-win32.h
+++ b/gcc/gthr-win32.h
@@ -423,6 +423,7 @@ extern int __gthr_win32_recursive_mutex_lock (__gthread_recursive_mutex_t *);
extern int
__gthr_win32_recursive_mutex_trylock (__gthread_recursive_mutex_t *);
extern int __gthr_win32_recursive_mutex_unlock (__gthread_recursive_mutex_t *);
+extern void __gthr_win32_mutex_destroy (__gthread_mutex_t *);
static inline int
__gthread_once (__gthread_once_t *once, void (*func) (void))
@@ -463,6 +464,12 @@ __gthread_mutex_init_function (__gthread_mutex_t *mutex)
__gthr_win32_mutex_init_function (mutex);
}
+static inline void
+__gthread_mutex_destroy (__gthread_mutex_t *mutex)
+{
+ __gthr_win32_mutex_destroy (mutex);
+}
+
static inline int
__gthread_mutex_lock (__gthread_mutex_t *mutex)
{
diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c
index 4fd98d010d3..cab4fbdf6b1 100644
--- a/gcc/ifcvt.c
+++ b/gcc/ifcvt.c
@@ -1738,6 +1738,10 @@ noce_try_abs (struct noce_if_info *if_info)
rtx cond, earliest, target, seq, a, b, c;
int negate;
+ /* Reject modes with signed zeros. */
+ if (HONOR_SIGNED_ZEROS (GET_MODE (if_info->x)))
+ return FALSE;
+
/* Recognize A and B as constituting an ABS or NABS. The canonical
form is a branch around the negation, taken when the object is the
first operand of a comparison against 0 that evaluates to true. */
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index 2ea5f73cdc9..06d00e355dd 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -925,7 +925,7 @@ cgraph_decide_inlining_of_small_functions (void)
not_good = N_("function not declared inline and code size would grow");
if (optimize_size)
not_good = N_("optimizing for size and code size would grow");
- if (not_good && growth > 0)
+ if (not_good && growth > 0 && cgraph_estimate_growth (edge->callee) > 0)
{
if (!cgraph_recursive_inlining_p (edge->caller, edge->callee,
&edge->inline_failed))
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index eed2fd2c676..a27c1cbe661 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,7 @@
+2008-03-02 Jakub Jelinek <jakub@redhat.com>
+
+ * jcf-dump.c (version): Update copyright notice dates.
+
2008-02-29 Tom Tromey <tromey@redhat.com>
* expr.c (expand_byte_code): Set DECL_FUNCTION_LAST_LINE on
diff --git a/gcc/java/jcf-dump.c b/gcc/java/jcf-dump.c
index 2901e335b84..3cc996a9a60 100644
--- a/gcc/java/jcf-dump.c
+++ b/gcc/java/jcf-dump.c
@@ -2,7 +2,7 @@
Functionally similar to Sun's javap.
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
- 2006, 2007 Free Software Foundation, Inc.
+ 2006, 2007, 2008 Free Software Foundation, Inc.
This file is part of GCC.
@@ -1165,7 +1165,7 @@ static void
version (void)
{
printf ("jcf-dump %s%s\n\n", pkgversion_string, version_string);
- printf ("Copyright %s 2007 Free Software Foundation, Inc.\n", _("(C)"));
+ printf ("Copyright %s 2008 Free Software Foundation, Inc.\n", _("(C)"));
printf (_("This is free software; see the source for copying conditions. There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"));
exit (0);
diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h
index fd5f474cc1e..21e17440042 100644
--- a/gcc/langhooks-def.h
+++ b/gcc/langhooks-def.h
@@ -98,7 +98,7 @@ extern void lhd_omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *,
#define LANG_HOOKS_STATICP lhd_staticp
#define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL lhd_do_nothing_t
#define LANG_HOOKS_SET_DECL_ASSEMBLER_NAME lhd_set_decl_assembler_name
-#define LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS false
+#define LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS true
#define LANG_HOOKS_NO_BODY_BLOCKS false
#define LANG_HOOKS_PRINT_STATISTICS lhd_do_nothing
#define LANG_HOOKS_PRINT_XNODE lhd_print_tree_nothing
diff --git a/gcc/mips-tdump.c b/gcc/mips-tdump.c
index a6dcb57cfa0..cc43e85bdbe 100644
--- a/gcc/mips-tdump.c
+++ b/gcc/mips-tdump.c
@@ -1,6 +1,6 @@
/* Read and manage MIPS symbol tables from object modules.
Copyright (C) 1991, 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2003, 2004,
- 2006, 2007 Free Software Foundation, Inc.
+ 2006, 2007, 2008 Free Software Foundation, Inc.
Contributed by hartzell@boulder.colorado.edu,
Rewritten by meissner@osf.org.
@@ -1411,7 +1411,7 @@ main (int argc, char **argv)
if (version)
{
printf ("mips-tdump %s%s\n", pkgversion_string, version_string);
- fputs ("Copyright (C) 2007 Free Software Foundation, Inc.\n", stdout);
+ fputs ("Copyright (C) 2008 Free Software Foundation, Inc.\n", stdout);
fputs ("This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n",
stdout);
diff --git a/gcc/mips-tfile.c b/gcc/mips-tfile.c
index 2bf4932478e..7a122a1e88a 100644
--- a/gcc/mips-tfile.c
+++ b/gcc/mips-tfile.c
@@ -3,7 +3,7 @@
in the form of comments (the mips assembler does not support
assembly access to debug information).
Copyright (C) 1991, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001,
- 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+ 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
Contributed by Michael Meissner (meissner@cygnus.com).
This file is part of GCC.
@@ -4779,7 +4779,7 @@ main (int argc, char **argv)
if (version)
{
printf (_("mips-tfile %s%s\n"), pkgversion_string, version_string);
- fputs ("Copyright (C) 2007 Free Software Foundation, Inc.\n", stdout);
+ fputs ("Copyright (C) 2008 Free Software Foundation, Inc.\n", stdout);
fputs (_("This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\n"),
stdout);
diff --git a/gcc/objcp/ChangeLog b/gcc/objcp/ChangeLog
index e919ad2657e..227f52ebae2 100644
--- a/gcc/objcp/ChangeLog
+++ b/gcc/objcp/ChangeLog
@@ -1,3 +1,13 @@
+2008-03-07 Paolo Bonzini <bonzini@gnu.org>
+
+ Revert:
+
+ 2008-02-07 Andreas Tobler <andreast-list@fgznet.ch>
+ Douglas Gregor <doug.gregor@gmail.com>
+
+ PR bootstrap/35115
+ * objcp-decl.c (objcp_comptypes): Call cp_comptypes, not comptypes.
+
2008-02-07 Andreas Tobler <andreast-list@fgznet.ch>
Douglas Gregor <doug.gregor@gmail.com>
diff --git a/gcc/objcp/objcp-decl.c b/gcc/objcp/objcp-decl.c
index 8197dbe16c1..12a73c1272a 100644
--- a/gcc/objcp/objcp-decl.c
+++ b/gcc/objcp/objcp-decl.c
@@ -95,7 +95,7 @@ objcp_xref_tag (enum tree_code code ATTRIBUTE_UNUSED, tree name)
int
objcp_comptypes (tree type1, tree type2)
{
- return cp_comptypes (type1, type2, COMPARE_STRICT);
+ return comptypes (type1, type2, COMPARE_STRICT);
}
tree
diff --git a/gcc/opts.c b/gcc/opts.c
index 445cec37296..528c8b83460 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -505,7 +505,7 @@ handle_option (const char **argv, unsigned int lang_mask)
opt = dup;
value = 0;
opt_index = find_opt (opt + 1, lang_mask | CL_COMMON | CL_TARGET);
- if (opt_index == cl_options_count)
+ if (opt_index == cl_options_count && opt[1] == 'W')
{
/* We don't generate errors for unknown -Wno-* options
unless we issue diagnostics. */
diff --git a/gcc/print-tree.c b/gcc/print-tree.c
index 7df81616d51..889f1c5f511 100644
--- a/gcc/print-tree.c
+++ b/gcc/print-tree.c
@@ -676,8 +676,6 @@ print_node (FILE *file, const char *prefix, tree node, int indent)
case tcc_reference:
case tcc_statement:
case tcc_vl_exp:
- if (TREE_CODE (node) == BIT_FIELD_REF && BIT_FIELD_REF_UNSIGNED (node))
- fputs (" unsigned", file);
if (TREE_CODE (node) == BIND_EXPR)
{
print_node (file, "vars", TREE_OPERAND (node, 0), indent + 4);
diff --git a/gcc/ra-conflict.c b/gcc/ra-conflict.c
index 78d4f9246f0..a4f9e5f4ea1 100644
--- a/gcc/ra-conflict.c
+++ b/gcc/ra-conflict.c
@@ -297,7 +297,7 @@ mark_reg_store (sparseset allocnos_live,
{
unsigned int start = regno;
unsigned int last = end_hard_regno (mode, regno);
- if ((GET_CODE (reg) == SUBREG) && !DF_REF_FLAGS_IS_SET (ref, DF_REF_EXTRACT))
+ if ((GET_CODE (reg) == SUBREG) && !DF_REF_FLAGS_IS_SET (ref, DF_REF_ZERO_EXTRACT))
{
start += subreg_regno_offset (regno, GET_MODE (SUBREG_REG (reg)),
SUBREG_BYTE (reg), GET_MODE (reg));
@@ -457,7 +457,7 @@ clear_reg_in_live (sparseset allocnos_live,
if (allocnum >= 0)
{
if (GET_CODE (reg) == SUBREG
- && !DF_REF_FLAGS_IS_SET (def, DF_REF_EXTRACT))
+ && !DF_REF_FLAGS_IS_SET (def, DF_REF_ZERO_EXTRACT))
{
unsigned int start = SUBREG_BYTE (reg);
unsigned int last = start + GET_MODE_SIZE (GET_MODE (reg));
@@ -465,7 +465,7 @@ clear_reg_in_live (sparseset allocnos_live,
ra_init_live_subregs (sparseset_bit_p (allocnos_live, allocnum),
live_subregs, live_subregs_used, allocnum, reg);
- if (!DF_REF_FLAGS_IS_SET (def, DF_REF_STRICT_LOWER_PART))
+ if (!DF_REF_FLAGS_IS_SET (def, DF_REF_STRICT_LOW_PART))
{
/* Expand the range to cover entire words.
Bytes added here are "don't care". */
@@ -511,7 +511,7 @@ clear_reg_in_live (sparseset allocnos_live,
{
unsigned int start = regno;
if (GET_CODE (reg) == SUBREG
- && !DF_REF_FLAGS_IS_SET (def, DF_REF_EXTRACT))
+ && !DF_REF_FLAGS_IS_SET (def, DF_REF_ZERO_EXTRACT))
{
unsigned int last;
start += SUBREG_BYTE (reg);
@@ -864,7 +864,7 @@ global_conflicts (void)
rtx reg = DF_REF_REG (def);
set_reg_in_live (allocnos_live, live_subregs, live_subregs_used,
&hard_regs_live, reg,
- DF_REF_FLAGS_IS_SET (def, DF_REF_EXTRACT));
+ DF_REF_FLAGS_IS_SET (def, DF_REF_ZERO_EXTRACT));
if (dump_file)
dump_ref (dump_file, " adding def", "\n",
reg, DF_REF_REGNO (def), live_subregs, live_subregs_used);
@@ -946,7 +946,7 @@ global_conflicts (void)
use unless that set also happens to wrapped in a
ZERO_EXTRACT. */
if (DF_REF_FLAGS_IS_SET (use, DF_REF_READ_WRITE)
- && (!DF_REF_FLAGS_IS_SET (use, DF_REF_EXTRACT))
+ && (!DF_REF_FLAGS_IS_SET (use, DF_REF_ZERO_EXTRACT))
&& DF_REF_FLAGS_IS_SET (use, DF_REF_SUBREG))
continue;
@@ -957,7 +957,7 @@ global_conflicts (void)
if (allocnum >= 0)
{
if (GET_CODE (reg) == SUBREG
- && !DF_REF_FLAGS_IS_SET (use, DF_REF_EXTRACT))
+ && !DF_REF_FLAGS_IS_SET (use, DF_REF_ZERO_EXTRACT))
{
unsigned int start = SUBREG_BYTE (reg);
unsigned int last = start + GET_MODE_SIZE (GET_MODE (reg));
diff --git a/gcc/rtl-factoring.c b/gcc/rtl-factoring.c
index cf07db9607c..20e9cf29097 100644
--- a/gcc/rtl-factoring.c
+++ b/gcc/rtl-factoring.c
@@ -1,5 +1,5 @@
/* RTL factoring (sequence abstraction).
- Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This file is part of GCC.
@@ -551,8 +551,8 @@ clear_regs_live_in_seq (HARD_REG_SET * regs, rtx insn, int length)
df_simulate_artificial_refs_at_end (bb, &live);
/* Propagate until INSN if found. */
- for (x = BB_END (bb); x != insn;)
- df_simulate_one_insn_backwards (bb, insn, &live);
+ for (x = BB_END (bb); x != insn; x = PREV_INSN (x))
+ df_simulate_one_insn_backwards (bb, x, &live);
/* Clear registers live after INSN. */
renumbered_reg_set_to_hard_reg_set (&hlive, &live);
@@ -562,7 +562,7 @@ clear_regs_live_in_seq (HARD_REG_SET * regs, rtx insn, int length)
for (i = 0; i < length;)
{
rtx prev = PREV_INSN (x);
- df_simulate_one_insn_backwards (bb, insn, &live);
+ df_simulate_one_insn_backwards (bb, x, &live);
if (INSN_P (x))
{
@@ -949,6 +949,17 @@ gen_symbol_ref_rtx_for_label (const_rtx label)
return sym;
}
+/* Splits basic block at the requested insn and rebuilds dataflow. */
+
+static basic_block
+split_block_and_df_analyze (basic_block bb, rtx insn)
+{
+ basic_block next;
+ next = split_block (bb, insn)->dest;
+ df_analyze ();
+ return next;
+}
+
/* Ensures that INSN is the last insn in its block and returns the block label
of the next block. */
@@ -959,7 +970,7 @@ block_label_after (rtx insn)
if ((insn == BB_END (bb)) && (bb->next_bb != EXIT_BLOCK_PTR))
return block_label (bb->next_bb);
else
- return block_label (split_block (bb, insn)->dest);
+ return block_label (split_block_and_df_analyze (bb, insn));
}
/* Ensures that the last insns of the best pattern and its matching sequences
@@ -1008,8 +1019,9 @@ split_pattern_seq (void)
/* Emit an indirect jump via the link register after the sequence acting
as the return insn. Also emit a barrier and update the basic block. */
- retjmp = emit_jump_insn_after (gen_indirect_jump (pattern_seqs->link_reg),
- BB_END (bb));
+ if (!find_reg_note (BB_END (bb), REG_NORETURN, NULL))
+ retjmp = emit_jump_insn_after (gen_indirect_jump (pattern_seqs->link_reg),
+ BB_END (bb));
emit_barrier_after (BB_END (bb));
/* Replace all outgoing edges with a new one to the block of RETLABEL. */
@@ -1025,7 +1037,7 @@ split_pattern_seq (void)
for (; i < sb->length; i++)
insn = prev_insn_in_block (insn);
- sb->label = block_label (split_block (bb, insn)->dest);
+ sb->label = block_label (split_block_and_df_analyze (bb, insn));
}
/* Emit an insn saving the return address to the link register before the
@@ -1067,7 +1079,7 @@ erase_matching_seqs (void)
/* Delete the insns of the sequence. */
for (i = 0; i < sb->length; i++)
insn = prev_insn_in_block (insn);
- delete_basic_block (split_block (bb, insn)->dest);
+ delete_basic_block (split_block_and_df_analyze (bb, insn));
/* Emit an insn saving the return address to the link register
before the deleted sequence. */
diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
index 34392dce48a..44f3ef57473 100644
--- a/gcc/simplify-rtx.c
+++ b/gcc/simplify-rtx.c
@@ -5239,6 +5239,22 @@ simplify_subreg (enum machine_mode outermode, rtx op,
return simplify_gen_binary (ASHIFT, outermode,
XEXP (XEXP (op, 0), 0), XEXP (op, 1));
+ /* Recognize a word extraction from a multi-word subreg. */
+ if ((GET_CODE (op) == LSHIFTRT
+ || GET_CODE (op) == ASHIFTRT)
+ && SCALAR_INT_MODE_P (outermode)
+ && GET_MODE_BITSIZE (outermode) >= BITS_PER_WORD
+ && GET_MODE_BITSIZE (innermode) >= (2 * GET_MODE_BITSIZE (outermode))
+ && GET_CODE (XEXP (op, 1)) == CONST_INT
+ && (INTVAL (XEXP (op, 1)) & (GET_MODE_BITSIZE (outermode) - 1)) == 0
+ && byte == subreg_lowpart_offset (outermode, innermode))
+ {
+ int shifted_bytes = INTVAL (XEXP (op, 1)) / BITS_PER_UNIT;
+ return simplify_gen_subreg (outermode, XEXP (op, 0), innermode,
+ (WORDS_BIG_ENDIAN
+ ? byte - shifted_bytes : byte + shifted_bytes));
+ }
+
return NULL_RTX;
}
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index b8c03ce38ef..9d17b5b5569 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,287 @@
+2008-03-11 Uros Bizjak <ubizjak@gmail.com>
+
+ PR middle-end/35526
+ * g++.dg/torture/pr35526.C: New test.
+
+2008-03-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/35328
+ * g++.dg/gomp/pr35328.C: New test.
+
+ PR c++/35337
+ * g++.dg/gomp/pr35337.C: New test.
+
+ PR c/35438
+ PR c/35439
+ * gcc.dg/gomp/pr35438.c: New test.
+ * gcc.dg/gomp/pr35439.c: New test.
+
+ PR middle-end/35099
+ * g++.dg/gomp/pr35099.C: New test.
+
+2008-03-10 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/range_check2.adb: New test.
+
+2008-03-10 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR tree-optimization/35494
+ * g++.dg/tree-ssa/ssa-store-ccp-1.C: New.
+ * gcc.dg/tree-ssa/ssa-store-ccp-2.c: Likewise.
+ * gcc.dg/tree-ssa/ssa-store-ccp-3.c: Likewise.
+ * gcc.dg/tree-ssa/ssa-store-ccp-4.c: Likewise.
+
+2008-03-10 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/34677
+ * gcc.dg/tree-ssa/loadpre23.c: New testcase.
+ * gcc.dg/tree-ssa/loadpre24.c: Likewise.
+ * gcc.dg/tree-ssa/loadpre25.c: Likewise.
+
+2008-03-09 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/35474
+ * gfortran.dg/module_commons_2.f90: New test.
+
+2008-03-09 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/frame_overflow.adb: Improve portability.
+
+2008-03-08 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/35350
+ * gcc.target/i386/isa-1.c: Add -march=x86-64.
+ * gcc.target/i386/isa-2.c: Likewise.
+ * gcc.target/i386/isa-3.c: Likewise.
+ * gcc.target/i386/isa-10.c: Likewise.
+ * gcc.target/i386/isa-11.c: Likewise.
+ * gcc.target/i386/isa-12.c: Likewise.
+ * gcc.target/i386/isa-13.c: Likewise.
+ * gcc.target/i386/isa-14.c: Likewise.
+
+2008-03-08 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/22152
+ * gcc.target/i386/pr22152.c: New test.
+ * gcc.target/i386/sse2-mmx.c: Ditto.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/uninit_func.adb: New test.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/pack4.adb: New test.
+
+2008-03-08 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/small_alignment.adb: New test.
+
+2008-03-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/specs/alignment2.ads: New test.
+
+2008-03-07 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/pack3.adb: New test.
+
+2008-03-07 Peter O'Gorman <pogma@thewrittenword.com>
+
+ PR c++/20366
+ * g++.dg/other/pr20366.C: New test.
+
+2008-03-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR tree-opt/35402
+ * gcc.dg/tree-ssa/ssa-store-ccp-1.c: New test.
+
+2008-03-06 Markus Milleder <markus.milleder@generali.at>
+
+ PR preprocessor/35458
+ * gcc.dg/cpp/cmdlne-M-2.c: New file.
+ * gcc.dg/cpp/cmdlne-M-2#.h: New file.
+ * gcc.dg/cpp/#cmdlne-M-2.h: New file.
+
+2008-03-06 Tom Tromey <tromey@redhat.com>
+
+ * lib/treelang-dg.exp, lib/treelang.exp: Delete.
+ * treelang: Delete.
+
+2008-03-05 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/specs/pack33.ads: New test.
+
+2008-03-05 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/35472
+ * gcc.c-torture/execute/pr35472.c: New testcase.
+
+2007-03-05 Gabor Loki <loki@gcc.gnu.org>
+
+ PR 33009
+ * gcc.c-torture/compile/pr11832.c: Check -frtl-abstract-sequences.
+ * gcc.c-torture/compile/pr33009.c: Likewise.
+
+2008-03-05 Victor Kaplansky <victork@gcc.gnu.org>
+
+ PR 31341
+ * gcc.dg/vect/pr31041.c: Fix.
+
+2008-03-05 Hans-Peter Nilsson <hp@axis.com>
+
+ PR libfortran/35293
+ * lib/lib/target-supports.exp (check_effective_target_fd_truncate):
+ New.
+ * gfortran.fortran-torture/execute/list_read_1.x,
+ gfortran.fortran-torture/execute/read_null_string.x,
+ gfortran.fortran-torture/execute/backspace.x,
+ gfortran.fortran-torture/execute/seq_io.x,
+ gfortran.fortran-torture/execute/slash_edit.x,
+ gfortran.fortran-torture/execute/unopened_unit_1.x,
+ gfortran.dg/namelist_21.f90, gfortran.dg/advance_5.f90,
+ gfortran.dg/fmt_t_7.f, gfortran.dg/eor_1.f90,
+ gfortran.dg/read_x_past.f, gfortran.dg/tl_editing.f90,
+ gfortran.dg/ftell_2.f90, gfortran.dg/namelist_13.f90,
+ gfortran.dg/namelist_22.f90, gfortran.dg/advance_6.f90,
+ gfortran.dg/read_bad_advance.f90, gfortran.dg/func_derived_3.f90,
+ gfortran.dg/namelist_40.f90, gfortran.dg/x_slash_2.f,
+ gfortran.dg/namelist_14.f90, gfortran.dg/backspace_1.f,
+ gfortran.dg/namelist_23.f90, gfortran.dg/pr17285.f90,
+ gfortran.dg/read_noadvance.f90, gfortran.dg/namelist_use_only.f90,
+ gfortran.dg/namelist_41.f90, gfortran.dg/namelist_15.f90,
+ gfortran.dg/backspace_3.f, gfortran.dg/backslash_3.f,
+ gfortran.dg/namelist_24.f90, gfortran.dg/pr17286.f90,
+ gfortran.dg/endfile.f90, gfortran.dg/open_access_append_1.f90,
+ gfortran.dg/fmt_huge.f90, gfortran.dg/namelist_42.f90,
+ gfortran.dg/pr18392.f90, gfortran.dg/pr19155.f, gfortran.dg/pr12884.f,
+ gfortran.dg/namelist_16.f90, gfortran.dg/backspace_5.f,
+ gfortran.dg/open_readonly_1.f90, gfortran.dg/fmt_read.f90,
+ gfortran.dg/iostat_1.f90, gfortran.dg/namelist_43.f90,
+ gfortran.dg/read_size_noadvance.f90, gfortran.dg/inquire_5.f90,
+ gfortran.dg/read_many_1.f, gfortran.dg/namelist_17.f90,
+ gfortran.dg/list_read_1.f90, gfortran.dg/backspace_10.f90,
+ gfortran.dg/namelist_26.f90, gfortran.dg/unf_read_corrupted_2.f90,
+ gfortran.dg/record_marker_1.f90, gfortran.dg/convert_implied_open.f90,
+ gfortran.dg/iostat_2.f90, gfortran.dg/write_check3.f90,
+ gfortran.dg/namelist_44.f90, gfortran.dg/namelist_use.f90,
+ gfortran.dg/rewind_1.f90, gfortran.dg/streamio_11.f90,
+ gfortran.dg/namelist_18.f90, gfortran.dg/backspace_9.f,
+ gfortran.dg/dos_eol.f, gfortran.dg/read_eof_1.f90,
+ gfortran.dg/namelist_27.f90, gfortran.dg/pad_no.f90,
+ gfortran.dg/endfile.f, gfortran.dg/namelist_11.f,
+ gfortran.dg/namelist_19.f90, gfortran.dg/eor_handling_1.f90,
+ gfortran.dg/write_rewind_1.f, gfortran.dg/comma.f,
+ gfortran.dg/read_eof_2.f90, gfortran.dg/namelist_28.f90,
+ gfortran.dg/record_marker_3.f90, gfortran.dg/complex_read.f90,
+ gfortran.dg/namelist_37.f90, gfortran.dg/error_recovery_5.f90,
+ gfortran.dg/namelist_char_only.f90, gfortran.dg/pr18122.f90,
+ gfortran.dg/list_read_4.f90, gfortran.dg/eor_handling_2.f90,
+ gfortran.dg/read_eof_3.f90, gfortran.dg/dollar_edit_descriptor_1.f,
+ gfortran.dg/pr19467.f90, gfortran.dg/namelist_38.f90,
+ gfortran.dg/inquire_9.f90, gfortran.dg/list_read_5.f90,
+ gfortran.dg/noadv_size.f90, gfortran.dg/backslash_1.f90,
+ gfortran.dg/eor_handling_3.f90, gfortran.dg/read_eof_4.f90,
+ gfortran.dg/runtime_warning_1.f90, gfortran.dg/x_slash_1.f,
+ gfortran.dg/namelist_39.f90, gfortran.dg/streamio_3.f90,
+ gfortran.dg/read_comma.f, gfortran.dg/pr19657.f,
+ gfortran.dg/streamio_15.f90, gfortran.dg/list_read_6.f90,
+ gfortran.dg/eor_handling_4.f90, gfortran.dg/backslash_2.f90,
+ gfortran.dg/pr19216.f, gfortran.dg/PR19872.f,
+ gfortran.dg/backspace_2.f, gfortran.dg/empty_format_1.f90,
+ gfortran.dg/streamio_4.f90, gfortran.dg/append_1.f90,
+ gfortran.dg/fgetc_1.f90, gfortran.dg/complex_write.f90,
+ gfortran.dg/list_read_7.f90, gfortran.dg/eor_handling_5.f90,
+ gfortran.dg/fmt_t_1.f90, gfortran.dg/pr17090.f90,
+ gfortran.dg/backspace_4.f, gfortran.dg/shape_3.f90,
+ gfortran.dg/unf_io_convert_1.f90, gfortran.dg/fgetc_2.f90,
+ gfortran.dg/vector_subscript_3.f90, gfortran.dg/list_read_8.f90,
+ gfortran.dg/flush_1.f90, gfortran.dg/advance_1.f90,
+ gfortran.dg/fmt_t_2.f90, gfortran.dg/backspace_6.f,
+ gfortran.dg/slash_1.f90, gfortran.dg/stat_1.f90,
+ gfortran.dg/unformatted_recl_1.f90, gfortran.dg/record_marker_2.f,
+ gfortran.dg/overwrite_1.f, gfortran.dg/unf_io_convert_2.f90,
+ gfortran.dg/fmt_t_3.f90, gfortran.dg/backspace_8.f,
+ gfortran.dg/stat_2.f90, gfortran.dg/pr18210.f90,
+ gfortran.dg/unformatted_subrecord_1.f90, gfortran.dg/pr20257.f90,
+ gfortran.dg/eof_1.f90, gfortran.dg/fmt_t_4.f90,
+ gfortran.dg/unf_short_record_1.f90, gfortran.dg/fmt_exhaust.f90,
+ gfortran.dg/namelist_20.f90, gfortran.dg/advance_4.f90,
+ gfortran.dg/fmt_t_5.f90, gfortran.dg/namelist_12.f,
+ gfortran.dg/backspace_7.f90, gfortran.dg/write_rewind_2.f,
+ gfortran.dg/ftell_1.f90, gfortran.dg/fseek.f90,
+ gfortran.dg/write_back.f: Gate test on effective_target
+ fd_truncate.
+
+2008-03-04 Joseph Myers <joseph@codesourcery.com>
+
+ * gcc.dg/tree-ssa/loop-1.c: Handle i?86-*-mingw* i?86-*-cygwin* as
+ targets declaring functions in assembly.
+
+2008-03-04 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
+
+ PR 28322
+ * gcc.dg/pr28322-3.c: New.
+
+2008-03-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/35453
+ * gcc.target/i386/sse4_2-pcmpestri-1.c: Replace SIDD_XXX with
+ _SIDD_XXX.
+ * gcc.target/i386/sse4_2-pcmpestri-2.c: Likewise.
+ * gcc.target/i386/sse4_2-pcmpestrm-1.c: Likewise.
+ * gcc.target/i386/sse4_2-pcmpestrm-2.c: Likewise.
+ * gcc.target/i386/sse4_2-pcmpistri-1.c: Likewise.
+ * gcc.target/i386/sse4_2-pcmpistri-2.c: Likewise.
+ * gcc.target/i386/sse4_2-pcmpistrm-1.c: Likewise.
+ * gcc.target/i386/sse4_2-pcmpistrm-2.c: Likewise.
+ * gcc.target/i386/sse4_2-pcmpstr.h: Likewise.
+
+2008-03-04 Uros Bizjak <ubizjak@gmail.com>
+
+ PR middle-end/35456
+ * gcc.c-torture/execute/pr35456.c: New test.
+
+2008-03-04 Joseph Myers <joseph@codesourcery.com>
+
+ * gcc.target/i386/sse-10.c: Don't use
+ -mno-accumulate-outgoing-args on *-*-mingw* *-*-cygwin*.
+
+2008-03-04 Uros Bizjak <ubizjak@gmail.com>
+
+ * gfortran.dg/reassoc_1.f90: Cleanup dump files.
+ * gfortran.dg/reassoc_2.f90: Ditto.
+ * gfortran.dg/reassoc_3.f90: Ditto.
+
+2008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33197
+ * gfortran.dg/gomp/gomp.exp: Add .f08 and .F08 file suffixes.
+ * gfortran.dg/dg.exp: Likewise.
+ * gfortran.dg/vect/vect.exp: Likewise.
+ * gfortran.fortran-torture/execute/execute.exp: Likewise.
+ * gfortran.fortran-torture/compile/compile.exp: Likewise.
+ * gfortran.dg/gamma_1.f90: Also check log_gamma.
+ * gfortran.dg/invalid_contains_1.f90: Remove warning about
+ empty CONTAINS.
+ * gfortran.dg/gamma_2.f90: Add a few error messages.
+ * gfortran.dg/invalid_contains_2.f90: Remove warning about
+ empty CONTAINS.
+ * gfortran.dg/gamma_3.f90: Adjust error message.
+ * gfortran.dg/gamma_4.f90: Test for log_gamma instead of lgamma.
+ * gfortran.dg/bind_c_usage_9.f03: Adjust error messages.
+ * gfortran.dg/bessel_1.f90: New test.
+ * gfortran.dg/recursive_check_3.f90: Remove warnings.
+ * gfortran.dg/besxy.f90: Also check for new F2008 intrinsics.
+ * gfortran.dg/derived_function_interface_1.f90: Remove warning.
+ * gfortran.dg/contains_empty_1.f03: New test.
+ * gfortran.dg/erfc_scaled_1.f90: New test.
+ * gfortran.dg/hypot_1.f90: New test.
+ * gfortran.dg/contains_empty_2.f03: New test.
+
+2007-03-03 Uros Bizjak <ubizjak@gmail.com>
+
+ * gcc.target/i386/builtin-apply-mmx.c: Do not XFAIL on Darwin.
+
2008-03-02 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR 24924
diff --git a/gcc/testsuite/g++.dg/gomp/pr35099.C b/gcc/testsuite/g++.dg/gomp/pr35099.C
new file mode 100644
index 00000000000..6c793a3f8c2
--- /dev/null
+++ b/gcc/testsuite/g++.dg/gomp/pr35099.C
@@ -0,0 +1,39 @@
+// PR middle-end/35099
+// { dg-do compile }
+// { dg-options "-O2 -fopenmp" }
+
+struct A
+{
+ ~A () throw ();
+ void foo ();
+};
+
+struct B
+{
+ B () { A ().foo (); }
+};
+
+void
+bar ()
+{
+#pragma omp parallel
+ {
+ #pragma omp single
+ B ();
+ #pragma omp for
+ for (int i = 0; i < 2; ++i)
+ B ();
+ }
+}
+
+void
+baz ()
+{
+#pragma omp parallel
+ {
+ #pragma omp single
+ B ();
+ #pragma omp single
+ B ();
+ }
+}
diff --git a/gcc/testsuite/g++.dg/gomp/pr35328.C b/gcc/testsuite/g++.dg/gomp/pr35328.C
new file mode 100644
index 00000000000..718283b5957
--- /dev/null
+++ b/gcc/testsuite/g++.dg/gomp/pr35328.C
@@ -0,0 +1,31 @@
+// PR c++/35328
+// { dg-do compile }
+// { dg-options "-fopenmp" }
+
+struct A
+{
+ ~A ()(); // { dg-error "declared as function returning a function" }
+};
+struct B
+{
+ B ()(); // { dg-error "declared as function returning a function" }
+};
+struct C
+{
+ C ();
+ C (const C &)(); // { dg-error "declared as function returning a function" }
+};
+
+void
+foo ()
+{
+ A a;
+ B b;
+ C c;
+ #pragma omp parallel firstprivate (a)
+ ;
+ #pragma omp parallel private (b)
+ ;
+ #pragma omp parallel firstprivate (c)
+ ;
+}
diff --git a/gcc/testsuite/g++.dg/gomp/pr35337.C b/gcc/testsuite/g++.dg/gomp/pr35337.C
new file mode 100644
index 00000000000..2e9ca6b207f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/gomp/pr35337.C
@@ -0,0 +1,20 @@
+// PR c++/35337
+// { dg-do compile }
+// { dg-options "-fopenmp" }
+
+struct A { };
+
+void
+foo ()
+{
+#pragma omp parallel firstprivate(A) // { dg-error "struct A\[^\n\]*is not a variable" }
+ ;
+}
+
+void
+bar ()
+{
+#pragma omp for lastprivate(A) // { dg-error "struct A\[^\n\]*is not a variable" }
+ for (int i = 0; i < 10; i++)
+ ;
+}
diff --git a/gcc/testsuite/g++.dg/other/pr20366.C b/gcc/testsuite/g++.dg/other/pr20366.C
new file mode 100644
index 00000000000..36a689ebf42
--- /dev/null
+++ b/gcc/testsuite/g++.dg/other/pr20366.C
@@ -0,0 +1,80 @@
+// Test fix for PR20366
+//
+// { dg-do compile { target *-*-aix* } }
+// { dg-options "-D_LARGE_FILES" }
+//
+// cstdio includes stdio.h and undefs most of the functions declared
+// therein, unfortunately this means that #define fopen fopen64 goes
+// away. This tests the fix, and ensures that with -D_LARGE_FILES
+// fopen et. al. are indeed aliased to the large file equivalents.
+//
+// There are many other #define foo foo64 in the AIX headers, but
+// these all work out fine as they are not undefined in libstdc++.
+// This list is probably incomplete:
+//
+// Symbol Return type Large file declaration.
+//
+// aio.h (different for different AIX versions)
+// =====
+// aio_read int aio_read64(int, struct aiocb64 *);
+// aio_write int aio_write64(int, struct aiocb64 *);
+// lio_listio int lio_listio64(int, struct liocb64 *[], int, void *);
+// aio_cancel int aio_cancel64(int, struct aiocb64 *);
+// aio_suspend int aio_suspend64(int, struct aiocb64 *[]);
+//
+// stdio.h
+// =======
+// fgetpos int fgetpos64(FILE *, fpos64_t *);
+// fopen FILE *fopen64(const char *, const char *);
+// freopen FILE *freopen64(const char *, const char *, FILE *);
+// fseeko int fseeko64(FILE *, off64_t, int);
+// fsetpos int fsetpos64(FILE *, const fpos64_t *);
+// ftello off64_t ftello64(FILE *);
+//
+// unistd.h
+// ========
+// fclear off64_t fclear64(int, off64_t);
+// fsync_range int fsync_range64(int, int, off64_t, off64_t);
+// ftruncate int ftruncate64(int, off64_t);
+// truncate int truncate64(const char *, off64_t);
+// lseek off64_t lseek64(int, off64_t, int);
+// pread ssize_t pread64(int, void *, size_t, off64_t);
+// pwrite ssize_t pwrite64(int, const void *, size_t, off64_t);
+//
+// fcntl.h
+// =======
+// open int open64(const char *, int, ...);
+// creat int creat64(const char *, mode_t);
+//
+// sys/stat.h
+// ==========
+// stat int stat64(const char *, struct stat64 *);
+// fstat int fstat64(int, struct stat64 *);
+// lstat int lstat64(const char *, struct stat64 *);
+//
+// stdlib.h
+// ========
+// mkstemp int mkstemp64(char *);
+//
+// ftw.h
+// =====
+// ftw int ftw64(const char *, int (*)(const char *,const struct stat64 *, int), int);
+// nftw int nftw64(const char *, int (*)(const char *, const struct stat64 *, int, struct FTW*), int, int);
+//
+// It seems unlikely that any of these will be used (and #undef'ed) by
+// libstdc++ in the future, if they are then this test and its
+// associated patch to fixincludes will have to be revisited.
+
+#include <cstdio>
+
+extern "C" {
+int fgetpos(FILE *, fpos64_t *);
+FILE *fopen(const char *, const char *);
+FILE *freopen(const char *, const char *, FILE *);
+int fseeko(FILE *, off64_t, int);
+int fsetpos(FILE *, const fpos64_t *);
+off64_t ftello(FILE *);
+}
+int main() {
+ return 0;
+}
diff --git a/gcc/testsuite/g++.dg/torture/pr35526.C b/gcc/testsuite/g++.dg/torture/pr35526.C
new file mode 100644
index 00000000000..d0a8e6d2c2f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/torture/pr35526.C
@@ -0,0 +1,18 @@
+/* { dg-do compile } */
+
+extern void *memcpy (void *__dest, __const void *__src, __SIZE_TYPE__ __n);
+
+char internal_crash_read_ip[] = { 0xb8 };
+
+struct u_internal_crash_read_t
+{
+ char ip[sizeof (internal_crash_read_ip)];
+}
+u_internal_crash_read;
+
+void
+gSignalHandler (int psignalNr, int pinfo, int pctx)
+{
+ memcpy (u_internal_crash_read.ip, internal_crash_read_ip,
+ sizeof (internal_crash_read_ip));
+}
diff --git a/gcc/testsuite/g++.dg/tree-ssa/ssa-store-ccp-1.C b/gcc/testsuite/g++.dg/tree-ssa/ssa-store-ccp-1.C
new file mode 100644
index 00000000000..06e9b1e35f6
--- /dev/null
+++ b/gcc/testsuite/g++.dg/tree-ssa/ssa-store-ccp-1.C
@@ -0,0 +1,19 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-optimized" } */
+
+class bar
+{
+public:
+ static const int conststaticvariable;
+};
+
+
+int f(void)
+{
+ return bar::conststaticvariable;
+}
+
+/* There should be a reference to conststaticvariable since it may
+ be overriden at link time. */
+/* { dg-final { scan-tree-dump-times "conststaticvariable" 1 "optimized"} } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr11832.c b/gcc/testsuite/gcc.c-torture/compile/pr11832.c
new file mode 100644
index 00000000000..a4c3eece2b6
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr11832.c
@@ -0,0 +1,30 @@
+/* { dg-do compile } */
+/* { dg-options "-frtl-abstract-sequences" } */
+
+int a, b, e;
+unsigned char *c;
+void foo()
+{
+ int d = 13;
+ b = -1;
+ switch (e) {
+ case 1:
+ b++; c[b] = (unsigned char)d;
+ break;
+ case 2:
+ b++; c[b] = (unsigned char)d;
+ b++; c[b] = (unsigned char)d;
+ break;
+ case 3:
+ b++; c[b] = (unsigned char)d;
+ b++; c[b] = (unsigned char)d;
+ b++; c[b] = (unsigned char)d;
+ break;
+ default:
+ a = 1;
+ b++; c[b] = (unsigned char)d;
+ b++; c[b] = (unsigned char)d;
+ b++; c[b] = (unsigned char)d;
+ b++; c[b] = (unsigned char)d;
+ }
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr33009.c b/gcc/testsuite/gcc.c-torture/compile/pr33009.c
new file mode 100644
index 00000000000..781e1fe001e
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr33009.c
@@ -0,0 +1,36 @@
+/* { dg-do compile } */
+/* { dg-options "-frtl-abstract-sequences" } */
+
+char *progName;
+int bar0 (char *, ...);
+void bar1 (char *);
+void exit (int);
+
+
+#define SAME \
+ bar0 ("%s: Bad flag `%s'\n", argv[i], argv[i] );\
+ bar1 ( progName ); \
+ exit ( 1 );
+
+
+int foo ( int argc, char *argv[] )
+{
+ int i;
+ for (i = 0; i < argc; i++) {
+ switch (argv[i][0]) {
+ case 'c':
+ break;
+ default:
+
+ SAME
+
+ break;
+ }
+ }
+ for (i = 0; i < argc; i++) {
+
+ SAME
+
+ }
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr35456.c b/gcc/testsuite/gcc.c-torture/execute/pr35456.c
new file mode 100644
index 00000000000..175a0b2abfa
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/pr35456.c
@@ -0,0 +1,21 @@
+extern void abort (void);
+
+double
+__attribute__ ((noinline))
+not_fabs (double x)
+{
+ return x >= 0.0 ? x : -x;
+}
+
+int main()
+{
+ double x = -0.0;
+ double y;
+
+ y = not_fabs (x);
+
+ if (!__builtin_signbit (y))
+ abort();
+
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr35472.c b/gcc/testsuite/gcc.c-torture/execute/pr35472.c
new file mode 100644
index 00000000000..c8678e268c9
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/pr35472.c
@@ -0,0 +1,22 @@
+extern void abort (void);
+extern void *memset (void *s, int c, __SIZE_TYPE__ n);
+struct S { int i[16]; };
+struct S *p;
+void __attribute__((noinline))
+foo(struct S *a, struct S *b) { a->i[0] = -1; p = b; }
+void test (void)
+{
+ struct S a, b;
+ memset (&a.i[0], '\0', sizeof (a.i));
+ memset (&b.i[0], '\0', sizeof (b.i));
+ foo (&a, &b);
+ *p = a;
+ *p = b;
+ if (b.i[0] != -1)
+ abort ();
+}
+int main()
+{
+ test();
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/cpp/#cmdlne-M-2.h b/gcc/testsuite/gcc.dg/cpp/#cmdlne-M-2.h
new file mode 100644
index 00000000000..40a8c178f10
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/cpp/#cmdlne-M-2.h
@@ -0,0 +1 @@
+/* empty */
diff --git a/gcc/testsuite/gcc.dg/cpp/cmdlne-M-2#.h b/gcc/testsuite/gcc.dg/cpp/cmdlne-M-2#.h
new file mode 100644
index 00000000000..40a8c178f10
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/cpp/cmdlne-M-2#.h
@@ -0,0 +1 @@
+/* empty */
diff --git a/gcc/testsuite/gcc.dg/cpp/cmdlne-M-2.c b/gcc/testsuite/gcc.dg/cpp/cmdlne-M-2.c
new file mode 100644
index 00000000000..6479822f963
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/cpp/cmdlne-M-2.c
@@ -0,0 +1,14 @@
+/* Copyright (C) 2008 Free Software Foundation, Inc. */
+
+/* { dg-do preprocess } */
+/* { dg-options "-M" } */
+
+/* Test that dependency output suppresses warnings by implying -w. */
+
+#include "#cmdlne-M-2.h"
+#include "cmdlne-M-2#.h"
+
+/* { dg-final { scan-file cmdlne-M-2.i "(^|\\n)cmdlne-M-2.o:" } }
+ { dg-final { scan-file cmdlne-M-2.i "cmdlne-M-2.c" } }
+ { dg-final { scan-file cmdlne-M-2.i "\\\\#cmdlne-M-2.h" } }
+ { dg-final { scan-file cmdlne-M-2.i "cmdlne-M-2\\\\#.h" } } */
diff --git a/gcc/testsuite/gcc.dg/gomp/pr35438.c b/gcc/testsuite/gcc.dg/gomp/pr35438.c
new file mode 100644
index 00000000000..a3ae7de0b6a
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/gomp/pr35438.c
@@ -0,0 +1,6 @@
+/* PR c/35438 */
+/* { dg-do compile } */
+/* { dg-options "-fopenmp" } */
+
+void foo ();
+#pragma omp threadprivate(foo) /* { dg-error "is not a variable" } */
diff --git a/gcc/testsuite/gcc.dg/gomp/pr35439.c b/gcc/testsuite/gcc.dg/gomp/pr35439.c
new file mode 100644
index 00000000000..1669a97a08f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/gomp/pr35439.c
@@ -0,0 +1,6 @@
+/* PR c/35439 */
+/* { dg-do compile } */
+/* { dg-options "-fopenmp" } */
+
+void x[1]; /* { dg-error "array of voids" } */
+#pragma omp threadprivate(x)
diff --git a/gcc/testsuite/gcc.dg/pr28322-3.c b/gcc/testsuite/gcc.dg/pr28322-3.c
new file mode 100644
index 00000000000..7a5a4c57901
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr28322-3.c
@@ -0,0 +1,10 @@
+/* PR28322: ignore unknown -Wno-* if no warning is emitted. */
+/* { dg-do compile } */
+/* { dg-options " -fno-foobar -mno-foobar" } */
+
+void foo(void)
+{
+ int i = 1;
+}
+/* { dg-message "unrecognized command line option .-fno-foobar." "" { target *-*-* } 0 } */
+/* { dg-message "unrecognized command line option .-mno-foobar." "" { target *-*-* } 0 } */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loadpre23.c b/gcc/testsuite/gcc.dg/tree-ssa/loadpre23.c
new file mode 100644
index 00000000000..2273accbaa7
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loadpre23.c
@@ -0,0 +1,25 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-pre-stats" } */
+
+struct {
+ int a;
+ int large[100];
+} x;
+
+int foo(int argc)
+{
+ int b;
+ int c;
+ int i;
+ int d, e;
+
+ for (i = 0; i < argc; i++)
+ {
+ e = x.a;
+ x.a = 9;
+ }
+ return d + e;
+}
+
+/* { dg-final { scan-tree-dump-times "Eliminated: 1" 1 "pre" } } */
+/* { dg-final { cleanup-tree-dump "pre" } } */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loadpre24.c b/gcc/testsuite/gcc.dg/tree-ssa/loadpre24.c
new file mode 100644
index 00000000000..1e6b954bfa8
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loadpre24.c
@@ -0,0 +1,24 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-pre-stats" } */
+
+int a;
+
+int foo(int argc)
+{
+ int b;
+ int c;
+ int i;
+ int d, e;
+
+ for (i = 0; i < argc; i++)
+ {
+ e = a;
+ a = 9;
+ }
+ return d + e;
+}
+
+/* PRE of globals doesn't work. */
+
+/* { dg-final { scan-tree-dump-times "Eliminated: 1" 1 "pre" { xfail *-*-* } } } */
+/* { dg-final { cleanup-tree-dump "pre" } } */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loadpre25.c b/gcc/testsuite/gcc.dg/tree-ssa/loadpre25.c
new file mode 100644
index 00000000000..aaf09313e79
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loadpre25.c
@@ -0,0 +1,20 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-pre-stats" } */
+struct X { int i; };
+int foo(struct X *a, int argc)
+{
+ int b;
+ int c;
+ int i;
+ int d, e;
+
+ for (i = 0; i < argc; i++)
+ {
+ e = a->i;
+ a->i = 9;
+ }
+ return d + e;
+}
+
+/* { dg-final { scan-tree-dump-times "Eliminated: 1" 1 "pre" } } */
+/* { dg-final { cleanup-tree-dump "pre" } } */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loop-1.c b/gcc/testsuite/gcc.dg/tree-ssa/loop-1.c
index 751e3e89027..a3d409e55c4 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/loop-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/loop-1.c
@@ -30,18 +30,19 @@ void xxx(void)
/* { dg-final { scan-tree-dump-times "foo" 5 "optimized"} } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
-/* Because hppa and ia64 targets include an external declaration for foo as
- well as the calls we need to look for something more specific then just
- foo in order to count only the calls and not the declaration. */
+/* Because hppa, ia64 and Windows targets include an external declaration
+ for foo as well as the calls we need to look for something more specific
+ than just foo in order to count only the calls and not the declaration. */
/* The SH targets always use separate instructions to load the address
and to do the actual call - bsr is only generated by link time
relaxation. */
/* CRIS keeps the address in a register. */
/* m68k sometimes puts the address in a register, depending on CPU and PIC. */
-/* { dg-final { scan-assembler-times "foo" 5 { xfail hppa*-*-* ia64*-*-* sh*-*-* cris-*-* crisv32-*-* fido-*-* m68k-*-* } } } */
+/* { dg-final { scan-assembler-times "foo" 5 { xfail hppa*-*-* ia64*-*-* sh*-*-* cris-*-* crisv32-*-* fido-*-* m68k-*-* i?86-*-mingw* i?86-*-cygwin* } } } */
/* { dg-final { scan-assembler-times "foo,%r" 5 { target hppa*-*-* } } } */
/* { dg-final { scan-assembler-times "= foo" 5 { target ia64*-*-* } } } */
+/* { dg-final { scan-assembler-times "call\[ \t\]*_foo" 5 { target i?86-*-mingw* i?86-*-cygwin* } } } */
/* { dg-final { scan-assembler-times "jsr|bsrf|blink\ttr?,r18" 5 { target sh*-*-* } } } */
/* { dg-final { scan-assembler-times "Jsr \\\$r" 5 { target cris-*-* } } } */
/* { dg-final { scan-assembler-times "\[jb\]sr" 5 { target fido-*-* m68k-*-* } } } */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-1.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-1.c
new file mode 100644
index 00000000000..aaa3d13cad4
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-1.c
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-optimized" } */
+
+static const int conststaticvariable;
+
+int f(void)
+{
+ return conststaticvariable;
+}
+
+/* There should be no reference to conststaticvariable as we should have
+ inlined the 0. */
+/* { dg-final { scan-tree-dump-times "conststaticvariable" 0 "optimized"} } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-2.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-2.c
new file mode 100644
index 00000000000..be37a21d415
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-2.c
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fdump-tree-optimized" } */
+
+const int conststaticvariable;
+
+int f(void)
+{
+ return conststaticvariable;
+}
+
+/* There should be a reference to conststaticvariable since it may
+ may be overriden at link time. */
+/* { dg-final { scan-tree-dump-times "conststaticvariable" 1 "optimized"} } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-3.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-3.c
new file mode 100644
index 00000000000..2f028a283ca
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-3.c
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fno-common -fdump-tree-optimized" } */
+
+const int conststaticvariable;
+
+int f(void)
+{
+ return conststaticvariable;
+}
+
+/* There should be no reference to conststaticvariable as we should have
+ inlined the 0. */
+/* { dg-final { scan-tree-dump-times "conststaticvariable" 0 "optimized"} } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-4.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-4.c
new file mode 100644
index 00000000000..cbf8bab3a62
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-store-ccp-4.c
@@ -0,0 +1,15 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target fpic } */
+/* { dg-options "-O2 -fno-common -fpic -fdump-tree-optimized" } */
+
+const int conststaticvariable;
+
+int f(void)
+{
+ return conststaticvariable;
+}
+
+/* There should be a reference to conststaticvariable since it may
+ may be overriden at run time. */
+/* { dg-final { scan-tree-dump-times "conststaticvariable" 1 "optimized"} } */
+/* { dg-final { cleanup-tree-dump "optimized" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/pr31041.c b/gcc/testsuite/gcc.dg/vect/pr31041.c
index e2b0b636e42..361b358b879 100644
--- a/gcc/testsuite/gcc.dg/vect/pr31041.c
+++ b/gcc/testsuite/gcc.dg/vect/pr31041.c
@@ -4,16 +4,15 @@
#include <stdarg.h>
#include "tree-vect.h"
-typedef int int32_t;
struct UNewTrie
{
- int32_t index[(0x110000 >> 1)];
+ int index[(0x110000 >> 1)];
};
typedef struct UNewTrie UNewTrie;
utrie_open_3_4 ()
{
UNewTrie *trie;
- int32_t i, j;
+ int i, j;
{
i = 0;
do
diff --git a/gcc/testsuite/gcc.target/i386/builtin-apply-mmx.c b/gcc/testsuite/gcc.target/i386/builtin-apply-mmx.c
index d274bd5c2e9..f6477e264a2 100644
--- a/gcc/testsuite/gcc.target/i386/builtin-apply-mmx.c
+++ b/gcc/testsuite/gcc.target/i386/builtin-apply-mmx.c
@@ -9,7 +9,7 @@
/* This test case is adapted from gcc.dg/builtin-apply4.c. */
-/* { dg-do run { xfail "*-*-*" } } */
+/* { dg-do run { xfail { ! *-*-darwin* } } } */
/* { dg-options "-O2 -mmmx" } */
/* { dg-require-effective-target ilp32 } */
diff --git a/gcc/testsuite/gcc.target/i386/isa-1.c b/gcc/testsuite/gcc.target/i386/isa-1.c
index 0bee0969a35..ad4e7ed1741 100644
--- a/gcc/testsuite/gcc.target/i386/isa-1.c
+++ b/gcc/testsuite/gcc.target/i386/isa-1.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-msse4" } */
+/* { dg-options "-march=x86-64 -msse4" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/isa-10.c b/gcc/testsuite/gcc.target/i386/isa-10.c
index 1fd7eac147e..76fe3559335 100644
--- a/gcc/testsuite/gcc.target/i386/isa-10.c
+++ b/gcc/testsuite/gcc.target/i386/isa-10.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-msse5 -mno-sse4" } */
+/* { dg-options "-march=x86-64 -msse5 -mno-sse4" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/isa-11.c b/gcc/testsuite/gcc.target/i386/isa-11.c
index dc55d6219e8..29688d5a783 100644
--- a/gcc/testsuite/gcc.target/i386/isa-11.c
+++ b/gcc/testsuite/gcc.target/i386/isa-11.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-msse5 -mno-ssse3" } */
+/* { dg-options "-march=x86-64 -msse5 -mno-ssse3" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/isa-12.c b/gcc/testsuite/gcc.target/i386/isa-12.c
index 782768d51df..4b7e2e2304a 100644
--- a/gcc/testsuite/gcc.target/i386/isa-12.c
+++ b/gcc/testsuite/gcc.target/i386/isa-12.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-msse5 -mno-sse3" } */
+/* { dg-options "-march=x86-64 -msse5 -mno-sse3" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/isa-13.c b/gcc/testsuite/gcc.target/i386/isa-13.c
index 5b0317449f9..ab623c4b192 100644
--- a/gcc/testsuite/gcc.target/i386/isa-13.c
+++ b/gcc/testsuite/gcc.target/i386/isa-13.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-msse5 -mno-sse2" } */
+/* { dg-options "-march=x86-64 -msse5 -mno-sse2" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/isa-14.c b/gcc/testsuite/gcc.target/i386/isa-14.c
index b901691691d..09b421c3779 100644
--- a/gcc/testsuite/gcc.target/i386/isa-14.c
+++ b/gcc/testsuite/gcc.target/i386/isa-14.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-msse5 -mno-sse" } */
+/* { dg-options "-march=x86-64 -msse5 -mno-sse" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/isa-2.c b/gcc/testsuite/gcc.target/i386/isa-2.c
index f43b1991218..ebbef772d8a 100644
--- a/gcc/testsuite/gcc.target/i386/isa-2.c
+++ b/gcc/testsuite/gcc.target/i386/isa-2.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-msse4 -msse5" } */
+/* { dg-options "-march=x86-64 -msse4 -msse5" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/isa-3.c b/gcc/testsuite/gcc.target/i386/isa-3.c
index c74ab9f50d6..c22954406cb 100644
--- a/gcc/testsuite/gcc.target/i386/isa-3.c
+++ b/gcc/testsuite/gcc.target/i386/isa-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-msse4 -msse5 -msse4a" } */
+/* { dg-options "-march=x86-64 -msse4 -msse5 -msse4a" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.target/i386/pr22152.c b/gcc/testsuite/gcc.target/i386/pr22152.c
new file mode 100644
index 00000000000..d12597703ea
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr22152.c
@@ -0,0 +1,18 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -msse2" } */
+
+#include <mmintrin.h>
+
+__m64
+unsigned_add3 (const __m64 * a, const __m64 * b, unsigned long count)
+{
+ __m64 sum;
+ unsigned int i;
+
+ for (i = 1; i < count; i++)
+ sum = _mm_add_si64 (a[i], b[i]);
+
+ return sum;
+}
+
+/* { dg-final { scan-assembler-times "movq\[ \\t\]+.*%mm" 1 } } */
diff --git a/gcc/testsuite/gcc.target/i386/sse-10.c b/gcc/testsuite/gcc.target/i386/sse-10.c
index 1c222df2b2f..b5bc8f66b44 100644
--- a/gcc/testsuite/gcc.target/i386/sse-10.c
+++ b/gcc/testsuite/gcc.target/i386/sse-10.c
@@ -1,6 +1,7 @@
/* PR 17930 */
/* { dg-do run } */
/* { dg-options "-O1 -msse2 -mfpmath=sse -mno-accumulate-outgoing-args -fno-omit-frame-pointer" } */
+/* { dg-options "-O1 -msse2 -mfpmath=sse -fno-omit-frame-pointer" { target *-*-mingw* *-*-cygwin* } } */
#include "sse2-check.h"
diff --git a/gcc/testsuite/gcc.target/i386/sse2-mmx.c b/gcc/testsuite/gcc.target/i386/sse2-mmx.c
new file mode 100644
index 00000000000..ca375cb90d9
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/sse2-mmx.c
@@ -0,0 +1,76 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -msse2" } */
+
+#include "sse2-check.h"
+
+#include <mmintrin.h>
+
+#define N 4
+
+unsigned long long a[N], b[N], result[N];
+
+unsigned long long check[N] =
+ { 0x101010101010100full,
+ 0x1010101010101010ull,
+ 0x1010101010101010ull,
+ 0x1010101010101010ull };
+
+__m64
+unsigned_add3 (const __m64 * a, const __m64 * b,
+ __m64 * result, unsigned int count)
+{
+ __m64 _a, _b, one, sum, carry, onesCarry;
+
+ unsigned int i;
+
+ carry = _mm_setzero_si64 ();
+
+ one = _mm_cmpeq_pi8 (carry, carry);
+ one = _mm_sub_si64 (carry, one);
+
+ for (i = 0; i < count; i++)
+ {
+ _a = a[i];
+ _b = b[i];
+
+ sum = _mm_add_si64 (_a, _b);
+ sum = _mm_add_si64 (sum, carry);
+
+ result[i] = sum;
+
+ onesCarry = _mm_and_si64 (_mm_xor_si64 (_a, _b), carry);
+ onesCarry = _mm_or_si64 (_mm_and_si64 (_a, _b), onesCarry);
+ onesCarry = _mm_and_si64 (onesCarry, one);
+
+ _a = _mm_srli_si64 (_a, 1);
+ _b = _mm_srli_si64 (_b, 1);
+
+ carry = _mm_add_si64 (_mm_add_si64 (_a, _b), onesCarry);
+ carry = _mm_srli_si64 (carry, 63);
+ }
+
+ return carry;
+}
+
+void __attribute__((noinline))
+sse2_test (void)
+{
+ unsigned long long carry;
+ int i;
+
+ /* Really long numbers. */
+ a[3] = a[2] = a[1] = a[0] = 0xd3d3d3d3d3d3d3d3ull;
+ b[3] = b[2] = b[1] = b[0] = 0x3c3c3c3c3c3c3c3cull;
+
+ carry = (unsigned long long) unsigned_add3
+ ((__m64 *)a, (__m64 *)b, (__m64 *)result, N);
+
+ _mm_empty ();
+
+ if (carry != 1)
+ abort ();
+
+ for (i = 0; i < N; i++)
+ if (result [i] != check[i])
+ abort ();
+}
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-1.c b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-1.c
index c66719f04fd..c84ddd3f449 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-1.c
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-1.c
@@ -8,15 +8,15 @@
#define NUM 1024
#define IMM_VAL0 \
- (SIDD_SBYTE_OPS | SIDD_CMP_RANGES | SIDD_MASKED_POSITIVE_POLARITY)
+ (_SIDD_SBYTE_OPS | _SIDD_CMP_RANGES | _SIDD_MASKED_POSITIVE_POLARITY)
#define IMM_VAL1 \
- (SIDD_UBYTE_OPS | SIDD_CMP_EQUAL_EACH | SIDD_NEGATIVE_POLARITY \
- | SIDD_MOST_SIGNIFICANT)
+ (_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY \
+ | _SIDD_MOST_SIGNIFICANT)
#define IMM_VAL2 \
- (SIDD_UWORD_OPS | SIDD_CMP_EQUAL_ANY | SIDD_MASKED_NEGATIVE_POLARITY)
+ (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_ANY | _SIDD_MASKED_NEGATIVE_POLARITY)
#define IMM_VAL3 \
- (SIDD_SWORD_OPS | SIDD_CMP_EQUAL_ORDERED \
- | SIDD_MASKED_NEGATIVE_POLARITY | SIDD_LEAST_SIGNIFICANT)
+ (_SIDD_SWORD_OPS | _SIDD_CMP_EQUAL_ORDERED \
+ | _SIDD_MASKED_NEGATIVE_POLARITY | _SIDD_LEAST_SIGNIFICANT)
static void
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-2.c b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-2.c
index ffcd36a0fce..bc35eb7a323 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-2.c
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestri-2.c
@@ -8,15 +8,15 @@
#define NUM 1024
#define IMM_VAL0 \
- (SIDD_SBYTE_OPS | SIDD_CMP_RANGES | SIDD_MASKED_POSITIVE_POLARITY)
+ (_SIDD_SBYTE_OPS | _SIDD_CMP_RANGES | _SIDD_MASKED_POSITIVE_POLARITY)
#define IMM_VAL1 \
- (SIDD_UBYTE_OPS | SIDD_CMP_EQUAL_EACH | SIDD_NEGATIVE_POLARITY \
- | SIDD_MOST_SIGNIFICANT)
+ (_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY \
+ | _SIDD_MOST_SIGNIFICANT)
#define IMM_VAL2 \
- (SIDD_UWORD_OPS | SIDD_CMP_EQUAL_ANY | SIDD_MASKED_NEGATIVE_POLARITY)
+ (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_ANY | _SIDD_MASKED_NEGATIVE_POLARITY)
#define IMM_VAL3 \
- (SIDD_SWORD_OPS | SIDD_CMP_EQUAL_ORDERED \
- | SIDD_MASKED_NEGATIVE_POLARITY | SIDD_LEAST_SIGNIFICANT)
+ (_SIDD_SWORD_OPS | _SIDD_CMP_EQUAL_ORDERED \
+ | _SIDD_MASKED_NEGATIVE_POLARITY | _SIDD_LEAST_SIGNIFICANT)
static void
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-1.c b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-1.c
index 825c5faf5b2..1c75a9b2e4d 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-1.c
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-1.c
@@ -8,15 +8,15 @@
#define NUM 1024
#define IMM_VAL0 \
- (SIDD_SBYTE_OPS | SIDD_CMP_RANGES | SIDD_MASKED_POSITIVE_POLARITY)
+ (_SIDD_SBYTE_OPS | _SIDD_CMP_RANGES | _SIDD_MASKED_POSITIVE_POLARITY)
#define IMM_VAL1 \
- (SIDD_UBYTE_OPS | SIDD_CMP_EQUAL_EACH | SIDD_NEGATIVE_POLARITY \
- | SIDD_BIT_MASK)
+ (_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY \
+ | _SIDD_BIT_MASK)
#define IMM_VAL2 \
- (SIDD_UWORD_OPS | SIDD_CMP_EQUAL_ANY | SIDD_MASKED_NEGATIVE_POLARITY)
+ (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_ANY | _SIDD_MASKED_NEGATIVE_POLARITY)
#define IMM_VAL3 \
- (SIDD_SWORD_OPS | SIDD_CMP_EQUAL_ORDERED \
- | SIDD_MASKED_NEGATIVE_POLARITY | SIDD_UNIT_MASK)
+ (_SIDD_SWORD_OPS | _SIDD_CMP_EQUAL_ORDERED \
+ | _SIDD_MASKED_NEGATIVE_POLARITY | _SIDD_UNIT_MASK)
static void
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-2.c b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-2.c
index f7cf47508a1..baf377c3aad 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-2.c
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpestrm-2.c
@@ -8,15 +8,15 @@
#define NUM 1024
#define IMM_VAL0 \
- (SIDD_SBYTE_OPS | SIDD_CMP_RANGES | SIDD_MASKED_POSITIVE_POLARITY)
+ (_SIDD_SBYTE_OPS | _SIDD_CMP_RANGES | _SIDD_MASKED_POSITIVE_POLARITY)
#define IMM_VAL1 \
- (SIDD_UBYTE_OPS | SIDD_CMP_EQUAL_EACH | SIDD_NEGATIVE_POLARITY \
- | SIDD_BIT_MASK)
+ (_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY \
+ | _SIDD_BIT_MASK)
#define IMM_VAL2 \
- (SIDD_UWORD_OPS | SIDD_CMP_EQUAL_ANY | SIDD_NEGATIVE_POLARITY)
+ (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_ANY | _SIDD_NEGATIVE_POLARITY)
#define IMM_VAL3 \
- (SIDD_SWORD_OPS | SIDD_CMP_EQUAL_ORDERED \
- | SIDD_MASKED_NEGATIVE_POLARITY | SIDD_UNIT_MASK)
+ (_SIDD_SWORD_OPS | _SIDD_CMP_EQUAL_ORDERED \
+ | _SIDD_MASKED_NEGATIVE_POLARITY | _SIDD_UNIT_MASK)
static void
sse4_2_test (void)
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-1.c b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-1.c
index b71abcce8fd..9dbeb30b01c 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-1.c
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-1.c
@@ -8,15 +8,15 @@
#define NUM 1024
#define IMM_VAL0 \
- (SIDD_SBYTE_OPS | SIDD_CMP_RANGES | SIDD_MASKED_POSITIVE_POLARITY)
+ (_SIDD_SBYTE_OPS | _SIDD_CMP_RANGES | _SIDD_MASKED_POSITIVE_POLARITY)
#define IMM_VAL1 \
- (SIDD_UBYTE_OPS | SIDD_CMP_EQUAL_EACH | SIDD_NEGATIVE_POLARITY \
- | SIDD_MOST_SIGNIFICANT)
+ (_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY \
+ | _SIDD_MOST_SIGNIFICANT)
#define IMM_VAL2 \
- (SIDD_UWORD_OPS | SIDD_CMP_EQUAL_ANY | SIDD_MASKED_NEGATIVE_POLARITY)
+ (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_ANY | _SIDD_MASKED_NEGATIVE_POLARITY)
#define IMM_VAL3 \
- (SIDD_SWORD_OPS | SIDD_CMP_EQUAL_ORDERED \
- | SIDD_MASKED_NEGATIVE_POLARITY | SIDD_MOST_SIGNIFICANT)
+ (_SIDD_SWORD_OPS | _SIDD_CMP_EQUAL_ORDERED \
+ | _SIDD_MASKED_NEGATIVE_POLARITY | _SIDD_MOST_SIGNIFICANT)
static void
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-2.c b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-2.c
index d9249337b59..6bad02e9d07 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-2.c
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistri-2.c
@@ -8,15 +8,15 @@
#define NUM 1024
#define IMM_VAL0 \
- (SIDD_SBYTE_OPS | SIDD_CMP_RANGES | SIDD_MASKED_POSITIVE_POLARITY)
+ (_SIDD_SBYTE_OPS | _SIDD_CMP_RANGES | _SIDD_MASKED_POSITIVE_POLARITY)
#define IMM_VAL1 \
- (SIDD_UBYTE_OPS | SIDD_CMP_EQUAL_EACH | SIDD_NEGATIVE_POLARITY \
- | SIDD_MOST_SIGNIFICANT)
+ (_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY \
+ | _SIDD_MOST_SIGNIFICANT)
#define IMM_VAL2 \
- (SIDD_UWORD_OPS | SIDD_CMP_EQUAL_ANY | SIDD_MASKED_NEGATIVE_POLARITY)
+ (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_ANY | _SIDD_MASKED_NEGATIVE_POLARITY)
#define IMM_VAL3 \
- (SIDD_SWORD_OPS | SIDD_CMP_EQUAL_ORDERED \
- | SIDD_MASKED_NEGATIVE_POLARITY | SIDD_MOST_SIGNIFICANT)
+ (_SIDD_SWORD_OPS | _SIDD_CMP_EQUAL_ORDERED \
+ | _SIDD_MASKED_NEGATIVE_POLARITY | _SIDD_MOST_SIGNIFICANT)
static void
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-1.c b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-1.c
index 1f2ad7de6db..3975728c09d 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-1.c
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-1.c
@@ -8,15 +8,15 @@
#define NUM 1024
#define IMM_VAL0 \
- (SIDD_SBYTE_OPS | SIDD_CMP_RANGES | SIDD_MASKED_POSITIVE_POLARITY)
+ (_SIDD_SBYTE_OPS | _SIDD_CMP_RANGES | _SIDD_MASKED_POSITIVE_POLARITY)
#define IMM_VAL1 \
- (SIDD_UBYTE_OPS | SIDD_CMP_EQUAL_EACH | SIDD_NEGATIVE_POLARITY \
- | SIDD_BIT_MASK)
+ (_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY \
+ | _SIDD_BIT_MASK)
#define IMM_VAL2 \
- (SIDD_UWORD_OPS | SIDD_CMP_EQUAL_ANY | SIDD_MASKED_NEGATIVE_POLARITY)
+ (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_ANY | _SIDD_MASKED_NEGATIVE_POLARITY)
#define IMM_VAL3 \
- (SIDD_SWORD_OPS | SIDD_CMP_EQUAL_ORDERED \
- | SIDD_MASKED_NEGATIVE_POLARITY | SIDD_UNIT_MASK)
+ (_SIDD_SWORD_OPS | _SIDD_CMP_EQUAL_ORDERED \
+ | _SIDD_MASKED_NEGATIVE_POLARITY | _SIDD_UNIT_MASK)
static void
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-2.c b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-2.c
index 18037f9cc4d..6d3a23a75db 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-2.c
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpistrm-2.c
@@ -8,15 +8,15 @@
#define NUM 1024
#define IMM_VAL0 \
- (SIDD_SBYTE_OPS | SIDD_CMP_RANGES | SIDD_MASKED_POSITIVE_POLARITY)
+ (_SIDD_SBYTE_OPS | _SIDD_CMP_RANGES | _SIDD_MASKED_POSITIVE_POLARITY)
#define IMM_VAL1 \
- (SIDD_UBYTE_OPS | SIDD_CMP_EQUAL_EACH | SIDD_NEGATIVE_POLARITY \
- | SIDD_BIT_MASK)
+ (_SIDD_UBYTE_OPS | _SIDD_CMP_EQUAL_EACH | _SIDD_NEGATIVE_POLARITY \
+ | _SIDD_BIT_MASK)
#define IMM_VAL2 \
- (SIDD_UWORD_OPS | SIDD_CMP_EQUAL_ANY | SIDD_MASKED_NEGATIVE_POLARITY)
+ (_SIDD_UWORD_OPS | _SIDD_CMP_EQUAL_ANY | _SIDD_MASKED_NEGATIVE_POLARITY)
#define IMM_VAL3 \
- (SIDD_SWORD_OPS | SIDD_CMP_EQUAL_ORDERED \
- | SIDD_POSITIVE_POLARITY | SIDD_UNIT_MASK)
+ (_SIDD_SWORD_OPS | _SIDD_CMP_EQUAL_ORDERED \
+ | _SIDD_POSITIVE_POLARITY | _SIDD_UNIT_MASK)
static void
sse4_2_test (void)
diff --git a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpstr.h b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpstr.h
index 49eb4bdb436..999b5c8edab 100644
--- a/gcc/testsuite/gcc.target/i386/sse4_2-pcmpstr.h
+++ b/gcc/testsuite/gcc.target/i386/sse4_2-pcmpstr.h
@@ -42,14 +42,14 @@ override_invalid (unsigned char res[16][16], int la, int lb,
else if (i >= la)
switch ((mode & 0x0C))
{
- case SIDD_CMP_EQUAL_ANY:
- case SIDD_CMP_RANGES:
+ case _SIDD_CMP_EQUAL_ANY:
+ case _SIDD_CMP_RANGES:
res[j][i] = 0;
break;
- case SIDD_CMP_EQUAL_EACH:
+ case _SIDD_CMP_EQUAL_EACH:
res[j][i] = (j >= lb) ? 1: 0;
break;
- case SIDD_CMP_EQUAL_ORDERED:
+ case _SIDD_CMP_EQUAL_ORDERED:
res[j][i] = 1;
break;
}
@@ -73,8 +73,8 @@ calc_matrix (__m128i a, int la, __m128i b, int lb, const int mode,
switch ((mode & 3))
{
- case SIDD_UBYTE_OPS:
- if ((mode & 0x0C) == SIDD_CMP_RANGES)
+ case _SIDD_UBYTE_OPS:
+ if ((mode & 0x0C) == _SIDD_CMP_RANGES)
{
PCMPSTR_RNG (d.uc, s.uc, res);
}
@@ -83,8 +83,8 @@ calc_matrix (__m128i a, int la, __m128i b, int lb, const int mode,
PCMPSTR_EQ (d.uc, s.uc, res);
}
break;
- case SIDD_UWORD_OPS:
- if ((mode & 0x0C) == SIDD_CMP_RANGES)
+ case _SIDD_UWORD_OPS:
+ if ((mode & 0x0C) == _SIDD_CMP_RANGES)
{
PCMPSTR_RNG (d.us, s.us, res);
}
@@ -93,8 +93,8 @@ calc_matrix (__m128i a, int la, __m128i b, int lb, const int mode,
PCMPSTR_EQ (d.us, s.us, res);
}
break;
- case SIDD_SBYTE_OPS:
- if ((mode & 0x0C) == SIDD_CMP_RANGES)
+ case _SIDD_SBYTE_OPS:
+ if ((mode & 0x0C) == _SIDD_CMP_RANGES)
{
PCMPSTR_RNG (d.sc, s.sc, res);
}
@@ -103,8 +103,8 @@ calc_matrix (__m128i a, int la, __m128i b, int lb, const int mode,
PCMPSTR_EQ (d.sc, s.sc, res);
}
break;
- case SIDD_SWORD_OPS:
- if ((mode & 0x0C) == SIDD_CMP_RANGES)
+ case _SIDD_SWORD_OPS:
+ if ((mode & 0x0C) == _SIDD_CMP_RANGES)
{
PCMPSTR_RNG (d.ss, s.ss, res);
}
@@ -144,27 +144,27 @@ calc_res (__m128i a, int la, __m128i b, int lb, const int mode)
switch ((mode & 0x0C))
{
- case SIDD_CMP_EQUAL_ANY:
+ case _SIDD_CMP_EQUAL_ANY:
for (i = 0; i < dim; i++)
for (j = 0; j < dim; j++)
if (mtx[i][j])
res |= (1 << i);
break;
- case SIDD_CMP_RANGES:
+ case _SIDD_CMP_RANGES:
for (i = 0; i < dim; i += 2)
for(j = 0; j < dim; j++)
if (mtx[j][i] && mtx[j][i+1])
res |= (1 << j);
break;
- case SIDD_CMP_EQUAL_EACH:
+ case _SIDD_CMP_EQUAL_EACH:
for(i = 0; i < dim; i++)
if (mtx[i][i])
res |= (1 << i);
break;
- case SIDD_CMP_EQUAL_ORDERED:
+ case _SIDD_CMP_EQUAL_ORDERED:
for(i = 0; i < dim; i++)
{
unsigned char val = 1;
@@ -182,15 +182,15 @@ calc_res (__m128i a, int la, __m128i b, int lb, const int mode)
switch ((mode & 0x30))
{
- case SIDD_POSITIVE_POLARITY:
- case SIDD_MASKED_POSITIVE_POLARITY:
+ case _SIDD_POSITIVE_POLARITY:
+ case _SIDD_MASKED_POSITIVE_POLARITY:
break;
- case SIDD_NEGATIVE_POLARITY:
+ case _SIDD_NEGATIVE_POLARITY:
res ^= -1;
break;
- case SIDD_MASKED_NEGATIVE_POLARITY:
+ case _SIDD_MASKED_NEGATIVE_POLARITY:
for (i = 0; i < lb; i++)
if (res & (1 << i))
res &= ~(1 << i);
diff --git a/gcc/testsuite/gfortran.dg/PR19872.f b/gcc/testsuite/gfortran.dg/PR19872.f
index 12bba3352a2..edc743b2e16 100644
--- a/gcc/testsuite/gfortran.dg/PR19872.f
+++ b/gcc/testsuite/gfortran.dg/PR19872.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 19872 - closed and re-opened file not overwriten
implicit none
integer i(4)
diff --git a/gcc/testsuite/gfortran.dg/advance_1.f90 b/gcc/testsuite/gfortran.dg/advance_1.f90
index 9002c52b5f7..7e55e94334c 100644
--- a/gcc/testsuite/gfortran.dg/advance_1.f90
+++ b/gcc/testsuite/gfortran.dg/advance_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25463 Check that advance='no' works correctly.
! Derived from example given in PR by Thomas Koenig
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/advance_4.f90 b/gcc/testsuite/gfortran.dg/advance_4.f90
index ab22311a806..633f90a583a 100644
--- a/gcc/testsuite/gfortran.dg/advance_4.f90
+++ b/gcc/testsuite/gfortran.dg/advance_4.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR31207 Last record truncated for read after short write
program main
character(10) :: answer
@@ -7,4 +7,4 @@ program main
read (12, '(6A)') answer
close (12, status="delete")
if (answer /= "XABCDX") call abort()
-end program main \ No newline at end of file
+end program main
diff --git a/gcc/testsuite/gfortran.dg/advance_5.f90 b/gcc/testsuite/gfortran.dg/advance_5.f90
index 3a48e536606..f906c721f34 100644
--- a/gcc/testsuite/gfortran.dg/advance_5.f90
+++ b/gcc/testsuite/gfortran.dg/advance_5.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR31207 Last record truncated for read after short write.
character(len=20) :: b
! write something no advance
diff --git a/gcc/testsuite/gfortran.dg/advance_6.f90 b/gcc/testsuite/gfortran.dg/advance_6.f90
index f1967b014ba..1a42cca923d 100644
--- a/gcc/testsuite/gfortran.dg/advance_6.f90
+++ b/gcc/testsuite/gfortran.dg/advance_6.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 34370 - file positioning after non-advancing I/O didn't add
! a record marker.
diff --git a/gcc/testsuite/gfortran.dg/append_1.f90 b/gcc/testsuite/gfortran.dg/append_1.f90
index 8b81bc38484..e058914bf56 100644
--- a/gcc/testsuite/gfortran.dg/append_1.f90
+++ b/gcc/testsuite/gfortran.dg/append_1.f90
@@ -1,7 +1,7 @@
! PR libfortran/21471
! Testing POSITION="APPEND"
!
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
subroutine failed
close (10,status='delete')
call abort
diff --git a/gcc/testsuite/gfortran.dg/backslash_1.f90 b/gcc/testsuite/gfortran.dg/backslash_1.f90
index b9851342bb2..ab7fc6ffc94 100644
--- a/gcc/testsuite/gfortran.dg/backslash_1.f90
+++ b/gcc/testsuite/gfortran.dg/backslash_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
character(len=4) a
open (10, status='scratch')
write (10,'(A)') '1\n2'
diff --git a/gcc/testsuite/gfortran.dg/backslash_2.f90 b/gcc/testsuite/gfortran.dg/backslash_2.f90
index 2f954d53949..dc4714f32e8 100644
--- a/gcc/testsuite/gfortran.dg/backslash_2.f90
+++ b/gcc/testsuite/gfortran.dg/backslash_2.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-fbackslash" }
integer :: i, e
open (10, status='scratch')
diff --git a/gcc/testsuite/gfortran.dg/backslash_3.f b/gcc/testsuite/gfortran.dg/backslash_3.f
index 905d2b4c302..8625b3724e4 100644
--- a/gcc/testsuite/gfortran.dg/backslash_3.f
+++ b/gcc/testsuite/gfortran.dg/backslash_3.f
@@ -1,4 +1,4 @@
-C { dg-do run }
+C { dg-do run { target fd_truncate } }
C { dg-options "-fbackslash" }
C PR fortran/30278
program a
diff --git a/gcc/testsuite/gfortran.dg/backspace_1.f b/gcc/testsuite/gfortran.dg/backspace_1.f
index c3ec0c41756..4cfc9c13225 100644
--- a/gcc/testsuite/gfortran.dg/backspace_1.f
+++ b/gcc/testsuite/gfortran.dg/backspace_1.f
@@ -1,5 +1,5 @@
! This file is all about BACKSPACE
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer i, n, nr
real x(10), y(10)
diff --git a/gcc/testsuite/gfortran.dg/backspace_10.f90 b/gcc/testsuite/gfortran.dg/backspace_10.f90
index 574d464c4b3..368a75973a7 100644
--- a/gcc/testsuite/gfortran.dg/backspace_10.f90
+++ b/gcc/testsuite/gfortran.dg/backspace_10.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR33307 I/O read/positioning problem - in BACKSPACE
! Test case devloped from test in PR by Jerry DeLisle <jvdelisle@gcc.gnu.org>
program gfcbug69b
diff --git a/gcc/testsuite/gfortran.dg/backspace_2.f b/gcc/testsuite/gfortran.dg/backspace_2.f
index a8c55e7f5c1..3b633355b2b 100644
--- a/gcc/testsuite/gfortran.dg/backspace_2.f
+++ b/gcc/testsuite/gfortran.dg/backspace_2.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25139 Repeated backspaces and reads.
! Derived from example given in PR by Dale Ranta and FX Coudert
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/backspace_3.f b/gcc/testsuite/gfortran.dg/backspace_3.f
index 419063b94a2..2006cd4f969 100644
--- a/gcc/testsuite/gfortran.dg/backspace_3.f
+++ b/gcc/testsuite/gfortran.dg/backspace_3.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25598 Error on repeated backspaces.
! Derived from example given in PR by Dale Ranta
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/backspace_4.f b/gcc/testsuite/gfortran.dg/backspace_4.f
index 69e0f40c7a1..6891c3c3434 100644
--- a/gcc/testsuite/gfortran.dg/backspace_4.f
+++ b/gcc/testsuite/gfortran.dg/backspace_4.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25598 Error on repeated backspaces.
! Derived from example given in PR by Dale Ranta
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/backspace_5.f b/gcc/testsuite/gfortran.dg/backspace_5.f
index 4cd657a7838..8ae375284a5 100644
--- a/gcc/testsuite/gfortran.dg/backspace_5.f
+++ b/gcc/testsuite/gfortran.dg/backspace_5.f
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! PR26464 File I/O error related to buffering and BACKSPACE
! Test case derived from case by Dale Ranta.
! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/backspace_6.f b/gcc/testsuite/gfortran.dg/backspace_6.f
index 4e594f0a8c6..90affdc7791 100644
--- a/gcc/testsuite/gfortran.dg/backspace_6.f
+++ b/gcc/testsuite/gfortran.dg/backspace_6.f
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! PR26464 File I/O error related to buffering and BACKSPACE
! Test case derived from case by Dale Ranta.
! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/backspace_7.f90 b/gcc/testsuite/gfortran.dg/backspace_7.f90
index 4f0b9e975d6..09cce731a90 100644
--- a/gcc/testsuite/gfortran.dg/backspace_7.f90
+++ b/gcc/testsuite/gfortran.dg/backspace_7.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
!pr18284 BACKSPACE broken
open(unit=10,access='SEQUENTIAL',status='SCRATCH')
do I = 1,200
diff --git a/gcc/testsuite/gfortran.dg/backspace_8.f b/gcc/testsuite/gfortran.dg/backspace_8.f
index 8c8c96aacec..c25dd5b4300 100644
--- a/gcc/testsuite/gfortran.dg/backspace_8.f
+++ b/gcc/testsuite/gfortran.dg/backspace_8.f
@@ -1,4 +1,4 @@
-C { dg-do run }
+C { dg-do run { target fd_truncate } }
C PR libfortran/31618 - backspace after an error didn't work.
program main
character*78 msg
diff --git a/gcc/testsuite/gfortran.dg/backspace_9.f b/gcc/testsuite/gfortran.dg/backspace_9.f
index fe62ea5a6e0..01713b96752 100644
--- a/gcc/testsuite/gfortran.dg/backspace_9.f
+++ b/gcc/testsuite/gfortran.dg/backspace_9.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR32235 incorrectly position text file after backspace
! Test case from PR, prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org>
program main
diff --git a/gcc/testsuite/gfortran.dg/bessel_1.f90 b/gcc/testsuite/gfortran.dg/bessel_1.f90
new file mode 100644
index 00000000000..728c5ce49ca
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/bessel_1.f90
@@ -0,0 +1,37 @@
+! { dg-do run }
+
+program test
+ implicit none
+
+ interface check
+ procedure check_r4
+ procedure check_r8
+ end interface check
+
+ real(kind=4) :: x4
+ real(kind=8) :: x8
+
+ x8 = 1.9_8 ; x4 = 1.9_4
+ call check(bessel_j0 (x8), bessel_j0 (1.9_8))
+ call check(bessel_j0 (x4), bessel_j0 (1.9_4))
+ call check(bessel_j1 (x8), bessel_j1 (1.9_8))
+ call check(bessel_j1 (x4), bessel_j1 (1.9_4))
+ call check(bessel_jn (3,x8), bessel_jn (3,1.9_8))
+ call check(bessel_jn (3,x4), bessel_jn (3,1.9_4))
+ call check(bessel_y0 (x8), bessel_y0 (1.9_8))
+ call check(bessel_y0 (x4), bessel_y0 (1.9_4))
+ call check(bessel_y1 (x8), bessel_y1 (1.9_8))
+ call check(bessel_y1 (x4), bessel_y1 (1.9_4))
+ call check(bessel_yn (3,x8), bessel_yn (3,1.9_8))
+ call check(bessel_yn (3,x4), bessel_yn (3,1.9_4))
+
+contains
+ subroutine check_r4 (a, b)
+ real(kind=4), intent(in) :: a, b
+ if (abs(a - b) > 1.e-5 * abs(b)) call abort
+ end subroutine
+ subroutine check_r8 (a, b)
+ real(kind=8), intent(in) :: a, b
+ if (abs(a - b) > 1.e-7 * abs(b)) call abort
+ end subroutine
+end program test
diff --git a/gcc/testsuite/gfortran.dg/besxy.f90 b/gcc/testsuite/gfortran.dg/besxy.f90
index 5b4cbba97f2..5cd5c8a96c7 100644
--- a/gcc/testsuite/gfortran.dg/besxy.f90
+++ b/gcc/testsuite/gfortran.dg/besxy.f90
@@ -21,4 +21,21 @@ PROGRAM test_erf
ra = BESY0(ra)
ra = BESY1(ra)
ra = BESYN(0, ra)
-END PROGRAM \ No newline at end of file
+
+ r = BESSEL_J0(r)
+ r = BESSEL_J1(r)
+ r = BESSEL_JN(0, r)
+
+ r = BESSEL_Y0(r)
+ r = BESSEL_Y1(r)
+ r = BESSEL_YN(0, r)
+
+ ra = BESSEL_J0(ra)
+ ra = BESSEL_J1(ra)
+ ra = BESSEL_JN(0, ra)
+
+ ra = BESSEL_Y0(ra)
+ ra = BESSEL_Y1(ra)
+ ra = BESSEL_YN(0, ra)
+
+END PROGRAM
diff --git a/gcc/testsuite/gfortran.dg/bind_c_usage_9.f03 b/gcc/testsuite/gfortran.dg/bind_c_usage_9.f03
index 0ab782e8c6a..086a1166a16 100644
--- a/gcc/testsuite/gfortran.dg/bind_c_usage_9.f03
+++ b/gcc/testsuite/gfortran.dg/bind_c_usage_9.f03
@@ -9,14 +9,14 @@ subroutine foo() bind(c)
contains
subroutine bar() bind (c) ! { dg-error "may not be specified for an internal" }
end subroutine bar ! { dg-error "Expected label" }
-end subroutine foo ! { dg-warning "Extension: CONTAINS statement" }
+end subroutine foo ! { dg-error "Fortran 2008: CONTAINS statement" }
subroutine foo2() bind(c)
use iso_c_binding
contains
integer(c_int) function barbar() bind (c) ! { dg-error "may not be specified for an internal" }
end function barbar ! { dg-error "Expecting END SUBROUTINE" }
-end subroutine foo2 ! { dg-warning "Extension: CONTAINS statement" }
+end subroutine foo2 ! { dg-error "Fortran 2008: CONTAINS statement" }
function one() bind(c)
use iso_c_binding
@@ -25,7 +25,7 @@ function one() bind(c)
contains
integer(c_int) function two() bind (c) ! { dg-error "may not be specified for an internal" }
end function two ! { dg-error "Expected label" }
-end function one ! { dg-warning "Extension: CONTAINS statement" }
+end function one ! { dg-error "Fortran 2008: CONTAINS statement" }
function one2() bind(c)
use iso_c_binding
@@ -34,7 +34,7 @@ function one2() bind(c)
contains
subroutine three() bind (c) ! { dg-error "may not be specified for an internal" }
end subroutine three ! { dg-error "Expecting END FUNCTION statement" }
-end function one2 ! { dg-warning "Extension: CONTAINS statement" }
+end function one2 ! { dg-error "Fortran 2008: CONTAINS statement" }
program main
use iso_c_binding
@@ -44,4 +44,4 @@ contains
end subroutine test ! { dg-error "Expecting END PROGRAM" }
integer(c_int) function test2() bind (c) ! { dg-error "may not be specified for an internal" }
end function test2 ! { dg-error "Expecting END PROGRAM" }
-end program main ! { dg-warning "Extension: CONTAINS statement" }
+end program main ! { dg-error "Fortran 2008: CONTAINS statement" }
diff --git a/gcc/testsuite/gfortran.dg/comma.f b/gcc/testsuite/gfortran.dg/comma.f
index b369bf4b4ba..08c45179528 100644
--- a/gcc/testsuite/gfortran.dg/comma.f
+++ b/gcc/testsuite/gfortran.dg/comma.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25419 Default input with commas.
! Derived from example given in PR.
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/complex_read.f90 b/gcc/testsuite/gfortran.dg/complex_read.f90
index c12b66c5b43..102a13522f9 100644
--- a/gcc/testsuite/gfortran.dg/complex_read.f90
+++ b/gcc/testsuite/gfortran.dg/complex_read.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Test of the fix to the bug in NIST fm906.for.
! Contributed by Paul Thomas <pault@gcc.gnu.org>
!
diff --git a/gcc/testsuite/gfortran.dg/complex_write.f90 b/gcc/testsuite/gfortran.dg/complex_write.f90
index 694c069e368..763f3ab1735 100644
--- a/gcc/testsuite/gfortran.dg/complex_write.f90
+++ b/gcc/testsuite/gfortran.dg/complex_write.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr 19071
! test case provided by
! Thomas.Koenig@online.de
diff --git a/gcc/testsuite/gfortran.dg/contains_empty_1.f03 b/gcc/testsuite/gfortran.dg/contains_empty_1.f03
new file mode 100644
index 00000000000..51b5dd90b16
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/contains_empty_1.f03
@@ -0,0 +1,11 @@
+! { dg-do compile }
+! { dg-options "-std=f2003 -pedantic" }
+program test
+ print *, 'hello there'
+contains
+end program test ! { dg-error "Fortran 2008: CONTAINS statement without" }
+
+module truc
+ integer, parameter :: answer = 42
+contains
+end module truc ! { dg-error "Fortran 2008: CONTAINS statement without" }
diff --git a/gcc/testsuite/gfortran.dg/contains_empty_2.f03 b/gcc/testsuite/gfortran.dg/contains_empty_2.f03
new file mode 100644
index 00000000000..62e18f43d14
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/contains_empty_2.f03
@@ -0,0 +1,14 @@
+! { dg-do compile }
+! { dg-options "-std=f2008 -pedantic" }
+
+program test
+ print *, 'hello there'
+contains
+end program test
+
+module truc
+ integer, parameter :: answer = 42
+contains
+end module truc
+
+! { dg-final { cleanup-modules "truc" } }
diff --git a/gcc/testsuite/gfortran.dg/convert_implied_open.f90 b/gcc/testsuite/gfortran.dg/convert_implied_open.f90
index 9c25b5d961c..1f0abf3f8a7 100644
--- a/gcc/testsuite/gfortran.dg/convert_implied_open.f90
+++ b/gcc/testsuite/gfortran.dg/convert_implied_open.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-fconvert=swap" }
! PR 26735 - implied open didn't use to honor -fconvert
program main
diff --git a/gcc/testsuite/gfortran.dg/derived_function_interface_1.f90 b/gcc/testsuite/gfortran.dg/derived_function_interface_1.f90
index a9e404182f6..b7ee4df89a7 100644
--- a/gcc/testsuite/gfortran.dg/derived_function_interface_1.f90
+++ b/gcc/testsuite/gfortran.dg/derived_function_interface_1.f90
@@ -41,5 +41,5 @@ contains
type(foo) function fun() ! { dg-error "already has an explicit interface" }
end function fun ! { dg-error "Expecting END PROGRAM" }
-end ! { dg-warning "CONTAINS statement without FUNCTION or SUBROUTINE statement" }
+end
! { dg-final { cleanup-modules "kinds" } }
diff --git a/gcc/testsuite/gfortran.dg/dg.exp b/gcc/testsuite/gfortran.dg/dg.exp
index a80f6bf1103..2ccdfd0be45 100644
--- a/gcc/testsuite/gfortran.dg/dg.exp
+++ b/gcc/testsuite/gfortran.dg/dg.exp
@@ -30,7 +30,7 @@ dg-init
# Main loop.
gfortran-dg-runtest [lsort \
- [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95,03} ] ] $DEFAULT_FFLAGS
+ [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95,03,08} ] ] $DEFAULT_FFLAGS
gfortran-dg-runtest [lsort \
[glob -nocomplain $srcdir/$subdir/g77/*.\[fF\] ] ] $DEFAULT_FFLAGS
diff --git a/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f b/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f
index af22c453636..93e5033293b 100644
--- a/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f
+++ b/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-w" }
! PR libfortran/20006
character*5 c
diff --git a/gcc/testsuite/gfortran.dg/dos_eol.f b/gcc/testsuite/gfortran.dg/dos_eol.f
index 3a22a14b143..77f36a5fb20 100644
--- a/gcc/testsuite/gfortran.dg/dos_eol.f
+++ b/gcc/testsuite/gfortran.dg/dos_eol.f
@@ -1,5 +1,5 @@
! PR libfortran/19678 and PR libfortran/19679
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer i, j
open (10,status='scratch')
diff --git a/gcc/testsuite/gfortran.dg/empty_format_1.f90 b/gcc/testsuite/gfortran.dg/empty_format_1.f90
index 79a2d0c17d7..e49ea4a5aee 100644
--- a/gcc/testsuite/gfortran.dg/empty_format_1.f90
+++ b/gcc/testsuite/gfortran.dg/empty_format_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 17709
! We weren't resetting the internal EOR flag correctly, so the second read
! wasn't advancing to the next line.
diff --git a/gcc/testsuite/gfortran.dg/endfile.f b/gcc/testsuite/gfortran.dg/endfile.f
index 6ece5459fa3..61b43b859f2 100644
--- a/gcc/testsuite/gfortran.dg/endfile.f
+++ b/gcc/testsuite/gfortran.dg/endfile.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25550 file data corrupted after reading end of file.
! Derived from example given in PR from Dale Ranta.
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/endfile.f90 b/gcc/testsuite/gfortran.dg/endfile.f90
index 1eabe9ffc7c..60875ce2338 100644
--- a/gcc/testsuite/gfortran.dg/endfile.f90
+++ b/gcc/testsuite/gfortran.dg/endfile.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr18364 endfile does not truncate file.
! write out 20 records
! rewind
diff --git a/gcc/testsuite/gfortran.dg/eof_1.f90 b/gcc/testsuite/gfortran.dg/eof_1.f90
index 05726bd1413..09bf9234774 100644
--- a/gcc/testsuite/gfortran.dg/eof_1.f90
+++ b/gcc/testsuite/gfortran.dg/eof_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Program to test for proper EOF errors when reading past the end of a file.
! We used to get this wrong when a formatted read followed a list formatted
! read.
diff --git a/gcc/testsuite/gfortran.dg/eor_1.f90 b/gcc/testsuite/gfortran.dg/eor_1.f90
index dd3b5e98f70..fecbe92a412 100644
--- a/gcc/testsuite/gfortran.dg/eor_1.f90
+++ b/gcc/testsuite/gfortran.dg/eor_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 19451: The test for advance='NO' with eor used to be reversed.
program main
character*2 c
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_1.f90 b/gcc/testsuite/gfortran.dg/eor_handling_1.f90
index 241f8a0fe4e..20b1998b098 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_1.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 17992: Reading an empty file should yield zero with pad='YES'
! (which is the default).
! Test case supplied by milan@cmm.ki.si.
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_2.f90 b/gcc/testsuite/gfortran.dg/eor_handling_2.f90
index 9ae56384695..ece547b855d 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_2.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_2.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 19568: Don't read across end of line when the format is longer
! than the line length and pad='yes' (default)
program main
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_3.f90 b/gcc/testsuite/gfortran.dg/eor_handling_3.f90
index 4225e867a85..7ba5c4b82fd 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_3.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 19595: Handle end-of-record condition with pad=yes (default)
program main
integer i1, i2
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_4.f90 b/gcc/testsuite/gfortran.dg/eor_handling_4.f90
index 300c10b820a..ce9fe5e4deb 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_4.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_4.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 20092, 20131: Handle end-of-record condition with pad=yes (default)
! for standard input. This test case only really tests anything if,
! by changing unit 5, you get to manipulate the standard input.
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_5.f90 b/gcc/testsuite/gfortran.dg/eor_handling_5.f90
index c116fb7bdea..661d67c9fb5 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_5.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_5.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 20661: Handle non-advancing I/O with iostat
! Test case by Walt Brainerd, The Fortran Company
diff --git a/gcc/testsuite/gfortran.dg/erfc_scaled_1.f90 b/gcc/testsuite/gfortran.dg/erfc_scaled_1.f90
new file mode 100644
index 00000000000..8a114e60ef9
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/erfc_scaled_1.f90
@@ -0,0 +1,28 @@
+! { dg-do run }
+
+program test
+ implicit none
+
+ interface check
+ procedure check_r4
+ procedure check_r8
+ end interface check
+
+ real(kind=4) :: x4
+ real(kind=8) :: x8
+
+ x8 = 1.9_8 ; x4 = 1.9_4
+
+ call check(erfc_scaled(x8), erfc_scaled(1.9_8))
+ call check(erfc_scaled(x4), erfc_scaled(1.9_4))
+
+contains
+ subroutine check_r4 (a, b)
+ real(kind=4), intent(in) :: a, b
+ if (abs(a - b) > 1.e-5 * abs(b)) call abort
+ end subroutine
+ subroutine check_r8 (a, b)
+ real(kind=8), intent(in) :: a, b
+ if (abs(a - b) > 1.e-7 * abs(b)) call abort
+ end subroutine
+end program test
diff --git a/gcc/testsuite/gfortran.dg/error_recovery_5.f90 b/gcc/testsuite/gfortran.dg/error_recovery_5.f90
index 88acf93ccf7..9cb696cdb5e 100644
--- a/gcc/testsuite/gfortran.dg/error_recovery_5.f90
+++ b/gcc/testsuite/gfortran.dg/error_recovery_5.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR34411 hang-up during read of non-expected input
! Test case derived from that given in PR
! Prior to patch, the do loop was infinite, limits set in this one
diff --git a/gcc/testsuite/gfortran.dg/fgetc_1.f90 b/gcc/testsuite/gfortran.dg/fgetc_1.f90
index 966e15a98a4..6277f3c1d15 100644
--- a/gcc/testsuite/gfortran.dg/fgetc_1.f90
+++ b/gcc/testsuite/gfortran.dg/fgetc_1.f90
@@ -1,5 +1,5 @@
! Testcase for the FGETC and FPUTC intrinsics
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
character(len=5) s
integer st
diff --git a/gcc/testsuite/gfortran.dg/fgetc_2.f90 b/gcc/testsuite/gfortran.dg/fgetc_2.f90
index 6dd12c4e242..9c1a5dad14b 100644
--- a/gcc/testsuite/gfortran.dg/fgetc_2.f90
+++ b/gcc/testsuite/gfortran.dg/fgetc_2.f90
@@ -1,5 +1,5 @@
! Testcase for the FGETC and FPUTC intrinsics
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
character(len=5) s
integer st
diff --git a/gcc/testsuite/gfortran.dg/flush_1.f90 b/gcc/testsuite/gfortran.dg/flush_1.f90
index 90875dc651b..e35955a27f3 100644
--- a/gcc/testsuite/gfortran.dg/flush_1.f90
+++ b/gcc/testsuite/gfortran.dg/flush_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 22390 Implement flush statement
program flush_1
diff --git a/gcc/testsuite/gfortran.dg/fmt_exhaust.f90 b/gcc/testsuite/gfortran.dg/fmt_exhaust.f90
index 5db34051485..bea3f800532 100644
--- a/gcc/testsuite/gfortran.dg/fmt_exhaust.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_exhaust.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR27304 Test running out of data descriptors with data remaining.
! Derived from case in PR. Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>.
program test
diff --git a/gcc/testsuite/gfortran.dg/fmt_huge.f90 b/gcc/testsuite/gfortran.dg/fmt_huge.f90
index 43c4e2ac273..f7b243cd3b6 100644
--- a/gcc/testsuite/gfortran.dg/fmt_huge.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_huge.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR32446 printing big numbers in F0.1 format.
! This segfaulted before the patch.
open (10, status="scratch")
diff --git a/gcc/testsuite/gfortran.dg/fmt_read.f90 b/gcc/testsuite/gfortran.dg/fmt_read.f90
index 3b33946a523..779ebae4f56 100644
--- a/gcc/testsuite/gfortran.dg/fmt_read.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_read.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr18398, missing data on sequential formatted reads
! test contributed by Thomas.Koenig@online.de
open(7,status='scratch')
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_1.f90 b/gcc/testsuite/gfortran.dg/fmt_t_1.f90
index 157ba131e40..a4562658291 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_1.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer nrow, vec(15)
open (10, status="scratch")
write (10, fmt='(a)') '001 1 2 3 4 5 6'
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_2.f90 b/gcc/testsuite/gfortran.dg/fmt_t_2.f90
index c2b869481df..6fe8c38ba1d 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_2.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_2.f90
@@ -1,5 +1,5 @@
! { dg-options "" }
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr24699, handle end-of-record on READ with T format
! test contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
character*132 :: foost1, foost2, foost3
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_3.f90 b/gcc/testsuite/gfortran.dg/fmt_t_3.f90
index 1ec67e11839..c7bf8e8f8a2 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_3.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR31051 bug with x and t format descriptors.
! Test case prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org> from PR.
program t
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_4.f90 b/gcc/testsuite/gfortran.dg/fmt_t_4.f90
index e40a4fc46b7..62b8d49c046 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_4.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_4.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR31199, test case from PR report.
program write_write
character(len=20) :: a,b,c
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_5.f90 b/gcc/testsuite/gfortran.dg/fmt_t_5.f90
index 14185cc05a1..c472e89b19c 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_5.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_5.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR32678 GFortan works incorrectly when writing with FORMAT Tx
! Before patch, NULLs were inserted in output.
! Test case from reporter enhanced to detect this problem.
diff --git a/gcc/testsuite/gfortran.dg/fseek.f90 b/gcc/testsuite/gfortran.dg/fseek.f90
index a42575c2c05..acc8211a414 100644
--- a/gcc/testsuite/gfortran.dg/fseek.f90
+++ b/gcc/testsuite/gfortran.dg/fseek.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
PROGRAM test_fseek
INTEGER, PARAMETER :: SEEK_SET = 0, SEEK_CUR = 1, SEEK_END = 2, fd=10
diff --git a/gcc/testsuite/gfortran.dg/ftell_1.f90 b/gcc/testsuite/gfortran.dg/ftell_1.f90
index 4f617acb0f4..59ea85edfc4 100644
--- a/gcc/testsuite/gfortran.dg/ftell_1.f90
+++ b/gcc/testsuite/gfortran.dg/ftell_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer(kind=8) o, o2
open (10, status="scratch")
diff --git a/gcc/testsuite/gfortran.dg/ftell_2.f90 b/gcc/testsuite/gfortran.dg/ftell_2.f90
index ec7c96c3da4..d8fd34803d5 100644
--- a/gcc/testsuite/gfortran.dg/ftell_2.f90
+++ b/gcc/testsuite/gfortran.dg/ftell_2.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer(kind=8) o
open (10, status="scratch")
if (ftell(10) /= 0) call abort
diff --git a/gcc/testsuite/gfortran.dg/func_derived_3.f90 b/gcc/testsuite/gfortran.dg/func_derived_3.f90
index 6facf218e09..5eb60cfa018 100644
--- a/gcc/testsuite/gfortran.dg/func_derived_3.f90
+++ b/gcc/testsuite/gfortran.dg/func_derived_3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! This tests the "virtual fix" for PR19561, where pointers to derived
! types were not generating correct code. This testcase is based on
! the original PR example. This example not only tests the
diff --git a/gcc/testsuite/gfortran.dg/gamma_1.f90 b/gcc/testsuite/gfortran.dg/gamma_1.f90
index c2bbdb6abf1..9946166952a 100644
--- a/gcc/testsuite/gfortran.dg/gamma_1.f90
+++ b/gcc/testsuite/gfortran.dg/gamma_1.f90
@@ -8,7 +8,7 @@
!
program gamma_test
implicit none
-intrinsic :: gamma, lgamma
+intrinsic :: gamma, lgamma, log_gamma
integer, parameter :: sp = kind(1.0)
integer, parameter :: dp = kind(1.0d0)
@@ -21,6 +21,8 @@ if (abs(dgamma(1.0_dp) - 1.0_dp) > tiny(1.0_dp)) call abort()
if (abs(lgamma(1.0_sp)) > tiny(1.0_sp)) call abort()
if (abs(lgamma(1.0_dp)) > tiny(1.0_dp)) call abort()
+if (abs(log_gamma(1.0_sp)) > tiny(1.0_sp)) call abort()
+if (abs(log_gamma(1.0_dp)) > tiny(1.0_dp)) call abort()
if (abs(algama(1.0_sp)) > tiny(1.0_sp)) call abort()
if (abs(dlgama(1.0_dp)) > tiny(1.0_dp)) call abort()
end program gamma_test
diff --git a/gcc/testsuite/gfortran.dg/gamma_2.f90 b/gcc/testsuite/gfortran.dg/gamma_2.f90
index ca7432b4c5d..6e8cefa6858 100644
--- a/gcc/testsuite/gfortran.dg/gamma_2.f90
+++ b/gcc/testsuite/gfortran.dg/gamma_2.f90
@@ -20,12 +20,12 @@ integer, parameter :: dp = kind(1.0d0)
real(sp) :: rsp = 1.0_sp
real(dp) :: rdp = 1.0_dp
-rsp = gamma(rsp) ! FIXME: "is not included in the selected standard"
-rdp = gamma(rdp) ! FIXME: "is not included in the selected standard"
+rsp = gamma(rsp) ! FIXME "is not included in the selected standard"
+rdp = gamma(rdp) ! FIXME "is not included in the selected standard"
rdp = dgamma(rdp) ! { dg-error "is not included in the selected standard" }
-rsp = lgamma(rsp) ! FIXME: "is not included in the selected standard"
-rdp = lgamma(rdp) ! FIXME: "is not included in the selected standard"
+rsp = lgamma(rsp) ! { dg-error "is not included in the selected standard" }
+rdp = lgamma(rdp) ! { dg-error "is not included in the selected standard" }
rsp = algama(rsp) ! { dg-error "is not included in the selected standard" }
rdp = dlgama(rdp) ! { dg-error "is not included in the selected standard" }
end subroutine foo
diff --git a/gcc/testsuite/gfortran.dg/gamma_3.f90 b/gcc/testsuite/gfortran.dg/gamma_3.f90
index b35596fa5a9..ca3d30db983 100644
--- a/gcc/testsuite/gfortran.dg/gamma_3.f90
+++ b/gcc/testsuite/gfortran.dg/gamma_3.f90
@@ -16,11 +16,11 @@ x = dgamma(cmplx(1.0,0.0,kind(0d0))) ! { dg-error "must be REAL" }
x = gamma(int(1)) ! { dg-error "is not consistent with a specific intrinsic interface" }
x = dgamma(int(1)) ! { dg-error "must be REAL" }
-x = lgamma(cmplx(1.0,0.0)) ! { dg-error "is not consistent with a specific intrinsic interface" }
+x = lgamma(cmplx(1.0,0.0)) ! { dg-error "must be REAL" }
x = algama(cmplx(1.0,0.0)) ! { dg-error "must be REAL" }
x = dlgama(cmplx(1.0,0.0,kind(0d0))) ! { dg-error "must be REAL" }
-x = lgamma(int(1)) ! { dg-error "is not consistent with a specific intrinsic interface" }
+x = lgamma(int(1)) ! { dg-error "must be REAL" }
x = algama(int(1)) ! { dg-error "must be REAL" }
x = dlgama(int(1)) ! { dg-error "must be REAL" }
end program gamma_test
diff --git a/gcc/testsuite/gfortran.dg/gamma_4.f90 b/gcc/testsuite/gfortran.dg/gamma_4.f90
index a351f77958a..67e9e2314a1 100644
--- a/gcc/testsuite/gfortran.dg/gamma_4.f90
+++ b/gcc/testsuite/gfortran.dg/gamma_4.f90
@@ -1,20 +1,18 @@
! { dg-do run }
! { dg-require-effective-target fortran_large_real }
!
-! Test the vendor intrinsic (d)gamma, lgamma and algama/dlgama
-! gamma is also part of the Fortran 2008 draft; lgamma is called
-! log_gamma in the Fortran 2008 draft.
+! Test the Fortran 2008 intrinsics gamma and log_gamma
!
! PR fortran/32980
!
program gamma_test
implicit none
-intrinsic :: gamma, lgamma
+intrinsic :: gamma, log_gamma
integer, parameter :: qp = selected_real_kind(precision (0.0_8) + 1)
real(qp) :: rqp
if (abs(gamma(1.0_qp) - 1.0_qp) > tiny(1.0_qp)) call abort()
-if (abs(lgamma(1.0_qp)) > tiny(1.0_qp)) call abort()
+if (abs(log_gamma(1.0_qp)) > tiny(1.0_qp)) call abort()
end program gamma_test
diff --git a/gcc/testsuite/gfortran.dg/gomp/gomp.exp b/gcc/testsuite/gfortran.dg/gomp/gomp.exp
index 185bc3da596..34ae1466ed0 100644
--- a/gcc/testsuite/gfortran.dg/gomp/gomp.exp
+++ b/gcc/testsuite/gfortran.dg/gomp/gomp.exp
@@ -12,7 +12,7 @@ dg-init
# Main loop.
gfortran-dg-runtest [lsort \
- [find $srcdir/$subdir *.\[fF\]{,90,95,03} ] ] " -fopenmp"
+ [find $srcdir/$subdir *.\[fF\]{,90,95,03,08} ] ] " -fopenmp"
# All done.
dg-finish
diff --git a/gcc/testsuite/gfortran.dg/hypot_1.f90 b/gcc/testsuite/gfortran.dg/hypot_1.f90
new file mode 100644
index 00000000000..59022fab93c
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/hypot_1.f90
@@ -0,0 +1,29 @@
+! { dg-do run }
+
+program test
+ implicit none
+
+ interface check
+ procedure check_r4
+ procedure check_r8
+ end interface check
+
+ real(kind=4) :: x4, y4
+ real(kind=8) :: x8, y8
+
+ x8 = 1.9_8 ; x4 = 1.9_4
+ y8 = -2.1_8 ; y4 = -2.1_4
+
+ call check(hypot(x8,y8), hypot(1.9_8,-2.1_8))
+ call check(hypot(x4,y4), hypot(1.9_4,-2.1_4))
+
+contains
+ subroutine check_r4 (a, b)
+ real(kind=4), intent(in) :: a, b
+ if (abs(a - b) > 1.e-5 * abs(b)) call abort
+ end subroutine
+ subroutine check_r8 (a, b)
+ real(kind=8), intent(in) :: a, b
+ if (abs(a - b) > 1.e-7 * abs(b)) call abort
+ end subroutine
+end program test
diff --git a/gcc/testsuite/gfortran.dg/inquire_5.f90 b/gcc/testsuite/gfortran.dg/inquire_5.f90
index 2a5678ba2fc..b2e07be9319 100644
--- a/gcc/testsuite/gfortran.dg/inquire_5.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_5.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr19314 inquire(..position=..) segfaults
! test by Thomas.Koenig@online.de
! bdavis9659@comcast.net
diff --git a/gcc/testsuite/gfortran.dg/inquire_9.f90 b/gcc/testsuite/gfortran.dg/inquire_9.f90
index 99cd1af19cf..407eddb5204 100644
--- a/gcc/testsuite/gfortran.dg/inquire_9.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_9.f90
@@ -1,5 +1,5 @@
! PR fortran/24774
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
logical :: l
l = .true.
inquire (file='inquire_9 file that should not exist', exist=l)
diff --git a/gcc/testsuite/gfortran.dg/invalid_contains_1.f90 b/gcc/testsuite/gfortran.dg/invalid_contains_1.f90
index 757751d2427..df4bb3fef2d 100644
--- a/gcc/testsuite/gfortran.dg/invalid_contains_1.f90
+++ b/gcc/testsuite/gfortran.dg/invalid_contains_1.f90
@@ -5,4 +5,4 @@ contains
subroutine FOO ! { dg-error "conflicts with PROCEDURE" }
character(len=selected_int_kind(0)) :: C ! { dg-error "data declaration statement" }
end subroutine ! { dg-error "Expecting END MODULE statement" }
-end ! { dg-warning "CONTAINS statement without FUNCTION" } \ No newline at end of file
+end
diff --git a/gcc/testsuite/gfortran.dg/invalid_contains_2.f90 b/gcc/testsuite/gfortran.dg/invalid_contains_2.f90
index 90be10fd06d..72c1e216f07 100644
--- a/gcc/testsuite/gfortran.dg/invalid_contains_2.f90
+++ b/gcc/testsuite/gfortran.dg/invalid_contains_2.f90
@@ -6,4 +6,4 @@ contains
integer :: i ! { dg-error "data declaration statement" }
character(len=selected_int_kind(i)) :: c ! { dg-error "data declaration statement" }
end subroutine ! { dg-error "Expecting END PROGRAM statement" }
-end program foo ! { dg-warning "CONTAINS statement without FUNCTION" }
+end program foo
diff --git a/gcc/testsuite/gfortran.dg/iostat_1.f90 b/gcc/testsuite/gfortran.dg/iostat_1.f90
index 79bc0018fbd..2517eb99235 100644
--- a/gcc/testsuite/gfortran.dg/iostat_1.f90
+++ b/gcc/testsuite/gfortran.dg/iostat_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 23598 - The iostat variable wasn't reset if the previous
! I/O library call had an error.
program main
diff --git a/gcc/testsuite/gfortran.dg/iostat_2.f90 b/gcc/testsuite/gfortran.dg/iostat_2.f90
index afda93e8092..f4750646611 100644
--- a/gcc/testsuite/gfortran.dg/iostat_2.f90
+++ b/gcc/testsuite/gfortran.dg/iostat_2.f90
@@ -1,5 +1,5 @@
! PR libfortran/23784
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer i
close(10, status="whatever", iostat=i) ! { dg-warning "STATUS specifier in CLOSE statement.*has invalid value" }
if (i == 0) call abort()
diff --git a/gcc/testsuite/gfortran.dg/list_read_1.f90 b/gcc/testsuite/gfortran.dg/list_read_1.f90
index 6fba90ae738..2a2c5d1755b 100644
--- a/gcc/testsuite/gfortran.dg/list_read_1.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Program to test terminators in list-directed input
program list_read_1
character(len=5) :: s
diff --git a/gcc/testsuite/gfortran.dg/list_read_4.f90 b/gcc/testsuite/gfortran.dg/list_read_4.f90
index fb1770e2303..ba17625473d 100644
--- a/gcc/testsuite/gfortran.dg/list_read_4.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_4.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Test of gfortran list directed read> check delimiters are correctly
! treated. Written in f77 so that g77 will run for comparison.
!
diff --git a/gcc/testsuite/gfortran.dg/list_read_5.f90 b/gcc/testsuite/gfortran.dg/list_read_5.f90
index f69d1f3ccff..658c5249722 100644
--- a/gcc/testsuite/gfortran.dg/list_read_5.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_5.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25307 Check handling of end-of-file conditions for list directed reads.
! Prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org>
program pr25307
diff --git a/gcc/testsuite/gfortran.dg/list_read_6.f90 b/gcc/testsuite/gfortran.dg/list_read_6.f90
index 5bab50bab13..296d94ca846 100644
--- a/gcc/testsuite/gfortran.dg/list_read_6.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_6.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR30435 Slash at end of input not recognized according to standard.
! Test case from PR by Steve Kargl.
diff --git a/gcc/testsuite/gfortran.dg/list_read_7.f90 b/gcc/testsuite/gfortran.dg/list_read_7.f90
index 4ee08354b1d..f9800f2a7e2 100644
--- a/gcc/testsuite/gfortran.dg/list_read_7.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_7.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR33400 Formatted read fails if line ends without line break
! Test case modified from that in PR by <jvdelisle@gcc.gnu.org>
integer, parameter :: fgsl_strmax = 128
diff --git a/gcc/testsuite/gfortran.dg/list_read_8.f90 b/gcc/testsuite/gfortran.dg/list_read_8.f90
index 4be75fdb4e2..85fa857e8cd 100644
--- a/gcc/testsuite/gfortran.dg/list_read_8.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_8.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR34676 IO error delayed
! Test case from PR modified by <jvdelisle@gcc.gnu.org>
implicit none
diff --git a/gcc/testsuite/gfortran.dg/module_commons_2.f90 b/gcc/testsuite/gfortran.dg/module_commons_2.f90
new file mode 100644
index 00000000000..3c3214c20ff
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/module_commons_2.f90
@@ -0,0 +1,21 @@
+! { dg-do compile }
+! Tests the fix for PR35474, in which the PRIVATE statement would
+! cause the error Internal Error at (1): free_pi_tree(): Unresolved fixup
+! This arose because the symbol for 'i' emanating from the COMMON was
+! not being fixed-up as the EQUIVALENCE was built.
+!
+! Contributed by FX Coudert <fxcoudert@gcc.gnu.org>
+!
+module h5global
+ integer i
+ integer j
+ common /c/ i
+ equivalence (i, j)
+ private
+end module h5global
+
+program bug
+ use h5global
+end
+
+! { dg-final { cleanup-modules "h5global" } }
diff --git a/gcc/testsuite/gfortran.dg/namelist_11.f b/gcc/testsuite/gfortran.dg/namelist_11.f
index a8705cc508a..672ee261c20 100644
--- a/gcc/testsuite/gfortran.dg/namelist_11.f
+++ b/gcc/testsuite/gfortran.dg/namelist_11.f
@@ -1,4 +1,4 @@
-c { dg-do run }
+c { dg-do run { target fd_truncate } }
c This program tests: namelist comment, a blank line before the nameilist name, the namelist name,
c a scalar qualifier, various combinations of space, comma and lf delimiters, f-formats, e-formats
c a blank line within the data read, nulls, a range qualifier, a new object name before end of data
diff --git a/gcc/testsuite/gfortran.dg/namelist_12.f b/gcc/testsuite/gfortran.dg/namelist_12.f
index 69fe3d8ac43..dca96452e21 100644
--- a/gcc/testsuite/gfortran.dg/namelist_12.f
+++ b/gcc/testsuite/gfortran.dg/namelist_12.f
@@ -1,4 +1,4 @@
-c{ dg-do run }
+c{ dg-do run { target fd_truncate } }
c This program repeats many of the same tests as test_nml_1 but for integer
c instead of real. It also tests repeat nulls, comma delimited character read,
c a triplet qualifier, a range with an assumed start, a quote delimited string,
diff --git a/gcc/testsuite/gfortran.dg/namelist_13.f90 b/gcc/testsuite/gfortran.dg/namelist_13.f90
index 185b522e7f0..1688e8ddff1 100644
--- a/gcc/testsuite/gfortran.dg/namelist_13.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_13.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests simple derived types.
! Provided by Paul Thomas - pault@gcc.gnu.org
diff --git a/gcc/testsuite/gfortran.dg/namelist_14.f90 b/gcc/testsuite/gfortran.dg/namelist_14.f90
index 729f1b2d5c4..d6ab2940bdb 100644
--- a/gcc/testsuite/gfortran.dg/namelist_14.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_14.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests various combinations of intrinsic types, derived types, arrays,
! dummy arguments and common to check nml_get_addr_expr in trans-io.c.
! See comments below for selection.
diff --git a/gcc/testsuite/gfortran.dg/namelist_15.f90 b/gcc/testsuite/gfortran.dg/namelist_15.f90
index e900e71d143..65b015cfeed 100644
--- a/gcc/testsuite/gfortran.dg/namelist_15.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_15.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests arrays of derived types containing derived type arrays whose
! components are character arrays - exercises object name parser in
! list_read.c. Checks that namelist output can be reread.
diff --git a/gcc/testsuite/gfortran.dg/namelist_16.f90 b/gcc/testsuite/gfortran.dg/namelist_16.f90
index c6eb8f75595..023816f0d02 100644
--- a/gcc/testsuite/gfortran.dg/namelist_16.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_16.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests namelist on complex variables
! provided by Paul Thomas - pault@gcc.gnu.org
program namelist_16
diff --git a/gcc/testsuite/gfortran.dg/namelist_17.f90 b/gcc/testsuite/gfortran.dg/namelist_17.f90
index e3eac5210bf..a802a22254a 100644
--- a/gcc/testsuite/gfortran.dg/namelist_17.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_17.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests namelist on logical variables
! provided by Paul Thomas - pault@gcc.gnu.org
diff --git a/gcc/testsuite/gfortran.dg/namelist_18.f90 b/gcc/testsuite/gfortran.dg/namelist_18.f90
index eba8b6bc573..f5d4b3dd1e3 100644
--- a/gcc/testsuite/gfortran.dg/namelist_18.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_18.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests character delimiters for namelist write
! provided by Paul Thomas - pault@gcc.gnu.org
diff --git a/gcc/testsuite/gfortran.dg/namelist_19.f90 b/gcc/testsuite/gfortran.dg/namelist_19.f90
index c06abf5295b..f7c6d69e8a2 100644
--- a/gcc/testsuite/gfortran.dg/namelist_19.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_19.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Test namelist error trapping.
! provided by Paul Thomas - pault@gcc.gnu.org
diff --git a/gcc/testsuite/gfortran.dg/namelist_20.f90 b/gcc/testsuite/gfortran.dg/namelist_20.f90
index 155cf6f8ed2..9b2d896514a 100644
--- a/gcc/testsuite/gfortran.dg/namelist_20.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_20.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests namelist io for an explicit shape array with negative bounds
! provided by Paul Thomas - pault@gcc.gnu.org
diff --git a/gcc/testsuite/gfortran.dg/namelist_21.f90 b/gcc/testsuite/gfortran.dg/namelist_21.f90
index 463ef1b9e4f..8d2852d2cca 100644
--- a/gcc/testsuite/gfortran.dg/namelist_21.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_21.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests filling arrays from a namelist read when object list is not complete.
! Developed from a test case provided by Christoph Jacob.
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>.
diff --git a/gcc/testsuite/gfortran.dg/namelist_22.f90 b/gcc/testsuite/gfortran.dg/namelist_22.f90
index 6face8b1f5b..3119e808640 100644
--- a/gcc/testsuite/gfortran.dg/namelist_22.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_22.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! Tests filling arrays from a namelist read when object list is not complete.
! This is the same as namelist_21.f90 except using spaces as seperators instead
! of commas. Developed from a test case provided by Christoph Jacob.
diff --git a/gcc/testsuite/gfortran.dg/namelist_23.f90 b/gcc/testsuite/gfortran.dg/namelist_23.f90
index 70a0080ceb2..7d69ef62f3c 100644
--- a/gcc/testsuite/gfortran.dg/namelist_23.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_23.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! PR26136 Filling logical variables from namelist read when object list is not
! complete. Test case derived from PR.
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/namelist_24.f90 b/gcc/testsuite/gfortran.dg/namelist_24.f90
index 11cd2d0a466..c89ab3d2744 100644
--- a/gcc/testsuite/gfortran.dg/namelist_24.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_24.f90
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
!{ dg-options -std=gnu }
! Tests namelist read when more data is provided then specified by
! array qualifier in list.
diff --git a/gcc/testsuite/gfortran.dg/namelist_26.f90 b/gcc/testsuite/gfortran.dg/namelist_26.f90
index 2c1b26062e1..a9cf4fd6b4a 100644
--- a/gcc/testsuite/gfortran.dg/namelist_26.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_26.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR30918 Failure to skip commented out NAMELIST
! Before the patch, this read the commented out namelist and iuse would
! equal 2 when done. Test case from PR.
diff --git a/gcc/testsuite/gfortran.dg/namelist_27.f90 b/gcc/testsuite/gfortran.dg/namelist_27.f90
index 10b0031e894..e645ca5bc04 100644
--- a/gcc/testsuite/gfortran.dg/namelist_27.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_27.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR31052 Bad IOSTAT values when readings NAMELISTs past EOF.
! Patch derived from PR, submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
program gfcbug61
diff --git a/gcc/testsuite/gfortran.dg/namelist_28.f90 b/gcc/testsuite/gfortran.dg/namelist_28.f90
index 53b1f0ff002..09015d56e63 100644
--- a/gcc/testsuite/gfortran.dg/namelist_28.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_28.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR31052 Bad IOSTAT values when readings NAMELISTs past EOF.
! Patch derived from PR, submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
program gfcbug61
diff --git a/gcc/testsuite/gfortran.dg/namelist_37.f90 b/gcc/testsuite/gfortran.dg/namelist_37.f90
index 9ff62977710..e200ad0b364 100644
--- a/gcc/testsuite/gfortran.dg/namelist_37.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_37.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR33039 Read NAMELIST: reads wrong namelist name
! Test case from PR modified by Jerry DeLisle <jvdelisle@gcc.gnu.org>
PROGRAM namelist
diff --git a/gcc/testsuite/gfortran.dg/namelist_38.f90 b/gcc/testsuite/gfortran.dg/namelist_38.f90
index 5578654eea4..ed053690386 100644
--- a/gcc/testsuite/gfortran.dg/namelist_38.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_38.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR33253 namelist: reading back a string, also fixed writing with delimiters.
! Test case modified from that of the PR by
! Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/namelist_39.f90 b/gcc/testsuite/gfortran.dg/namelist_39.f90
index 36721409fa5..82e631e0dd0 100644
--- a/gcc/testsuite/gfortran.dg/namelist_39.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_39.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR33421 and PR33253 Weird quotation of namelist output of character arrays
! Test case from Toon Moone, adapted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/namelist_40.f90 b/gcc/testsuite/gfortran.dg/namelist_40.f90
index 3c9d813343a..5e2c9d871a2 100644
--- a/gcc/testsuite/gfortran.dg/namelist_40.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_40.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR33672 Additional runtime checks needed for namelist reads
! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/namelist_41.f90 b/gcc/testsuite/gfortran.dg/namelist_41.f90
index 2d9a71a91a0..16e0d42b8af 100644
--- a/gcc/testsuite/gfortran.dg/namelist_41.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_41.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR34291 Segfault on &end in namelist expanded read of character
implicit none
character(len=10), dimension(2) :: var
diff --git a/gcc/testsuite/gfortran.dg/namelist_42.f90 b/gcc/testsuite/gfortran.dg/namelist_42.f90
index e2efb6f7467..55dd2caec5d 100644
--- a/gcc/testsuite/gfortran.dg/namelist_42.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_42.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-mieee" { target sh*-*-* } }
!
! PR fortran/34427
diff --git a/gcc/testsuite/gfortran.dg/namelist_43.f90 b/gcc/testsuite/gfortran.dg/namelist_43.f90
index 467b11de145..abad355b9ae 100644
--- a/gcc/testsuite/gfortran.dg/namelist_43.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_43.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-mieee" { target sh*-*-* } }
!
! PR fortran/34427
diff --git a/gcc/testsuite/gfortran.dg/namelist_44.f90 b/gcc/testsuite/gfortran.dg/namelist_44.f90
index 143990261fe..35ea667d3b9 100644
--- a/gcc/testsuite/gfortran.dg/namelist_44.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_44.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
!
! PR fortran/34530
!
diff --git a/gcc/testsuite/gfortran.dg/namelist_char_only.f90 b/gcc/testsuite/gfortran.dg/namelist_char_only.f90
index 9993669b38a..ff06171bcee 100644
--- a/gcc/testsuite/gfortran.dg/namelist_char_only.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_char_only.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-O0" }
! Test patch for PR24416.f90 - a used to come back from the read with var
! prepended.
diff --git a/gcc/testsuite/gfortran.dg/namelist_use.f90 b/gcc/testsuite/gfortran.dg/namelist_use.f90
index 0460630dd33..ab846862649 100644
--- a/gcc/testsuite/gfortran.dg/namelist_use.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_use.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! This tests the fix for PR22010, where namelists were not being written to
! and read back from modules. It has two namelists: one that is USE
! associated and another that is concatenated by USE and host association.
diff --git a/gcc/testsuite/gfortran.dg/namelist_use_only.f90 b/gcc/testsuite/gfortran.dg/namelist_use_only.f90
index a9adf015ded..ce80d5e410d 100644
--- a/gcc/testsuite/gfortran.dg/namelist_use_only.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_use_only.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! This tests the fix for PR22010, where namelists were not being written to
! and read back from modules. It checks that namelists from modules that are
! selected by an ONLY declaration work correctly, even when the variables in
diff --git a/gcc/testsuite/gfortran.dg/noadv_size.f90 b/gcc/testsuite/gfortran.dg/noadv_size.f90
index a3a88b18ca7..cfc507a6fd8 100644
--- a/gcc/testsuite/gfortran.dg/noadv_size.f90
+++ b/gcc/testsuite/gfortran.dg/noadv_size.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 20774: Handle size parameter for non-advancing I/O correctly
program main
open(77,status='scratch')
diff --git a/gcc/testsuite/gfortran.dg/open_access_append_1.f90 b/gcc/testsuite/gfortran.dg/open_access_append_1.f90
index 8dae327968d..f67a8a93d34 100644
--- a/gcc/testsuite/gfortran.dg/open_access_append_1.f90
+++ b/gcc/testsuite/gfortran.dg/open_access_append_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Testcase for the GNU extension OPEN(...,ACCESS="APPEND")
open (10,file="foo")
close (10,status="delete")
diff --git a/gcc/testsuite/gfortran.dg/open_readonly_1.f90 b/gcc/testsuite/gfortran.dg/open_readonly_1.f90
index 3adbbd32498..87d3ba7a909 100644
--- a/gcc/testsuite/gfortran.dg/open_readonly_1.f90
+++ b/gcc/testsuite/gfortran.dg/open_readonly_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR19451
! Writing to a non-empty readonly file caused a segfault.
! We were still trying to write the EOR after an error ocurred
diff --git a/gcc/testsuite/gfortran.dg/overwrite_1.f b/gcc/testsuite/gfortran.dg/overwrite_1.f
index dda9a8bdf9d..f6c5fdbd979 100644
--- a/gcc/testsuite/gfortran.dg/overwrite_1.f
+++ b/gcc/testsuite/gfortran.dg/overwrite_1.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 19872 - closed and re-opened file not overwriten
implicit none
integer i(4)
diff --git a/gcc/testsuite/gfortran.dg/pad_no.f90 b/gcc/testsuite/gfortran.dg/pad_no.f90
index c023adec815..1b5fb2fd9da 100644
--- a/gcc/testsuite/gfortran.dg/pad_no.f90
+++ b/gcc/testsuite/gfortran.dg/pad_no.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Test correct operation for pad='no'.
program main
character(len=1) line(2)
diff --git a/gcc/testsuite/gfortran.dg/pr12884.f b/gcc/testsuite/gfortran.dg/pr12884.f
index 425604c02c5..811bef1f6f6 100644
--- a/gcc/testsuite/gfortran.dg/pr12884.f
+++ b/gcc/testsuite/gfortran.dg/pr12884.f
@@ -1,4 +1,4 @@
-c { dg-do run }
+c { dg-do run { target fd_truncate } }
c pr 12884
c test namelist with input file containg / before namelist. Also checks
c non-standard use of $ instead of &
diff --git a/gcc/testsuite/gfortran.dg/pr17090.f90 b/gcc/testsuite/gfortran.dg/pr17090.f90
index 6a685c2eddd..bae2bb7da0e 100644
--- a/gcc/testsuite/gfortran.dg/pr17090.f90
+++ b/gcc/testsuite/gfortran.dg/pr17090.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr 17090 Runtime I/O error
! bdavis9659@comcast.net
! 9/12/2004
diff --git a/gcc/testsuite/gfortran.dg/pr17285.f90 b/gcc/testsuite/gfortran.dg/pr17285.f90
index 58aee327aef..8aa353cd853 100644
--- a/gcc/testsuite/gfortran.dg/pr17285.f90
+++ b/gcc/testsuite/gfortran.dg/pr17285.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr 17285
! Test that namelist can read its own output.
! At the same time, check arrays and different terminations
diff --git a/gcc/testsuite/gfortran.dg/pr17286.f90 b/gcc/testsuite/gfortran.dg/pr17286.f90
index e9beb6d375d..5b946944468 100644
--- a/gcc/testsuite/gfortran.dg/pr17286.f90
+++ b/gcc/testsuite/gfortran.dg/pr17286.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR17286
! Namelist read failed when spaces exist between the '=' and the numbers
! This is a libgfortran bug
diff --git a/gcc/testsuite/gfortran.dg/pr18122.f90 b/gcc/testsuite/gfortran.dg/pr18122.f90
index 3907f0ae158..6e7f200efd7 100644
--- a/gcc/testsuite/gfortran.dg/pr18122.f90
+++ b/gcc/testsuite/gfortran.dg/pr18122.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! test namelist with scalars and arrays.
! Based on example provided by thomas.koenig@online.de
diff --git a/gcc/testsuite/gfortran.dg/pr18210.f90 b/gcc/testsuite/gfortran.dg/pr18210.f90
index 60959841378..253f2919816 100644
--- a/gcc/testsuite/gfortran.dg/pr18210.f90
+++ b/gcc/testsuite/gfortran.dg/pr18210.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Names in upper case and object names starting column 2
! Based on example provided by thomas.koenig@online.de
diff --git a/gcc/testsuite/gfortran.dg/pr18392.f90 b/gcc/testsuite/gfortran.dg/pr18392.f90
index de156f5a5fd..3c15d4b3dff 100644
--- a/gcc/testsuite/gfortran.dg/pr18392.f90
+++ b/gcc/testsuite/gfortran.dg/pr18392.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr 18392
! test namelist with derived types
! Based on example provided by thomas.koenig@online.de
diff --git a/gcc/testsuite/gfortran.dg/pr19155.f b/gcc/testsuite/gfortran.dg/pr19155.f
index 6387c3f9ce3..003c7fdcc44 100644
--- a/gcc/testsuite/gfortran.dg/pr19155.f
+++ b/gcc/testsuite/gfortran.dg/pr19155.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
!
! PR libfortran/19155
! We accept 'E+00' as a valid real number. The standard says it is not,
diff --git a/gcc/testsuite/gfortran.dg/pr19216.f b/gcc/testsuite/gfortran.dg/pr19216.f
index 76c393836c9..40b3b5a7ae1 100644
--- a/gcc/testsuite/gfortran.dg/pr19216.f
+++ b/gcc/testsuite/gfortran.dg/pr19216.f
@@ -1,5 +1,5 @@
! PR libfortran/19216
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer dat(3), i, j
data dat / 3,2,1 /
diff --git a/gcc/testsuite/gfortran.dg/pr19467.f90 b/gcc/testsuite/gfortran.dg/pr19467.f90
index ab4fa99c40b..03cc7451e8e 100644
--- a/gcc/testsuite/gfortran.dg/pr19467.f90
+++ b/gcc/testsuite/gfortran.dg/pr19467.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr 19467
! test namelist with character arrays
! Based on example provided by paulthomas2@wanadoo.fr
diff --git a/gcc/testsuite/gfortran.dg/pr19657.f b/gcc/testsuite/gfortran.dg/pr19657.f
index 1fe32ac7497..a8e2012ee1b 100644
--- a/gcc/testsuite/gfortran.dg/pr19657.f
+++ b/gcc/testsuite/gfortran.dg/pr19657.f
@@ -1,4 +1,4 @@
-c { dg-do run }
+c { dg-do run { target fd_truncate } }
c pr 19657
c test namelist not skipped if ending with logical.
c Based on example provided by fuyuki@ccsr.u-tokyo.ac.jp
diff --git a/gcc/testsuite/gfortran.dg/pr20257.f90 b/gcc/testsuite/gfortran.dg/pr20257.f90
index 3808829b486..ca5a00bf882 100644
--- a/gcc/testsuite/gfortran.dg/pr20257.f90
+++ b/gcc/testsuite/gfortran.dg/pr20257.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer,parameter :: n = 10000
real(8) array(10000)
diff --git a/gcc/testsuite/gfortran.dg/read_bad_advance.f90 b/gcc/testsuite/gfortran.dg/read_bad_advance.f90
index 5b43cfecc7f..3ca4493c451 100644
--- a/gcc/testsuite/gfortran.dg/read_bad_advance.f90
+++ b/gcc/testsuite/gfortran.dg/read_bad_advance.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR27138 Failure to advance line on bad list directed read.
! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
program test
diff --git a/gcc/testsuite/gfortran.dg/read_comma.f b/gcc/testsuite/gfortran.dg/read_comma.f
index 593c56d1037..024fceae72c 100644
--- a/gcc/testsuite/gfortran.dg/read_comma.f
+++ b/gcc/testsuite/gfortran.dg/read_comma.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25039 This test checks that commas in input fields for formatted sequential
! reads are interpreted as the read completion. If no comma is encountered the
! normal field width determines the end of the read. The test case also checks
diff --git a/gcc/testsuite/gfortran.dg/read_eof_1.f90 b/gcc/testsuite/gfortran.dg/read_eof_1.f90
index b5c49016a4a..78ff14a5d9b 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_1.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25697 Check that reading from a file that is at end-of-file does not
! segfault or give error. Test case derived from example in PR from Dale Ranta.
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/read_eof_2.f90 b/gcc/testsuite/gfortran.dg/read_eof_2.f90
index 9017548d463..539553d53d8 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_2.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_2.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25835 Check that reading from a file that is at end-of-file does not
! segfault or give error. Test case derived from example in PR from Dale Ranta.
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/read_eof_3.f90 b/gcc/testsuite/gfortran.dg/read_eof_3.f90
index 5cca802c2a6..af35aa6d34c 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_3.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25835 Check that reading from a file that is at end-of-file does not
! segfault or give error. Test case derived from example in PR from Dale Ranta.
! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/read_eof_4.f90 b/gcc/testsuite/gfortran.dg/read_eof_4.f90
index ee95268d50d..da0ae5c185d 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_4.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_4.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 27575 and PR 30009: This test checks the error checking for end
! of file condition.
! Derived from test case in PR.
diff --git a/gcc/testsuite/gfortran.dg/read_many_1.f b/gcc/testsuite/gfortran.dg/read_many_1.f
index 4fac689ac48..d015cf833ea 100644
--- a/gcc/testsuite/gfortran.dg/read_many_1.f
+++ b/gcc/testsuite/gfortran.dg/read_many_1.f
@@ -1,4 +1,4 @@
-!{ dg-do run }
+!{ dg-do run { target fd_truncate } }
! PR26423 Large file I/O error related to buffering
! Test case derived from case by Dale Ranta.
! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/read_noadvance.f90 b/gcc/testsuite/gfortran.dg/read_noadvance.f90
index e55763ad8bb..987d811409b 100644
--- a/gcc/testsuite/gfortran.dg/read_noadvance.f90
+++ b/gcc/testsuite/gfortran.dg/read_noadvance.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! pr24719, non-advancing read should read more than one line
! test contributed by jerry delisle <jvdelisle@gcc.gnu.org>
implicit none
diff --git a/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 b/gcc/testsuite/gfortran.dg/read_size_noadvance.f90
index 819a28dcccb..37ecff90d65 100644
--- a/gcc/testsuite/gfortran.dg/read_size_noadvance.f90
+++ b/gcc/testsuite/gfortran.dg/read_size_noadvance.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR26890 Test for use of SIZE variable in IO list.
! Test case from Paul Thomas.
! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
diff --git a/gcc/testsuite/gfortran.dg/read_x_past.f b/gcc/testsuite/gfortran.dg/read_x_past.f
index 4a6d05369d3..16f66234548 100644
--- a/gcc/testsuite/gfortran.dg/read_x_past.f
+++ b/gcc/testsuite/gfortran.dg/read_x_past.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options -w }
! PR 26661 : Test reading X's past file end with no LF or CR.
! PR 26880 : Tests that rewind clears the gfc_unit read_bad flag.
diff --git a/gcc/testsuite/gfortran.dg/record_marker_1.f90 b/gcc/testsuite/gfortran.dg/record_marker_1.f90
index 5bcfbc611a5..d5d5a2ebb20 100644
--- a/gcc/testsuite/gfortran.dg/record_marker_1.f90
+++ b/gcc/testsuite/gfortran.dg/record_marker_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-frecord-marker=4" }
program main
diff --git a/gcc/testsuite/gfortran.dg/record_marker_2.f b/gcc/testsuite/gfortran.dg/record_marker_2.f
index 725af120d33..83ee7feac11 100644
--- a/gcc/testsuite/gfortran.dg/record_marker_2.f
+++ b/gcc/testsuite/gfortran.dg/record_marker_2.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-frecord-marker=4" }
! This file is all about BACKSPACE
! Adapted from gfortran.dg/backspace.f
diff --git a/gcc/testsuite/gfortran.dg/record_marker_3.f90 b/gcc/testsuite/gfortran.dg/record_marker_3.f90
index 7459d7210a4..dd9d45505e0 100644
--- a/gcc/testsuite/gfortran.dg/record_marker_3.f90
+++ b/gcc/testsuite/gfortran.dg/record_marker_3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-frecord-marker=8" }
program main
diff --git a/gcc/testsuite/gfortran.dg/recursive_check_3.f90 b/gcc/testsuite/gfortran.dg/recursive_check_3.f90
index 23904a8b991..ec358cb12c0 100644
--- a/gcc/testsuite/gfortran.dg/recursive_check_3.f90
+++ b/gcc/testsuite/gfortran.dg/recursive_check_3.f90
@@ -5,18 +5,18 @@ contains
pure pure subroutine a1(b) ! { dg-error "Duplicate PURE attribute specified" }
real, intent(in) :: b ! { dg-error "Unexpected data declaration statement" }
end subroutine a1 ! { dg-error "Expecting END MODULE" }
-end module m1 ! { dg-warning "CONTAINS statement without FUNCTION" }
+end module m1
module m2
contains
elemental elemental subroutine a2(b) ! { dg-error "Duplicate ELEMENTAL attribute" }
real, intent(in) :: b ! { dg-error "Unexpected data declaration statement" }
end subroutine a2 ! { dg-error "Expecting END MODULE" }
-end module m2 ! { dg-warning "CONTAINS statement without FUNCTION" }
+end module m2
module m3
contains
recursive recursive subroutine a3(b) ! { dg-error "Duplicate RECURSIVE attribute" }
real, intent(in) :: b ! { dg-error "Unexpected data declaration statement" }
end subroutine a3 ! { dg-error "Expecting END MODULE" }
-end module m3 ! { dg-warning "CONTAINS statement without FUNCTION" }
+end module m3
diff --git a/gcc/testsuite/gfortran.dg/rewind_1.f90 b/gcc/testsuite/gfortran.dg/rewind_1.f90
index cbd2ef17b8f..61392abfdf5 100644
--- a/gcc/testsuite/gfortran.dg/rewind_1.f90
+++ b/gcc/testsuite/gfortran.dg/rewind_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Check that rewind doesn't delete a file.
! Writing to the file truncates it at the end of the current record. Out
! IO library was defering the actual truncation until the file was rewound.
diff --git a/gcc/testsuite/gfortran.dg/runtime_warning_1.f90 b/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
index 6af85c344ef..c27e7a27db7 100644
--- a/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
+++ b/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
@@ -3,7 +3,7 @@
! Contributor Francois-Xavier Coudert <coudert@clipper.ens.fr>
!
! { dg-options "-pedantic" }
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
!
character*5 c
open (42,status='scratch')
diff --git a/gcc/testsuite/gfortran.dg/shape_3.f90 b/gcc/testsuite/gfortran.dg/shape_3.f90
index ea725a014e9..f715645b924 100644
--- a/gcc/testsuite/gfortran.dg/shape_3.f90
+++ b/gcc/testsuite/gfortran.dg/shape_3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 34980 - we got a segfault for calling shape
! with a scalar.
program main
diff --git a/gcc/testsuite/gfortran.dg/slash_1.f90 b/gcc/testsuite/gfortran.dg/slash_1.f90
index d4a59a31acf..b62b338c07c 100644
--- a/gcc/testsuite/gfortran.dg/slash_1.f90
+++ b/gcc/testsuite/gfortran.dg/slash_1.f90
@@ -1,5 +1,5 @@
! PR libfortran/22170
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
integer i
open (10,status='scratch')
write (10,'(A,2/,A)') '12', '17'
diff --git a/gcc/testsuite/gfortran.dg/stat_1.f90 b/gcc/testsuite/gfortran.dg/stat_1.f90
index 5325634246f..b9dc10095d2 100644
--- a/gcc/testsuite/gfortran.dg/stat_1.f90
+++ b/gcc/testsuite/gfortran.dg/stat_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-std=gnu" }
character(len=*), parameter :: f = "testfile"
integer :: s1(13), r1, s2(13), r2, s3(13), r3
diff --git a/gcc/testsuite/gfortran.dg/stat_2.f90 b/gcc/testsuite/gfortran.dg/stat_2.f90
index 4bd17cabf0d..b57b52f9300 100644
--- a/gcc/testsuite/gfortran.dg/stat_2.f90
+++ b/gcc/testsuite/gfortran.dg/stat_2.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-std=gnu" }
character(len=*), parameter :: f = "testfile"
integer :: s1(13), r1, s2(13), r2, s3(13), r3
diff --git a/gcc/testsuite/gfortran.dg/streamio_11.f90 b/gcc/testsuite/gfortran.dg/streamio_11.f90
index 2084a23159b..0ec2f2e8d35 100644
--- a/gcc/testsuite/gfortran.dg/streamio_11.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_11.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR29277 Stream IO test 11, tests formatted form.
! Contributed by Tobias Burnas.
program stream_test
diff --git a/gcc/testsuite/gfortran.dg/streamio_3.f90 b/gcc/testsuite/gfortran.dg/streamio_3.f90
index b96e5fc8e1d..0cbab67f6d8 100644
--- a/gcc/testsuite/gfortran.dg/streamio_3.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25828 Stream IO test 3, tests read_x and inquire.
! Contributed by Jerry DeLisle <jvdelisle@verizon.net>.
program streamio_3
diff --git a/gcc/testsuite/gfortran.dg/streamio_4.f90 b/gcc/testsuite/gfortran.dg/streamio_4.f90
index 64d2f52dbf1..957df8c53c8 100644
--- a/gcc/testsuite/gfortran.dg/streamio_4.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_4.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR25828 Stream IO test 4, Tests string read and writes, single byte.
! Verifies buffering is working correctly and position="append"
! Contributed by Jerry DeLisle <jvdelisle@verizon.net>.
diff --git a/gcc/testsuite/gfortran.dg/tl_editing.f90 b/gcc/testsuite/gfortran.dg/tl_editing.f90
index d2a7ede436f..aa3a01cfd02 100644
--- a/gcc/testsuite/gfortran.dg/tl_editing.f90
+++ b/gcc/testsuite/gfortran.dg/tl_editing.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! Test of fix to bug triggered by NIST fm908.for.
! Left tabbing, followed by X or T-tabbing to the right would
! cause spaces to be overwritten on output data.
diff --git a/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90 b/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90
index 3d35312c92c..ad79fd76950 100644
--- a/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90
+++ b/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-pedantic" }
! This test verifies the most basic sequential unformatted I/O
! with convert="swap".
diff --git a/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90 b/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90
index f29f6ee249e..b38da247037 100644
--- a/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90
+++ b/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
program main
complex(kind=4) :: c
real(kind=4) :: a(2)
diff --git a/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90 b/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90
index 1788b457d19..4dd5234fb60 100644
--- a/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90
+++ b/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR31880 silent data corruption in gfortran read statement
! Test from PR.
program r3
diff --git a/gcc/testsuite/gfortran.dg/unf_short_record_1.f90 b/gcc/testsuite/gfortran.dg/unf_short_record_1.f90
index 45c94c29405..9dca08e5ece 100644
--- a/gcc/testsuite/gfortran.dg/unf_short_record_1.f90
+++ b/gcc/testsuite/gfortran.dg/unf_short_record_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 29627 - partial reads of unformatted records
program main
character a(3)
diff --git a/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90 b/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90
index dbafff131e8..9618ff27a8b 100644
--- a/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90
+++ b/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR31099 Runtime error on legal code using RECL
program test
integer(kind=4) :: a, b
diff --git a/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90 b/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90
index 5d59daad186..02ed28863eb 100644
--- a/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90
+++ b/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! { dg-options "-fmax-subrecord-length=16" }
! Test Intel record markers with 16-byte subrecord sizes.
! PR 32770: Use explicit kinds for all integers and constants,
diff --git a/gcc/testsuite/gfortran.dg/vect/vect.exp b/gcc/testsuite/gfortran.dg/vect/vect.exp
index a1b949899fc..9f91434a702 100644
--- a/gcc/testsuite/gfortran.dg/vect/vect.exp
+++ b/gcc/testsuite/gfortran.dg/vect/vect.exp
@@ -90,8 +90,8 @@ proc check_effective_target_lp64_or_vect_no_align { } {
dg-init
# Main loop.
-gfortran-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/vect-*.\[fF\]{,90,95,03} ]] $DEFAULT_VECTCFLAGS
-gfortran-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/pr*.\[fF\]{,90,95,03} ]] $DEFAULT_VECTCFLAGS
+gfortran-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/vect-*.\[fF\]{,90,95,03,08} ]] $DEFAULT_VECTCFLAGS
+gfortran-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/pr*.\[fF\]{,90,95,03,08} ]] $DEFAULT_VECTCFLAGS
#### Tests with special options
global SAVED_DEFAULT_VECTCFLAGS
@@ -100,19 +100,19 @@ set SAVED_DEFAULT_VECTCFLAGS $DEFAULT_VECTCFLAGS
# -ffast-math tests
set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS
lappend DEFAULT_VECTCFLAGS "-ffast-math"
-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/fast-math-*.\[fF\]{,90,95,03} ]] \
+dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/fast-math-*.\[fF\]{,90,95,03,08} ]] \
"" $DEFAULT_VECTCFLAGS
# -fvect-cost-model tests
set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS
lappend DEFAULT_VECTCFLAGS "-fvect-cost-model"
-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/cost-model-*.\[fF\]{,90,95,03} ]] \
+dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/cost-model-*.\[fF\]{,90,95,03,08} ]] \
"" $DEFAULT_VECTCFLAGS
# --param vect-max-version-for-alias-checks=0 tests
set DEFAULT_VECTCFLAGS $SAVED_DEFAULT_VECTCFLAGS
lappend DEFAULT_VECTCFLAGS "--param" "vect-max-version-for-alias-checks=0"
-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/no-vfa-*.\[fF\]{,90,95,03} ]] \
+dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/no-vfa-*.\[fF\]{,90,95,03,08} ]] \
"" $DEFAULT_VECTCFLAGS
# Clean up.
diff --git a/gcc/testsuite/gfortran.dg/vector_subscript_3.f90 b/gcc/testsuite/gfortran.dg/vector_subscript_3.f90
index 974ee4be392..3fa306e1639 100644
--- a/gcc/testsuite/gfortran.dg/vector_subscript_3.f90
+++ b/gcc/testsuite/gfortran.dg/vector_subscript_3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
!
! Test the fix for PR34875, in which the read with a vector index
! used to do nothing.
diff --git a/gcc/testsuite/gfortran.dg/write_back.f b/gcc/testsuite/gfortran.dg/write_back.f
index a491e24a808..a8472f7caa7 100644
--- a/gcc/testsuite/gfortran.dg/write_back.f
+++ b/gcc/testsuite/gfortran.dg/write_back.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 26499 : Positioning of EOF after backspaces and write.
! This test verifies that the last write truncates the file.
! Submitted by Jerry DeLisle <jvdelisle@verizon.net>.
diff --git a/gcc/testsuite/gfortran.dg/write_check3.f90 b/gcc/testsuite/gfortran.dg/write_check3.f90
index 802a06d27a9..48950965a66 100644
--- a/gcc/testsuite/gfortran.dg/write_check3.f90
+++ b/gcc/testsuite/gfortran.dg/write_check3.f90
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR29936 Missed constraint on RECL=specifier in unformatted sequential WRITE
! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>
program us_recl
diff --git a/gcc/testsuite/gfortran.dg/write_rewind_1.f b/gcc/testsuite/gfortran.dg/write_rewind_1.f
index 0e231875a72..94fec99df7c 100644
--- a/gcc/testsuite/gfortran.dg/write_rewind_1.f
+++ b/gcc/testsuite/gfortran.dg/write_rewind_1.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 26499 : Positioning of EOF after write and rewind.
! Test case from Dale Ranta in PR.
! Submitted by Jerry DeLisle <jvdelisle@verizon.net>.
diff --git a/gcc/testsuite/gfortran.dg/write_rewind_2.f b/gcc/testsuite/gfortran.dg/write_rewind_2.f
index 501995c6eb5..e1a8dec22eb 100644
--- a/gcc/testsuite/gfortran.dg/write_rewind_2.f
+++ b/gcc/testsuite/gfortran.dg/write_rewind_2.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 26499 Test write with rewind sequences to make sure buffering and
! end-of-file conditions are handled correctly. Derived from test case by Dale
! Ranta. Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>.
diff --git a/gcc/testsuite/gfortran.dg/x_slash_1.f b/gcc/testsuite/gfortran.dg/x_slash_1.f
index f4f9ed2281c..de576e2e401 100644
--- a/gcc/testsuite/gfortran.dg/x_slash_1.f
+++ b/gcc/testsuite/gfortran.dg/x_slash_1.f
@@ -1,4 +1,4 @@
-c { dg-do run }
+c { dg-do run { target fd_truncate } }
c This program tests the fixes to PR22570.
c
c Provided by Paul Thomas - pault@gcc.gnu.org
diff --git a/gcc/testsuite/gfortran.dg/x_slash_2.f b/gcc/testsuite/gfortran.dg/x_slash_2.f
index 6023b647d24..9c42f671d81 100644
--- a/gcc/testsuite/gfortran.dg/x_slash_2.f
+++ b/gcc/testsuite/gfortran.dg/x_slash_2.f
@@ -1,4 +1,4 @@
-! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR 34887 - reverse tabs followed by a slash used to confuse I/O.
program main
character(len=2) :: b, a
diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/compile.exp b/gcc/testsuite/gfortran.fortran-torture/compile/compile.exp
index 37ac092521a..d52b730646a 100644
--- a/gcc/testsuite/gfortran.fortran-torture/compile/compile.exp
+++ b/gcc/testsuite/gfortran.fortran-torture/compile/compile.exp
@@ -46,6 +46,13 @@ foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f90]] {
fortran-torture $testcase
}
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.F90]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture $testcase
+}
+
foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f95]] {
if ![runtest_file_p $runtests $testcase] then {
continue
@@ -53,9 +60,37 @@ foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f95]] {
fortran-torture $testcase
}
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.F95]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture $testcase
+}
+
foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f03]] {
if ![runtest_file_p $runtests $testcase] then {
continue
}
fortran-torture $testcase
}
+
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.F03]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture $testcase
+}
+
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f08]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture $testcase
+}
+
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.F08]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture $testcase
+}
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/backspace.x b/gcc/testsuite/gfortran.fortran-torture/execute/backspace.x
new file mode 100644
index 00000000000..b4a54bb23e4
--- /dev/null
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/backspace.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { ! [check_effective_target_fd_truncate] } {
+ return 1
+}
+
+return 0
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/execute.exp b/gcc/testsuite/gfortran.fortran-torture/execute/execute.exp
index fcf9f1f3138..d22372ad0da 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/execute.exp
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/execute.exp
@@ -50,6 +50,13 @@ foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f90]] {
fortran-torture-execute $testcase
}
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.F90]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture-execute $testcase
+}
+
foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f95]] {
if ![runtest_file_p $runtests $testcase] then {
continue
@@ -57,9 +64,37 @@ foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f95]] {
fortran-torture-execute $testcase
}
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.F95]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture-execute $testcase
+}
+
foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f03]] {
if ![runtest_file_p $runtests $testcase] then {
continue
}
fortran-torture-execute $testcase
}
+
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.F03]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture-execute $testcase
+}
+
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.f08]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture-execute $testcase
+}
+
+foreach testcase [lsort [glob -nocomplain $srcdir/$subdir/*.F08]] {
+ if ![runtest_file_p $runtests $testcase] then {
+ continue
+ }
+ fortran-torture-execute $testcase
+}
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.x b/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.x
new file mode 100644
index 00000000000..b4a54bb23e4
--- /dev/null
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { ! [check_effective_target_fd_truncate] } {
+ return 1
+}
+
+return 0
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.x b/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.x
new file mode 100644
index 00000000000..b4a54bb23e4
--- /dev/null
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { ! [check_effective_target_fd_truncate] } {
+ return 1
+}
+
+return 0
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.x b/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.x
new file mode 100644
index 00000000000..b4a54bb23e4
--- /dev/null
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { ! [check_effective_target_fd_truncate] } {
+ return 1
+}
+
+return 0
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.x b/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.x
new file mode 100644
index 00000000000..b4a54bb23e4
--- /dev/null
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { ! [check_effective_target_fd_truncate] } {
+ return 1
+}
+
+return 0
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.x b/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.x
new file mode 100644
index 00000000000..b4a54bb23e4
--- /dev/null
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.x
@@ -0,0 +1,7 @@
+load_lib target-supports.exp
+
+if { ! [check_effective_target_fd_truncate] } {
+ return 1
+}
+
+return 0
diff --git a/gcc/testsuite/gnat.dg/frame_overflow.adb b/gcc/testsuite/gnat.dg/frame_overflow.adb
index 4172fc013ce..286c93d5983 100644
--- a/gcc/testsuite/gnat.dg/frame_overflow.adb
+++ b/gcc/testsuite/gnat.dg/frame_overflow.adb
@@ -1,15 +1,17 @@
-- { dg-do compile }
+with System;
+
procedure frame_overflow is
- type Bitpos_Range_T is new Positive;
+ type Bitpos_Range_T is range 1..2**(System.Word_Size-1)-1;
type Bitmap_Array_T is array (Bitpos_Range_T) of Boolean;
type Bitmap_T is record
Bits : Bitmap_Array_T := (others => False);
end record;
- function -- { dg-error "too large" "" }
+ function -- { dg-error "too large" }
Set_In (Bitmap : Bitmap_T; Bitpos : Bitpos_Range_T) return Bitmap_T
is
Result: Bitmap_T := Bitmap;
@@ -18,7 +20,7 @@ procedure frame_overflow is
return Result;
end;
- function -- { dg-error "too large" "" }
+ function -- { dg-error "too large" }
Negate (Bitmap : Bitmap_T) return Bitmap_T is
Result: Bitmap_T;
begin
diff --git a/gcc/testsuite/gnat.dg/pack3.adb b/gcc/testsuite/gnat.dg/pack3.adb
new file mode 100644
index 00000000000..06f71cbe91d
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/pack3.adb
@@ -0,0 +1,31 @@
+-- { dg-do run }
+
+procedure Pack3 is
+
+ type U32 is mod 2 ** 32;
+
+ type Key is record
+ Value : U32;
+ Valid : Boolean;
+ end record;
+
+ type Key_Buffer is record
+ Current, Latch : Key;
+ end record;
+
+ type Block is record
+ Keys : Key_Buffer;
+ Stamp : U32;
+ end record;
+ pragma Pack (Block);
+
+ My_Block : Block;
+ My_Stamp : constant := 16#01234567#;
+
+begin
+ My_Block.Stamp := My_Stamp;
+ My_Block.Keys.Latch := My_Block.Keys.Current;
+ if My_Block.Stamp /= My_Stamp then
+ raise Program_Error;
+ end if;
+end;
diff --git a/gcc/testsuite/gnat.dg/pack4.adb b/gcc/testsuite/gnat.dg/pack4.adb
new file mode 100644
index 00000000000..2c73e1dd4ea
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/pack4.adb
@@ -0,0 +1,38 @@
+-- { dg-do run }
+
+procedure Pack4 is
+
+ type Time_T is record
+ Hour : Integer;
+ end record;
+
+ type Date_And_Time_T is record
+ Date : Integer;
+ Time : Time_T;
+ end record;
+
+ pragma Pack(Date_And_Time_T);
+
+ procedure
+ Assign_Hour_Of (T : out Time_T)
+ is
+ begin
+ T.Hour := 44;
+ end;
+
+ procedure
+ Clobber_Hour_Of (DT: out Date_And_Time_T)
+ is
+ begin
+ Assign_Hour_Of (Dt.Time);
+ end;
+
+ DT : Date_And_Time_T;
+
+begin
+ DT.Time.Hour := 22;
+ Clobber_Hour_Of (DT);
+ if DT.Time.Hour /= 44 then
+ raise Program_Error;
+ end if;
+end;
diff --git a/gcc/testsuite/gnat.dg/range_check2.adb b/gcc/testsuite/gnat.dg/range_check2.adb
new file mode 100644
index 00000000000..33172f155e5
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/range_check2.adb
@@ -0,0 +1,13 @@
+-- { dg-do compile }
+-- { dg-options "-O2" }
+
+procedure Range_Check2 is
+
+ subtype Block_Subtype is String(1 .. 6);
+ type Color is (Black, Red, Green, Yellow, Blue, Magenta, Cyan, White);
+ Foregrnd_Color : Color := White;
+ Block : Block_Subtype := "123456";
+
+begin
+ Foregrnd_Color := Color'Val(Integer'Value(Block(5 .. 6)));
+end;
diff --git a/gcc/testsuite/gnat.dg/small_alignment.adb b/gcc/testsuite/gnat.dg/small_alignment.adb
new file mode 100644
index 00000000000..fbe1c21457c
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/small_alignment.adb
@@ -0,0 +1,28 @@
+-- { dg-do run }
+-- { dg-options "-gnatws" }
+
+procedure Small_Alignment is
+
+ type My_Integer is new Integer;
+ for My_Integer'Alignment use 1;
+
+ function Set_A return My_Integer is
+ begin
+ return 12;
+ end;
+
+ function Set_B return My_Integer is
+ begin
+ return 6;
+ end;
+
+ C : Character;
+ A : My_Integer := Set_A;
+ B : My_Integer := Set_B;
+
+begin
+ A := A * B / 2;
+ if A /= 36 then
+ raise Program_Error;
+ end if;
+end;
diff --git a/gcc/testsuite/gnat.dg/specs/alignment2.ads b/gcc/testsuite/gnat.dg/specs/alignment2.ads
new file mode 100644
index 00000000000..8dce1a8c366
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/specs/alignment2.ads
@@ -0,0 +1,47 @@
+-- { dg-do compile }
+
+with Interfaces; use Interfaces;
+
+package Alignment2 is
+
+ -- warning
+ type R1 is record
+ A, B, C, D : Integer_8;
+ end record;
+ for R1'Size use 32;
+ for R1'Alignment use 32; -- { dg-warning "suspiciously large alignment" }
+
+ -- warning
+ type R2 is record
+ A, B, C, D : Integer_8;
+ end record;
+ for R2'Alignment use 32; -- { dg-warning "suspiciously large alignment" }
+
+ -- OK, big size
+ type R3 is record
+ A, B, C, D : Integer_8;
+ end record;
+ for R3'Size use 32 * 8;
+ for R3'Alignment use 32;
+
+ -- OK, big size
+ type R4 is record
+ A, B, C, D, E, F, G, H : Integer_32;
+ end record;
+ for R4'Alignment use 32;
+
+ -- warning
+ type I1 is new Integer_32;
+ for I1'Size use 32;
+ for I1'Alignment use 32; -- { dg-warning "suspiciously large alignment" }
+
+ -- warning
+ type I2 is new Integer_32;
+ for I2'Alignment use 32; -- { dg-warning "suspiciously large alignment" }
+
+ -- OK, big size
+ type I3 is new Integer_32;
+ for I3'Size use 32 * 8;
+ for I3'Alignment use 32;
+
+end Alignment2;
diff --git a/gcc/testsuite/gnat.dg/specs/pack33.ads b/gcc/testsuite/gnat.dg/specs/pack33.ads
new file mode 100644
index 00000000000..d5255aa4431
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/specs/pack33.ads
@@ -0,0 +1,27 @@
+-- { dg-do compile }
+
+package Pack33 is
+
+ Bits : constant := 33;
+
+ type Bits_33 is mod 2 ** Bits;
+ for Bits_33'Size use Bits;
+
+ type Cluster is record
+ E0, E1, E2, E3, E4, E5, E6, E7 : Bits_33;
+ end record;
+
+ for Cluster use record
+ E0 at 0 range 0 * Bits .. 0 * Bits + Bits - 1;
+ E1 at 0 range 1 * Bits .. 1 * Bits + Bits - 1;
+ E2 at 0 range 2 * Bits .. 2 * Bits + Bits - 1;
+ E3 at 0 range 3 * Bits .. 3 * Bits + Bits - 1;
+ E4 at 0 range 4 * Bits .. 4 * Bits + Bits - 1;
+ E5 at 0 range 5 * Bits .. 5 * Bits + Bits - 1;
+ E6 at 0 range 6 * Bits .. 6 * Bits + Bits - 1;
+ E7 at 0 range 7 * Bits .. 7 * Bits + Bits - 1;
+ end record;
+
+ for Cluster'Size use Bits * 8;
+
+end Pack33;
diff --git a/gcc/testsuite/gnat.dg/uninit_func.adb b/gcc/testsuite/gnat.dg/uninit_func.adb
new file mode 100644
index 00000000000..9c9ee341143
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/uninit_func.adb
@@ -0,0 +1,13 @@
+-- { dg-do compile }
+-- { dg-options "-O -Wall" }
+
+function uninit_func (A, B : Boolean) return Boolean is
+ C : Boolean; -- { dg-warning "may be used uninitialized" }
+begin
+ if A then
+ C := False;
+ elsif B then
+ C := True;
+ end if;
+ return C;
+end;
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 20bcdeaee88..e2667ff9417 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2227,6 +2227,45 @@ proc check_effective_target_pthread_h { } {
}]
}
+# Return 1 if the target can truncate a file from a file-descriptor,
+# as used by libgfortran/io/unix.c:fd_truncate; i.e. ftruncate or
+# chsize. We test for a trivially functional truncation; no stubs.
+# As libgfortran uses _FILE_OFFSET_BITS 64, we do too; it'll cause a
+# different function to be used.
+
+proc check_effective_target_fd_truncate { } {
+ set prog {
+ #define _FILE_OFFSET_BITS 64
+ #include <unistd.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ int main ()
+ {
+ FILE *f = fopen ("tst.tmp", "wb");
+ int fd;
+ const char t[] = "test writing more than ten characters";
+ char s[11];
+ fd = fileno (f);
+ write (fd, t, sizeof (t) - 1);
+ lseek (fd, 0, 0);
+ if (ftruncate (fd, 10) != 0)
+ exit (1);
+ close (fd);
+ f = fopen ("tst.tmp", "rb");
+ if (fread (s, 1, sizeof (s), f) != 10 || strncmp (s, t, 10) != 0)
+ exit (1);
+ exit (0);
+ }
+ }
+
+ if { [check_runtime ftruncate $prog] } {
+ return 1;
+ }
+
+ regsub "ftruncate" $prog "chsize" prog
+ return [check_runtime chsize $prog]
+}
+
# Add to FLAGS all the target-specific flags needed to access the c99 runtime.
proc add_options_for_c99_runtime { flags } {
diff --git a/gcc/testsuite/lib/treelang-dg.exp b/gcc/testsuite/lib/treelang-dg.exp
deleted file mode 100644
index 190eaad0a8c..00000000000
--- a/gcc/testsuite/lib/treelang-dg.exp
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2007
-# Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-
-load_lib gcc-dg.exp
-
-# Define gcc callbacks for dg.exp.
-
-proc treelang-dg-test { prog do_what extra_tool_flags } {
- return [gcc-dg-test-1 treelang_target_compile $prog $do_what $extra_tool_flags]
-}
-
-proc treelang-dg-prune { system text } {
- return [gcc-dg-prune $system $text]
-}
-
-# Utility routines.
-
-# Modified dg-runtest that can cycle through a list of optimization options
-# as c-torture does.
-proc treelang-dg-runtest { testcases default-extra-flags } {
- return [gcc-dg-runtest $testcases ${default-extra-flags}]
-}
diff --git a/gcc/testsuite/lib/treelang.exp b/gcc/testsuite/lib/treelang.exp
deleted file mode 100644
index d97ce153862..00000000000
--- a/gcc/testsuite/lib/treelang.exp
+++ /dev/null
@@ -1,269 +0,0 @@
-# Copyright (C) 1992, 1993, 1994, 1996, 1997, 2000, 2001, 2002, 2004,
-# 2007 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-
-# This file was written by Rob Savoye (rob@cygnus.com)
-# Currently maintained by James A. Morrison (ja2morri@uwaterloo.ca)
-
-# Having this file here magically tells dejagnu that the treelang
-# directory is worthy of testing
-
-# This file is basically gcc.exp with gcc replaced with treelang.
-
-# This file is loaded by the tool init file (eg: unix.exp). It provides
-# default definitions for treelang_start, etc. and other supporting cast
-# members.
-
-# These globals are used by treelang_start if no compiler arguments are
-# provided. They are also used by the various testsuites to define the
-# environment: where to find stdio.h, libc.a, etc.
-
-load_lib libgloss.exp
-load_lib prune.exp
-load_lib gcc-defs.exp
-load_lib target-libpath.exp
-
-#
-# TREELANG_UNDER_TEST is the compiler under test.
-#
-
-#
-# default_treelang_version -- extract and print the version number of the compiler
-#
-
-proc default_treelang_version { } {
- global TREELANG_UNDER_TEST
-
- treelang_init
-
- # ignore any arguments after the command
- set compiler [lindex $TREELANG_UNDER_TEST 0]
-
- if ![is_remote host] {
- set compiler_name [which $compiler]
- } else {
- set compiler_name $compiler
- }
-
- # verify that the compiler exists
- if { $compiler_name != 0 } then {
- set tmp [remote_exec host "$compiler -v"]
- set status [lindex $tmp 0]
- set output [lindex $tmp 1]
- regexp " version \[^\n\r\]*" $output version
- if { $status == 0 && [info exists version] } then {
- clone_output "$compiler_name $version\n"
- } else {
- clone_output "Couldn't determine version of $compiler_name: $output\n"
- }
- } else {
- # compiler does not exist (this should have already been detected)
- warning "$compiler does not exist"
- }
-}
-
-# treelang_init -- called at the start of each .exp script.
-#
-# There currently isn't much to do, but always using it allows us to
-# make some enhancements without having to go back and rewrite the scripts.
-#
-
-set treelang_initialized 0
-
-proc treelang_init { args } {
- global tmpdir
- global libdir
- global gluefile wrap_flags
- global treelang_initialized
- global TREELANG_UNDER_TEST
- global TOOL_EXECUTABLE
- global treelang_libgcc_s_path
-
-
- # We set LC_ALL and LANG to C so that we get the same error messages as expected.
- setenv LC_ALL C
- setenv LANG C
-
-
- if { $treelang_initialized == 1 } { return; }
-
- if ![info exists TREELANG_UNDER_TEST] then {
- if [info exists TOOL_EXECUTABLE] {
- set TREELANG_UNDER_TEST $TOOL_EXECUTABLE
- } else {
- set TREELANG_UNDER_TEST [find_gcc]
- }
- }
-
- if ![info exists tmpdir] then {
- set tmpdir /tmp
- }
-
- treelang_maybe_build_wrapper "${tmpdir}/treelang-testglue.o"
-
- set treelang_libgcc_s_path \
- [gcc-set-multilib-library-path $TREELANG_UNDER_TEST]
-}
-
-proc treelang_target_compile { source dest type options } {
- global rootme
- global tmpdir
- global gluefile wrap_flags
- global srcdir
- global TREELANG_UNDER_TEST
- global TOOL_OPTIONS
- global ld_library_path
- global treelang_libgcc_s_path
-
- set ld_library_path ".:${treelang_libgcc_s_path}"
- set_ld_library_path_env_vars
-
- if { [target_info needs_status_wrapper]!="" && [info exists gluefile] } {
- lappend options "libs=${gluefile}"
- lappend options "ldflags=$wrap_flags"
- }
-
- # TOOL_OPTIONS must come first, so that it doesn't override testcase
- # specific options.
- if [info exists TOOL_OPTIONS] {
- set options [concat "{additional_flags=$TOOL_OPTIONS}" $options]
- }
-
- # If we have built libtreelang along with the compiler (which usually
- # _is not_ the case on Mac OS X systems), point the test harness
- # at it (and associated headers).
-
- return [target_compile $source $dest $type $options]
-}
-
-#
-# treelang_pass -- utility to record a testcase passed
-#
-
-proc treelang_pass { testcase cflags } {
- if { "$cflags" == "" } {
- pass "$testcase"
- } else {
- pass "$testcase, $cflags"
- }
-}
-
-#
-# treelang_fail -- utility to record a testcase failed
-#
-
-proc treelang_fail { testcase cflags } {
- if { "$cflags" == "" } {
- fail "$testcase"
- } else {
- fail "$testcase, $cflags"
- }
-}
-
-#
-# treelang_finish -- called at the end of every .exp script that calls treelang_init
-#
-# The purpose of this proc is to hide all quirks of the testing environment
-# from the testsuites. It also exists to undo anything that treelang_init did
-# (that needs undoing).
-#
-
-proc treelang_finish { } {
- # The testing harness apparently requires this.
- global errorInfo
-
- if [info exists errorInfo] then {
- unset errorInfo
- }
-
- # Might as well reset these (keeps our caller from wondering whether
- # s/he has to or not).
- global prms_id bug_id
- set prms_id 0
- set bug_id 0
-}
-
-proc treelang_exit { } {
- global gluefile
-
- if [info exists gluefile] {
- file_on_build delete $gluefile
- unset gluefile
- }
-}
-
-# If this is an older version of dejagnu (without runtest_file_p),
-# provide one and assume the old syntax: foo1.exp bar1.c foo2.exp bar2.c.
-# This can be deleted after next dejagnu release.
-
-if { [info procs runtest_file_p] == "" } then {
- proc runtest_file_p { runtests testcase } {
- if { $runtests != "" && [regexp "\[.\]\[cC\]" $runtests] } then {
- if { [lsearch $runtests [file tail $testcase]] >= 0 } then {
- return 1
- } else {
- return 0
- }
- }
- return 1
- }
-}
-
-# Provide a definition of this if missing (delete after next dejagnu release).
-
-if { [info procs prune_warnings] == "" } then {
- proc prune_warnings { text } {
- return $text
- }
-}
-
-# Utility used by mike-gcc.exp and c-torture.exp.
-# Check the compiler(/assembler/linker) output for text indicating that
-# the testcase should be marked as "unsupported".
-#
-# When dealing with a large number of tests, it's difficult to weed out the
-# ones that are too big for a particular cpu (eg: 16 bit with a small amount
-# of memory). There are various ways to deal with this. Here's one.
-# Fortunately, all of the cases where this is likely to happen will be using
-# gld so we can tell what the error text will look like.
-
-proc ${tool}_check_unsupported_p { output } {
- if [regexp "(^|\n)\[^\n\]*: region \[^\n\]* is full" $output] {
- return "memory full"
- }
- return ""
-}
-
-# Prune messages from treelang that aren't useful.
-
-proc prune_treelang_output { text } {
- #send_user "Before:$text\n"
- regsub -all "(^|\n)\[^\n\]*: In (function|method) \[^\n\]*" $text "" text
- regsub -all "(^|\n)\[^\n\]*: At top level:\[^\n\]*" $text "" text
-
- # It would be nice to avoid passing anything to treelang that would cause it to
- # issue these messages (since ignoring them seems like a hack on our part),
- # but that's too difficult in the general case. For example, sometimes
- # you need to use -B to point treelang at crt0.o, but there are some targets
- # that don't have crt0.o.
- regsub -all "(^|\n)\[^\n\]*file path prefix \[^\n\]* never used" $text "" text
- regsub -all "(^|\n)\[^\n\]*linker input file unused since linking not done" $text "" text
-
- #send_user "After:$text\n"
-
- return $text
-}
-
diff --git a/gcc/testsuite/treelang/ChangeLog b/gcc/testsuite/treelang/ChangeLog
deleted file mode 100644
index e4ff2c66ffe..00000000000
--- a/gcc/testsuite/treelang/ChangeLog
+++ /dev/null
@@ -1,124 +0,0 @@
-2005-08-06 James A. Morrison <phython@gcc.gnu.org>
-
- * treetests.exp: Remove.
- * a01gcco01runpgm: Move to...
- * output/output-1.out: here.
- * a01gcci01.c: Move to...
- * output/output-1.c: here.
- * a01gcci01.tree: Move to...
- * output/output-1.tree: here.
- * output/output.exp: New.
-
-2005-07-23 James A. Morrison <phython@gcc.gnu.org>
-
- * compile/var_defs.tree: Remove extra lines.
-
-2005-07-19 James A. Morrison <phython@gcc.gnu.org>
-
- * compile/var_defs.tree: Remove duplicate variable.
- * compile/var_defs-2.tree: Add duplicate variable test.
-
-2005-03-22 James A. Morrison <phython@gcc.gnu.org>
-
- * compile/memory.tree: New test.
-
-2005-02-26 James A. Morrison <phython@gcc.gnu.org>
-
- * compile/var_defs: Add uninitialized variables.
-
-2005-02-26 James A. Morrison <phython@gcc.gnu.org>
-
- * compile/extrafunc.tree, compile/extravar.tree: New tests.
-
-2005-02-26 James A. Morrison <phython@gcc.gnu.org>
-
- * compile/unsigned.tree: New test.
-
-2005-02-24 James A. Morrison <phython@gcc.gnu.org>
-
- PR other/19896
- * execute/execute.exp: New file.
- * execute/funccall.tree, execute/funccall-2.tree, execute/initial.tree,
- execute/main.tree, execute/static.tree: New tests.
-
-2005-02-24 James A. Morrison <phython@gcc.gnu.org>
-
- PR other/19897
- * compile/exit.tree, compile/extref.tree, compile/function-1.tree,
- compile/syntax-1.tree: New tests.
-
-2004-10-02 James A. Morrison <phython@gcc.gnu.org>
-
- * compile/autofunc.tree: New File.
- * compile/badchar.tree: New File.
- * compile/externvar.tree: New File.
- * compile/mismatch.tree: New File.
- * compile/noproto.tree: New File.
- * compile/novar.tree: New File.
- * compile/var_defs.tree: Add duplicate variable.
-
-2004-07-31 James A. Morrison <phython@gcc.gnu.org>
-
- * compile/vars_def.tree: New File.
- * compile/badreturn.tree: New File.
-
-2004-01-18 James A. Morrison <ja2morri@uwaterloo.ca>
-
- * compile/compile.exp: New File.
- * compile/tabs.tree: Test whether the front end
- compiles code with tabs in it.
-
-2003-02-25 Tim Josling <tej@melbpc.org.au>
-
- * treetests.exp (run3): set options to force aggressive GC, to
- ensure GC is all set up correct,
-
-2002-05-07 Tim Josling <tej@melbpc.org.au>
-
- * Makefile.in: Fix copyright
- * a01gcci01.c: Ditto
- * a01gcci01.tree: Ditto
- * treetests.exp: Ditto
-
-2002-04-13 Tim Josling <tej@melbpc.org.au>
-
- * treetree.c (tree_code_create_function_initial)
- Remove duplicate call to layout_decl
-
-2001-12-02 Tim Josling <tej@melbpc.org.au>
-
- * Make-lang.in
- Ensure directory is built during install (installdirs dependency)
-
- * lex.l
- Work around poisoned malloc (undef IN_GCC)
- Remove fake definition of tree.
-
- * parse.y
- Work around poisoned malloc (undef IN_GCC)
-
- * tree1.c
- New front end interface.
- (top level) New structure lang_hooks.
- (tree_post_options) Remove.
- errorcount now a macro so do not define it.
- current_nesting_level => work_nesting_level due to clash.
-
- * treelang.h
- errorcount now a macro so do not reference it.
-
- * treetree.c
- Replace NULL_PTR by NULL.
- (tree_code_get_expression) Mark op3 unused.
- Do not init builtins.
-
-2001-06-11 Tim Josling <tej@melbpc.org.au>
-
- * treelang.exp (global) remove COBOL specific code.
-
-2001-05-24 Tim Josling <tej@melbpc.org.au>
-
- Created this directory and its tests. All derived from the cobol
- test swamp which was also all written by me.
-
-
diff --git a/gcc/testsuite/treelang/Makefile.in b/gcc/testsuite/treelang/Makefile.in
deleted file mode 100644
index 5230e378f4b..00000000000
--- a/gcc/testsuite/treelang/Makefile.in
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 3, or (at your option) any
-# later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-#
-# In other words, you are welcome to use, share and improve this program.
-# You are forbidden to forbid anyone else to use, share and improve
-# what you give them. Help stamp out software-hoarding!
-#
-#
-all:
-
-clean:
- -rm -f *.o *.diff *~ *.bad core *.x
-
-distclean: clean
- -rm -f Makefile config.status
diff --git a/gcc/testsuite/treelang/compile/autofunc.tree b/gcc/testsuite/treelang/compile/autofunc.tree
deleted file mode 100644
index 97da41e4120..00000000000
--- a/gcc/testsuite/treelang/compile/autofunc.tree
+++ /dev/null
@@ -1,6 +0,0 @@
-// { dg-do compile }
-automatic int bar (); // { dg-error "automatic" }
-
-bar () {
- return -12;
-}
diff --git a/gcc/testsuite/treelang/compile/badchar.tree b/gcc/testsuite/treelang/compile/badchar.tree
deleted file mode 100644
index 0121cc88ed0..00000000000
--- a/gcc/testsuite/treelang/compile/badchar.tree
+++ /dev/null
@@ -1,2 +0,0 @@
-// { dg-do compile }
-static int bar = 1*; // { dg-error "Unrecognized" }
diff --git a/gcc/testsuite/treelang/compile/badreturn.tree b/gcc/testsuite/treelang/compile/badreturn.tree
deleted file mode 100644
index 60d3b120c5d..00000000000
--- a/gcc/testsuite/treelang/compile/badreturn.tree
+++ /dev/null
@@ -1,14 +0,0 @@
-// { dg-do compile }
-
-external_definition void bar ();
-external_definition int gar (int arg0);
-
-bar
-{
- return 0; // { dg-warning "return" }
-}
-
-gar
-{
- return; // { dg-error "return" }
-}
diff --git a/gcc/testsuite/treelang/compile/compile.exp b/gcc/testsuite/treelang/compile/compile.exp
deleted file mode 100644
index 4a6c4279f5c..00000000000
--- a/gcc/testsuite/treelang/compile/compile.exp
+++ /dev/null
@@ -1,30 +0,0 @@
-# Tests for treelang; run from gcc/treelang/Make-lang.in => gcc/Makefile
-
-# Copyright (C) 2004, 2007 by The Free Software Foundation
-
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 3, or (at your option) any
-# later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-#
-# In other words, you are welcome to use, share and improve this program.
-# You are forbidden to forbid anyone else to use, share and improve
-# what you give them. Help stamp out software-hoarding!
-
-# Treelang tests that only need to compile.
-
-# Load support procs.
-load_lib treelang-dg.exp
-
-dg-init
-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.tree]] "" ""
-dg-finish
diff --git a/gcc/testsuite/treelang/compile/exit.tree b/gcc/testsuite/treelang/compile/exit.tree
deleted file mode 100644
index 355e772f5da..00000000000
--- a/gcc/testsuite/treelang/compile/exit.tree
+++ /dev/null
@@ -1,12 +0,0 @@
-// { dg-do compile }
-external_reference void exit (int code);
-
-static int foo ();
-
-foo
-{
- automatic int bar = +1;
- bar = bar + +1;
- exit (0); // Calling external references is currently broken.
- return bar;
-}
diff --git a/gcc/testsuite/treelang/compile/externvar.tree b/gcc/testsuite/treelang/compile/externvar.tree
deleted file mode 100644
index 1fa3d6e89fc..00000000000
--- a/gcc/testsuite/treelang/compile/externvar.tree
+++ /dev/null
@@ -1,4 +0,0 @@
-// { dg-do compile }
-external_reference int bar = 0; // { dg-error "initial" }
-
-static char barf = 1;
diff --git a/gcc/testsuite/treelang/compile/extrafunc.tree b/gcc/testsuite/treelang/compile/extrafunc.tree
deleted file mode 100644
index 30827a79dac..00000000000
--- a/gcc/testsuite/treelang/compile/extrafunc.tree
+++ /dev/null
@@ -1,25 +0,0 @@
-// { dg-do compile }
-// { dg-options "-O2 -fdump-tree-optimized -Wunused-function" }
-// Check to see that unused functions get removed at -O2 and
-// above.
-static int foo (int bar);
-static int baz (int aaa);
-external_definition int ext (int bbb);
-
-foo
-{
- return bar;
-}
-
-baz // { dg-warning "defined but not used" }
-{
- return foo (aaa);
-}
-
-ext
-{
- return foo (bbb);
-}
-
-// { dg-final { scan-tree-dump-not "baz" "optimized" } }
-// { dg-final { cleanup-tree-dump "optimized" } }
diff --git a/gcc/testsuite/treelang/compile/extravar.tree b/gcc/testsuite/treelang/compile/extravar.tree
deleted file mode 100644
index 2154de6b205..00000000000
--- a/gcc/testsuite/treelang/compile/extravar.tree
+++ /dev/null
@@ -1,14 +0,0 @@
-// { dg-do compile }
-// { dg-options "-fdump-tree-optimized -O1 -Wunused-variable" }
-external_definition int bar (int aaa, int ddd);
-
-static int foo = -3; // { dg-warning "defined but not used" }
-
-bar
-{
- automatic int ccc;
-
- return aaa + ddd + +3;
-}
-// { dg-final { scan-tree-dump-not "ccc" "optimized" } }
-// { dg-final { cleanup-tree-dump "optimized" } }
diff --git a/gcc/testsuite/treelang/compile/extref.tree b/gcc/testsuite/treelang/compile/extref.tree
deleted file mode 100644
index 085ab8f88fd..00000000000
--- a/gcc/testsuite/treelang/compile/extref.tree
+++ /dev/null
@@ -1,9 +0,0 @@
-// { dg-do compile }
-external_reference void abort ();
-
-static int foo (int a);
-
-foo
-{
- return a;
-}
diff --git a/gcc/testsuite/treelang/compile/full_unit.tree b/gcc/testsuite/treelang/compile/full_unit.tree
deleted file mode 100644
index 2d50323303f..00000000000
--- a/gcc/testsuite/treelang/compile/full_unit.tree
+++ /dev/null
@@ -1,16 +0,0 @@
-// { dg-do compile }
-// { dg-options "-funit-at-a-time" }
-external_definition int add (int arga, int argb);
-external_definition char sub (char argc, char argd);
-
-add
-{
- return arga + argb + +3;
-}
-
-sub
-{
- return argd - argc + +2;
-}
-// { dg-final { scan-assembler "add" } }
-// { dg-final { scan-assembler "sub" } }
diff --git a/gcc/testsuite/treelang/compile/function-1.tree b/gcc/testsuite/treelang/compile/function-1.tree
deleted file mode 100644
index 6bb4e370a48..00000000000
--- a/gcc/testsuite/treelang/compile/function-1.tree
+++ /dev/null
@@ -1,14 +0,0 @@
-// { dg-do compile }
-static int foo ();
-static int bar (int a);
-
-foo
-{
- return 1;
-}
-
-bar
-{
- a = a + foo ();
- return a;
-}
diff --git a/gcc/testsuite/treelang/compile/memory.tree b/gcc/testsuite/treelang/compile/memory.tree
deleted file mode 100644
index a18475be5b8..00000000000
--- a/gcc/testsuite/treelang/compile/memory.tree
+++ /dev/null
@@ -1,18 +0,0 @@
-external_definition int foo (int a, int b);
-external_definition int bar (int c, int d);
-external_definition int bart (int e);
-
-bar
-{
- return c + d;
-}
-
-foo
-{
- return a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +a - a +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b +b - b;
-}
-
-bart
-{
- return e;
-}
diff --git a/gcc/testsuite/treelang/compile/mismatch.tree b/gcc/testsuite/treelang/compile/mismatch.tree
deleted file mode 100644
index 7c62cd35b0d..00000000000
--- a/gcc/testsuite/treelang/compile/mismatch.tree
+++ /dev/null
@@ -1,8 +0,0 @@
-// { dg-do compile }
-static int bar ();
-static void barf ();
-
-bar {
- barf (1); // { dg-error "mismatch" "barf" }
- return -12;
-}
diff --git a/gcc/testsuite/treelang/compile/noproto.tree b/gcc/testsuite/treelang/compile/noproto.tree
deleted file mode 100644
index a704765a791..00000000000
--- a/gcc/testsuite/treelang/compile/noproto.tree
+++ /dev/null
@@ -1,5 +0,0 @@
-// { dg-do compile }
-foo // { dg-error "foo" "prototype" }
-{
- x = 3;
-}
diff --git a/gcc/testsuite/treelang/compile/novar.tree b/gcc/testsuite/treelang/compile/novar.tree
deleted file mode 100644
index 97ef611f8d3..00000000000
--- a/gcc/testsuite/treelang/compile/novar.tree
+++ /dev/null
@@ -1,5 +0,0 @@
-static void bar ();
-
-bar {
- x = 3; // { dg-error "x" "not defined" }
-}
diff --git a/gcc/testsuite/treelang/compile/syntax-1.tree b/gcc/testsuite/treelang/compile/syntax-1.tree
deleted file mode 100644
index 32efe744ca2..00000000000
--- a/gcc/testsuite/treelang/compile/syntax-1.tree
+++ /dev/null
@@ -1,9 +0,0 @@
-// { dg-do compile }
-external_reference void exit(int); // { dg-error "(parse|syntax) error" }
-
-static int foo (int a);
-
-foo
-{
- return a;
-}
diff --git a/gcc/testsuite/treelang/compile/tabs.tree b/gcc/testsuite/treelang/compile/tabs.tree
deleted file mode 100644
index 6294c15c49a..00000000000
--- a/gcc/testsuite/treelang/compile/tabs.tree
+++ /dev/null
@@ -1,11 +0,0 @@
-// { dg-do compile }
-external_definition int main(int argc);
-
-main {
- automatic int v1;
- automatic int v2;
- v1 = argc;
- v2 = 3;
-
- return v2;
-}
diff --git a/gcc/testsuite/treelang/compile/unsigned.tree b/gcc/testsuite/treelang/compile/unsigned.tree
deleted file mode 100644
index 67f3404df90..00000000000
--- a/gcc/testsuite/treelang/compile/unsigned.tree
+++ /dev/null
@@ -1,20 +0,0 @@
-// { dg-do compile }
-// { dg-options "-fdump-tree-gimple" }
-external_reference void abort ();
-external_reference void exit (int status);
-external_definition int main (int argc, int argv);
-
-main
-{
- automatic unsigned int bar = 2147483649;
- automatic unsigned int baz = 2147483649;
-
- if (bar == baz) {
- abort ();
- } else {
- exit (0);
- }
- return +1;
-}
-// { dg-final { scan-tree-dump-not "\\\(int\\\)" "gimple" } }
-// { dg-final { cleanup-tree-dump "gimple" } }
diff --git a/gcc/testsuite/treelang/compile/var_defs-2.tree b/gcc/testsuite/treelang/compile/var_defs-2.tree
deleted file mode 100644
index cfcd3124d8f..00000000000
--- a/gcc/testsuite/treelang/compile/var_defs-2.tree
+++ /dev/null
@@ -1,20 +0,0 @@
-// { dg-do compile }
-external_definition int first_nonzero (int arg5, int arg6);
-
-first_nonzero
-{
- automatic int y;
- automatic int y; // { dg-error "Duplicate" }
- if (arg5)
- {
- return arg5;
- }
- else
- {
- automatic int j;
- j = arg6;
- return j;
- }
- return arg6;
-}
-
diff --git a/gcc/testsuite/treelang/compile/var_defs.tree b/gcc/testsuite/treelang/compile/var_defs.tree
deleted file mode 100644
index 9c4e4e11dfc..00000000000
--- a/gcc/testsuite/treelang/compile/var_defs.tree
+++ /dev/null
@@ -1,24 +0,0 @@
-// { dg-do compile }
-// { dg-options "-Wuninitialized -O" }
-external_definition void boring (int arg0);
-external_definition char condition (char arg1, char arg2);
-
-boring
-{
- arg0 = +5 + +3; // Force 3 and 5 to be signed numbers.
- arg0 = arg0 + +3;
-}
-
-condition
-{
- if (arg1)
- {
- automatic int i; // { dg-warning "was declared here" }
- return i + 1; // { dg-warning "uninitialized" }
- }
- else
- {
- automatic int j; // { dg-warning "was declared here" }
- return j; // { dg-warning "uninitialized" }
- }
-}
diff --git a/gcc/testsuite/treelang/execute/execute.exp b/gcc/testsuite/treelang/execute/execute.exp
deleted file mode 100644
index 4a6c4279f5c..00000000000
--- a/gcc/testsuite/treelang/execute/execute.exp
+++ /dev/null
@@ -1,30 +0,0 @@
-# Tests for treelang; run from gcc/treelang/Make-lang.in => gcc/Makefile
-
-# Copyright (C) 2004, 2007 by The Free Software Foundation
-
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 3, or (at your option) any
-# later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-#
-# In other words, you are welcome to use, share and improve this program.
-# You are forbidden to forbid anyone else to use, share and improve
-# what you give them. Help stamp out software-hoarding!
-
-# Treelang tests that only need to compile.
-
-# Load support procs.
-load_lib treelang-dg.exp
-
-dg-init
-dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.tree]] "" ""
-dg-finish
diff --git a/gcc/testsuite/treelang/execute/funccall-2.tree b/gcc/testsuite/treelang/execute/funccall-2.tree
deleted file mode 100644
index 43911c9f4f8..00000000000
--- a/gcc/testsuite/treelang/execute/funccall-2.tree
+++ /dev/null
@@ -1,28 +0,0 @@
-// { dg-do run }
-external_definition int main (int argc);
-
-static int foo (int bba);
-
-foo
-{
- automatic int bar;
-
- bar = bba + +1;
- return bar;
-}
-
-main
-{
- automatic int aaa = +3;
-
- aaa = foo (argc);
-
- if (aaa == +2)
- {
- return +0;
- }
- else
- {
- return +1;
- }
-}
diff --git a/gcc/testsuite/treelang/execute/funccall.tree b/gcc/testsuite/treelang/execute/funccall.tree
deleted file mode 100644
index e806d3b583d..00000000000
--- a/gcc/testsuite/treelang/execute/funccall.tree
+++ /dev/null
@@ -1,33 +0,0 @@
-// { dg-do run }
-// Tests whether initializtion works properly.
-external_reference void abort ();
-external_reference void exit (int code);
-external_definition int main ();
-
-static int foo ();
-
-foo
-{
- automatic int bar;
-
- bar = +1;
- bar = bar + +1;
- return bar;
-}
-
-main
-{
- automatic int aaa;
-
- aaa = foo ();
-
- if (aaa == +2)
- {
- exit (0);
- }
- else
- {
- abort ();
- }
- return 0;
-}
diff --git a/gcc/testsuite/treelang/execute/initial.tree b/gcc/testsuite/treelang/execute/initial.tree
deleted file mode 100644
index 0daa9970019..00000000000
--- a/gcc/testsuite/treelang/execute/initial.tree
+++ /dev/null
@@ -1,20 +0,0 @@
-// { dg-do run }
-// Tests whether initializtion works properly.
-external_reference void abort ();
-external_reference void exit (int code);
-external_definition int main ();
-
-main
-{
- automatic int aaa = +3;
-
- if (aaa == +3)
- {
- exit (0);
- }
- else
- {
- abort ();
- }
- return 0;
-}
diff --git a/gcc/testsuite/treelang/execute/main.tree b/gcc/testsuite/treelang/execute/main.tree
deleted file mode 100644
index 549f9917895..00000000000
--- a/gcc/testsuite/treelang/execute/main.tree
+++ /dev/null
@@ -1,14 +0,0 @@
-// { dg-do run }
-external_definition int main (int argc);
-
-main
-{
- if (argc == 1)
- {
- return 0;
- }
- else
- {
- return argc;
- }
-}
diff --git a/gcc/testsuite/treelang/execute/static.tree b/gcc/testsuite/treelang/execute/static.tree
deleted file mode 100644
index 370f244604f..00000000000
--- a/gcc/testsuite/treelang/execute/static.tree
+++ /dev/null
@@ -1,32 +0,0 @@
-// { dg-do run }
-external_reference void abort ();
-external_reference void exit (int code);
-external_definition int main (int argc, int argv);
-
-static int foo ();
-
-foo
-{
- static int bar = +1;
-
- bar = bar + +1;
- return bar;
-}
-
-main
-{
- automatic int aaa = +3;
-
- aaa = foo ();
- aaa = foo ();
-
- if (aaa == 3)
- {
- exit (0);
- }
- else
- {
- abort ();
- }
- return 0;
-}
diff --git a/gcc/testsuite/treelang/output/output-1.c b/gcc/testsuite/treelang/output/output-1.c
deleted file mode 100644
index 7f12e87852f..00000000000
--- a/gcc/testsuite/treelang/output/output-1.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Driver for treelang test pgm */
-
-/*
-
- Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the
- Free Software Foundation; either version 3, or (at your option) any
- later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with GCC; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>.
-
- In other words, you are welcome to use, share and improve this program.
- You are forbidden to forbid anyone else to use, share and improve
- what you give them. Help stamp out software-hoarding!
-*/
-
-int add(int, int);
-int subtract(int, int);
-int first_nonzero(int, int);
-extern int printf(char *template, ...);
-
-int
-main (int argc, char *argv[])
-{
- printf("2:%d\n", add(1,1));
- printf("7:%d\n", add(3,4));
- printf("-1:%d\n", subtract(3,4));
- printf("1:%d\n", subtract(2,1));
- printf("3:%d\n", first_nonzero(0,3));
- printf("0:%d\n", first_nonzero(0,0));
- printf("1:%d\n", first_nonzero(1,0));
- printf("15:%d\n", double_plus_one(7));
- return 0;
-}
diff --git a/gcc/testsuite/treelang/output/output-1.out b/gcc/testsuite/treelang/output/output-1.out
deleted file mode 100644
index 3c2c743c77d..00000000000
--- a/gcc/testsuite/treelang/output/output-1.out
+++ /dev/null
@@ -1,8 +0,0 @@
-2:2
-7:7
--1:-1
-1:1
-3:3
-0:0
-1:1
-15:15
diff --git a/gcc/testsuite/treelang/output/output-1.tree b/gcc/testsuite/treelang/output/output-1.tree
deleted file mode 100644
index 9fef122e6ef..00000000000
--- a/gcc/testsuite/treelang/output/output-1.tree
+++ /dev/null
@@ -1,59 +0,0 @@
-// -*- c -*- c mode in emacs
-
-// Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc.
-// This program is free software; you can redistribute it and/or modify it
-// under the terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 3, or (at your option) any
-// later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License
-// along with GCC; see the file COPYING3. If not see
-// <http://www.gnu.org/licenses/>.
-//
-// In other words, you are welcome to use, share and improve this program.
-// You are forbidden to forbid anyone else to use, share and improve
-// what you give them. Help stamp out software-hoarding!
-
-
-external_definition int add(int arg1, int arg2);
-external_definition int subtract(int arg3, int arg4);
-external_definition int first_nonzero(int arg5, int arg6);
-external_definition int double_plus_one(int arg7);
-
-add
-{
- return arg1 + arg2;
-}
-
-
-subtract
-{
- return arg3 - arg4;
-}
-
-double_plus_one
-{
- automatic int aaa;
- aaa=add(arg7, arg7);
- aaa=add(aaa, aaa);
- aaa=subtract(subtract(aaa, arg7), arg7) + 1;
- return aaa;
-}
-
-first_nonzero
-{
- if (arg5)
- {
- return arg5;
- }
- else
- {
- }
- return arg6;
-}
-
diff --git a/gcc/testsuite/treelang/output/output.exp b/gcc/testsuite/treelang/output/output.exp
deleted file mode 100644
index 8284a8f9cbb..00000000000
--- a/gcc/testsuite/treelang/output/output.exp
+++ /dev/null
@@ -1,58 +0,0 @@
-proc test_treelang_output { testname srcfiles infile resfile args } {
- set comp_output [treelang_target_compile $srcfiles $testname executable $args]
- if { [treelang_check_compile $testname $args $testname $comp_output] == 0 } {
- return 0;
- }
-
- verbose "Expected output is in $resfile"
- set id [open $resfile r]
- set expected ""
- append expected [read $id]
- close $id
- set output ""
- set output [exec $testname $infile]
- regsub -all "\r" "$output" "" output
- regsub "\n*$" $expected "" expected
- regsub "\n*$" $output "" output
- regsub "^\n*" $expected "" expected
- regsub "^\n*" $output "" output
- regsub -all "\[ \t\]\[ \t\]*" $expected " " expected
- regsub -all "\[ \t\]*\n\n*" $expected "\n" expected
- regsub -all "\[ \t\]\[ \t\]*" $output " " output
- regsub -all "\[ \t\]*\n\n*" $output "\n" output
- verbose "expected is $expected"
- verbose "actual is $output"
-
- if { $expected == $output } {
- pass $testname
- } else {
- fail $testname
- }
- exec rm $testname
-}
-global srcdir subdir
-
-catch { lsort [glob -nocomplain ${srcdir}/${subdir}/*.out] } outfiles
-verbose "Output files are $outfiles"
-
-set prefix ""
-foreach x $outfiles {
- regsub "\\.out$" $x "" prefix
- set bname [file tail $prefix]
-
- if [file exists ${prefix}.inp] {
- set inpfile ${prefix}.inp
- } else {
- set inpfile ""
- }
-
- verbose "inpfile is $inpfile"
-
- set srcfiles [lsort [glob -nocomplain ${prefix}.{c,tree}]]
- verbose "source files are $srcfiles"
- test_treelang_output "treelang/$bname" $srcfiles $inpfile $x ""
-}
-
-# Local Variables:
-# tcl-indent-level:4
-# End:
diff --git a/gcc/tree-affine.c b/gcc/tree-affine.c
index b6c47d60618..3a4d897b2d9 100644
--- a/gcc/tree-affine.c
+++ b/gcc/tree-affine.c
@@ -279,7 +279,6 @@ tree_to_aff_combination (tree expr, tree type, aff_tree *comb)
case POINTER_PLUS_EXPR:
tree_to_aff_combination (TREE_OPERAND (expr, 0), type, comb);
tree_to_aff_combination (TREE_OPERAND (expr, 1), sizetype, &tmp);
- aff_combination_convert (&tmp, type);
aff_combination_add (comb, &tmp);
return;
@@ -350,29 +349,40 @@ add_elt_to_tree (tree expr, tree type, tree elt, double_int scale,
aff_tree *comb)
{
enum tree_code code;
+ tree type1 = type;
+ if (POINTER_TYPE_P (type))
+ type1 = sizetype;
scale = double_int_ext_for_comb (scale, comb);
- elt = fold_convert (type, elt);
+ elt = fold_convert (type1, elt);
if (double_int_one_p (scale))
{
if (!expr)
- return elt;
+ return fold_convert (type, elt);
+ if (POINTER_TYPE_P (type))
+ return fold_build2 (POINTER_PLUS_EXPR, type, expr, elt);
return fold_build2 (PLUS_EXPR, type, expr, elt);
}
if (double_int_minus_one_p (scale))
{
if (!expr)
- return fold_build1 (NEGATE_EXPR, type, elt);
+ return fold_convert (type, fold_build1 (NEGATE_EXPR, type1, elt));
+ if (POINTER_TYPE_P (type))
+ {
+ elt = fold_build1 (NEGATE_EXPR, type1, elt);
+ return fold_build2 (POINTER_PLUS_EXPR, type, expr, elt);
+ }
return fold_build2 (MINUS_EXPR, type, expr, elt);
}
if (!expr)
- return fold_build2 (MULT_EXPR, type, elt,
- double_int_to_tree (type, scale));
+ return fold_convert (type,
+ fold_build2 (MULT_EXPR, type1, elt,
+ double_int_to_tree (type1, scale)));
if (double_int_negative_p (scale))
{
@@ -382,8 +392,14 @@ add_elt_to_tree (tree expr, tree type, tree elt, double_int scale,
else
code = PLUS_EXPR;
- elt = fold_build2 (MULT_EXPR, type, elt,
- double_int_to_tree (type, scale));
+ elt = fold_build2 (MULT_EXPR, type1, elt,
+ double_int_to_tree (type1, scale));
+ if (POINTER_TYPE_P (type))
+ {
+ if (code == MINUS_EXPR)
+ elt = fold_build1 (NEGATE_EXPR, type1, elt);
+ return fold_build2 (POINTER_PLUS_EXPR, type, expr, elt);
+ }
return fold_build2 (code, type, expr, elt);
}
@@ -396,6 +412,9 @@ aff_combination_to_tree (aff_tree *comb)
tree expr = comb->rest;
unsigned i;
double_int off, sgn;
+ tree type1 = type;
+ if (POINTER_TYPE_P (type))
+ type1 = sizetype;
gcc_assert (comb->n == MAX_AFF_ELTS || comb->rest == NULL_TREE);
@@ -415,7 +434,7 @@ aff_combination_to_tree (aff_tree *comb)
off = comb->offset;
sgn = double_int_one;
}
- return add_elt_to_tree (expr, type, double_int_to_tree (type, off), sgn,
+ return add_elt_to_tree (expr, type, double_int_to_tree (type1, off), sgn,
comb);
}
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 844e7c14a0e..5e551aa4517 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -3031,24 +3031,28 @@ bsi_insert_on_edge_immediate (edge e, tree stmt)
static void
reinstall_phi_args (edge new_edge, edge old_edge)
{
- tree var, phi;
+ tree phi;
+ edge_var_map_vector v;
+ edge_var_map *vm;
+ int i;
- if (!PENDING_STMT (old_edge))
+ v = redirect_edge_var_map_vector (old_edge);
+ if (!v)
return;
- for (var = PENDING_STMT (old_edge), phi = phi_nodes (new_edge->dest);
- var && phi;
- var = TREE_CHAIN (var), phi = PHI_CHAIN (phi))
+ for (i = 0, phi = phi_nodes (new_edge->dest);
+ VEC_iterate (edge_var_map, v, i, vm) && phi;
+ i++, phi = PHI_CHAIN (phi))
{
- tree result = TREE_PURPOSE (var);
- tree arg = TREE_VALUE (var);
+ tree result = redirect_edge_var_map_result (vm);
+ tree arg = redirect_edge_var_map_def (vm);
gcc_assert (result == PHI_RESULT (phi));
add_phi_arg (phi, arg, new_edge);
}
- PENDING_STMT (old_edge) = NULL;
+ redirect_edge_var_map_clear (old_edge);
}
/* Returns the basic block after which the new basic block created
@@ -3267,8 +3271,28 @@ verify_expr (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED)
}
else if (TREE_CODE (t) == BIT_FIELD_REF)
{
- CHECK_OP (1, "invalid operand to BIT_FIELD_REF");
- CHECK_OP (2, "invalid operand to BIT_FIELD_REF");
+ if (!host_integerp (TREE_OPERAND (t, 1), 1)
+ || !host_integerp (TREE_OPERAND (t, 2), 1))
+ {
+ error ("invalid position or size operand to BIT_FIELD_REF");
+ return t;
+ }
+ else if (INTEGRAL_TYPE_P (TREE_TYPE (t))
+ && (TYPE_PRECISION (TREE_TYPE (t))
+ != TREE_INT_CST_LOW (TREE_OPERAND (t, 1))))
+ {
+ error ("integral result type precision does not match "
+ "field size of BIT_FIELD_REF");
+ return t;
+ }
+ if (!INTEGRAL_TYPE_P (TREE_TYPE (t))
+ && (GET_MODE_PRECISION (TYPE_MODE (TREE_TYPE (t)))
+ != TREE_INT_CST_LOW (TREE_OPERAND (t, 1))))
+ {
+ error ("mode precision of non-integral result does not "
+ "match field size of BIT_FIELD_REF");
+ return t;
+ }
}
t = TREE_OPERAND (t, 0);
@@ -5871,6 +5895,8 @@ new_label_mapper (tree decl, void *data)
m->base.from = decl;
m->to = create_artificial_label ();
LABEL_DECL_UID (m->to) = LABEL_DECL_UID (decl);
+ if (LABEL_DECL_UID (m->to) >= cfun->last_label_uid)
+ cfun->last_label_uid = LABEL_DECL_UID (m->to) + 1;
slot = htab_find_slot_with_hash (hash, m, m->hash, INSERT);
gcc_assert (*slot == NULL);
diff --git a/gcc/tree-cfgcleanup.c b/gcc/tree-cfgcleanup.c
index bcae4488dc1..aaaacd9fb33 100644
--- a/gcc/tree-cfgcleanup.c
+++ b/gcc/tree-cfgcleanup.c
@@ -748,7 +748,7 @@ remove_forwarder_block_with_phi (basic_block bb)
if (phi_alternatives_equal (dest, s, succ))
{
e = redirect_edge_and_branch (e, dest);
- PENDING_STMT (e) = NULL_TREE;
+ redirect_edge_var_map_clear (e);
continue;
}
@@ -771,15 +771,18 @@ remove_forwarder_block_with_phi (basic_block bb)
if (TREE_CODE (def) == SSA_NAME)
{
- tree var;
+ edge_var_map_vector head;
+ edge_var_map *vm;
+ size_t i;
/* If DEF is one of the results of PHI nodes removed during
redirection, replace it with the PHI argument that used
to be on E. */
- for (var = PENDING_STMT (e); var; var = TREE_CHAIN (var))
+ head = redirect_edge_var_map_vector (e);
+ for (i = 0; VEC_iterate (edge_var_map, head, i, vm); ++i)
{
- tree old_arg = TREE_PURPOSE (var);
- tree new_arg = TREE_VALUE (var);
+ tree old_arg = redirect_edge_var_map_result (vm);
+ tree new_arg = redirect_edge_var_map_def (vm);
if (def == old_arg)
{
@@ -792,7 +795,7 @@ remove_forwarder_block_with_phi (basic_block bb)
add_phi_arg (phi, def, s);
}
- PENDING_STMT (e) = NULL;
+ redirect_edge_var_map_clear (e);
}
/* Update the dominators. */
diff --git a/gcc/tree-chrec.c b/gcc/tree-chrec.c
index 37b7c0d671d..295fb7920c9 100644
--- a/gcc/tree-chrec.c
+++ b/gcc/tree-chrec.c
@@ -948,8 +948,9 @@ evolution_function_is_invariant_rec_p (tree chrec, int loopnum)
if (evolution_function_is_constant_p (chrec))
return true;
- if (TREE_CODE (chrec) == SSA_NAME
- && expr_invariant_in_loop_p (get_loop (loopnum), chrec))
+ if (TREE_CODE (chrec) == SSA_NAME
+ && (loopnum == 0
+ || expr_invariant_in_loop_p (get_loop (loopnum), chrec)))
return true;
if (TREE_CODE (chrec) == POLYNOMIAL_CHREC)
diff --git a/gcc/tree-flow-inline.h b/gcc/tree-flow-inline.h
index 1f8a3096cb9..be0515918c4 100644
--- a/gcc/tree-flow-inline.h
+++ b/gcc/tree-flow-inline.h
@@ -1725,7 +1725,30 @@ var_can_have_subvars (const_tree v)
return false;
}
-
+
+/* Return true, if the two ranges [POS1, SIZE1] and [POS2, SIZE2]
+ overlap. SIZE1 and/or SIZE2 can be (unsigned)-1 in which case the
+ range is open-ended. Otherwise return false. */
+
+static inline bool
+ranges_overlap_p (unsigned HOST_WIDE_INT pos1,
+ unsigned HOST_WIDE_INT size1,
+ unsigned HOST_WIDE_INT pos2,
+ unsigned HOST_WIDE_INT size2)
+{
+ if (pos1 >= pos2
+ && (size2 == (unsigned HOST_WIDE_INT)-1
+ || pos1 < (pos2 + size2)))
+ return true;
+ if (pos2 >= pos1
+ && (size1 == (unsigned HOST_WIDE_INT)-1
+ || pos2 < (pos1 + size1)))
+ return true;
+
+ return false;
+}
+
+
/* Return true if OFFSET and SIZE define a range that overlaps with some
portion of the range of SV, a subvar. If there was an exact overlap,
*EXACT will be set to true upon return. */
@@ -1842,4 +1865,20 @@ gimple_mem_ref_stats (const struct function *fn)
{
return &fn->gimple_df->mem_ref_stats;
}
+
+/* Given an edge_var_map V, return the PHI arg definition. */
+
+static inline tree
+redirect_edge_var_map_def (edge_var_map *v)
+{
+ return v->def;
+}
+
+/* Given an edge_var_map V, return the PHI result. */
+
+static inline tree
+redirect_edge_var_map_result (edge_var_map *v)
+{
+ return v->result;
+}
#endif /* _TREE_FLOW_INLINE_H */
diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h
index 555d3a32a57..1e3c92a91dc 100644
--- a/gcc/tree-flow.h
+++ b/gcc/tree-flow.h
@@ -879,7 +879,30 @@ typedef bool (*walk_use_def_chains_fn) (tree, tree, void *);
/* In tree-ssa-alias-warnings.c */
extern void strict_aliasing_warning_backend (void);
+
/* In tree-ssa.c */
+
+/* Mapping for redirected edges. */
+struct _edge_var_map GTY(())
+{
+ tree result; /* PHI result. */
+ tree def; /* PHI arg definition. */
+};
+typedef struct _edge_var_map edge_var_map;
+
+DEF_VEC_O(edge_var_map);
+DEF_VEC_ALLOC_O(edge_var_map, heap);
+
+/* A vector of var maps. */
+typedef VEC(edge_var_map, heap) *edge_var_map_vector;
+
+extern void redirect_edge_var_map_add (edge, tree, tree);
+extern void redirect_edge_var_map_clear (edge);
+extern void redirect_edge_var_map_dup (edge, edge);
+extern edge_var_map_vector redirect_edge_var_map_vector (edge);
+extern void redirect_edge_var_map_destroy (void);
+
+
extern void init_tree_ssa (void);
extern edge ssa_redirect_edge (edge, basic_block);
extern void flush_pending_stmts (edge);
@@ -892,6 +915,7 @@ extern void walk_use_def_chains (tree, walk_use_def_chains_fn, void *, bool);
extern bool stmt_references_memory_p (tree);
extern bool ssa_undefined_value_p (tree);
+
/* In tree-into-ssa.c */
void update_ssa (unsigned);
void delete_update_ssa (void);
diff --git a/gcc/tree-profile.c b/gcc/tree-profile.c
index 00fbd862ad9..57c9f5c0c5a 100644
--- a/gcc/tree-profile.c
+++ b/gcc/tree-profile.c
@@ -181,7 +181,7 @@ tree_gen_edge_profiler (int edgeno, edge e)
stmt2 = build_gimple_modify_stmt (gcov_type_tmp_var,
build2 (PLUS_EXPR, gcov_type_node,
gcov_type_tmp_var, one));
- stmt3 = build_gimple_modify_stmt (ref, gcov_type_tmp_var);
+ stmt3 = build_gimple_modify_stmt (unshare_expr (ref), gcov_type_tmp_var);
bsi_insert_on_edge (e, stmt1);
bsi_insert_on_edge (e, stmt2);
bsi_insert_on_edge (e, stmt3);
@@ -231,11 +231,10 @@ tree_gen_pow2_profiler (histogram_value value, unsigned tag, unsigned base)
{
tree stmt = value->hvalue.stmt;
block_stmt_iterator bsi = bsi_for_stmt (stmt);
- tree ref = tree_coverage_counter_ref (tag, base), ref_ptr;
+ tree ref_ptr = tree_coverage_counter_addr (tag, base);
tree call, val;
- ref_ptr = force_gimple_operand_bsi (&bsi,
- build_addr (ref, current_function_decl),
+ ref_ptr = force_gimple_operand_bsi (&bsi, ref_ptr,
true, NULL_TREE, true, BSI_SAME_STMT);
val = prepare_instrumented_value (&bsi, value);
call = build_call_expr (tree_pow2_profiler_fn, 2, ref_ptr, val);
@@ -251,11 +250,10 @@ tree_gen_one_value_profiler (histogram_value value, unsigned tag, unsigned base)
{
tree stmt = value->hvalue.stmt;
block_stmt_iterator bsi = bsi_for_stmt (stmt);
- tree ref = tree_coverage_counter_ref (tag, base), ref_ptr;
+ tree ref_ptr = tree_coverage_counter_addr (tag, base);
tree call, val;
- ref_ptr = force_gimple_operand_bsi (&bsi,
- build_addr (ref, current_function_decl),
+ ref_ptr = force_gimple_operand_bsi (&bsi, ref_ptr,
true, NULL_TREE, true, BSI_SAME_STMT);
val = prepare_instrumented_value (&bsi, value);
call = build_call_expr (tree_one_value_profiler_fn, 2, ref_ptr, val);
@@ -275,10 +273,9 @@ tree_gen_ic_profiler (histogram_value value, unsigned tag, unsigned base)
tree tmp1, stmt1, stmt2, stmt3;
tree stmt = value->hvalue.stmt;
block_stmt_iterator bsi = bsi_for_stmt (stmt);
- tree ref = tree_coverage_counter_ref (tag, base), ref_ptr;
+ tree ref_ptr = tree_coverage_counter_addr (tag, base);
- ref_ptr = force_gimple_operand_bsi (&bsi,
- build_addr (ref, current_function_decl),
+ ref_ptr = force_gimple_operand_bsi (&bsi, ref_ptr,
true, NULL_TREE, true, BSI_SAME_STMT);
/* Insert code:
@@ -367,11 +364,10 @@ tree_gen_average_profiler (histogram_value value, unsigned tag, unsigned base)
{
tree stmt = value->hvalue.stmt;
block_stmt_iterator bsi = bsi_for_stmt (stmt);
- tree ref = tree_coverage_counter_ref (tag, base), ref_ptr;
+ tree ref_ptr = tree_coverage_counter_addr (tag, base);
tree call, val;
- ref_ptr = force_gimple_operand_bsi (&bsi,
- build_addr (ref, current_function_decl),
+ ref_ptr = force_gimple_operand_bsi (&bsi, ref_ptr,
true, NULL_TREE,
true, BSI_SAME_STMT);
val = prepare_instrumented_value (&bsi, value);
@@ -388,11 +384,10 @@ tree_gen_ior_profiler (histogram_value value, unsigned tag, unsigned base)
{
tree stmt = value->hvalue.stmt;
block_stmt_iterator bsi = bsi_for_stmt (stmt);
- tree ref = tree_coverage_counter_ref (tag, base), ref_ptr;
+ tree ref_ptr = tree_coverage_counter_addr (tag, base);
tree call, val;
- ref_ptr = force_gimple_operand_bsi (&bsi,
- build_addr (ref, current_function_decl),
+ ref_ptr = force_gimple_operand_bsi (&bsi, ref_ptr,
true, NULL_TREE, true, BSI_SAME_STMT);
val = prepare_instrumented_value (&bsi, value);
call = build_call_expr (tree_ior_profiler_fn, 2, ref_ptr, val);
diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c
index ad8f2f0f190..4d771b7e5dd 100644
--- a/gcc/tree-scalar-evolution.c
+++ b/gcc/tree-scalar-evolution.c
@@ -1971,6 +1971,7 @@ instantiate_parameters_1 (struct loop *loop, tree chrec, int flags, htab_t cache
/* A parameter (or loop invariant and we do not want to include
evolutions in outer loops), nothing to do. */
if (!def_bb
+ || loop_depth (def_bb->loop_father) == 0
|| (!(flags & INSERT_SUPERLOOP_CHRECS)
&& !flow_bb_inside_loop_p (loop, def_bb)))
return chrec;
diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c
index 1f2d6c25e62..45142e8e14c 100644
--- a/gcc/tree-sra.c
+++ b/gcc/tree-sra.c
@@ -1280,9 +1280,6 @@ instantiate_element (struct sra_elt *elt)
TYPE_SIZE (elt->type),
DECL_SIZE (var))
: bitsize_int (0));
- if (!INTEGRAL_TYPE_P (elt->type)
- || TYPE_UNSIGNED (elt->type))
- BIT_FIELD_REF_UNSIGNED (elt->replacement) = 1;
}
/* For vectors, if used on the left hand side with BIT_FIELD_REF,
@@ -1677,12 +1674,17 @@ try_instantiate_multiple_fields (struct sra_elt *elt, tree f)
/* Create the field group as a single variable. */
- type = lang_hooks.types.type_for_mode (mode, 1);
+ /* We used to create a type for the mode above, but size turns
+ to be out not of mode-size. As we need a matching type
+ to build a BIT_FIELD_REF, use a nonstandard integer type as
+ fallback. */
+ type = lang_hooks.types.type_for_size (size, 1);
+ if (!type || TYPE_PRECISION (type) != size)
+ type = build_nonstandard_integer_type (size, 1);
gcc_assert (type);
var = build3 (BIT_FIELD_REF, type, NULL_TREE,
bitsize_int (size),
bitsize_int (bit));
- BIT_FIELD_REF_UNSIGNED (var) = 1;
block = instantiate_missing_elements_1 (elt, var, type);
gcc_assert (block && block->is_scalar);
@@ -1696,7 +1698,6 @@ try_instantiate_multiple_fields (struct sra_elt *elt, tree f)
TREE_TYPE (block->element), var,
bitsize_int (size),
bitsize_int (bit & ~alchk));
- BIT_FIELD_REF_UNSIGNED (block->replacement) = 1;
}
block->in_bitfld_block = 2;
@@ -1719,7 +1720,6 @@ try_instantiate_multiple_fields (struct sra_elt *elt, tree f)
+ (TREE_INT_CST_LOW
(DECL_FIELD_BIT_OFFSET (f))))
& ~alchk));
- BIT_FIELD_REF_UNSIGNED (fld->replacement) = TYPE_UNSIGNED (field_type);
fld->in_bitfld_block = 1;
}
@@ -2141,7 +2141,8 @@ sra_build_assignment (tree dst, tree src)
tree var, shift, width;
tree utype, stype, stmp, utmp, dtmp;
tree list, stmt;
- bool unsignedp = BIT_FIELD_REF_UNSIGNED (src);
+ bool unsignedp = (INTEGRAL_TYPE_P (TREE_TYPE (src))
+ ? TYPE_UNSIGNED (TREE_TYPE (src)) : true);
var = TREE_OPERAND (src, 0);
width = TREE_OPERAND (src, 1);
@@ -2491,6 +2492,7 @@ sra_build_elt_assignment (struct sra_elt *elt, tree src)
if (elt->in_bitfld_block == 2
&& TREE_CODE (src) == BIT_FIELD_REF)
{
+ tmp = src;
cst = TYPE_SIZE (TREE_TYPE (var));
cst2 = size_binop (MINUS_EXPR, TREE_OPERAND (src, 2),
TREE_OPERAND (dst, 2));
@@ -2536,8 +2538,7 @@ sra_build_elt_assignment (struct sra_elt *elt, tree src)
}
else
{
- src = fold_build3 (BIT_FIELD_REF, TREE_TYPE (var), src, cst, cst2);
- BIT_FIELD_REF_UNSIGNED (src) = 1;
+ src = fold_convert (TREE_TYPE (var), tmp);
}
return sra_build_assignment (var, src);
@@ -3014,6 +3015,8 @@ sra_explode_bitfield_assignment (tree var, tree vpos, bool to_var,
type = TREE_TYPE (infld);
if (TYPE_PRECISION (type) != TREE_INT_CST_LOW (flen))
type = lang_hooks.types.type_for_size (TREE_INT_CST_LOW (flen), 1);
+ else
+ type = unsigned_type_for (type);
if (TREE_CODE (infld) == BIT_FIELD_REF)
{
@@ -3031,7 +3034,6 @@ sra_explode_bitfield_assignment (tree var, tree vpos, bool to_var,
}
infld = fold_build3 (BIT_FIELD_REF, type, infld, flen, fpos);
- BIT_FIELD_REF_UNSIGNED (infld) = 1;
invar = size_binop (MINUS_EXPR, flp.field_pos, bpos);
if (flp.overlap_pos)
@@ -3039,7 +3041,6 @@ sra_explode_bitfield_assignment (tree var, tree vpos, bool to_var,
invar = size_binop (PLUS_EXPR, invar, vpos);
invar = fold_build3 (BIT_FIELD_REF, type, var, flen, invar);
- BIT_FIELD_REF_UNSIGNED (invar) = 1;
if (to_var)
st = sra_build_bf_assignment (invar, infld);
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c
index f9f1217c5fc..7cefbf83893 100644
--- a/gcc/tree-ssa-ccp.c
+++ b/gcc/tree-ssa-ccp.c
@@ -300,12 +300,21 @@ get_symbol_constant_value (tree sym)
{
if (TREE_STATIC (sym)
&& TREE_READONLY (sym)
- && !MTAG_P (sym))
+ && !MTAG_P (sym)
+ /* Check if a read-only definition may be overridden at
+ link and run time. */
+ && targetm.binds_local_p (sym))
{
tree val = DECL_INITIAL (sym);
if (val
&& ccp_decl_initial_min_invariant (val))
return val;
+ /* Variables declared 'const' without an initializer
+ have zero as the intializer. */
+ if (!val
+ && (INTEGRAL_TYPE_P (TREE_TYPE (sym))
+ || SCALAR_FLOAT_TYPE_P (TREE_TYPE (sym))))
+ return fold_convert (TREE_TYPE (sym), integer_zero_node);
}
return NULL_TREE;
diff --git a/gcc/tree-ssa-dse.c b/gcc/tree-ssa-dse.c
index 3e0f04be124..f2ec9a505c7 100644
--- a/gcc/tree-ssa-dse.c
+++ b/gcc/tree-ssa-dse.c
@@ -470,24 +470,23 @@ dse_optimize_stmt (struct dom_walk_data *walk_data,
vuse_vec_p vv;
tree stmt_lhs;
- if (LOADED_SYMS (use_stmt))
+ /* If use_stmt is or might be a nop assignment, e.g. for
+ struct { ... } S a, b, *p; ...
+ b = a; b = b;
+ or
+ b = a; b = *p; where p might be &b,
+ or
+ *p = a; *p = b; where p might be &b,
+ or
+ *p = *u; *p = *v; where p might be v, then USE_STMT
+ acts as a use as well as definition, so store in STMT
+ is not dead. */
+ if (LOADED_SYMS (use_stmt)
+ && bitmap_intersect_p (LOADED_SYMS (use_stmt),
+ STORED_SYMS (use_stmt)))
{
- tree use_base
- = get_base_address (GIMPLE_STMT_OPERAND (use_stmt, 0));
- /* If use_stmt is or might be a nop assignment, e.g. for
- struct { ... } S a, b, *p; ...
- b = a; b = b;
- or
- b = a; b = *p; where p might be &b, then USE_STMT
- acts as a use as well as definition, so store in STMT
- is not dead. */
- if (TREE_CODE (use_base) == VAR_DECL
- && bitmap_bit_p (LOADED_SYMS (use_stmt),
- DECL_UID (use_base)))
- {
- record_voperand_set (dse_gd->stores, &bd->stores, ann->uid);
- return;
- }
+ record_voperand_set (dse_gd->stores, &bd->stores, ann->uid);
+ return;
}
if (dump_file && (dump_flags & TDF_DETAILS))
diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c
index 7bcb9810e7a..9b406ce06ef 100644
--- a/gcc/tree-ssa-loop-ivopts.c
+++ b/gcc/tree-ssa-loop-ivopts.c
@@ -914,7 +914,12 @@ find_bivs (struct ivopts_data *data)
type = TREE_TYPE (PHI_RESULT (phi));
base = fold_convert (type, base);
if (step)
- step = fold_convert (type, step);
+ {
+ if (POINTER_TYPE_P (type))
+ step = fold_convert (sizetype, step);
+ else
+ step = fold_convert (type, step);
+ }
set_iv (data, PHI_RESULT (phi), base, step);
found = true;
@@ -1254,7 +1259,8 @@ find_interesting_uses_cond (struct ivopts_data *data, tree stmt, tree *cond_p)
}
/* Returns true if expression EXPR is obviously invariant in LOOP,
- i.e. if all its operands are defined outside of the LOOP. */
+ i.e. if all its operands are defined outside of the LOOP. LOOP
+ should not be the function body. */
bool
expr_invariant_in_loop_p (struct loop *loop, tree expr)
@@ -1262,6 +1268,8 @@ expr_invariant_in_loop_p (struct loop *loop, tree expr)
basic_block def_bb;
unsigned i, len;
+ gcc_assert (loop_depth (loop) > 0);
+
if (is_gimple_min_invariant (expr))
return true;
@@ -1522,8 +1530,8 @@ may_be_nonaddressable_p (tree expr)
and make them look addressable. After some processing the
non-addressability may be uncovered again, causing ADDR_EXPRs
of inappropriate objects to be built. */
- if (AGGREGATE_TYPE_P (TREE_TYPE (expr))
- && !AGGREGATE_TYPE_P (TREE_TYPE (TREE_OPERAND (expr, 0))))
+ if (is_gimple_reg (TREE_OPERAND (expr, 0))
+ || is_gimple_min_invariant (TREE_OPERAND (expr, 0)))
return true;
/* ... fall through ... */
@@ -2037,7 +2045,9 @@ add_candidate_1 (struct ivopts_data *data,
{
orig_type = TREE_TYPE (base);
type = generic_type_for (orig_type);
- if (type != orig_type)
+ /* Don't convert the base to the generic type for pointers as the generic
+ type is an integer type with the same size as the pointer type. */
+ if (type != orig_type && !POINTER_TYPE_P (orig_type))
{
base = fold_convert (type, base);
step = fold_convert (type, step);
@@ -2234,13 +2244,17 @@ add_iv_value_candidates (struct ivopts_data *data,
{
unsigned HOST_WIDE_INT offset;
tree base;
+ tree basetype;
add_candidate (data, iv->base, iv->step, false, use);
/* The same, but with initial value zero. Make such variable important,
since it is generic enough so that possibly many uses may be based
on it. */
- add_candidate (data, build_int_cst (TREE_TYPE (iv->base), 0),
+ basetype = TREE_TYPE (iv->base);
+ if (POINTER_TYPE_P (basetype))
+ basetype = sizetype;
+ add_candidate (data, build_int_cst (basetype, 0),
iv->step, true, use);
/* Third, try removing the constant offset. */
@@ -3668,10 +3682,13 @@ cand_value_at (struct loop *loop, struct iv_cand *cand, tree at, tree niter,
aff_tree step, delta, nit;
struct iv *iv = cand->iv;
tree type = TREE_TYPE (iv->base);
+ tree steptype = type;
+ if (POINTER_TYPE_P (type))
+ steptype = sizetype;
- tree_to_aff_combination (iv->step, type, &step);
+ tree_to_aff_combination (iv->step, steptype, &step);
tree_to_aff_combination (niter, TREE_TYPE (niter), &nit);
- aff_combination_convert (&nit, type);
+ aff_combination_convert (&nit, steptype);
aff_combination_mult (&nit, &step, &delta);
if (stmt_after_increment (loop, cand, at))
aff_combination_add (&delta, &step);
diff --git a/gcc/tree-ssa-loop-manip.c b/gcc/tree-ssa-loop-manip.c
index 91aac3eb354..835b0062d8a 100644
--- a/gcc/tree-ssa-loop-manip.c
+++ b/gcc/tree-ssa-loop-manip.c
@@ -104,7 +104,7 @@ create_iv (tree base, tree step, tree var, struct loop *loop,
}
/* Gimplify the step if necessary. We put the computations in front of the
loop (i.e. the step should be loop invariant). */
- step = force_gimple_operand (step, &stmts, true, var);
+ step = force_gimple_operand (step, &stmts, true, NULL_TREE);
if (stmts)
bsi_insert_on_edge_immediate (pe, stmts);
diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c
index a488257fdd4..4f2bc76ff42 100644
--- a/gcc/tree-ssa-pre.c
+++ b/gcc/tree-ssa-pre.c
@@ -394,7 +394,6 @@ static alloc_pool binary_node_pool;
static alloc_pool unary_node_pool;
static alloc_pool reference_node_pool;
static alloc_pool comparison_node_pool;
-static alloc_pool modify_expr_node_pool;
static bitmap_obstack grand_bitmap_obstack;
/* We can't use allocation pools to hold temporary CALL_EXPR objects, since
@@ -3046,64 +3045,6 @@ create_value_expr_from (tree expr, basic_block block, VEC (tree, gc) *vuses)
return vexpr;
}
-/* Return a copy of NODE that is stored in the temporary alloc_pool's.
- This is made recursively true, so that the operands are stored in
- the pool as well. */
-
-static tree
-poolify_tree (tree node)
-{
- switch (TREE_CODE (node))
- {
- case INDIRECT_REF:
- {
- tree temp = (tree) pool_alloc (reference_node_pool);
- memcpy (temp, node, tree_size (node));
- TREE_OPERAND (temp, 0) = poolify_tree (TREE_OPERAND (temp, 0));
- return temp;
- }
- break;
- case GIMPLE_MODIFY_STMT:
- {
- tree temp = (tree) pool_alloc (modify_expr_node_pool);
- memcpy (temp, node, tree_size (node));
- GIMPLE_STMT_OPERAND (temp, 0) =
- poolify_tree (GIMPLE_STMT_OPERAND (temp, 0));
- GIMPLE_STMT_OPERAND (temp, 1) =
- poolify_tree (GIMPLE_STMT_OPERAND (temp, 1));
- return temp;
- }
- break;
- case SSA_NAME:
- case INTEGER_CST:
- case STRING_CST:
- case REAL_CST:
- case FIXED_CST:
- case PARM_DECL:
- case VAR_DECL:
- case RESULT_DECL:
- return node;
- default:
- gcc_unreachable ();
- }
-}
-
-static tree modify_expr_template;
-
-/* Allocate a GIMPLE_MODIFY_STMT with TYPE, and operands OP1, OP2 in the
- alloc pools and return it. */
-static tree
-poolify_modify_stmt (tree op1, tree op2)
-{
- if (modify_expr_template == NULL)
- modify_expr_template = build_gimple_modify_stmt (op1, op2);
-
- GIMPLE_STMT_OPERAND (modify_expr_template, 0) = op1;
- GIMPLE_STMT_OPERAND (modify_expr_template, 1) = op2;
-
- return poolify_tree (modify_expr_template);
-}
-
/* For each real store operation of the form
*a = <value> that we see, create a corresponding fake store of the
@@ -3134,16 +3075,15 @@ insert_fake_stores (void)
virtual uses occur in abnormal phis. */
if (TREE_CODE (stmt) == GIMPLE_MODIFY_STMT
- && TREE_CODE (GIMPLE_STMT_OPERAND (stmt, 0)) == INDIRECT_REF
- && !AGGREGATE_TYPE_P (TREE_TYPE (GIMPLE_STMT_OPERAND (stmt, 0)))
- && TREE_CODE (TREE_TYPE (GIMPLE_STMT_OPERAND
- (stmt, 0))) != COMPLEX_TYPE)
+ && (TREE_CODE (GIMPLE_STMT_OPERAND (stmt, 0)) == INDIRECT_REF
+ || handled_component_p (GIMPLE_STMT_OPERAND (stmt, 0)))
+ && !AGGREGATE_TYPE_P (TREE_TYPE (GIMPLE_STMT_OPERAND (stmt, 0))))
{
ssa_op_iter iter;
def_operand_p defp;
tree lhs = GIMPLE_STMT_OPERAND (stmt, 0);
tree rhs = GIMPLE_STMT_OPERAND (stmt, 1);
- tree new_tree;
+ tree new_tree, new_lhs;
bool notokay = false;
FOR_EACH_SSA_DEF_OPERAND (defp, stmt, iter, SSA_OP_VIRTUAL_DEFS)
@@ -3162,15 +3102,16 @@ insert_fake_stores (void)
if (!storetemp || TREE_TYPE (rhs) != TREE_TYPE (storetemp))
{
storetemp = create_tmp_var (TREE_TYPE (rhs), "storetmp");
- if (TREE_CODE (TREE_TYPE (storetemp)) == VECTOR_TYPE)
+ if (TREE_CODE (TREE_TYPE (storetemp)) == VECTOR_TYPE
+ || TREE_CODE (TREE_TYPE (storetemp)) == COMPLEX_TYPE)
DECL_GIMPLE_REG_P (storetemp) = 1;
get_var_ann (storetemp);
}
- new_tree = poolify_modify_stmt (storetemp, lhs);
+ new_tree = build_gimple_modify_stmt (NULL_TREE, lhs);
+ new_lhs = make_ssa_name (storetemp, new_tree);
+ GIMPLE_STMT_OPERAND (new_tree, 0) = new_lhs;
- lhs = make_ssa_name (storetemp, new_tree);
- GIMPLE_STMT_OPERAND (new_tree, 0) = lhs;
create_ssa_artificial_load_stmt (new_tree, stmt, false);
NECESSARY (new_tree) = 0;
@@ -3196,25 +3137,21 @@ realify_fake_stores (void)
{
if (NECESSARY (stmt))
{
- block_stmt_iterator bsi;
- tree newstmt, tmp;
+ block_stmt_iterator bsi, bsi2;
+ tree rhs;
/* Mark the temp variable as referenced */
add_referenced_var (SSA_NAME_VAR (GIMPLE_STMT_OPERAND (stmt, 0)));
- /* Put the new statement in GC memory, fix up the
- SSA_NAME_DEF_STMT on it, and then put it in place of
- the old statement before the store in the IR stream
+ /* Put the statement before the store in the IR stream
as a plain ssa name copy. */
bsi = bsi_for_stmt (stmt);
bsi_prev (&bsi);
- tmp = GIMPLE_STMT_OPERAND (bsi_stmt (bsi), 1);
- newstmt = build_gimple_modify_stmt (GIMPLE_STMT_OPERAND (stmt, 0),
- tmp);
- SSA_NAME_DEF_STMT (GIMPLE_STMT_OPERAND (newstmt, 0)) = newstmt;
- bsi_insert_before (&bsi, newstmt, BSI_SAME_STMT);
- bsi = bsi_for_stmt (stmt);
- bsi_remove (&bsi, true);
+ rhs = GIMPLE_STMT_OPERAND (bsi_stmt (bsi), 1);
+ GIMPLE_STMT_OPERAND (stmt, 1) = rhs;
+ bsi2 = bsi_for_stmt (stmt);
+ bsi_remove (&bsi2, true);
+ bsi_insert_before (&bsi, stmt, BSI_SAME_STMT);
}
else
release_defs (stmt);
@@ -3243,19 +3180,6 @@ get_sccvn_value (tree name)
it. */
if (!valvh && !is_invariant)
{
- tree defstmt = SSA_NAME_DEF_STMT (val);
-
- gcc_assert (VN_INFO (val)->valnum == val);
- /* PHI nodes can't have vuses and attempts to iterate over
- their VUSE operands will crash. */
- if (TREE_CODE (defstmt) == PHI_NODE || IS_EMPTY_STMT (defstmt))
- defstmt = NULL;
- {
- tree defstmt2 = SSA_NAME_DEF_STMT (name);
- if (TREE_CODE (defstmt2) != PHI_NODE &&
- !ZERO_SSA_OPERANDS (defstmt2, SSA_OP_ALL_VIRTUALS))
- gcc_assert (defstmt);
- }
/* We lookup with the LHS, so do not use vn_lookup_or_add_with_stmt
here, as that will result in useless reference lookups. */
valvh = vn_lookup_or_add (val);
@@ -3562,7 +3486,6 @@ compute_avail (void)
{
if (make_values_for_stmt (stmt, block))
continue;
-
}
/* For any other statement that we don't recognize, simply
@@ -3571,12 +3494,9 @@ compute_avail (void)
FOR_EACH_SSA_TREE_OPERAND (op, stmt, iter, SSA_OP_DEF)
add_to_sets (op, op, NULL, TMP_GEN (block), AVAIL_OUT (block));
+ /* Also add all referenced SSA_NAMEs to EXP_GEN. */
FOR_EACH_SSA_TREE_OPERAND (op, stmt, iter, SSA_OP_USE)
- {
- add_to_sets (op, op, NULL, NULL , AVAIL_OUT (block));
- if (TREE_CODE (op) == SSA_NAME || can_PRE_operation (op))
- add_to_exp_gen (block, op);
- }
+ add_to_exp_gen (block, op);
}
/* Put the dominator children of BLOCK on the worklist of blocks
@@ -3835,11 +3755,7 @@ init_pre (bool do_fre)
tree_code_size (ARRAY_REF), 30);
comparison_node_pool = create_alloc_pool ("Comparison tree nodes",
tree_code_size (EQ_EXPR), 30);
- modify_expr_node_pool = create_alloc_pool ("GIMPLE_MODIFY_STMT nodes",
- tree_code_size (GIMPLE_MODIFY_STMT),
- 30);
obstack_init (&temp_call_expr_obstack);
- modify_expr_template = NULL;
FOR_ALL_BB (bb)
{
@@ -3871,7 +3787,6 @@ fini_pre (void)
free_alloc_pool (reference_node_pool);
free_alloc_pool (unary_node_pool);
free_alloc_pool (comparison_node_pool);
- free_alloc_pool (modify_expr_node_pool);
htab_delete (phi_translate_table);
remove_fake_exit_edges ();
diff --git a/gcc/tree-ssa-sccvn.c b/gcc/tree-ssa-sccvn.c
index 929354e763d..044be45c8bc 100644
--- a/gcc/tree-ssa-sccvn.c
+++ b/gcc/tree-ssa-sccvn.c
@@ -107,45 +107,29 @@ along with GCC; see the file COPYING3. If not see
typedef struct vn_tables_s
{
- htab_t unary;
- htab_t binary;
+ htab_t nary;
htab_t phis;
htab_t references;
- alloc_pool unary_op_pool;
- alloc_pool binary_op_pool;
+ struct obstack nary_obstack;
alloc_pool phis_pool;
alloc_pool references_pool;
} *vn_tables_t;
-/* Binary operations in the hashtable consist of two operands, an
+/* Nary operations in the hashtable consist of length operands, an
opcode, and a type. Result is the value number of the operation,
and hashcode is stored to avoid having to calculate it
repeatedly. */
-typedef struct vn_binary_op_s
+typedef struct vn_nary_op_s
{
- enum tree_code opcode;
+ ENUM_BITFIELD(tree_code) opcode : 16;
+ unsigned length : 16;
hashval_t hashcode;
- tree type;
- tree op0;
- tree op1;
tree result;
-} *vn_binary_op_t;
-typedef const struct vn_binary_op_s *const_vn_binary_op_t;
-
-/* Unary operations in the hashtable consist of a single operand, an
- opcode, and a type. Result is the value number of the operation,
- and hashcode is stored to avoid having to calculate it repeatedly. */
-
-typedef struct vn_unary_op_s
-{
- enum tree_code opcode;
- hashval_t hashcode;
tree type;
- tree op0;
- tree result;
-} *vn_unary_op_t;
-typedef const struct vn_unary_op_s *const_vn_unary_op_t;
+ tree op[4];
+} *vn_nary_op_t;
+typedef const struct vn_nary_op_s *const_vn_nary_op_t;
/* Phi nodes in the hashtable consist of their non-VN_TOP phi
arguments, and the basic block the phi is in. Result is the value
@@ -174,7 +158,6 @@ typedef struct vn_reference_op_struct
tree type;
tree op0;
tree op1;
- tree op2;
} vn_reference_op_s;
typedef vn_reference_op_s *vn_reference_op_t;
typedef const vn_reference_op_s *const_vn_reference_op_t;
@@ -315,8 +298,7 @@ vn_reference_op_eq (const void *p1, const void *p2)
return vro1->opcode == vro2->opcode
&& vro1->type == vro2->type
&& expressions_equal_p (vro1->op0, vro2->op0)
- && expressions_equal_p (vro1->op1, vro2->op1)
- && expressions_equal_p (vro1->op2, vro2->op2);
+ && expressions_equal_p (vro1->op1, vro2->op1);
}
/* Compute the hash for a reference operand VRO1 */
@@ -325,8 +307,7 @@ static hashval_t
vn_reference_op_compute_hash (const vn_reference_op_t vro1)
{
return iterative_hash_expr (vro1->op0, vro1->opcode)
- + iterative_hash_expr (vro1->op1, vro1->opcode)
- + iterative_hash_expr (vro1->op2, vro1->opcode);
+ + iterative_hash_expr (vro1->op1, vro1->opcode);
}
/* Return the hashcode for a given reference operation P1. */
@@ -723,118 +704,61 @@ vn_reference_insert (tree op, tree result, VEC (tree, gc) *vuses)
*slot = vr1;
}
-
-/* Return the stored hashcode for a unary operation. */
-
-static hashval_t
-vn_unary_op_hash (const void *p1)
-{
- const_vn_unary_op_t const vuo1 = (const_vn_unary_op_t) p1;
- return vuo1->hashcode;
-}
-
-/* Hash a unary operation P1 and return the result. */
+/* Compute and return the hash value for nary operation VBO1. */
static inline hashval_t
-vn_unary_op_compute_hash (const vn_unary_op_t vuo1)
-{
- return iterative_hash_expr (vuo1->op0, vuo1->opcode);
-}
-
-/* Return true if P1 and P2, two unary operations, are equivalent. */
-
-static int
-vn_unary_op_eq (const void *p1, const void *p2)
-{
- const_vn_unary_op_t const vuo1 = (const_vn_unary_op_t) p1;
- const_vn_unary_op_t const vuo2 = (const_vn_unary_op_t) p2;
- return vuo1->opcode == vuo2->opcode
- && vuo1->type == vuo2->type
- && expressions_equal_p (vuo1->op0, vuo2->op0);
-}
-
-/* Lookup OP in the current hash table, and return the resulting
- value number if it exists in the hash table. Return NULL_TREE if
- it does not exist in the hash table. */
-
-tree
-vn_unary_op_lookup (tree op)
-{
- void **slot;
- struct vn_unary_op_s vuo1;
-
- vuo1.opcode = TREE_CODE (op);
- vuo1.type = TREE_TYPE (op);
- vuo1.op0 = TREE_OPERAND (op, 0);
-
- if (TREE_CODE (vuo1.op0) == SSA_NAME)
- vuo1.op0 = SSA_VAL (vuo1.op0);
-
- vuo1.hashcode = vn_unary_op_compute_hash (&vuo1);
- slot = htab_find_slot_with_hash (current_info->unary, &vuo1, vuo1.hashcode,
- NO_INSERT);
- if (!slot && current_info == optimistic_info)
- slot = htab_find_slot_with_hash (valid_info->unary, &vuo1, vuo1.hashcode,
- NO_INSERT);
- if (!slot)
- return NULL_TREE;
- return ((vn_unary_op_t)*slot)->result;
-}
-
-/* Insert OP into the current hash table with a value number of
- RESULT. */
-
-void
-vn_unary_op_insert (tree op, tree result)
+vn_nary_op_compute_hash (const vn_nary_op_t vno1)
{
- void **slot;
- vn_unary_op_t vuo1 = (vn_unary_op_t) pool_alloc (current_info->unary_op_pool);
-
- vuo1->opcode = TREE_CODE (op);
- vuo1->type = TREE_TYPE (op);
- vuo1->op0 = TREE_OPERAND (op, 0);
- vuo1->result = result;
+ hashval_t hash = 0;
+ unsigned i;
- if (TREE_CODE (vuo1->op0) == SSA_NAME)
- vuo1->op0 = SSA_VAL (vuo1->op0);
+ for (i = 0; i < vno1->length; ++i)
+ if (TREE_CODE (vno1->op[i]) == SSA_NAME)
+ vno1->op[i] = SSA_VAL (vno1->op[i]);
- vuo1->hashcode = vn_unary_op_compute_hash (vuo1);
- slot = htab_find_slot_with_hash (current_info->unary, vuo1, vuo1->hashcode,
- INSERT);
- gcc_assert (!*slot);
- *slot = vuo1;
-}
+ if (vno1->length == 2
+ && commutative_tree_code (vno1->opcode)
+ && tree_swap_operands_p (vno1->op[0], vno1->op[1], false))
+ {
+ tree temp = vno1->op[0];
+ vno1->op[0] = vno1->op[1];
+ vno1->op[1] = temp;
+ }
-/* Compute and return the hash value for binary operation VBO1. */
+ for (i = 0; i < vno1->length; ++i)
+ hash += iterative_hash_expr (vno1->op[i], vno1->opcode);
-static inline hashval_t
-vn_binary_op_compute_hash (const vn_binary_op_t vbo1)
-{
- return iterative_hash_expr (vbo1->op0, vbo1->opcode)
- + iterative_hash_expr (vbo1->op1, vbo1->opcode);
+ return hash;
}
-/* Return the computed hashcode for binary operation P1. */
+/* Return the computed hashcode for nary operation P1. */
static hashval_t
-vn_binary_op_hash (const void *p1)
+vn_nary_op_hash (const void *p1)
{
- const_vn_binary_op_t const vbo1 = (const_vn_binary_op_t) p1;
- return vbo1->hashcode;
+ const_vn_nary_op_t const vno1 = (const_vn_nary_op_t) p1;
+ return vno1->hashcode;
}
-/* Compare binary operations P1 and P2 and return true if they are
+/* Compare nary operations P1 and P2 and return true if they are
equivalent. */
static int
-vn_binary_op_eq (const void *p1, const void *p2)
+vn_nary_op_eq (const void *p1, const void *p2)
{
- const_vn_binary_op_t const vbo1 = (const_vn_binary_op_t) p1;
- const_vn_binary_op_t const vbo2 = (const_vn_binary_op_t) p2;
- return vbo1->opcode == vbo2->opcode
- && vbo1->type == vbo2->type
- && expressions_equal_p (vbo1->op0, vbo2->op0)
- && expressions_equal_p (vbo1->op1, vbo2->op1);
+ const_vn_nary_op_t const vno1 = (const_vn_nary_op_t) p1;
+ const_vn_nary_op_t const vno2 = (const_vn_nary_op_t) p2;
+ unsigned i;
+
+ if (vno1->opcode != vno2->opcode
+ || vno1->type != vno2->type)
+ return false;
+
+ for (i = 0; i < vno1->length; ++i)
+ if (!expressions_equal_p (vno1->op[i], vno2->op[i]))
+ return false;
+
+ return true;
}
/* Lookup OP in the current hash table, and return the resulting
@@ -842,74 +766,54 @@ vn_binary_op_eq (const void *p1, const void *p2)
it does not exist in the hash table. */
tree
-vn_binary_op_lookup (tree op)
+vn_nary_op_lookup (tree op)
{
void **slot;
- struct vn_binary_op_s vbo1;
-
- vbo1.opcode = TREE_CODE (op);
- vbo1.type = TREE_TYPE (op);
- vbo1.op0 = TREE_OPERAND (op, 0);
- vbo1.op1 = TREE_OPERAND (op, 1);
-
- if (TREE_CODE (vbo1.op0) == SSA_NAME)
- vbo1.op0 = SSA_VAL (vbo1.op0);
- if (TREE_CODE (vbo1.op1) == SSA_NAME)
- vbo1.op1 = SSA_VAL (vbo1.op1);
-
- if (tree_swap_operands_p (vbo1.op0, vbo1.op1, false)
- && commutative_tree_code (vbo1.opcode))
- {
- tree temp = vbo1.op0;
- vbo1.op0 = vbo1.op1;
- vbo1.op1 = temp;
- }
-
- vbo1.hashcode = vn_binary_op_compute_hash (&vbo1);
- slot = htab_find_slot_with_hash (current_info->binary, &vbo1, vbo1.hashcode,
+ struct vn_nary_op_s vno1;
+ unsigned i;
+
+ vno1.opcode = TREE_CODE (op);
+ vno1.length = TREE_CODE_LENGTH (TREE_CODE (op));
+ vno1.type = TREE_TYPE (op);
+ for (i = 0; i < vno1.length; ++i)
+ vno1.op[i] = TREE_OPERAND (op, i);
+ vno1.hashcode = vn_nary_op_compute_hash (&vno1);
+ slot = htab_find_slot_with_hash (current_info->nary, &vno1, vno1.hashcode,
NO_INSERT);
if (!slot && current_info == optimistic_info)
- slot = htab_find_slot_with_hash (valid_info->binary, &vbo1, vbo1.hashcode,
+ slot = htab_find_slot_with_hash (valid_info->nary, &vno1, vno1.hashcode,
NO_INSERT);
if (!slot)
return NULL_TREE;
- return ((vn_binary_op_t)*slot)->result;
+ return ((vn_nary_op_t)*slot)->result;
}
/* Insert OP into the current hash table with a value number of
RESULT. */
void
-vn_binary_op_insert (tree op, tree result)
+vn_nary_op_insert (tree op, tree result)
{
+ unsigned length = TREE_CODE_LENGTH (TREE_CODE (op));
void **slot;
- vn_binary_op_t vbo1;
- vbo1 = (vn_binary_op_t) pool_alloc (current_info->binary_op_pool);
-
- vbo1->opcode = TREE_CODE (op);
- vbo1->type = TREE_TYPE (op);
- vbo1->op0 = TREE_OPERAND (op, 0);
- vbo1->op1 = TREE_OPERAND (op, 1);
- vbo1->result = result;
-
- if (TREE_CODE (vbo1->op0) == SSA_NAME)
- vbo1->op0 = SSA_VAL (vbo1->op0);
- if (TREE_CODE (vbo1->op1) == SSA_NAME)
- vbo1->op1 = SSA_VAL (vbo1->op1);
-
- if (tree_swap_operands_p (vbo1->op0, vbo1->op1, false)
- && commutative_tree_code (vbo1->opcode))
- {
- tree temp = vbo1->op0;
- vbo1->op0 = vbo1->op1;
- vbo1->op1 = temp;
- }
- vbo1->hashcode = vn_binary_op_compute_hash (vbo1);
- slot = htab_find_slot_with_hash (current_info->binary, vbo1, vbo1->hashcode,
+ vn_nary_op_t vno1;
+ unsigned i;
+
+ vno1 = obstack_alloc (&current_info->nary_obstack,
+ (sizeof (struct vn_nary_op_s)
+ - sizeof (tree) * (4 - length)));
+ vno1->opcode = TREE_CODE (op);
+ vno1->length = length;
+ vno1->type = TREE_TYPE (op);
+ for (i = 0; i < vno1->length; ++i)
+ vno1->op[i] = TREE_OPERAND (op, i);
+ vno1->result = result;
+ vno1->hashcode = vn_nary_op_compute_hash (vno1);
+ slot = htab_find_slot_with_hash (current_info->nary, vno1, vno1->hashcode,
INSERT);
gcc_assert (!*slot);
- *slot = vbo1;
+ *slot = vno1;
}
/* Compute a hashcode for PHI operation VP1 and return it. */
@@ -1139,7 +1043,7 @@ static bool
visit_unary_op (tree lhs, tree op)
{
bool changed = false;
- tree result = vn_unary_op_lookup (op);
+ tree result = vn_nary_op_lookup (op);
if (result)
{
@@ -1148,7 +1052,7 @@ visit_unary_op (tree lhs, tree op)
else
{
changed = set_ssa_val_to (lhs, lhs);
- vn_unary_op_insert (op, lhs);
+ vn_nary_op_insert (op, lhs);
}
return changed;
@@ -1161,7 +1065,7 @@ static bool
visit_binary_op (tree lhs, tree op)
{
bool changed = false;
- tree result = vn_binary_op_lookup (op);
+ tree result = vn_nary_op_lookup (op);
if (result)
{
@@ -1170,7 +1074,7 @@ visit_binary_op (tree lhs, tree op)
else
{
changed = set_ssa_val_to (lhs, lhs);
- vn_binary_op_insert (op, lhs);
+ vn_nary_op_insert (op, lhs);
}
return changed;
@@ -1259,7 +1163,10 @@ visit_reference_op_store (tree lhs, tree op, tree stmt)
changed |= set_ssa_val_to (vdef, vdef);
}
- vn_reference_insert (lhs, op, vdefs);
+ /* Do not insert structure copies into the tables. */
+ if (is_gimple_min_invariant (op)
+ || is_gimple_reg (op))
+ vn_reference_insert (lhs, op, vdefs);
}
else
{
@@ -1497,13 +1404,15 @@ simplify_unary_expression (tree rhs)
else if (TREE_CODE (rhs) == NOP_EXPR
|| TREE_CODE (rhs) == CONVERT_EXPR
|| TREE_CODE (rhs) == REALPART_EXPR
- || TREE_CODE (rhs) == IMAGPART_EXPR)
+ || TREE_CODE (rhs) == IMAGPART_EXPR
+ || TREE_CODE (rhs) == VIEW_CONVERT_EXPR)
{
/* We want to do tree-combining on conversion-like expressions.
Make sure we feed only SSA_NAMEs or constants to fold though. */
tree tem = valueize_expr (VN_INFO (op0)->expr);
if (UNARY_CLASS_P (tem)
|| BINARY_CLASS_P (tem)
+ || TREE_CODE (tem) == VIEW_CONVERT_EXPR
|| TREE_CODE (tem) == SSA_NAME
|| is_gimple_min_invariant (tem))
op0 = tem;
@@ -1555,7 +1464,8 @@ try_to_simplify (tree stmt, tree rhs)
/* Fallthrough for some codes that can operate on registers. */
if (!(TREE_CODE (rhs) == REALPART_EXPR
- || TREE_CODE (rhs) == IMAGPART_EXPR))
+ || TREE_CODE (rhs) == IMAGPART_EXPR
+ || TREE_CODE (rhs) == VIEW_CONVERT_EXPR))
break;
/* We could do a little more with unary ops, if they expand
into binary ops, but it's debatable whether it is worth it. */
@@ -1837,12 +1747,11 @@ process_scc (VEC (tree, heap) *scc)
{
changed = false;
iterations++;
- htab_empty (optimistic_info->unary);
- htab_empty (optimistic_info->binary);
+ htab_empty (optimistic_info->nary);
htab_empty (optimistic_info->phis);
htab_empty (optimistic_info->references);
- empty_alloc_pool (optimistic_info->unary_op_pool);
- empty_alloc_pool (optimistic_info->binary_op_pool);
+ obstack_free (&optimistic_info->nary_obstack, NULL);
+ gcc_obstack_init (&optimistic_info->nary_obstack);
empty_alloc_pool (optimistic_info->phis_pool);
empty_alloc_pool (optimistic_info->references_pool);
for (i = 0; VEC_iterate (tree, scc, i, var); i++)
@@ -1959,17 +1868,11 @@ static void
allocate_vn_table (vn_tables_t table)
{
table->phis = htab_create (23, vn_phi_hash, vn_phi_eq, free_phi);
- table->unary = htab_create (23, vn_unary_op_hash, vn_unary_op_eq, NULL);
- table->binary = htab_create (23, vn_binary_op_hash, vn_binary_op_eq, NULL);
+ table->nary = htab_create (23, vn_nary_op_hash, vn_nary_op_eq, NULL);
table->references = htab_create (23, vn_reference_hash, vn_reference_eq,
free_reference);
- table->unary_op_pool = create_alloc_pool ("VN unary operations",
- sizeof (struct vn_unary_op_s),
- 30);
- table->binary_op_pool = create_alloc_pool ("VN binary operations",
- sizeof (struct vn_binary_op_s),
- 30);
+ gcc_obstack_init (&table->nary_obstack);
table->phis_pool = create_alloc_pool ("VN phis",
sizeof (struct vn_phi_s),
30);
@@ -1984,11 +1887,9 @@ static void
free_vn_table (vn_tables_t table)
{
htab_delete (table->phis);
- htab_delete (table->unary);
- htab_delete (table->binary);
+ htab_delete (table->nary);
htab_delete (table->references);
- free_alloc_pool (table->unary_op_pool);
- free_alloc_pool (table->binary_op_pool);
+ obstack_free (&table->nary_obstack, NULL);
free_alloc_pool (table->phis_pool);
free_alloc_pool (table->references_pool);
}
diff --git a/gcc/tree-ssa-sccvn.h b/gcc/tree-ssa-sccvn.h
index 1f8f83b494c..54055d412a6 100644
--- a/gcc/tree-ssa-sccvn.h
+++ b/gcc/tree-ssa-sccvn.h
@@ -52,10 +52,8 @@ extern vn_ssa_aux_t VN_INFO_GET (tree);
bool run_scc_vn (void);
void free_scc_vn (void);
void switch_to_PRE_table (void);
-tree vn_binary_op_lookup (tree);
-void vn_binary_op_insert (tree, tree);
-tree vn_unary_op_lookup (tree);
-void vn_unary_op_insert (tree, tree);
+tree vn_nary_op_lookup (tree);
+void vn_nary_op_insert (tree, tree);
tree vn_reference_lookup (tree, VEC (tree, gc) *);
void vn_reference_insert (tree, tree, VEC (tree, gc) *);
VEC (tree, gc) *shared_vuses_from_stmt (tree);
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 70a9d3212c6..31ab38f8cfa 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -2630,25 +2630,6 @@ bitpos_of_field (const tree fdecl)
}
-/* Return true if an access to [ACCESSPOS, ACCESSSIZE]
- overlaps with a field at [FIELDPOS, FIELDSIZE] */
-
-static bool
-offset_overlaps_with_access (const unsigned HOST_WIDE_INT fieldpos,
- const unsigned HOST_WIDE_INT fieldsize,
- const unsigned HOST_WIDE_INT accesspos,
- const unsigned HOST_WIDE_INT accesssize)
-{
- if (fieldpos == accesspos && fieldsize == accesssize)
- return true;
- if (accesspos >= fieldpos && accesspos < (fieldpos + fieldsize))
- return true;
- if (accesspos < fieldpos && (accesspos + accesssize > fieldpos))
- return true;
-
- return false;
-}
-
/* Given a COMPONENT_REF T, return the constraint_expr for it. */
static void
@@ -2713,8 +2694,8 @@ get_constraint_for_component_ref (tree t, VEC(ce_s, heap) **results)
varinfo_t curr;
for (curr = get_varinfo (result->var); curr; curr = curr->next)
{
- if (offset_overlaps_with_access (curr->offset, curr->size,
- result->offset, bitmaxsize))
+ if (ranges_overlap_p (curr->offset, curr->size,
+ result->offset, bitmaxsize))
{
result->var = curr->id;
break;
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c
index 6c06df094b1..a036346dee2 100644
--- a/gcc/tree-ssa.c
+++ b/gcc/tree-ssa.c
@@ -45,32 +45,147 @@ along with GCC; see the file COPYING3. If not see
#include "tree-pass.h"
#include "toplev.h"
+/* Pointer map of variable mappings, keyed by edge. */
+static struct pointer_map_t *edge_var_maps;
+
+
+/* Add a mapping with PHI RESULT and PHI DEF associated with edge E. */
+
+void
+redirect_edge_var_map_add (edge e, tree result, tree def)
+{
+ void **slot;
+ edge_var_map_vector old_head, head;
+ edge_var_map new_node;
+
+ if (edge_var_maps == NULL)
+ edge_var_maps = pointer_map_create ();
+
+ slot = pointer_map_insert (edge_var_maps, e);
+ old_head = head = *slot;
+ if (!head)
+ {
+ head = VEC_alloc (edge_var_map, heap, 5);
+ *slot = head;
+ }
+ new_node.def = def;
+ new_node.result = result;
+
+ VEC_safe_push (edge_var_map, heap, head, &new_node);
+ if (old_head != head)
+ {
+ /* The push did some reallocation. Update the pointer map. */
+ *slot = head;
+ }
+}
+
+
+/* Clear the var mappings in edge E. */
+
+void
+redirect_edge_var_map_clear (edge e)
+{
+ void **slot;
+ edge_var_map_vector head;
+
+ if (!edge_var_maps)
+ return;
+
+ slot = pointer_map_contains (edge_var_maps, e);
+
+ if (slot)
+ {
+ head = *slot;
+ VEC_free (edge_var_map, heap, head);
+ *slot = NULL;
+ }
+}
+
+
+/* Duplicate the redirected var mappings in OLDE in NEWE.
+
+ Since we can't remove a mapping, let's just duplicate it. This assumes a
+ pointer_map can have multiple edges mapping to the same var_map (many to
+ one mapping), since we don't remove the previous mappings. */
+
+void
+redirect_edge_var_map_dup (edge newe, edge olde)
+{
+ void **new_slot, **old_slot; edge_var_map_vector head;
+
+ if (!edge_var_maps)
+ return;
+
+ new_slot = pointer_map_insert (edge_var_maps, newe);
+ old_slot = pointer_map_contains (edge_var_maps, olde);
+ if (!old_slot)
+ return;
+ head = *old_slot;
+
+ if (head)
+ *new_slot = VEC_copy (edge_var_map, heap, head);
+ else
+ *new_slot = VEC_alloc (edge_var_map, heap, 5);
+}
+
+
+/* Return the varable mappings for a given edge. If there is none, return
+ NULL. */
+
+edge_var_map_vector
+redirect_edge_var_map_vector (edge e)
+{
+ void **slot;
+
+ /* Hey, what kind of idiot would... you'd be surprised. */
+ if (!edge_var_maps)
+ return NULL;
+
+ slot = pointer_map_contains (edge_var_maps, e);
+ if (!slot)
+ return NULL;
+
+ return (edge_var_map_vector) *slot;
+}
+
+
+/* Clear the edge variable mappings. */
+
+void
+redirect_edge_var_map_destroy (void)
+{
+ if (edge_var_maps)
+ {
+ pointer_map_destroy (edge_var_maps);
+ edge_var_maps = NULL;
+ }
+}
+
+
/* Remove the corresponding arguments from the PHI nodes in E's
destination block and redirect it to DEST. Return redirected edge.
- The list of removed arguments is stored in PENDING_STMT (e). */
+ The list of removed arguments is stored in a vector accessed
+ through edge_var_maps. */
edge
ssa_redirect_edge (edge e, basic_block dest)
{
tree phi;
- tree list = NULL, *last = &list;
- tree src, dst, node;
+
+ redirect_edge_var_map_clear (e);
/* Remove the appropriate PHI arguments in E's destination block. */
for (phi = phi_nodes (e->dest); phi; phi = PHI_CHAIN (phi))
{
- if (PHI_ARG_DEF (phi, e->dest_idx) == NULL_TREE)
+ tree def = PHI_ARG_DEF (phi, e->dest_idx);
+
+ if (def == NULL_TREE)
continue;
- src = PHI_ARG_DEF (phi, e->dest_idx);
- dst = PHI_RESULT (phi);
- node = build_tree_list (dst, src);
- *last = node;
- last = &TREE_CHAIN (node);
+ redirect_edge_var_map_add (e, PHI_RESULT (phi), def);
}
e = redirect_edge_succ_nodup (e, dest);
- PENDING_STMT (e) = list;
return e;
}
@@ -81,20 +196,24 @@ ssa_redirect_edge (edge e, basic_block dest)
void
flush_pending_stmts (edge e)
{
- tree phi, arg;
+ tree phi;
+ edge_var_map_vector v;
+ edge_var_map *vm;
+ int i;
- if (!PENDING_STMT (e))
+ v = redirect_edge_var_map_vector (e);
+ if (!v)
return;
- for (phi = phi_nodes (e->dest), arg = PENDING_STMT (e);
- phi;
- phi = PHI_CHAIN (phi), arg = TREE_CHAIN (arg))
+ for (phi = phi_nodes (e->dest), i = 0;
+ phi && VEC_iterate (edge_var_map, v, i, vm);
+ phi = PHI_CHAIN (phi), i++)
{
- tree def = TREE_VALUE (arg);
+ tree def = redirect_edge_var_map_def (vm);
add_phi_arg (phi, def, e);
}
- PENDING_STMT (e) = NULL;
+ redirect_edge_var_map_clear (e);
}
/* Return true if SSA_NAME is malformed and mark it visited.
@@ -920,6 +1039,9 @@ delete_tree_ssa (void)
delete_mem_ref_stats (cfun);
cfun->gimple_df = NULL;
+
+ /* We no longer need the edge variable maps. */
+ redirect_edge_var_map_destroy ();
}
/* Helper function for useless_type_conversion_p. */
diff --git a/gcc/tree-vect-transform.c b/gcc/tree-vect-transform.c
index 883d7457077..a35e963b48f 100644
--- a/gcc/tree-vect-transform.c
+++ b/gcc/tree-vect-transform.c
@@ -2517,7 +2517,6 @@ vect_create_epilog_for_reduction (tree vect_def, tree stmt,
vec_size_in_bits = tree_low_cst (TYPE_SIZE (vectype), 1);
rhs = build3 (BIT_FIELD_REF, scalar_type, vec_temp, bitsize,
bitsize_zero_node);
- BIT_FIELD_REF_UNSIGNED (rhs) = TYPE_UNSIGNED (scalar_type);
epilog_stmt = build_gimple_modify_stmt (new_scalar_dest, rhs);
new_temp = make_ssa_name (new_scalar_dest, epilog_stmt);
GIMPLE_STMT_OPERAND (epilog_stmt, 0) = new_temp;
@@ -2532,7 +2531,6 @@ vect_create_epilog_for_reduction (tree vect_def, tree stmt,
tree rhs = build3 (BIT_FIELD_REF, scalar_type, vec_temp, bitsize,
bitpos);
- BIT_FIELD_REF_UNSIGNED (rhs) = TYPE_UNSIGNED (scalar_type);
epilog_stmt = build_gimple_modify_stmt (new_scalar_dest, rhs);
new_name = make_ssa_name (new_scalar_dest, epilog_stmt);
GIMPLE_STMT_OPERAND (epilog_stmt, 0) = new_name;
@@ -2568,7 +2566,6 @@ vect_create_epilog_for_reduction (tree vect_def, tree stmt,
bitpos = bitsize_zero_node;
rhs = build3 (BIT_FIELD_REF, scalar_type, new_temp, bitsize, bitpos);
- BIT_FIELD_REF_UNSIGNED (rhs) = TYPE_UNSIGNED (scalar_type);
epilog_stmt = build_gimple_modify_stmt (new_scalar_dest, rhs);
new_temp = make_ssa_name (new_scalar_dest, epilog_stmt);
GIMPLE_STMT_OPERAND (epilog_stmt, 0) = new_temp;
@@ -5877,8 +5874,6 @@ vectorizable_load (tree stmt, block_stmt_iterator *bsi, tree *vec_stmt,
bitpos = bitsize_zero_node;
vec_inv = build3 (BIT_FIELD_REF, scalar_type, new_temp,
bitsize, bitpos);
- BIT_FIELD_REF_UNSIGNED (vec_inv) =
- TYPE_UNSIGNED (scalar_type);
vec_dest =
vect_create_destination_var (scalar_dest, NULL_TREE);
new_stmt = build_gimple_modify_stmt (vec_dest, vec_inv);
diff --git a/gcc/tree-vn.c b/gcc/tree-vn.c
index 0c5061f70fc..2122a7e432e 100644
--- a/gcc/tree-vn.c
+++ b/gcc/tree-vn.c
@@ -173,10 +173,10 @@ vn_add (tree expr, tree val)
{
case tcc_comparison:
case tcc_binary:
- vn_binary_op_insert (expr, val);
+ vn_nary_op_insert (expr, val);
break;
case tcc_unary:
- vn_unary_op_insert (expr, val);
+ vn_nary_op_insert (expr, val);
break;
/* In the case of array-refs of constants, for example, we can
end up with no vuses. */
@@ -201,7 +201,7 @@ vn_add (tree expr, tree val)
}
else if (TREE_CODE (expr) == ADDR_EXPR)
{
- vn_unary_op_insert (expr, val);
+ vn_nary_op_insert (expr, val);
break;
}
/* FALLTHROUGH */
@@ -248,9 +248,9 @@ vn_lookup (tree expr)
{
case tcc_comparison:
case tcc_binary:
- return vn_binary_op_lookup (expr);
+ return vn_nary_op_lookup (expr);
case tcc_unary:
- return vn_unary_op_lookup (expr);
+ return vn_nary_op_lookup (expr);
break;
/* In the case of array-refs of constants, for example, we can
end up with no vuses. */
@@ -268,7 +268,7 @@ vn_lookup (tree expr)
else if (TREE_CODE (expr) == SSA_NAME)
return SSA_NAME_VALUE (expr);
else if (TREE_CODE (expr) == ADDR_EXPR)
- return vn_unary_op_lookup (expr);
+ return vn_nary_op_lookup (expr);
/* FALLTHROUGH */
default:
gcc_unreachable ();
diff --git a/gcc/tree.def b/gcc/tree.def
index f485e4b25c9..4a55ee0aaf9 100644
--- a/gcc/tree.def
+++ b/gcc/tree.def
@@ -389,10 +389,11 @@ DEFTREECODE (COMPONENT_REF, "component_ref", tcc_reference, 3)
/* Reference to a group of bits within an object. Similar to COMPONENT_REF
except the position is given explicitly rather than via a FIELD_DECL.
Operand 0 is the structure or union expression;
- operand 1 is a tree giving the number of bits being referenced;
- operand 2 is a tree giving the position of the first referenced bit.
- The field can be either a signed or unsigned field;
- BIT_FIELD_REF_UNSIGNED says which. */
+ operand 1 is a tree giving the constant number of bits being referenced;
+ operand 2 is a tree giving the constant position of the first referenced bit.
+ The result type width has to match the number of bits referenced.
+ If the result type is integral, its signedness specifies how it is extended
+ to its mode width. */
DEFTREECODE (BIT_FIELD_REF, "bit_field_ref", tcc_reference, 3)
/* The ordering of the following codes is optimized for the checking
diff --git a/gcc/tree.h b/gcc/tree.h
index 02682683769..de6654de80f 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -542,8 +542,6 @@ struct gimple_stmt GTY(())
all types
DECL_UNSIGNED in
all decls
- BIT_FIELD_REF_UNSIGNED in
- BIT_FIELD_REF
asm_written_flag:
@@ -1301,10 +1299,6 @@ extern void omp_clause_range_check_failed (const_tree, const char *, int,
#define DECL_UNSIGNED(NODE) \
(DECL_COMMON_CHECK (NODE)->base.unsigned_flag)
-/* In a BIT_FIELD_REF, means the bitfield is to be interpreted as unsigned. */
-#define BIT_FIELD_REF_UNSIGNED(NODE) \
- (BIT_FIELD_REF_CHECK (NODE)->base.unsigned_flag)
-
/* In integral and pointer types, means an unsigned type. */
#define TYPE_UNSIGNED(NODE) (TYPE_CHECK (NODE)->base.unsigned_flag)
@@ -4564,9 +4558,13 @@ extern tree get_unwidened (tree, tree);
extern tree get_narrower (tree, int *);
-/* Given an expression EXP that may be a COMPONENT_REF or an ARRAY_REF,
- look for nested component-refs or array-refs at constant positions
- and find the ultimate containing object, which is returned. */
+/* Return true if T is an expression that get_inner_reference handles. */
+
+extern int handled_component_p (const_tree);
+
+/* Given an expression EXP that is a handled_component_p,
+ look for the ultimate containing object, which is returned and specify
+ the access position and size. */
extern tree get_inner_reference (tree, HOST_WIDE_INT *, HOST_WIDE_INT *,
tree *, enum machine_mode *, int *, int *,
@@ -4578,10 +4576,6 @@ extern tree get_inner_reference (tree, HOST_WIDE_INT *, HOST_WIDE_INT *,
extern bool contains_packed_reference (const_tree exp);
-/* Return 1 if T is an expression that get_inner_reference handles. */
-
-extern int handled_component_p (const_tree);
-
/* Return a tree of sizetype representing the size, in bytes, of the element
of EXP, an ARRAY_REF. */
@@ -4875,13 +4869,6 @@ extern int get_pointer_alignment (tree, unsigned int);
/* In convert.c */
extern tree strip_float_extensions (tree);
-/* In alias.c */
-extern void record_component_aliases (tree);
-extern alias_set_type get_alias_set (tree);
-extern int alias_sets_conflict_p (alias_set_type, alias_set_type);
-extern int alias_sets_must_conflict_p (alias_set_type, alias_set_type);
-extern int objects_must_conflict_p (tree, tree);
-
/* In tree.c */
extern int really_constant_p (const_tree);
extern int int_fits_type_p (const_tree, const_tree);
diff --git a/gcc/treelang/ChangeLog b/gcc/treelang/ChangeLog
deleted file mode 100644
index 5aef0c14a3f..00000000000
--- a/gcc/treelang/ChangeLog
+++ /dev/null
@@ -1,1171 +0,0 @@
-2008-02-26 Tom Tromey <tromey@redhat.com>
-
- * tree1.c (treelang_init): Remove old location code.
- (treelang_parse_file): Likewise.
- * lex.l (LINEMAP_POSITION_FOR_COLUMN): Remove.
- (update_lineno_charno): Remove old location code.
-
-2008-02-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- PR other/35107
- * Make-lang.in (tree1): Add $(GMPLIBS).
-
-2007-11-26 Andreas Krebbel <krebbel1@de.ibm.com>
-
- PR 34081/C++
- * treetree.c (tree_code_create_function_wrapup): Pass 'false'
- for the new allocate_struct_function parameter.
-
-2007-09-12 Jan Hubicka <jh@suse.cz>
-
- * treetree.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
- (treelang_expand_function): Kill.
-
-2007-09-06 Tom Tromey <tromey@redhat.com>
-
- * tree1.c (treelang_init): Update.
- (treelang_parse_file): Update.
- (treelang_parse_file): Update.
- (treelang_parse_file): Update.
- * lex.l: Update.
- (update_lineno_charno): Likewise.
-
-2007-09-05 Sandra Loosemore <sandra@codesourcery.com>
-
- * treetree.c (tree_code_create_function_wrapup): Use set_cfun.
-
-2007-08-21 Paul Brook <paul@codesourcery.com>
- Nathan Sidwell <nathan@codesourcery.com>
- Mark Mitchell <mark@codesourcery.com>
- Joseph Myers <joseph@codesourcery.com>
-
- * tree1.c (treelang_handle_option): Use pkgversion_string.
- * treelang.texi (which-treelang): Define to use VERSION_PACKAGE.
-
-2007-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * lex.l (update_yylval): Constify.
- * treelang.h (struct token_part, struct parameter_part):
- Likewise.
- * treetree.c (tree_code_create_function_prototype,
- tree_code_create_variable, tree_code_get_integer_value):
- Likewise.
- * treetree.h (tree_code_get_integer_value,
- tree_code_create_function_prototype, tree_code_create_variable):
- Likewise.
-
-2007-07-25 Richard Guenther <rguenther@suse.de>
-
- * treetree.c (tree_code_generate_return): RETURN_EXPRs
- have volatile type.
-
-2007-07-17 Nick Clifton <nickc@redhat.com>
-
- * parse.y: Change copyright header to refer to version 3 of the
- GNU General Public License and to point readers at the COPYING3
- file.
- * lex.l: Likewise.
- * lang.opt: Likewise.
- * lang-specs.h: Likewise.
- * treelang.h: Likewise.
- * config-lang.in: Likewise.
- * tree-convert.c: Likewise.
- * treetree.c: Likewise.
- * tree1.c: Likewise.
- * Make-lang.in: Likewise.
- * treetree.h: Likewise.
- * spec.c: Likewise.
-
-2007-06-11 Rafael Avila de Espindola <espindola@google.com>
-
- * treetree.c (tree_lang_signed_type): Remove.
- (LANG_HOOKS_SIGNED_TYPE): Remove.
-
-2007-05-14 Rafael Avila de Espindola <espindola@google.com>
-
- * treetree.c (tree_lang_unsigned_type): Remove.
- (LANG_HOOKS_UNSIGNED_TYPE): Remove.
-
-2007-03-30 Rafael Avila de Espindola <espindola@google.com>
-
- * treetree.c (tree_lang_signed_or_unsigned_type): Remove.
- (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE) Remove.
-
-2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
-
- * Make-lang.in: Add install-pdf target as copied from
- automake v1.10 rules.
-
-2007-02-26 Brooks Moses <brooks.moses@codesourcery.com>
-
- * treelang.texi: Standardize title page, remove version number
- from copyright page.
-
-2006-10-23 Rafael Avila de Espindola <rafael.espindola@gmail.com>
-
- * treetree.c (builtin_function): Remove.
-
-2006-10-10 Brooks Moses <bmoses@stanford.edu>
-
- * Make-lang.in: Added "treelang.pdf" target support.
-
-2006-07-28 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * Make-lang.in: Use $(HEADER_H) instead of header.h in dependencies.
-
-2006-06-17 Karl Berry <karl@gnu.org>
-
- * treelang.texi (@dircategory): Use "Software development"
- instead of "Programming", following the Free Software Directory.
-
-2006-06-06 Mike Stump <mrs@apple.com>
-
- * Make-lang.in: Rename to gcc_htmldir to build_htmldir to avoid
- installing during build.
-
-2006-05-23 Carlos O'Donell <carlos@codesourcery.com>
-
- * Make-lang.in: Rename htmldir to gcc_htmldir.
-
-2006-05-16 H.J. Lu <hongjiu.lu@intel.com>
-
- PR driver/26885
- * Make-lang.in (gtreelang$(exeext)): Replace gcc.o with
- $(GCC_OBJS).
-
-2006-05-14 H.J. Lu <hongjiu.lu@intel.com>
-
- * Make-lang.in (treelang/treetree.o): Add dependency on
- $(TARGET_H).
-
-2006-04-22 Matthias Klose <doko@debian.org>
-
- * Make-lang.in (treelang.check): Don't set and pass TRANSFORM.
-
-2006-03-29 Carlos O'Donell <caros@codesourcery.com>
-
- * Make-lang.in: Rename docdir to gcc_docdir.
-
-2006-02-20 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
-
- * Make-lang.in (.phony): Remove TREELANG.
- (TREELANG): Remove.
-
-2006-01-21 Joseph S. Myers <joseph@codesourcery.com>
-
- * spec.c (lang_specific_driver): Update copyright notice date.
-
-2006-01-16 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
-
- * spec.c (lang_specific_spec_functions): Remove.
-
-2005-12-28 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
-
- * Make-lang.in (treelang.distdir): Remove.
-
-2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
-
- * Make-lang.in (treelang.all.build, treelang.install-normal): Remove.
-
-2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
-
- * Make-lang.in: Remove all dependencies on s-gtype.
-
-2005-12-05 Richard Guenther <rguenther@suse.de>
-
- * treetree.c (tree_code_if_start, tree_code_create_variable,
- tree_code_generate_return, tree_code_get_expression,
- tree_code_add_parameter): Use fold_convert where appropriate.
-
-2005-11-07 James A. Morrison <phython@gcc.gnu.org>
-
- PR treelang/24066
- * treetree.c (LANG_HOOKS_ATTRIBUTE_TABLE): Set to
- treelang_attribute_table.
- (handle_attribute): New function.
- (treelang_attribute_table): New attribute table.
-
-2005-09-23 Rafael Ãvila de Espíndola <rafael.espindola@gmail.com>
-
- * parse.y : Changed pointer declaration from "type* var" to "type *var"
- Removed trailing space. Wrap long lines.
-
-2005-09-23 Rafael Ãvila de Espíndola <rafael.espindola@gmail.com>
-
- * parse.y : Fixed two compile warnings in "error" and "warning"
- invocations. Removed trailing periods in messages. Decapitalized the
- first word of each.
-
-2005-08-07 James A. Morrison <phython@gcc.gnu.org>
-
- * tree-convert.c (convert): Use fold_build1 instead of
- fold (build1.
-
-2005-08-06 James A. Morrison <phython@gcc.gnu.org>
-
- PR treelang/23072
- * Make-lang.in: Remove old testing cruft.
-
-2005-06-25 Kelley Cook <kcook@gcc.gnu.org>
-
- * all files: Update FSF address in copyright headers.
-
-2005-06-15 James A. Morrison <phython@gcc.gnu.org>
-
- * parse.y (function_invocation): Reverse parameter list.
- * treetree.c (tree_code_get_expression): Don't reverse parameter list.
-
-2005-06-12 Rafael ?vila de Esp?ndola <rafael.espindola@gmail.com>
-
- * treetree.c (tree_code_get_expression): Call build_function_call_expr
- to build function calls.
-
-2005-05-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * treelang/lex.l, treelang/parse.y: Don't include errors.h and
- include toplev.h.
- * treelang/Make-lang.in: Updates dependencies.
-
-2005-05-02 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR treelang/21345
- * parse.y (parameters_opt): Add semicolon at the end.
-
-2005-04-29 Tom Tromey <tromey@redhat.com>
-
- * treetree.c (poplevel): Updated for change to build_block.
-
-2005-04-23 DJ Delorie <dj@redhat.com>
-
- * parse.y: Adjust warning() callers.
-
-2005-04-11 Richard Sandiford <rsandifo@redhat.com>
-
- * lang.opt: Refer to the GCC internals documentation instead of c.opt.
-
-2005-04-01 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR treelang/20604
- * lang-spec.c: Simplify @treelang to what the other
- languages do.
-
-2005-04-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * treelang/treelang.texi: Fix typos.
- * treelang/treetree.c: Fix comment typos.
-
-2005-03-23 Joseph S. Myers <joseph@codesourcery.com>
-
- * treetree.c (LANG_HOOKS_TRUTHVALUE_CONVERSION,
- tree_lang_truthvalue_conversion): Remove.
- * tree-convert.c: Don't call truthvalue_conversion.
-
-2005-03-22 James A. Morrison <phython@gcc.gnu.org>
-
- * treetree.c (tree_code_if_start): Use fold_buildN.
- (tree_code_create_variable): Likewise.
- (tree_code_generate_return): Likewise.
- (tree_code_get_expression): Likewise.
- (tree_code_add_parameter): Likewise.
-
-2005-03-22 James A. Morrison <phython@gcc.gnu.org>
-
- * treelang.h (struct parameter_part): Skip WHERE_TO_PUT_VAR_TREE
- during GC.
-
-2005-03-15 Zack Weinberg <zack@codesourcery.com>
-
- * Make-lang.in (TEXI_TREELANG_FILES): Add gcc-vers.texi.
-
-2005-03-06 James A. Morrison <phython@gcc.gnu.org>
-
- PR other/20326
- * Make-lang.in (gtreelang, treelang/spec.o): New targets.
- * spec.c: New file.
-
-2005-02-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * treelang.texi: Fix a typo.
-
-2005-02-26 James A. Morrison <phython@gcc.gnu.org>
-
- * parse.y (function_invocation, variable-ref, make_plus_expression):
- Pass location to tree_code_get_expression.
- * treetree.c (tree_code_generate_return): Set EXPR_LOCUS on retval.
- (tree_code_get_expression): Wrap variable references in NOP_EXPRs and
- set EXPR_LOCATION on ret1.
- * treetree.h (tree_code_get_expression): Take the location of the
- expression as an argument.
-
-2005-02-26 James A. Morrison <phython@gcc.gnu.org>
-
- * treelang.texi: Treelang does have warnings.
- * treetree.c (tree_code_create_function_prototype): Don't set
- TREE_USED and set TREE_PUBLIC, DECL_EXTERNAL, and TREE_STATIC
- as few times as needed on the function declaration.
- (tree_code_create_function_initial): Don't set TREE_USED,
- TREE_ADDRESSABLE, but set TREE_STATIC on the function declaration.
- (tree_code_create_variable): Don't set TREE_USED on VAR_DECL.
- (tree_code_get_expression): Set TREE_USED for variable references
- and function calls.
-
-2005-02-26 James A. Morrison <phython@gcc.gnu.org>
-
- * parse.y: Do comparisons as the type of the first expression.
- * treetree.c (tree_code_get_integer_value): Build integer constants
- with the proper type.
-
-2005-02-26 James A. Morrison <phython@gcc.gnu.org>
-
- * Make-lang.in: Remove commented out code.
- * lang-specs.h: Always pass -dumpbase to tree1.
-
-2005-02-25 James A. Morrrison <phython@gcc.gnu.org>
-
- * treelang.texi: Remove extra contribution notice.
- Split up some run-on sentences. Document function parameters
- as optional. Indicate automatic variables can now be at any scope.
- Mention literals are only signed if they are preceded by a unary
- plus or minus. Clarify interoperability with C.
-
-2005-02-25 James A. Morrison <phython@gcc.gnu.org>
-
- * treelang.texi: Fix whitespacing.
-
-2005-02-24 James A. Morrison <phython@gcc.gnu.org>
-
- PR other/19896
- * treetree.c (tree_code_create_variable): Initialize DECL_EXTERNAL,
- TREE_PUBLIC, and TREE_STATIC for var_decl to zero. Don't call
- rest_of_decl_compilation on static variables.
- (pushdecl): Put DECL_EXPRs into the current BIND_EXPR for automatic
- variables.
-
-2005-02-24 James A. Morrison <phython@gcc.gnu.org>
-
- PR other/19897
- * parse.y: (function_prototype): Accept EXTERNAL_REFERENCE_STORAGE.
- Move function parameters check from ...
- (function): ...Here. Update call to tree_code_create_function_initial.
- (function_invocation): Use expressions_with_commas_opt instead of
- expressions_with_commas.
- (expressions_with_commas_opt): New rule.
- * treetree.c (tree_code_create_function_prototype): Create PARM_DECLs
- for function parameters.
- (tree_code_create_function_initial): Remove PARMS parameter.
- Don't create PARM_DECLs for function parameters.
- * treetree.h (tree_code_create_function_initial): Remove PARMS
- parameter.
-
-2005-02-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * parse.y: Update copyright.
-
-2005-02-13 James A. Morrison <phython@gcc.gnu.org>
-
- * treetree.c (tree_lang_type_for_mode): Return NULL_TREE for all non
- scalar integer types.
-
-2005-02-09 Richard Henderson <rth@redhat.com>
-
- * treetree.c (treelang_init_decl_processing): Call
- build_common_builtin_nodes.
-
-2005-02-06 Joseph S. Myers <joseph@codesourcery.com>
-
- * treelang.texi: Don't use local treelang version number. Don't
- give last update date.
-
-2005-02-01 James A. Morrison <phython@gcc.gnu.org>
-
- * lex.l: Undef LINEMAP_POSITION_FOR_COLUMN before defining it.
-
-2005-02-01 James A. Morrison <phython@gcc.gnu.org>
-
- * parse.y: Reformat comments.
- * treetree.c: Likewise.
- * treetree.h: Likewise.
-
-2004-10-24 James A. Morrison <phython@gcc.gnu.org>
-
- * treetree.c (tree_code_generate_return): Wrap param declaration in
- ENABLE_CHECKING.
-
-2004-10-05 Zack Weinberg <zack@codesourcery.com>
-
- * parse.y: Add list of diagnostic messages to insulate
- translation template from version of yacc/bison used to
- compile the grammar.
-
-2004-10-02 James A. Morrison <phython@gcc.gnu.org>
-
- PR other/17762
- * lex.l: Include input.h and errors.h
- (lineno): New variable.
- (LINEMAP_POSITION_FOR_COLUMN): Define as noop when USE_MAPPED_LOCATION
- is not defined.
- Set column position with LINEMAP_POSITION_FOR_COLUMN.
- Use error instead of fprintf.
- Set input_location with the value returned by linemap_start_line when
- USE_MAPPED_LOCATION is defined.
- (dump_lex_value): Use LOCATION_LINE.
- * parse.y: Include errors.h.
- Use error and warning instead of fprintf.
- (return): Move exp to rule scope and always set to $2. Test against
- exp instead of $2.
- (init): Set $$ to $2.
- (print_token): Use LOCATION_LINE.
- * tree1.c (treelang_init): Call treelang_init_decl_processing last.
- Call linemap_add to set input_filename when USE_MAPPED_LOCATION is
- defined.
- (treelang_parse_file): Always start at line one.
- Rename input_filename to main_input_filename when USE_MAPPED_LOCATION is
- defined.
- Leave main_input_filename when done parsing the input.
- (insert_tree_name): Use error instead of fprintf.
- * treetree.c (tree_code_get_expression): Wrap long line.
- (tree_mark_addressable): Use %qD to print out DECLs.
-
-2004-10-02 James A. Morrison <phython@gcc.gnu.org>
-
- * parse.y: Use gcc_assert and gcc_unreachable instead of abort.
- * tree1.c: Likewise.
- * treetree.c: Likewise.
-
-2004-10-02 James A. Morrison <phython@gcc.gnu.org>
-
- * lex.l: Remove random whitespace.
- * parse.y: Reformat copyright notice. Indent declarations.
- Wrap long lines, unwrap short lines.
- * tree1.c: Reformat copyright notice. Wrap long lines.
- Remove random whitespace.
- (lookup_tree_name): Use LOCATION_LINE.
- * treetree.c: Reformat copyright notice. Wrap long lines.
- Remove random whitespace.
-
-2004-10-01 James A. Morrison <phython@gcc.gnu.org>
-
- * parse.y (ELSE): Set tok to $1.
- * treelang.texi: Wrap comments in @r{}. Indent example comments.
- Use gcc when refering to the command line or website. Update function
- definition.
-
-2004-10-01 Jan Hubicka <jh@suse.cz>
-
- * treetree.c (treeland_expand_function): Update call of
- tree_rest_of_compilation.
-
-2004-09-17 Jeffrey D. Oldham <oldham@codesourcery.com>
- Zack Weinberg <zack@codesourcery.com>
-
- * treetree.c: Update for new tree-class enumeration constants.
-
-2004-09-15 Zack Weinberg <zack@codesourcery.com>
-
- * Make-lang.in (treelang-warn): Set to $(STRICT_WARN).
-
-2004-08-26 Nathan Sidwell <nathan@codesourcery.com>
-
- * treetree.c (tree_code_get_integer_value): Fix build_int_cst call.
-
-2004-08-24 Nathan Sidwell <nathan@codesourcery.com>
-
- * treelang/treetree.c (treelang_init_decl_processing): Adjust
- build_common_tree_nodes call.
-
-2004-08-14 Nathan Sidwell <nathan@codesourcery.com>
-
- * treetree.c (tree_code_get_integer_value): Use build_int_cst.
-
-2004-07-31 James A. Morrison <phython@gcc.gnu.org>
-
- * Make-lang.in (TREE_BE_LIBS): Remove.
- (tree1): Depend on BACKEND and LIBDEPS. Use BACKEND and LIBS instead
- of TREE_BE_LIBS.
- * parse.y: Add variable_defs_opt before statements_opt.
- Use tree_code_get_type instead of get_type_for_numeric_type.
- Reformat long lines.
- (parameters_opt): New rule.
- (function_prototype): Use parameters_opt.
- (return): Remove calls to print_token in error cases. Use VOID_TYPE.
- (check_type_match): Use VOID_TYPE.
- * lex.l (update_lineno_charno): Ensure INPUT_LINE starts at 1.
- * tree1.c: Include version.h and cgraph.h
- (treelang_parse_file): Call cgraph_finalize_compilation_unit and
- cgraph_optimize.
- * treelang.h (item): Remove extraneous GTY.
- * treetree.h (get_type_for_numeric_type): Remove.
- * treetree.c: Include tree-dump.h, tree-iterator.h, tree-gimple.h,
- function.h, and cgraph.h. Don't include rtl.h
- (keep_level_p): Remove.
- (tree_push_atomic_type_decl): Remove.
- (get_type_for_numeric_type): Remove.
- (tree_code_get_numeric_type): Remove.
- (global_bindings_p): Make static.
- (getdecls): Likewise.
- (insert_block): Likewise.
- (tree_code_if_start): Create a COND_EXPR and add it to the tree
- instead of creating rtl.
- (tree_code_if_else): Create a BIND_EXPR if any variables were created
- in the if statement.
- (tree_code_end_if): Likewise.
- (tree_code_create_function_prototype): Use tree_code_get_type.
- Don't use SET_DECL_ASSEMBLER_NAME.
- (tree_code_create_function_initial): Set DECL_ARTIFICIAL and
- DECL_IGNORING_P on RESULT_DECL. Use tree_code_get_type. Don't call
- layout_decl on RESULT_DECL. Don't call rtl expand functions.
- (tree_code_create_function_wrapup): Don't call rtl expand functions.
- Create a BIND_EXPR for each function. Dump original and gimplified
- copies of the function tree. Gimplify function.
- (tree_code_create_variable): Use tree_code_get_type. Don't call
- layout_decl or expand_decl. Fold CONVERT_EXPRs.
- (tree_code_generate_return): Fold CONVERT_EXPRs and MODIFY_EXPRs.
- Add RETURN_EXPR to the current statement list. Don't call rtl expand
- functions.
- (tree_code_output_expression_statement): Append CODE to current
- statement list.
- (tree_code_get_expression): Fold expressions. Build a pointer to
- a FUNCTION_TYPE intead of the called functions return type.
- (struct binding_level): Add statement list STMTS.
- (getstmtlist): New Function.
- (pushlevel): Make static. Allocate an empty statement list.
- (poplevel): Make static. Don't clear BLOCK_NODE's BLOCK_VARS.
- Don't use DECL_ASSEMBLER_NAME.
- (tree_push_type_decl): Set TYPE_NAME of TYPE_NODE to ID.
- (treelang_init_decl_processing): Define basic types after unused types.
- Don't call tree_push_atomic_type_decl.
- (builtin_function): Don't call make_decl_rtl.
- (treelang_expand_function). New Function.
-
-2004-07-11 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * treetree.c (set_block): Remove.
- (struct binding_level): Remove block_created_by_back_end.
- (clear_binding_level): Likewise.
- (tree_code_create_function_initial,
- tree_code_create_function_wrapup): Call pushlevel and poplevel
- directly rather than through hooks.
- (poplevel): Don't handle block_created_by_back_end.
-
-2004-04-07 Richard Henderson <rth@redhat.com>
-
- * treetree.c (tree_mark_addressable): Don't put_var_into_stack.
-
-2004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * treetree.c (tree_lang_signed_or_unsigned_type): Use TYPE_UNSIGNED,
- not TREE_UNSIGNED.
-
-2004-03-21 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * treelang.texi: Update link to "G++ and GCC".
-
-2004-02-20 Richard Henderson <rth@redhat.com>
-
- * Make-lang.in (treelang-warn): Add -Wno-variadic-macros.
-
-2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
-
- * Make-lang.in (doc/treelang.dvi): Use $(abs_docdir).
-
-2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
-
- * Make-lang.in: Replace $(docdir) with doc.
- (treelang.info, treelang.srcinfo): New rules.
- (treelang.man, treelang.man): Dummy entries.
-
-2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
-
- * Make-lang.in (TREE_GENERATED): Delete reference to $(parsedir).
- (treelang/parse.o, treelang/lex.o): Look for sources in build
- directory. Use implicit rule.
- (treelang/parse.c, treelang/parse.h treelang/lex.c): Always build in
- doc directory.
- (treelang.srcextra): Copy above back to source directory if requested.
-
-2004-01-07 Zack Weinberg <zack@codesourcery.com>
-
- * parse.y (yyerror): Mark the definition static.
-
-2003-12-04 James A. Morrison <ja2morri@uwaterloo.ca>
-
- * lex.l: Add \t as a whitespace character.
- * treelang.texi (Lexical Syntax): Document a tab as whitespace.
-
- * treelang.texi (What is GNU Treelang?): Fix a typo.
- (Lexical Syntax): Create an itemize list of keywords. Add commas to
- paragraph defining names.
-
-2003-11-26 Jason Merrill <jason@redhat.com>
-
- * Make-lang.in (treelang.tags): Create TAGS.sub files in each
- directory and TAGS files that include them for each front end.
-
-2003-11-21 Kelley Cook <kcook@gcc.gnu.org>
-
- * .cvsignore: Delete.
-
-2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * Make-lang.in (treelang.extraclean): Delete.
-
-2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * Make-lang.in: Remove obsolete comment.
-
-2003-11-03 Kelley Cook <kcook@gcc.gnu.org>
-
- * Make-lang.in (dvi): Move targets to $(docobjdir).
- (treelang.dvi): Simplify rule and adjust target.
- (treelang.info): Simplify rule.
- (parse.o): Correct dependencies.
- (TREE_EXE): Delete doubled suffix append.
-
-2003-10-21 Kelley Cook <kcook@gcc.gnu.org>
-
- * Make-lang.in (treelang.o): Depend on $(parsedir)/treelang/parse.h.
- (lex.o): Likewise.
-
-2003-10-21 Kelley Cook <kcook@gcc.gnu.org>
-
- * Make-lang.in (parse.o): Honor $(parsedir).
- (lex.o): Likewise.
- (lex.c): Likewise
- (parse.c, parse.h): Likewise.
- ($(docobjdir)/treelang.info): Replace $(srcdir)/doc with $(docdir).
- (dvi): Likewise.
-
-2003-10-20 Mark Mitchell <mark@codesourcery.com>
-
- * Make-lang.in ($(docobjdir)/treelang/treelang.info): Depend on
- stmp-docobjdir.
-
- * Make-lang.in (info): Use docobjdir.
- ($(srcdir)/treelang/treelang.info): Replace with ...
- ($(docobjdir)/treelang/treelang.info): ... this.
- (install-info): New target.
-
-2003-10-12 Andreas Jaeger <aj@suse.de>
-
- * Make-lang.in (treelang.install-info): Remove reference to
- treelang.info.
- (treelang.): Removed.
-
-2003-10-06 Mark Mitchell <mark@codesourcery.com>
-
- * Make-lang.in (treelang.info): Replace with ...
- (info): ... this.
- * Make-lang.in (treelang.dvi): Replace with ...
- (dvi): ... this.
-
-2003-09-21 Richard Henderson <rth@redhat.com>
-
- * treetree.c: Revert.
-
-2003-09-21 Richard Henderson <rth@redhat.com>
-
- * treetree.c: Update for DECL_SOURCE_LOCATION rename and
- change to const.
-
-2003-07-28 Andreas Jaeger <aj@suse.de>
-
- * treetree.c: Convert remaining K&R prototypes to ISO C90.
- * tree1.c: Likewise.
- * parse.y: Likewise.
- * tree-convert.c: Likewise.
-
-2003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * treetree.c: Remove unnecessary casts.
-
-2003-07-15 Neil Booth <neil@daikokuya.co.uk>
-
- * lang-options.h: Remove.
- * lang.opt: Document some options. Remove --help.
- * tree1.c (treelang_handle_option): Remove OPT__help case.
-
-2003-07-12 Andreas Jaeger <aj@suse.de>
-
- * Make-lang.in (treelang/tree-convert.o): Depend on TM_H.
-
-2003-07-10 Neil Booth <neil@daikokuya.co.uk>
-
- * Make-lang.in: Update.
- * tree1.c: Don't include c-common.h.
- (c_language): Remove.
-
-2003-07-10 Fergus Henderson <fjh@cs.mu.oz.au>
- Steven Bosscher <steven@gcc.gnu.org>
-
- * tree-convert.c: New file.
- * treetree.c: Don't include c-tree.h. Include target.h.
- (struct lang_identifier, union lang_tree_node, struct lang_type,
- struct lang_function): New, minimal language-specific datastructs.
- (tree_lang_truthvalue_conversion, tree_mark_addressable,
- tree_lang_type_for_size, tree_lang_type_for_mode,
- tree_lang_unsigned_type, tree_lang_signed_type,
- tree_lang_signed_or_unsigned): New functions.
- (LANG_HOOKS_*): Don't use C front end langhooks. Use new functions.
- (pushlevel, poplevel, global_bindings_p, insert_block, set_block,
- pushdecl, getdecls, kept_level_p, tree_push_type_decl,
- tree_push_atomic_type_decl): New functions.
- (struct resword, struct reswords): Remove.
- * Make-lang.in: Update. Don't depend on C front end objects.
- * config-lang.in: Likewise.
-
-2003-07-07 Nathan Sidwell <nathan@codesourcery.com>
-
- * treelang/treetree.c (tree_code_if_start, tree_code_if_else,
- tree_code_if_end, tree_code_create_function_initial,
- tree_code_create_function_wrapup, tree_code_generate_return,
- tree_code_output_expression_statement): Adjust emit_line_note
- calls.
-
-2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
-
- * Make-lang.in: Replace PWD with PWD_COMMAND.
-
-2003-07-02 Neil Booth <neil@daikokuya.co.uk>
-
- * tree1.c (treelang_init_options): Update prototype.
- * treelang.h (treelang_init_options): Update prototype.
-
-2003-07-01 Neil Booth <neil@daikokuya.co.uk>
-
- * Make-lang.in: Update.
- * tree1.c: Include c-common.h. Define c_language.
-
-2003-06-20 Nathan Sidwell <nathan@codesourcery.com>
-
- * treetree.c (tree_code_create_function_wrapup): Adjust
- expand_function_end call.
-
-2003-06-18 Nathan Sidwell <nathan@codesourcery.com>
-
- * treetree.c (build_stmt): Remove VPARAMS.
- (pedwarn_c99): Likewise.
-
-2003-06-15 Neil Booth <neil@daikokuya.co.uk>
-
- * lang.opt: Declare Treelang. Update.
- * tree1.c (treelang_init_options): Update.
-
-2003-06-14 Nathan Sidwell <nathan@codesourcery.com>
-
- * treetree.c (tree_code_create_function_initial): Adjust
- init_function_start call.
-
-2003-06-14 Neil Booth <neil@daikokuya.co.uk>
-
- * Make-lang.in: Update to use options.c and options.h.
- * tree1.c: Include options.h not t-options.h.
- (treelang_init_options): New.
- (treelang_handle_option): Abort on unrecognized switch.
- * treetree.c (LANG_HOOKS_INIT_OPTIONS): Override.
- * treetree.h (treelang_init_options): New.
-
-2003-06-12 Andreas Jaeger <aj@suse.de>
-
- * treetree.c: Remove cl_options-count and cl_options.
-
-2003-06-11 Neil Booth <neil@daikokuya.co.uk>
-
- * Make-lang.in: Update for option handling.
- * lang.opt: New.
- * tree1.c: Include opts.h and t-options.h.
- (treelang_decode_option): Remove.
- (treelang_handle_option): New.
- * treetree.c (LANG_HOOKS_DECODE_OPTION): Remove.
- (LANG_HOOKS_HANDLE_OPTION): Override.
- * treetree.h (treelang_decode_option): Remove.
- (treelang_handle_option): New.
-
-2003-06-08 Andreas Jaeger <aj@suse.de>
-
- * Make-lang.in: Update.
- * treetree.c: Include opts.h. Define cl_options_count and cl_options.
-
-2003-06-08 Tim Josling <tej@melbpc.org.au>
-
- * treetree.c (c_lex): Add fake routine to satisfy RS6000 backend.
-
-2003-06-05 Jan Hubicka <jh@suse.cz>
-
- * Make-lang.in: Add support for stageprofile and stagefeedback
-
-2003-05-21 Nathan Sidwell <nathan@codesourcery.com>
-
- * treetree.c (reswords): Remove __bounded__, __unbounded__.
-
-2003-05-09 Tim Josling <tej@melbpc.org.au>
-
- * Make-lang.in (TREE_BE_LIBS): Add C_TARGET_OBJS to object files
- to link (needed by some front ends such as PPC).
-
- * treetree.c (tree_code_create_function_initial): Fix long line.
- Initialize tree_code_int_size and tree_code_char_size to
- meaningful values.
- (tree_code_get_numeric_type): Add check that size1 parameter is
- valid.
-
- * parse.y: Fix extra long lines in prototypes.
-
- * treelang.h: Fix extra long lines in macro definitions.
-
-2003-05-07 Zack Weinberg <zack@codesourcery.com>
-
- * Make-lang.in: Set -Wno-error for treelang/lex.o.
-
-2003-05-06 Nathan Sidwell <nathan@codesourcery.com>
-
- * Make-lang.in (treelang/tree1.o): Depends on input.h
- (treelang/treetree.o, treelang/parse.o, treelang/lex.o): Likewise.
- * treelang.h: #include input.h.
- (in_fname): Remove.
- (struct token_part): Remove lineno, add location.
- * lex.l (next_tree_lineno): Remove.
- (update_lineno_charno): Adjust.
- (dump_lex_value): Adjust.
- * parse.y (variable_def, function_prototype, function, statement,
- if_statement, return, function_invocation, variable_ref): Adjust.
- (print_token, yyerror, ensure_not_void): Adjust.
- tree1.c (in_fname): Remove.
- (treelang_init): Setup input_location.
- (lookup_tree_name): Adjust.
- (insert_tree_name): Adjust.
- * treetree.c (tree_code_if_start): Replace filename and lineno
- parms with loc. Adjust.
- (tree_code_if_else, tree_code_if_end,
- tree_code_create_function_prototype,
- tree_code_create_function_initial,
- tree_code_create_function_wrapup, tree_code_create_variable,
- tree_code_output_expression_statement): Likewise.
- * treetree.h (tree_code_if_start): Replace filename and lineno
- parms with loc.
- (tree_code_if_else, tree_code_if_end,
- tree_code_create_function_prototype,
- tree_code_create_function_initial,
- tree_code_create_function_wrapup, tree_code_create_variable,
- tree_code_output_expression_statement): Likewise.
-
-2003-05-01 Nathan Sidwell <nathan@codesourcery.com>
-
- * tree1.c (treelang_init): Rename lineno to input_line.
-
-2003-04-30 Steven Bosscher <steven@gcc.gnu.org>
-
- * parse.y (make_plus_expression): New function.
- (expression production): Use make_plus_expression for PLUS,
- MINUS, ASSIGN and EQUALS.
- * tree1.c (treelang_decode_option): Don't fall through to
- options that start with a different character when an option
- was not recognized.
-
-2003-04-30 Nathan Sidwell <nathan@codesourcery.com>
-
- * Make-lang.in (parse.c): Reorder bison arguments for POSIXLY_CORRECT.
- * treetree.c: Do not #include parse.h.
-
-2003-03-21 Andreas Jaeger <aj@suse.de>
-
- * treetree.c (cpp_create_reader): Follow prototype change in
- cpplib.h.
-
-2003-03-17 Andreas Jaeger <aj@suse.de>
-
- * Make-lang.in (treelang.tags): Remove duplicate entry.
-
-2003-03-15 Andreas Jaeger <aj@suse.de>
-
- * treetree.c (cpp_handle_option): Remove.
-
-2003-03-13 Andreas Jaeger <aj@suse.de>
-
- * Make-lang.in (tree1$(exeext)): Fix previous patch.
-
-2003-03-12 Andreas Jaeger <aj@suse.de>
-
- * Make-lang.in (tree1$(exeext)): Add c-cppbuiltin.o.
-
-2003-03-08 Neil Booth <neil@daikokuya.co.uk>
-
- * tree1.c (in_fname): Fix type.
- (treelang_init): Update prototype and use of in_fname.
- * treelang.h (in_fname): Fix type.
- * treetree.c (tree_code_if_start, tree_code_if_else,
- tree_code_if_end, tree_code_create_function_prototype,
- tree_code_create_function_initial, tree_code_create_funciton_wrapup,
- tree_code_create_variable, tree_code_output_expression_statement)
- : Fix prototypes and use of filenames.
- * treetree.h: Similarly.
-
-2003-03-05 Andreas Jaeger <aj@suse.de>
-
- * treetree.c (init_c_lex): Follow change to c-common.h.
-
-2003-03-04 Tom Tromey <tromey@redhat.com>
-
- * Make-lang.in (treelang.tags): New target.
-
-2003-03-01 Tim Josling <tej@melbpc.org.au>
-
- Name clashes with rtl.h fixed.
-
- * lex.l: Tokens PLUS, MINUS, RETURN changed to tl_PLUS tl_MINUS
- tl_RETURN.
-
- * parse.y: Ditto.
-
-2003-02-24 Tim Josling <tej@melbpc.org.au>
-
- * parse.y (my_yylex): New - ensure lexer time is charged to
- TV_LEX.
- (yylex): redefine as invocation of my_yylex which then calls
- flex-generated yylex.
- (timevar.h): include.
-
-2003-02-23 Tim Josling <tej@melbpc.org.au>
-
- Fix garbage collection, add more error checking, force GC always.
-
- * Make-lang.in (treelang/tree1.o): Depend on treelang/treetree.h
- (treelang/treetree.o): Depend on treelang/parse.h
-
- * lex.l: include "treetree.h"
-
- * lex.l (update_yylval): Allocate string using get_string so GC
- works.
-
- * parse.y (function_prototype): Set category correctly so GC works.
- (function): Set category in search so checking works.
- (function_invocation): Ditto.
- (variable_ref): Ditto.
-
- * tree1.c (lookup_tree_name): Call sanity_check for passed
- production and associated token and for symbol table entries.
-
- * tree1.c (sanity_check): New, basic check that struct is valid.
-
- * treelang.h: Prototype for sanity_check.
-
-2003-01-27 Tim Josling <tej@melbpc.org.au>
-
- * treetree.c (treelang_init_decl_processing): Change memory
- allocation to use GC.
-
-2003-02-04 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * treelang.texi: Update to GFDL 1.2.
-
-2003-01-26 Michael Matz <matz@suse.de>
-
- * Make-lang.in (treelang/parse.o-warn): Define as -Wno-error.
-
-2003-01-14 Andreas Jaeger <aj@suse.de>
-
- * Make-lang.in (treelang.install-info): Depend only on info files
- if BUILD_INFO is set. Fix install rules.
- (treelang.): New.
-
-2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
-
- * Make-lang.in (treelang.install.common.done,
- treelang.install-info, treelang.uninstall): Prepend
- $(DESTDIR) to destination paths in all (un)installation
- commands.
-
-2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * treelang.texi: Use @copying.
-
-2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * treelang.texi: Include gcc-common.texi.
- * Make-lang.in ($(srcdir)/treelang/treelang.info, treelang.dvi):
- Depend on gcc-common.texi. Add other missing dependencies.
- (treelang.dvi): Use texi2dvi.
-
-2002-12-22 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * treelang.texi: Use @ifnottex instead of @ifinfo.
-
-2002-11-30 Zack Weinberg <zack@codesourcery.com>
-
- * lex.l: Move "%{" below copyright notice; get rid of "/*"
- embedded in comment. Do not #undef IN_GCC; do not include
- stdio.h, memory.h, or ansidecl.h; do not include config.h twice.
- Do include coretypes.h and tm.h.
- * parse.y: Do not #undef IN_GCC, provide bogus definitions of tree
- and rtx typedefs, or include stdio.h, stdlib.h, string.h, or
- ansidecl.h. Do include coretypes.h and tm.h.
- * tree1.c: Do not include ansidecl.h, stdlib.h, unistd.h, ctype.h,
- stdarg.h, string.h, or stdio.h. Do include coretypes.h and tm.h.
- * treetree.c: Do not include stdlib.h, unistd.h, safe-ctype.h,
- errno.h. stdarg.h, limits.h, string.h, fcntl.h, getopt.h. stdio.h,
- or ansidecl.h. Do include coretypes.h and tm.h.
- * Make-lang.in: Update dependencies.
-
-2002-09-09 Tim Josling <tej@melbpc.org.au>
-
- * treetree.c (objc_is_id): New.
-
-2002-08-16 Tim Josling <tej@melbpc.org.au>
-
- Remove variables and functions now defined elsewhere.
-
- * treetree.c (maybe_objc_comptypes): Remove.
- (warn_format, warn_format_y2k, warn_format_extra_args,
- warn_format_nonliteral, warn_format_security,
- warn_format_zero_length): Remove.
- (maybe_building_objc_message_expr): Remove.
- (cpp_post_options): Remove.
- (maybe_objc_check_decl): Remove.
- (integer_types): Remove.
-
-
-2002-08-13 Neil Booth <neil@daikokuya.co.uk>
-
- * treelang.c: Remove cpp_post_options.
-
-2002-08-13 Tim Josling <tej@melbpc.org.au>
-
- * parse.y: Provide dummy definition of rtx for use by config.h.
- * Make-lang.in (treetree.o): Remove dependency on non-existent
- gt-treelang-treelang.h.
- (gt-treelang-treelang.h): Remove.
-
-2002-08-08 Nathan Sidwell <nathan@codesourcery.com>
-
- * treelang/Make-lang.in (treelang.mostlyclean): Remove coverage files.
-
-2002-07-11 Tim Josling <tej@melbpc.org.au>
-
- Remove front end hard coding from gengtype.c.
-
- * config-lang.in (gtfiles): Add files needed for this front
- end.
-
-2002-07-09 Tim Josling <tej@melbpc.org.au>
-
- Support new attributes regime (Fix for PR c++/7099).
-
- * treetree.c (handle_format_attribute): Return NULL_TREE instead
- of aborting.
- (top level): Define LANG_HOOKS_COMMON_ATTRIBUTE_TABLE
- LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE
- LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES as the standard C routines.
-
-2002-06-21 Andreas Jaeger <aj@suse.de>
-
- * Make-lang.in (treelang/tree1.o, treelang/treetree.o,
- treelang/parse.o, treelang/lex.o): Add dependency on $(CONFIG_H).
-
-2002-06-19 Paolo Bonzini <bonzini@gnu.org>
-
- * lex.l (yyparse) Return AUTOMATIC for 'automatic' token rather
- than STATIC.
-
-2002-06-10 Tim Josling <tej@melbpc.org.au>
-
- Cleanup
-
- * Make-lang.in (check-treelang). Add. Remove direct dependency of
- 'check' on 'treelang.check' as redundant.
-
- PCH Garbage collection regime (gengtypes.c) phase 1.
-
- * Make-lang.in (treelang/tree1.o). Depend on gt-treelang-tree1.h
- gt-treelang-treelang.h gtype-treelang.h.
- (gt-treelang-tree1.h) Depend on s-gtype.
- (gt-treelang-treelang.h) Depend on s-gtype.
- (gtype-treelang.h) Depend on s-gtype.
-
- * config-lang.in (gtfiles): Define.
-
- * lex.l (main): Remove '#if 0' dead code.
- (main): Move undef of IN_GCC so define of tree typedef works.
- (all): Replace token and production by prod_token_parm_item.
-
- * parse.y
- (all): Replace token and production by prod_token_parm_item.
-
- * tree1.c (main): Remove include of "output.h".
- (symbol_table): Add GTY details.
- (symbol_table_ggc): Remove.
- (treelang_init): Remove root definitions for garbage collection.
- (mark_production_used): Remove.
- (mark_token_used): Remove.
- (main, at end): include generated garage collection routines.
-
- * treelang.h (category_enum ): Add parameter_category.
- (all): Replace token and production and parameters by union
- prod_token_parm_item containing production_part, token_part,
- parameter_part.
- (STATIC_STORAGE AUTOMATIC_STORAGE EXTERNAL_REFERENCE_STORAGE
- EXTERNAL_DEFINITION_STORAGE SIGNED_CHAR UNSIGNED_CHAR SIGNED_INT
- UNSIGNED_INT VOID_TYPE EXP_PLUS EXP_REFERENCE EXP_ASSIGN
- EXP_FUNCTION_INVOCATION EXP_MINUS EXP_EQUALS): Move here from
- treetree.h.
-
- * treetree.c
- (tm_p.h): Do not include.
- (ansidecl.h): Move include after config.h.
- (treelang.h): Include it.
- (ADDROOT): Remove.
- (all): Replace token, production and parameter by prod_token_parm_item.
- (tree_parameter_list): Move to treelang.h as part of
- prod_token_parm_item.
- (STATIC_STORAGE AUTOMATIC_STORAGE EXTERNAL_REFERENCE_STORAGE
- EXTERNAL_DEFINITION_STORAGE SIGNED_CHAR UNSIGNED_CHAR SIGNED_INT
- UNSIGNED_INT VOID_TYPE EXP_PLUS EXP_REFERENCE EXP_ASSIGN
- EXP_FUNCTION_INVOCATION EXP_MINUS EXP_EQUALS): Move from here to
- treelang.h.
-
-2002-05-19 Tim Josling <tej@melbpc.org.au>
-
- * treetree.c (warn_format_zero_length): Add.
-
-2002-05-14 Tim Josling <tej@melbpc.org.au>
-
- * Make-lang.in: Fix build for .info files, add target for manpages.
- A bug report and a suggested patch came from Magnus Fromreide
- <magfr@lysator.liu.se>.
-
-2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * Make-lang.in: Allow for PWDCMD to override hardcoded pwd.
-
-2002-05-11 Tim Josling <tej@melbpc.org.au>
-
- * treetree.c: (cpp_define) Add.
- (cpp_get_callbacks) Add.
-
-2002-05-07 Tim Josling <tej@melbpc.org.au>
-
- * treetree.c: (cpp_get_options) Add.
-
-2002-05-06 Tim Josling <tej@melbpc.org.au>
-
- * .cvsignore: Add.
-
-2002-05-05 Tim Josling <tej@melbpc.org.au>
-
- * Updated for gcc3.2 experimental. Major changes throughout.
-
-2002-03-31 Tim Josling <tej@melbpc.org.au>
-
- * Make-lang.in: Changes so build and check work more reliably
-
-2001-07-30 Tim Josling <tej@melbpc.org.au>
-
- * root.texi: remove
- * treelang.texi: updates based on feedback
-
-2001-06-11 Tim Josling <tej@melbpc.org.au>
-
- * all (all) Revamp code to conform to GCC coding standards, fix
- typos in texi files.
-
-2001-05-11 Tim Josling <tej@melbpc.org.au>
-
- Create the new language.
diff --git a/gcc/treelang/Make-lang.in b/gcc/treelang/Make-lang.in
deleted file mode 100644
index 1b949040c08..00000000000
--- a/gcc/treelang/Make-lang.in
+++ /dev/null
@@ -1,324 +0,0 @@
-# Top level makefile fragment for TREELANG For GCC. -*- makefile -*-
-
-# Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005,
-# 2006, 2007 Free Software Foundation, Inc.
-
-# This file is part of GCC.
-
-# GCC is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3, or (at your option)
-# any later version.
-
-# GCC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-
-
-# This file provides the language dependent support in the main Makefile.
-# Each language makefile fragment must provide the following targets:
-#
-# foo.all.cross, foo.start.encap, foo.rest.encap,
-# foo.install-common, foo.install-man, foo.install-info, foo.install-pdf,
-# foo.info, foo.dvi, foo.pdf, foo.html, foo.uninstall,
-# foo.mostlyclean, foo.clean, foo.distclean,
-# foo.maintainer-clean, foo.stage1, foo.stage2, foo.stage3, foo.stage4
-#
-# where `foo' is the name of the language.
-#
-# It should also provide rules for:
-#
-# - making any compiler driver (eg: gcc)
-# - the compiler proper (eg: tree1)
-# - define the names for selecting the language in LANGUAGES.
-#
-
-## note program-prefix and program-suffix options are not supported
-## just program_transform_name which is a sed script to transform the
-## names
-
-TREELANGSED = sed
-TREELANGSEDFLAGS = -n
-
-GCC_EXTRAS = -B./ -B$(build_tooldir)/bin/ -isystem $(build_tooldir)/include
-
-# ./xgcc is the just built compiler. See GCC_FOR_TARGET in the GCC Makefile.in.
-# If this can't be found, you probably have not done a bootstrap of GCC,
-# which you need to do.
-
-# GCC_FOR_TREELANG = ./xgcc $(GCC_EXTRAS)
-
-TREE_GENERATED = lex.c parse.c parse.h parse.output
-# We need to use something other than treelang here because the directory
-# is called treelang
-TREE_EXES = gtreelang
-
-#strict warnings for treelang
-treelang-warn = $(STRICT_WARN)
-# bison emits some unused static arrays (yytoknum)
-treelang/parse.o-warn = -Wno-error
-# flex produces 'no previous prototype' warnings
-treelang/lex.o-warn = -Wno-error
-
-#
-# Define the names for selecting treelang in LANGUAGES.
-
-.phony: treelang
-
-treelang:treelang.done
-
-treelang.done: gtreelang$(exeext) tree1$(exeext)
- $(STAMP) treelang.done
-
-# no preprocessor
-
-# core compiler
-tree1$(exeext): treelang/tree1.o treelang/treetree.o treelang/tree-convert.o \
- treelang/lex.o treelang/parse.o \
- $(BACKEND) $(LIBSDEPS) attribs.o
- $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \
- treelang/tree1.o treelang/treetree.o treelang/tree-convert.o \
- treelang/lex.o treelang/parse.o \
- $(BACKEND) $(LIBS) attribs.o $(GMPLIBS)
-
-# Create the compiler driver treelang.
-gtreelang$(exeext): $(GCC_OBJS) version.o prefix.o intl.o $(EXTRA_GCC_OBJS) \
- $(LIBDEPS) treelang/spec.o
- $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ treelang/spec.o \
- $(GCC_OBJS) version.o prefix.o intl.o $(EXTRA_GCC_OBJS) $(LIBS)
-
-
-
-#
-# Compiling object files from source files.
-
-# object file makes
-
-treelang/tree1.o: treelang/tree1.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(FLAGS_H) toplev.h $(GGC_H) $(TREE_H) $(DIAGNOSTIC_H) treelang/treelang.h \
- input.h treelang/treetree.h options.h opts.h \
- treelang/treetree.h gt-treelang-tree1.h gtype-treelang.h
-
-treelang/treetree.o: treelang/treetree.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
- $(TM_H) $(TREE_H) $(FLAGS_H) output.h $(RTL_H) $(GGC_H) toplev.h \
- $(VARRAY_H) $(LANGHOOKS_DEF_H) langhooks.h treelang/treelang.h input.h \
- treelang/treetree.h treelang/parse.h $(TARGET_H)
-
-treelang/tree-convert.o: treelang/tree-convert.c $(CONFIG_H) $(SYSTEM_H) \
- coretypes.h $(DIAGNOSTIC_H) $(TREE_H) $(FLAGS_H) toplev.h langhooks.h $(TM_H)
-
-treelang/spec.o: treelang/spec.c $(CONFIG_H) $(SYSTEM_H) \
- coretypes.h $(DIAGNOSTIC_H) $(TREE_H) $(FLAGS_H) toplev.h langhooks.h $(TM_H)
-
-treelang/parse.o: treelang/parse.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
- $(TM_H) $(DIAGNOSTIC_H) treelang/treelang.h input.h treelang/treetree.h \
- toplev.h
-
-treelang/lex.o: treelang/lex.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
- $(TM_H) $(DIAGNOSTIC_H) $(TREE_H) treelang/treelang.h input.h \
- treelang/parse.h toplev.h
-
-# generated files the files from lex and yacc are put into the source
-# directory in case someone wants to build but does not have
-# lex/yacc
-
-treelang.srcextra: treelang/parse.c treelang/parse.h treelang/lex.c
- -cp -p $^ $(srcdir)/treelang
-
-treelang/lex.c: treelang/lex.l
- -$(FLEX) $(FLEXFLAGS) -o$@ $<
-
-treelang/parse.c treelang/parse.h treelang/parse.output: treelang/parse.y
- -$(BISON) $(BISONFLAGS) -v --defines --output=treelang/parse.c $<
-
-# -v
-
-#
-# Build hooks:
-
-treelang.all.cross:
- _error_not_here_yet - havent even thought about it - it may even work
-
-treelang.start.encap:
-treelang.rest.encap:
-treelang.man:
-treelang.srcman:
-
-treelang.tags: force
- cd $(srcdir)/treelang; etags -o TAGS.sub *.y *.l *.c *.h; \
- etags --include TAGS.sub --include ../TAGS.sub
-
-treelang.info: doc/treelang.info
-
-treelang.srcinfo: doc/treelang.info
- -cp -p $^ $(srcdir)/doc
-
-treelang.dvi: doc/treelang.dvi
-
-TREELANG_PDFFILES = doc/treelang.pdf
-
-treelang.pdf: $(TREELANG_PDFFILES)
-
-TEXI_TREELANG_FILES = treelang/treelang.texi \
- $(gcc_docdir)/include/gcc-common.texi \
- $(gcc_docdir)/include/gpl.texi \
- $(gcc_docdir)/include/fdl.texi \
- $(gcc_docdir)/include/funding.texi \
- gcc-vers.texi
-
-doc/treelang.info: $(TEXI_TREELANG_FILES)
- $(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir)/include -o $@ $<
-
-doc/treelang.dvi: $(TEXI_TREELANG_FILES)
- $(TEXI2DVI) -I $(abs_docdir)/include -o $@ $<
-
-doc/treelang.pdf: $(TEXI_TREELANG_FILES)
- $(TEXI2PDF) -I $(abs_docdir)/include -o $@ $<
-
-treelang.html: $(build_htmldir)/treelang/index.html
-
-$(build_htmldir)/treelang/index.html: $(TEXI_TREELANG_FILES)
- $(mkinstalldirs) $(@D)
- rm -f $(@D)/*
- $(TEXI2HTML) -I $(gcc_docdir)/include -I $(srcdir)/treelang -o $(@D) $<
-
-#
-# Install hooks:
-
-# Install
-.phony:treelang.install.common
-.phony:treelang.install
-
-treelang.install treelang.install.common treelang.install-common: treelang.install.common.done
-
-treelang.install.common.done: installdirs treelang.done
- for name in $(TREE_EXES); \
- do \
- if [ -f $$name ] ; then \
- name2="`echo \`basename $$name\` | sed -e '$(program_transform_name)' `"; \
- rm -f $(DESTDIR)$(bindir)/$$name2$(exeext); \
- echo $(INSTALL_PROGRAM) $$name$(exeext) $(DESTDIR)$(bindir)/$$name2$(exeext); \
- $(INSTALL_PROGRAM) $$name$(exeext) $(DESTDIR)$(bindir)/$$name2$(exeext); \
- chmod a+x $(DESTDIR)$(bindir)/$$name2$(exeext); \
- fi ; \
- done
- $(STAMP) treelang.install.common.done
-
-# We might not be able to build the info files
-treelang.install-info: $(DESTDIR)$(infodir)/treelang.info
-
-treelang.install-pdf: $(TREELANG_PDFFILES)
- @$(NORMAL_INSTALL)
- test -z "$(pdfdir)/gcc" || $(mkinstalldirs) "$(DESTDIR)$(pdfdir)/gcc"
- @list='$(TREELANG_PDFFILES)'; for p in $$list; do \
- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- f=$(pdf__strip_dir) \
- echo " $(INSTALL_DATA) '$$d$$p' '$(DESTDIR)$(pdfdir)/gcc/$$f'"; \
- $(INSTALL_DATA) "$$d$$p" "$(DESTDIR)$(pdfdir)/gcc/$$f"; \
- done
-
-treelang.install-man:
-
-treelang.uninstall:
- for name in $(TREE_EXES); \
- do \
- echo $$name; \
- name2="`echo $$name | sed -e '$(program_transform_name)' `"; \
- echo becomes $$name2; \
- echo -rm -rf $(DESTDIR)$(bindir)/$$name2$(exeext); \
- rm -rf $(DESTDIR)$(bindir)/$$name2$(exeext); \
- done
- -rm treelang.install.common.done
-
-#
-# Clean hooks:
-# A lot of the ancillary files are deleted by the main makefile.
-# We just have to delete files specific to us.
-
-treelang.mostlyclean:
- for name in $(TREE_EXES); \
- do \
- echo deleting $$name; \
- if [ -f treelang/$$name$(exeext) ] ; then \
- rm -f treelang/$$name$(exeext); \
- fi ; \
- done
- -rm -f treelang/*$(objext)
- -rm -f treelang/*$(coverageexts)
- -rm treelang.done
-
-
-treelang.clean: treelang.mostlyclean
-
-treelang.distclean: treelang.clean
- -rm -f treelang/config.status
- -rm -f treelang/*.output
-
-treelang.maintainer-clean: treelang.distclean
- for name in $(TREE_GENERATED); \
- do \
- if [ -f $(srcdir)/treelang/$$name ] ; then \
- echo deleting $(srcdir)/treelang/$$name; \
- rm -f $(srcdir)/treelang/$$name; \
- fi ; \
- done
- -rm -R $(srcdir)/treelang/*~
-
-
-#
-# Stage hooks:
-# The main makefile has already created stage?/treelang.
-
-treelang.stage1: stage1-start
- -mv treelang/*$(objext) stage1/treelang
-treelang.stage2: stage2-start
- -mv treelang/*$(objext) stage2/treelang
-treelang.stage3: stage3-start
- -mv treelang/*$(objext) stage3/treelang
-treelang.stage4: stage4-start
- -mv treelang/*$(objext) stage4/treelang
-treelang.stageprofile: stageprofile-start
- -mv treelang/*$(objext) stageprofile/treelang
-treelang.stagefeedback: stagefeedback-start
- -mv treelang/*$(objext) stagefeedback/treelang
-#
-# Maintenance hooks:
-
-# test hook
-
-check-treelang: treelang.check
-
-TESTSUITEDIR = testsuite
-
-treelang.check: $(TESTSUITEDIR)/site.exp
- -mkdir testsuite/treelang
-
-# these three files are empty and it seems diff has trouble generating
-# patch files for new empty files as required for cvs.
-# STAMP does not cut it here as I need an empty file.
- -rootme=`${PWD_COMMAND}`; export rootme; \
- srcdir=`cd ${srcdir}; ${PWD_COMMAND}` ; export srcdir ; \
- cd testsuite; \
- EXPECT=${EXPECT} ; export EXPECT ; \
- if [ -f $${rootme}/../expect/expect ] ; then \
- TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; ${PWD_COMMAND}` ; \
- export TCL_LIBRARY ; fi ; \
- PATH=`cd ..;${PWD_COMMAND}`:$$PATH; export PATH; \
- gcc_extras="-B`cd ..;${PWD_COMMAND}` -B`cd ..;${PWD_COMMAND}`/treelang"; export gcc_extras; \
- $(RUNTEST) --tool treelang $(RUNTESTFLAGS)
-
-# copy the output files from the current test to source ie say the new results are OK
-treelang.check.fix: force
- srcdir=`cd ${srcdir}; ${PWD_COMMAND}` ; export srcdir ;
- -cp testsuite/treelang/*.out* t
- -cp testsuite/treelang/*runpgm* t
- -rm -f t/*nofilename
-
-#
-
-config.status: treelang/config-lang.in
diff --git a/gcc/treelang/README b/gcc/treelang/README
deleted file mode 100644
index 87dce1ae85e..00000000000
--- a/gcc/treelang/README
+++ /dev/null
@@ -1,19 +0,0 @@
-This is a sample language front end for GCC.
-
-This is a replacement for 'toy' which had potential copyright issues,
-but more importantly it did not exercise very much of GCC. The intent
-of this language is that it should provide a cookbook of language
-elements that you can use in any language front end.
-
-To this end, treelang is essentially an implementation of a subset of
-the GCC back end 'tree' interface in syntax.
-
-Thanks to Richard Kenner, Joachim Nadler and many others for helping
-me to understand enough of GCC to do this.
-
-Please note, the documentation is not a good model to use for GCC
-front end documentation.
-
-Tim Josling
-19 June 2002
-
diff --git a/gcc/treelang/config-lang.in b/gcc/treelang/config-lang.in
deleted file mode 100644
index 9c0c0c4f7f0..00000000000
--- a/gcc/treelang/config-lang.in
+++ /dev/null
@@ -1,36 +0,0 @@
-# Top level configure fragment for GNU C++.
-# Copyright (C) 1994, 1995, 1997, 1998, 2000, 2001, 2002, 2007 Free Software Foundation, Inc.
-
-# This file is part of GCC.
-
-# GCC is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3, or (at your option)
-# any later version.
-
-# GCC is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with GCC; see the file COPYING3. If not see
-# <http://www.gnu.org/licenses/>.
-
-
-# Configure looks for the existence of this file to auto-config each language.
-# We define several parameters used by configure:
-#
-# language - name of language as it would appear in $(LANGUAGES)
-# compilers - value to add to $(COMPILERS)
-# diff_excludes - files to ignore when building diffs between two versions.
-
-language="treelang"
-
-compilers="tree1\$(exeext)"
-
-diff_excludes="-x lex.c -x parse.c -x parse.h"
-headers=
-build_by_default="no"
-
-gtfiles="\$(srcdir)/treelang/tree1.c \$(srcdir)/treelang/treetree.c \$(srcdir)/treelang/treelang.h"
diff --git a/gcc/treelang/lang-specs.h b/gcc/treelang/lang-specs.h
deleted file mode 100644
index 4d9ae2bac7d..00000000000
--- a/gcc/treelang/lang-specs.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Definitions for specs for TREELANG
-
- The format of the specs file is documented in gcc.c
-
- Copyright (C) 1995, 96-98, 1999, 2000, 2001, 2002, 2007 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>. */
-
-/*
- This is the contribution to the `default_compilers' array in GCC.c for
- treelang.
-
- This file must compile with 'traditional', so no ANSI string concatenations
-
-*/
-
-{".tree", "@treelang", NULL, 0, 0},
-{".TREE", "@treelang", NULL, 0, 0},
-{".tre", "@treelang", NULL, 0, 0},
-{".TRE", "@treelang", NULL, 0, 0},
-{"@treelang",
- "%{!E:tree1 %i %(cc1_options) %{J*} %{I*}\
- %{!fsyntax-only:%(invoke_as)}}", NULL , 0, 0
-},
diff --git a/gcc/treelang/lang.opt b/gcc/treelang/lang.opt
deleted file mode 100644
index 9b461d6b614..00000000000
--- a/gcc/treelang/lang.opt
+++ /dev/null
@@ -1,42 +0,0 @@
-; Options for the treelang front end.
-; Copyright (C) 2003, 2007 Free Software Foundation, Inc.
-;
-; This file is part of GCC.
-;
-; GCC is free software; you can redistribute it and/or modify it under
-; the terms of the GNU General Public License as published by the Free
-; Software Foundation; either version 3, or (at your option) any later
-; version.
-;
-; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-; WARRANTY; without even the implied warranty of MERCHANTABILITY or
-; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-; for more details.
-;
-; You should have received a copy of the GNU General Public License
-; along with GCC; see the file COPYING3. If not see
-; <http://www.gnu.org/licenses/>.
-
-
-; See the GCC internals manual for a description of this file's format.
-
-; Please try to keep this file in ASCII collating order.
-
-Language
-Treelang
-
-flexer-trace
-Treelang
-Trace lexical analysis
-
-fparser-trace
-Treelang
-Trace the parsing process
-
-v
-Treelang
-
-y
-Treelang
-
-; This comment is to ensure we retain the blank line above.
diff --git a/gcc/treelang/lex.l b/gcc/treelang/lex.l
deleted file mode 100644
index 86a81d78343..00000000000
--- a/gcc/treelang/lex.l
+++ /dev/null
@@ -1,292 +0,0 @@
-/* -*- c -*- = mode for emacs editor
-
- TREELANG lexical analysis
-
- ---------------------------------------------------------------------
-
- Copyright (C) 1986, 87, 89, 92-96, 1997, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the
- Free Software Foundation; either version 3, or (at your option) any
- later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>.
-
- In other words, you are welcome to use, share and improve this program.
- You are forbidden to forbid anyone else to use, share and improve
- what you give them. Help stamp out software-hoarding!
-
- ---------------------------------------------------------------------
-
- Written by Tim Josling 1999-2001, based in part on other parts of
- the GCC compiler. */
-
-%{
-#include "config.h"
-#include "system.h"
-#include "coretypes.h"
-#include "tm.h"
-#include "input.h"
-#include "tree.h"
-
-/* Token defs. */
-#include "treelang.h"
-#include "parse.h"
-#include "treetree.h"
-#include "toplev.h"
-
-extern int option_lexer_trace;
-
-int yylex (void);
-void update_yylval (int a);
-
-static int next_tree_charno = 1;
-static int lineno = 1;
-
-static void update_lineno_charno (void);
-static void dump_lex_value (int lexret);
-
-#define SAVE_RETURN(a) {update_yylval (a); if (option_lexer_trace)\
- {fprintf (stderr, "\nlexer returning"); dump_lex_value (a);} return a;}
-#define NOT_RETURN(a) {update_yylval (a); if (option_lexer_trace)\
- {fprintf (stderr, "\nlexer swallowing"); dump_lex_value (a);}}
-%}
-
-%option nostack
-%option nounput
-%option noyywrap
-%option pointer
-%option nodefault
-
-%%
-
- {
- /* ??? Should really allocate only what we need. */
- yylval = my_malloc (sizeof (struct prod_token_parm_item));
- LINEMAP_POSITION_FOR_COLUMN (input_location, line_table,
- next_tree_charno);
- ((struct prod_token_parm_item *)yylval)->tp.tok.location = input_location;
- ((struct prod_token_parm_item *)yylval)->tp.tok.charno = next_tree_charno;
- }
-
-[ \n\t]+ {
- update_lineno_charno ();
- NOT_RETURN (WHITESPACE);
-}
-
-"//".* {
- /* Comment. */
- update_lineno_charno ();
- NOT_RETURN (COMMENT);
-}
-
-"{" {
- update_lineno_charno ();
- SAVE_RETURN (LEFT_BRACE);
-}
-
-"}" {
- update_lineno_charno ();
- SAVE_RETURN (RIGHT_BRACE);
-}
-
-"(" {
- update_lineno_charno ();
- SAVE_RETURN (LEFT_PARENTHESIS);
-}
-
-")" {
- update_lineno_charno ();
- SAVE_RETURN (RIGHT_PARENTHESIS);
-}
-
-"," {
- update_lineno_charno ();
- SAVE_RETURN (COMMA);
-}
-
-";" {
- update_lineno_charno ();
- SAVE_RETURN (SEMICOLON);
-}
-
-"+" {
- update_lineno_charno ();
- SAVE_RETURN (tl_PLUS);
-}
-
-"-" {
- update_lineno_charno ();
- SAVE_RETURN (tl_MINUS);
-}
-
-"=" {
- update_lineno_charno ();
- SAVE_RETURN (ASSIGN);
-}
-
-"==" {
- update_lineno_charno ();
- SAVE_RETURN (EQUALS);
-}
-
-[+-]?[0-9]+ {
- update_lineno_charno ();
- SAVE_RETURN (INTEGER);
-}
-
-"external_reference" {
- update_lineno_charno ();
- SAVE_RETURN (EXTERNAL_REFERENCE);
-}
-
-"external_definition" {
- update_lineno_charno ();
- SAVE_RETURN (EXTERNAL_DEFINITION);
-}
-
-"static" {
- update_lineno_charno ();
- SAVE_RETURN (STATIC);
-}
-
-"automatic" {
- update_lineno_charno ();
- SAVE_RETURN (AUTOMATIC);
-}
-
-"int" {
- update_lineno_charno ();
- SAVE_RETURN (INT);
-}
-
-"char" {
- update_lineno_charno ();
- SAVE_RETURN (CHAR);
-}
-
-"void" {
- update_lineno_charno ();
- SAVE_RETURN (VOID);
-}
-
-"unsigned" {
- update_lineno_charno ();
- SAVE_RETURN (UNSIGNED);
-}
-
-"return" {
- update_lineno_charno ();
- SAVE_RETURN (tl_RETURN);
-}
-
-"if" {
- update_lineno_charno ();
- SAVE_RETURN (IF);
-}
-
-"else" {
- update_lineno_charno ();
- SAVE_RETURN (ELSE);
-}
-
-[A-Za-z_]+[A-Za-z_0-9]* {
- update_lineno_charno ();
- update_yylval (NAME);
- if (option_lexer_trace)
- {
- fprintf (stderr, "\nlexer returning");
- dump_lex_value (NAME);
- }
- return NAME;
-}
-
-[^\n] {
- update_lineno_charno ();
- error ("%HUnrecognized character %qc.",
- &((struct prod_token_parm_item *)yylval)->tp.tok.location,
- yytext[0]);
-}
-
-%%
-
-/*
- Update line number (1-) and character number (1-). Call this
- before processing the token. */
-
-static void
-update_lineno_charno (void)
-{
- /* Update the values we send to caller in case we sometimes don't
- tell them about all the 'tokens' eg comments etc. */
- int yyl;
- LINEMAP_POSITION_FOR_COLUMN (input_location, line_table,
- next_tree_charno);
- ((struct prod_token_parm_item *)yylval)->tp.tok.location = input_location;
- ((struct prod_token_parm_item *)yylval)->tp.tok.charno = next_tree_charno;
-
- for ( yyl = 0; yyl < yyleng; ++yyl )
- {
- if ( yytext[yyl] == '\n' )
- {
- source_location s = linemap_line_start (line_table, ++lineno,
- 80);
- input_location = s;
- next_tree_charno = 1;
- }
- else
- next_tree_charno++;
- }
-}
-
-/* Fill in the fields of yylval - the value of the token. The token
- type is A. */
-void
-update_yylval (int a)
-{
- struct prod_token_parm_item * tok;
- tok = yylval;
-
- tok->category = token_category;
- tok->type = a;
- tok->tp.tok.length = yyleng;
- /* Have to copy yytext as it is just a ptr into the buffer at the
- moment. */
- tok->tp.tok.chars = (const unsigned char *) get_string (yytext, yyleng);
-}
-
-/* Trace the value LEXRET and the position and token details being
- returned by the lexical analyser. */
-
-static void
-dump_lex_value (int lexret)
-{
- int ix;
-
- fprintf (stderr, " %d l:%d c:%d ln:%d text=", lexret,
- LOCATION_LINE (((struct prod_token_parm_item *)
- yylval)->tp.tok.location),
- ((struct prod_token_parm_item *) yylval)->tp.tok.charno,
- ((struct prod_token_parm_item *) yylval)->tp.tok.length);
-
- for (ix = 0; ix < yyleng; ix++)
- {
- fprintf (stderr, "%c", yytext[ix]);
- }
- fprintf (stderr, " in hex:");
- for (ix = 0; ix < yyleng; ix++)
- {
- fprintf (stderr, " %2.2x", yytext[ix]);
- }
- fprintf (stderr, "\n");
-}
-
diff --git a/gcc/treelang/parse.y b/gcc/treelang/parse.y
deleted file mode 100644
index 65225205bd5..00000000000
--- a/gcc/treelang/parse.y
+++ /dev/null
@@ -1,988 +0,0 @@
-/* -*- c -*- emacs mode c */
-/* TREELANG Compiler parser.
-
----------------------------------------------------------------------
-
-Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007
-Free Software Foundation, Inc.
-
-This program is free software; you can redistribute it and/or modify it
-under the terms of the GNU General Public License as published by the
-Free Software Foundation; either version 3, or (at your option) any
-later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; see the file COPYING3. If not see
-<http://www.gnu.org/licenses/>.
-
-In other words, you are welcome to use, share and improve this program.
-You are forbidden to forbid anyone else to use, share and improve
-what you give them. Help stamp out software-hoarding!
-
----------------------------------------------------------------------
-
-Written by Tim Josling 1999-2001, based in part on other parts of
-the GCC compiler. */
-
-/* Grammar Conflicts
- *****************
- There are no conflicts in this grammar. Please keep it that way. */
-
-%{
-#include "config.h"
-#include "system.h"
-#include "coretypes.h"
-#include "tm.h"
-#include "timevar.h"
-#include "tree.h"
-
-#include "treelang.h"
-#include "treetree.h"
-#include "toplev.h"
-
-#define YYDEBUG 1
-#define YYPRINT(file, type, value) print_token (file, type, value)
-#define YYERROR_VERBOSE YES
-
- /* My yylex routine used to intercept calls to flex generated code, to
- record lex time. */
- int yylex (void);
- static inline int my_yylex (void);
-
- /* Call lex, but ensure time is charged to TV_LEX. */
- static inline int
- my_yylex (void)
- {
- int res;
- timevar_push (TV_LEX);
- res = yylex ();
- timevar_pop (TV_LEX);
- return res;
- }
-#define yylex my_yylex
-
- extern int option_parser_trace;
-
- /* Local prototypes. */
- static void yyerror (const char *error_message);
- int yyparse (void);
- void print_token (FILE *file, unsigned int type ATTRIBUTE_UNUSED,
- YYSTYPE value);
- static struct prod_token_parm_item *reverse_prod_list
- (struct prod_token_parm_item *old_first);
- static void ensure_not_void (unsigned int type,
- struct prod_token_parm_item *name);
- static int check_type_match (int type_num, struct prod_token_parm_item *exp);
- static int get_common_type (struct prod_token_parm_item *type1,
- struct prod_token_parm_item *type2);
- static struct prod_token_parm_item *make_integer_constant
- (struct prod_token_parm_item *value);
- static struct prod_token_parm_item *make_plus_expression
- (struct prod_token_parm_item *tok, struct prod_token_parm_item *op1,
- struct prod_token_parm_item *op2, int type_code, int prod_code);
- static void set_storage (struct prod_token_parm_item *prod);
-
- /* File global variables. */
- static struct prod_token_parm_item *current_function = NULL;
-%}
-
-/* Not %raw - seems to have bugs. */
-%token_table
-
-/* Punctuation. */
-%token RIGHT_BRACE
-%token LEFT_BRACE
-%token RIGHT_SQUARE_BRACKET
-%token LEFT_SQUARE_BRACKET
-%token RIGHT_PARENTHESIS
-%token LEFT_PARENTHESIS
-%token SEMICOLON
-%token ASTERISK
-%token COMMA
-%right EQUALS
-%right ASSIGN
-%left tl_PLUS
-%left tl_MINUS
-
-/* Literals. */
-%token INTEGER
-
-/* Keywords. */
-%token IF
-%token ELSE
-%token tl_RETURN
-%token CHAR
-%token INT
-%token UNSIGNED
-%token VOID
-%token TYPEDEF
-%token NAME
-%token STATIC
-%token AUTOMATIC
-%token EXTERNAL_DEFINITION
-%token EXTERNAL_REFERENCE
-
-/* Tokens not passed to parser. */
-%token WHITESPACE
-%token COMMENT
-
-/* Pseudo tokens - productions. */
-%token PROD_VARIABLE_NAME
-%token PROD_TYPE_NAME
-%token PROD_FUNCTION_NAME
-%token PROD_INTEGER_CONSTANT
-%token PROD_PLUS_EXPRESSION
-%token PROD_MINUS_EXPRESSION
-%token PROD_ASSIGN_EXPRESSION
-%token PROD_VARIABLE_REFERENCE_EXPRESSION
-%token PROD_PARAMETER
-%token PROD_FUNCTION_INVOCATION
-%expect 0
-%%
-
-file:
-/* Nil. */ {
- /* Nothing to do. */
-}
-|declarations {
- /* Nothing to do. */
-}
-;
-
-
-declarations:
-declaration {
- /* Nothing to do. */
-}
-| declarations declaration {
- /* Nothing to do. */
-}
-;
-
-declaration:
-variable_def {
- /* Nothing to do. */
-}
-|function_prototype {
- /* Nothing to do. */
-}
-|function {
- /* Nothing to do. */
-}
-;
-
-variable_def:
-storage typename NAME init_opt SEMICOLON {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- tok = $3;
- prod = make_production (PROD_VARIABLE_NAME, tok);
- SYMBOL_TABLE_NAME (prod) = tok;
- EXPRESSION_TYPE (prod) = $2;
- VAR_INIT (prod) = $4;
- NUMERIC_TYPE (prod) =
- NUMERIC_TYPE (( (struct prod_token_parm_item *)EXPRESSION_TYPE (prod)));
- ensure_not_void (NUMERIC_TYPE (prod), tok);
- if (insert_tree_name (prod))
- {
- YYERROR;
- }
- STORAGE_CLASS_TOKEN (prod) = $1;
- set_storage (prod);
-
- if (VAR_INIT (prod))
- {
- gcc_assert (((struct prod_token_parm_item *)
- VAR_INIT (prod))->tp.pro.code);
- if (STORAGE_CLASS (prod) == EXTERNAL_REFERENCE_STORAGE)
- {
- error("%Hexternal reference variable %q.*s has an initial value",
- &tok->tp.tok.location, tok->tp.tok.length, tok->tp.tok.chars);
- YYERROR;
- VAR_INIT (prod) = NULL;
- }
-
- }
-
- prod->tp.pro.code = tree_code_create_variable
- (STORAGE_CLASS (prod),
- ((struct prod_token_parm_item *)SYMBOL_TABLE_NAME (prod))->tp.tok.chars,
- ((struct prod_token_parm_item *)SYMBOL_TABLE_NAME (prod))->tp.tok.length,
- NUMERIC_TYPE (prod),
- VAR_INIT (prod) ?
- ((struct prod_token_parm_item *)VAR_INIT (prod))->tp.pro.code : NULL,
- tok->tp.tok.location);
- gcc_assert (prod->tp.pro.code);
-}
-;
-
-storage:
-STATIC
-|AUTOMATIC
-|EXTERNAL_DEFINITION
-|EXTERNAL_REFERENCE
-;
-
-parameter:
-typename NAME {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- struct prod_token_parm_item *prod2;
- tok = $2;
- prod = make_production (PROD_VARIABLE_NAME, tok);
- SYMBOL_TABLE_NAME (prod) = $2;
- EXPRESSION_TYPE (prod) = $1;
- NUMERIC_TYPE (prod) =
- NUMERIC_TYPE (( (struct prod_token_parm_item *)EXPRESSION_TYPE (prod)));
- ensure_not_void (NUMERIC_TYPE (prod), tok);
- if (insert_tree_name (prod))
- {
- YYERROR;
- }
- prod2 = make_production (PROD_PARAMETER, tok);
- VARIABLE (prod2) = prod;
- $$ = prod2;
-}
-;
-
-function_prototype:
-storage typename NAME LEFT_PARENTHESIS parameters_opt RIGHT_PARENTHESIS SEMICOLON {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- struct prod_token_parm_item *type;
- struct prod_token_parm_item *first_parms;
- struct prod_token_parm_item *last_parms;
- struct prod_token_parm_item *this_parms;
- struct prod_token_parm_item *this_parm;
- struct prod_token_parm_item *this_parm_var;
- tok = $3;
- prod = make_production (PROD_FUNCTION_NAME, $3);
- SYMBOL_TABLE_NAME (prod) = $3;
- EXPRESSION_TYPE (prod) = $2;
- NUMERIC_TYPE (prod) =
- NUMERIC_TYPE (( (struct prod_token_parm_item *)EXPRESSION_TYPE (prod)));
- PARAMETERS (prod) = reverse_prod_list ($5);
- insert_tree_name (prod);
- STORAGE_CLASS_TOKEN (prod) = $1;
- set_storage (prod);
- switch (STORAGE_CLASS (prod))
- {
- case STATIC_STORAGE:
- case EXTERNAL_DEFINITION_STORAGE:
- case EXTERNAL_REFERENCE_STORAGE:
- break;
-
- case AUTOMATIC_STORAGE:
- error ("%Hfunction %q.*s cannot be automatic",
- &tok->tp.tok.location, tok->tp.tok.length, tok->tp.tok.chars);
- YYERROR;
- break;
-
- default:
- gcc_unreachable ();
- }
- type = EXPRESSION_TYPE (prod);
- /* Create a parameter list in a non-front end specific format. */
- for (first_parms = NULL, last_parms = NULL, this_parm = PARAMETERS (prod);
- this_parm;
- this_parm = this_parm->tp.pro.next)
- {
- gcc_assert (this_parm->category == production_category);
- this_parm_var = VARIABLE (this_parm);
-
- gcc_assert (this_parm_var);
- gcc_assert (this_parm_var->category == production_category);
- gcc_assert (this_parm_var->tp.pro.main_token);
-
- this_parms = my_malloc (sizeof (struct prod_token_parm_item));
-
- this_parms->tp.par.variable_name =
- this_parm_var->tp.pro.main_token->tp.tok.chars;
- this_parms->category = parameter_category;
- this_parms->type = NUMERIC_TYPE
- (( (struct prod_token_parm_item *)EXPRESSION_TYPE (this_parm_var)));
- if (last_parms)
- {
- last_parms->tp.par.next = this_parms;
- last_parms = this_parms;
- }
- else
- {
- first_parms = this_parms;
- last_parms = this_parms;
- }
- this_parms->tp.par.where_to_put_var_tree =
- & (((struct prod_token_parm_item *)VARIABLE (this_parm))->tp.pro.code);
- }
- FIRST_PARMS (prod) = first_parms;
-
- prod->tp.pro.code =
- tree_code_create_function_prototype (tok->tp.tok.chars,
- STORAGE_CLASS (prod),
- NUMERIC_TYPE (type),
- first_parms, tok->tp.tok.location);
-
-#ifdef ENABLE_CHECKING
- /* Check all the parameters have code. */
- for (this_parm = PARAMETERS (prod);
- this_parm;
- this_parm = this_parm->tp.pro.next)
- {
- gcc_assert ((struct prod_token_parm_item *)VARIABLE (this_parm));
- gcc_assert (((struct prod_token_parm_item *)
- VARIABLE (this_parm))->tp.pro.code);
- }
-#endif
-}
-;
-
-function:
-NAME LEFT_BRACE {
- struct prod_token_parm_item *proto;
- struct prod_token_parm_item search_prod;
- struct prod_token_parm_item *tok;
- tok = $1;
- SYMBOL_TABLE_NAME ((&search_prod)) = tok;
- search_prod.category = token_category;
- current_function = proto = lookup_tree_name (&search_prod);
- if (!proto)
- {
- error ("%Hno prototype found for %q.*s", &tok->tp.tok.location,
- tok->tp.tok.length, tok->tp.tok.chars);
- YYERROR;
- }
-
- gcc_assert (proto->tp.pro.code);
-
- tree_code_create_function_initial (proto->tp.pro.code, tok->tp.tok.location);
-}
-
-variable_defs_opt statements_opt RIGHT_BRACE {
- struct prod_token_parm_item *tok;
- tok = $1;
- tree_code_create_function_wrapup (tok->tp.tok.location);
- current_function = NULL;
-}
-;
-
-variable_defs_opt:
-/* Nil. */ {
- $$ = 0;
-}
-|variable_defs {
- $$ = $1;
-}
-;
-
-statements_opt:
-/* Nil. */ {
- $$ = 0;
-}
-|statements {
- $$ = $1;
-}
-;
-
-variable_defs:
-variable_def {
- /* Nothing to do. */
-}
-|variable_defs variable_def {
- /* Nothing to do. */
-}
-;
-
-typename:
-INT {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- tok = $1;
- prod = make_production (PROD_TYPE_NAME, tok);
- NUMERIC_TYPE (prod) = SIGNED_INT;
- prod->tp.pro.code = tree_code_get_type (NUMERIC_TYPE (prod));
- $$ = prod;
-}
-|UNSIGNED INT {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- tok = $1;
- prod = make_production (PROD_TYPE_NAME, tok);
- NUMERIC_TYPE (prod) = UNSIGNED_INT;
- prod->tp.pro.code = tree_code_get_type (NUMERIC_TYPE (prod));
- $$ = prod;
-}
-|CHAR {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- tok = $1;
- prod = make_production (PROD_TYPE_NAME, tok);
- NUMERIC_TYPE (prod) = SIGNED_CHAR;
- prod->tp.pro.code = tree_code_get_type (NUMERIC_TYPE (prod));
- $$ = prod;
-}
-|UNSIGNED CHAR {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- tok = $1;
- prod = make_production (PROD_TYPE_NAME, tok);
- NUMERIC_TYPE (prod) = UNSIGNED_CHAR;
- prod->tp.pro.code = tree_code_get_type (NUMERIC_TYPE (prod));
- $$ = prod;
-}
-|VOID {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- tok = $1;
- prod = make_production (PROD_TYPE_NAME, tok);
- NUMERIC_TYPE (prod) = VOID_TYPE;
- prod->tp.pro.code = tree_code_get_type (NUMERIC_TYPE (prod));
- $$ = prod;
-}
-;
-
-parameters_opt:
-/* Nothing to do. */ {
- $$ = 0;
-}
-| parameters {
- $$ = $1;
-}
-;
-
-parameters:
-parameter {
- /* Nothing to do. */
- $$ = $1;
-}
-|parameters COMMA parameter {
- struct prod_token_parm_item *prod1;
- prod1 = $3;
- prod1->tp.pro.next = $1; /* Insert in reverse order. */
- $$ = prod1;
-}
-;
-
-statements:
-statement {
- /* Nothing to do. */
-}
-|statements statement {
- /* Nothing to do. */
-}
-;
-
-statement:
-expression SEMICOLON {
- struct prod_token_parm_item *exp;
- exp = $1;
- tree_code_output_expression_statement (exp->tp.pro.code,
- exp->tp.pro.main_token->tp.tok.location);
-}
-|return SEMICOLON {
- /* Nothing to do. */
-}
-|if_statement {
- /* Nothing to do. */
-}
-;
-
-if_statement:
-IF LEFT_PARENTHESIS expression RIGHT_PARENTHESIS {
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *exp;
- tok = $1;
- exp = $3;
- ensure_not_void (NUMERIC_TYPE (exp), exp->tp.pro.main_token);
- tree_code_if_start (exp->tp.pro.code, tok->tp.tok.location);
-}
-LEFT_BRACE variable_defs_opt statements_opt RIGHT_BRACE {
- /* Just let the statements flow. */
-}
-ELSE {
- struct prod_token_parm_item *tok;
- tok = $1;
- tree_code_if_else (tok->tp.tok.location);
-}
-LEFT_BRACE variable_defs_opt statements_opt RIGHT_BRACE {
- struct prod_token_parm_item *tok;
- tok = $1;
- tree_code_if_end (tok->tp.tok.location);
-}
-;
-
-
-return:
-tl_RETURN expression_opt {
- struct prod_token_parm_item *type_prod;
- struct prod_token_parm_item *ret_tok = $1;
- struct prod_token_parm_item *exp = $2;
-
- type_prod = EXPRESSION_TYPE (current_function);
- if (NUMERIC_TYPE (type_prod) == VOID_TYPE)
- if (exp == NULL)
- tree_code_generate_return (type_prod->tp.pro.code, NULL);
- else
- {
- warning (0, "%Hredundant expression in return",
- &ret_tok->tp.tok.location);
- tree_code_generate_return (type_prod->tp.pro.code, NULL);
- }
- else
- if (exp == NULL)
- error ("%Hexpression missing in return", &ret_tok->tp.tok.location);
- else
- {
- /* Check same type. */
- if (check_type_match (NUMERIC_TYPE (type_prod), exp))
- {
- gcc_assert (type_prod->tp.pro.code);
- gcc_assert (exp->tp.pro.code);
-
- /* Generate the code. */
- tree_code_generate_return (type_prod->tp.pro.code,
- exp->tp.pro.code);
- }
- }
-}
-;
-
-expression_opt:
-/* Nil. */ {
- $$ = 0;
-}
-|expression {
- struct prod_token_parm_item *exp;
- exp = $1;
- gcc_assert (exp->tp.pro.code);
-
- $$ = $1;
-}
-;
-
-expression:
-INTEGER {
- $$ = make_integer_constant ($1);
-}
-|variable_ref {
- $$ = $1;
-}
-|expression tl_PLUS expression {
- struct prod_token_parm_item *tok = $2;
- struct prod_token_parm_item *op1 = $1;
- struct prod_token_parm_item *op2 = $3;
- int type_code = get_common_type (op1, op2);
- if (!type_code)
- YYERROR;
- $$ = make_plus_expression (tok, op1, op2, type_code, EXP_PLUS);
-}
-|expression tl_MINUS expression %prec tl_PLUS {
- struct prod_token_parm_item *tok = $2;
- struct prod_token_parm_item *op1 = $1;
- struct prod_token_parm_item *op2 = $3;
- int type_code = get_common_type (op1, op2);
- if (!type_code)
- YYERROR;
- $$ = make_plus_expression (tok, op1, op2, type_code, EXP_MINUS);
-}
-|expression EQUALS expression {
- struct prod_token_parm_item *tok = $2;
- struct prod_token_parm_item *op1 = $1;
- struct prod_token_parm_item *op2 = $3;
- int type_code = NUMERIC_TYPE (op1);
- if (!type_code)
- YYERROR;
- $$ = make_plus_expression
- (tok, op1, op2, type_code, EXP_EQUALS);
-}
-|variable_ref ASSIGN expression {
- struct prod_token_parm_item *tok = $2;
- struct prod_token_parm_item *op1 = $1;
- struct prod_token_parm_item *op2 = $3;
- int type_code = NUMERIC_TYPE (op1);
- if (!type_code)
- YYERROR;
- $$ = make_plus_expression
- (tok, op1, op2, type_code, EXP_ASSIGN);
-}
-|function_invocation {
- $$ = $1;
-}
-;
-
-function_invocation:
-NAME LEFT_PARENTHESIS expressions_with_commas_opt RIGHT_PARENTHESIS {
- struct prod_token_parm_item *prod;
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item search_prod;
- struct prod_token_parm_item *proto;
- struct prod_token_parm_item *exp;
- struct prod_token_parm_item *exp_proto;
- struct prod_token_parm_item *var;
- int exp_proto_count;
- int exp_count;
- tree parms;
- tree type;
-
- tok = $1;
- prod = make_production (PROD_FUNCTION_INVOCATION, tok);
- SYMBOL_TABLE_NAME (prod) = tok;
- PARAMETERS (prod) = reverse_prod_list ($3);
- SYMBOL_TABLE_NAME ((&search_prod)) = tok;
- search_prod.category = token_category;
- proto = lookup_tree_name (&search_prod);
- if (!proto)
- {
- error ("%Hfunction prototype not found for %q.*s",
- &tok->tp.tok.location, tok->tp.tok.length, tok->tp.tok.chars);
- YYERROR;
- }
- EXPRESSION_TYPE (prod) = EXPRESSION_TYPE (proto);
- NUMERIC_TYPE (prod) = NUMERIC_TYPE (proto);
- /* Count the expressions and ensure they match the prototype. */
- for (exp_proto_count = 0, exp_proto = PARAMETERS (proto);
- exp_proto; exp_proto = exp_proto->tp.pro.next)
- exp_proto_count++;
-
- for (exp_count = 0, exp = PARAMETERS (prod); exp; exp = exp->tp.pro.next)
- exp_count++;
-
- if (exp_count != exp_proto_count)
- {
- error ("%Hexpression count mismatch %q.*s with prototype",
- &tok->tp.tok.location, tok->tp.tok.length, tok->tp.tok.chars);
- YYERROR;
- }
- parms = tree_code_init_parameters ();
- for (exp_proto = PARAMETERS (proto), exp = PARAMETERS (prod);
- exp_proto;
- exp = exp->tp.pro.next, exp_proto = exp_proto->tp.pro.next)
- {
- gcc_assert (exp);
- gcc_assert (exp_proto);
- gcc_assert (exp->tp.pro.code);
-
- var = VARIABLE (exp_proto);
-
- gcc_assert (var);
- gcc_assert (var->tp.pro.code);
-
- parms = tree_code_add_parameter (parms, var->tp.pro.code,
- exp->tp.pro.code);
- }
- type = tree_code_get_type (NUMERIC_TYPE (prod));
- prod->tp.pro.code = tree_code_get_expression (EXP_FUNCTION_INVOCATION, type,
- proto->tp.pro.code,
- nreverse (parms),
- NULL, tok->tp.tok.location);
- $$ = prod;
-}
-;
-
-expressions_with_commas_opt:
-/* Nil. */ {
-$$ = 0
-}
-|expressions_with_commas { $$ = $1 }
-;
-
-expressions_with_commas:
-expression {
- struct prod_token_parm_item *exp;
- exp = $1;
- ensure_not_void (NUMERIC_TYPE (exp), exp->tp.pro.main_token);
- $$ = $1;
-}
-|expressions_with_commas COMMA expression {
- struct prod_token_parm_item *exp;
- exp = $3;
- ensure_not_void (NUMERIC_TYPE (exp), exp->tp.pro.main_token);
- exp->tp.pro.next = $1; /* Reverse order. */
- $$ = exp;
-}
-;
-
-variable_ref:
-NAME {
- struct prod_token_parm_item search_prod;
- struct prod_token_parm_item *prod;
- struct prod_token_parm_item *symbol_table_entry;
- struct prod_token_parm_item *tok;
- tree type;
-
- tok = $1;
- SYMBOL_TABLE_NAME ((&search_prod)) = tok;
- search_prod.category = token_category;
- symbol_table_entry = lookup_tree_name (&search_prod);
- if (!symbol_table_entry)
- {
- error ("%Hvariable %q.*s not defined",
- &tok->tp.tok.location, tok->tp.tok.length, tok->tp.tok.chars);
- YYERROR;
- }
-
- prod = make_production (PROD_VARIABLE_REFERENCE_EXPRESSION, tok);
- NUMERIC_TYPE (prod) = NUMERIC_TYPE (symbol_table_entry);
- type = tree_code_get_type (NUMERIC_TYPE (prod));
- if (!NUMERIC_TYPE (prod))
- YYERROR;
- OP1 (prod) = $1;
-
- prod->tp.pro.code =
- tree_code_get_expression (EXP_REFERENCE, type,
- symbol_table_entry->tp.pro.code, NULL, NULL,
- tok->tp.tok.location);
- $$ = prod;
-}
-;
-
-init_opt:
-/* Nil. */ {
- $$ = 0;
-}
-|init {
- /* Pass the initialization value up. */
- $$ = $1;
-};
-
-init:
-ASSIGN init_element {
- $$ = $2;
-}
-;
-
-init_element:
-INTEGER {
- $$ = make_integer_constant ($1);
-}
-;
-
-%%
-
-/* Print a token VALUE to file FILE. Ignore TYPE which is the token
- type. */
-
-void
-print_token (FILE *file, unsigned int type ATTRIBUTE_UNUSED, YYSTYPE value)
-{
- struct prod_token_parm_item *tok;
- unsigned int ix;
-
- tok = value;
- fprintf (file, "%d \"", LOCATION_LINE (tok->tp.tok.location));
- for (ix = 0; ix < tok->tp.tok.length; ix++)
- fprintf (file, "%c", tok->tp.tok.chars[ix]);
-
- fprintf (file, "\"");
-}
-
-/* Output a message ERROR_MESSAGE from the parser. */
-static void
-yyerror (const char *error_message)
-{
- struct prod_token_parm_item *tok;
-
- tok = yylval;
- if (tok)
- error ("%H%s", &tok->tp.tok.location, error_message);
- else
- error ("%s", error_message);
-}
-
-/* Reverse the order of a token list, linked by parse_next, old first
- token is OLD_FIRST. */
-
-static struct prod_token_parm_item*
-reverse_prod_list (struct prod_token_parm_item *old_first)
-{
- struct prod_token_parm_item *current;
- struct prod_token_parm_item *next;
- struct prod_token_parm_item *prev = NULL;
-
- current = old_first;
- prev = NULL;
-
- while (current)
- {
- gcc_assert (current->category == production_category);
-
- next = current->tp.pro.next;
- current->tp.pro.next = prev;
- prev = current;
- current = next;
- }
- return prev;
-}
-
-/* Ensure TYPE is not VOID. Use NAME as the token for the error location. */
-
-static void
-ensure_not_void (unsigned int type, struct prod_token_parm_item* name)
-{
- if (type == VOID_TYPE)
- error ("%Htype must not be void in this context",
- &name->tp.tok.location);
-}
-
-/* Check TYPE1 and TYPE2 which are integral types. Return the lowest
- common type (min is signed int). */
-
-static int
-get_common_type (struct prod_token_parm_item *type1,
- struct prod_token_parm_item *type2)
-{
- if (NUMERIC_TYPE (type1) == UNSIGNED_INT)
- return UNSIGNED_INT;
- if (NUMERIC_TYPE (type2) == UNSIGNED_INT)
- return UNSIGNED_INT;
-
- return SIGNED_INT;
-}
-
-/* Check type (TYPE_NUM) and expression (EXP) match. Return the 1 if
- OK else 0. Must be exact match - same name unless it is an
- integral type. */
-
-static int
-check_type_match (int type_num, struct prod_token_parm_item *exp)
-{
- switch (type_num)
- {
- case SIGNED_INT:
- case UNSIGNED_INT:
- case SIGNED_CHAR:
- case UNSIGNED_CHAR:
- switch (NUMERIC_TYPE (exp))
- {
- case SIGNED_INT:
- case UNSIGNED_INT:
- case SIGNED_CHAR:
- case UNSIGNED_CHAR:
- return 1;
-
- case VOID_TYPE:
- default:
- gcc_unreachable ();
- }
- break;
-
- case VOID_TYPE:
- default:
- gcc_unreachable ();
-
- }
-}
-
-/* Make a production for an integer constant VALUE. */
-
-static struct prod_token_parm_item *
-make_integer_constant (struct prod_token_parm_item* value)
-{
- struct prod_token_parm_item *tok;
- struct prod_token_parm_item *prod;
- tok = value;
- prod = make_production (PROD_INTEGER_CONSTANT, tok);
- if ((tok->tp.tok.chars[0] == (unsigned char)'-')
- || (tok->tp.tok.chars[0] == (unsigned char)'+'))
- NUMERIC_TYPE (prod) = SIGNED_INT;
- else
- NUMERIC_TYPE (prod) = UNSIGNED_INT;
- prod->tp.pro.code = tree_code_get_integer_value (tok->tp.tok.chars,
- tok->tp.tok.length);
- return prod;
-}
-
-
-/* Build a PROD_PLUS_EXPRESSION. This is uses for PLUS, MINUS, ASSIGN
- and EQUALS expressions. */
-
-static struct prod_token_parm_item *
-make_plus_expression (struct prod_token_parm_item *tok,
- struct prod_token_parm_item *op1,
- struct prod_token_parm_item *op2,
- int type_code, int prod_code)
-{
- struct prod_token_parm_item *prod;
- tree type;
-
- ensure_not_void (NUMERIC_TYPE (op1), op1->tp.pro.main_token);
- ensure_not_void (NUMERIC_TYPE (op2), op2->tp.pro.main_token);
-
- prod = make_production (PROD_PLUS_EXPRESSION, tok);
-
- NUMERIC_TYPE (prod) = type_code;
- type = tree_code_get_type (type_code);
-
- gcc_assert (type);
-
- OP1 (prod) = op1;
- OP2 (prod) = op2;
-
- prod->tp.pro.code = tree_code_get_expression (prod_code, type,
- op1->tp.pro.code,
- op2->tp.pro.code, NULL,
- tok->tp.tok.location);
-
- return prod;
-}
-
-
-/* Set STORAGE_CLASS in PROD according to CLASS_TOKEN. */
-
-static void
-set_storage (struct prod_token_parm_item *prod)
-{
- struct prod_token_parm_item *stg_class;
- stg_class = STORAGE_CLASS_TOKEN (prod);
- switch (stg_class->type)
- {
- case STATIC:
- STORAGE_CLASS (prod) = STATIC_STORAGE;
- break;
-
- case AUTOMATIC:
- STORAGE_CLASS (prod) = AUTOMATIC_STORAGE;
- break;
-
- case EXTERNAL_DEFINITION:
- STORAGE_CLASS (prod) = EXTERNAL_DEFINITION_STORAGE;
- break;
-
- case EXTERNAL_REFERENCE:
- STORAGE_CLASS (prod) = EXTERNAL_REFERENCE_STORAGE;
- break;
-
- default:
- gcc_unreachable ();
- }
-}
-
-/* Set parse trace. */
-
-void
-treelang_debug (void)
-{
- if (option_parser_trace)
- yydebug = 1;
-}
-
-#ifdef __XGETTEXT__
-/* Depending on the version of Bison used to compile this grammar,
- it may issue generic diagnostics spelled "syntax error" or
- "parse error". To prevent this from changing the translation
- template randomly, we list all the variants of this particular
- diagnostic here. Translators: there is no fine distinction
- between diagnostics with "syntax error" in them, and diagnostics
- with "parse error" in them. It's okay to give them both the same
- translation. */
-const char d1[] = N_("syntax error");
-const char d2[] = N_("parse error");
-const char d3[] = N_("syntax error; also virtual memory exhausted");
-const char d4[] = N_("parse error; also virtual memory exhausted");
-const char d5[] = N_("syntax error: cannot back up");
-const char d6[] = N_("parse error: cannot back up");
-#endif
diff --git a/gcc/treelang/spec.c b/gcc/treelang/spec.c
deleted file mode 100644
index 604ec31a46f..00000000000
--- a/gcc/treelang/spec.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Specific flags and argument handling of the Treelang front-end.
- Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3, or (at your option)
- any later version.
-
- GCC is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with GNU CC; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>. */
-
-#include "config.h"
-#include "system.h"
-#include "gcc.h"
-
-#include "coretypes.h"
-#include "tm.h"
-
-void
-lang_specific_driver (int *in_argc, const char *const **in_argv,
- int *in_added_libraries ATTRIBUTE_UNUSED)
-{
- int argc = *in_argc, i;
- const char *const *argv = *in_argv;
-
- for (i = 1; i < argc; ++i)
- {
- if (!strcmp (argv[i], "-fversion")) /* Really --version!! */
- {
- printf ("\
-GNU Treelang (GCC %s)\n\
-Copyright (C) 2006 Free Software Foundation, Inc.\n\
-\n\
-GNU Treelang comes with NO WARRANTY, to the extent permitted by law.\n\
-You may redistribute copies of GNU Treelang\n\
-under the terms of the GNU General Public License.\n\
-For more information about these matters, see the file named COPYING\n\
-", version_string);
- exit (0);
- }
- }
-}
-
-/* Called before linking. Returns 0 on success and -1 on failure. */
-int
-lang_specific_pre_link (void) /* Not used for Treelang. */
-{
- return 0;
-}
-
-/* Number of extra output files that lang_specific_pre_link may generate. */
-int lang_specific_extra_outfiles = 0; /* Not used for Treelang. */
diff --git a/gcc/treelang/tree-convert.c b/gcc/treelang/tree-convert.c
deleted file mode 100644
index f111d6d7425..00000000000
--- a/gcc/treelang/tree-convert.c
+++ /dev/null
@@ -1,107 +0,0 @@
-/* Language-level data type conversion for Treelang.
- This is a very slightly modified copy of c-convert.c.
- Copyright (C) 1987, 1988, 1991, 1998, 2002, 2003, 2007
- Free Software Foundation, Inc.
-
- This file is part of GCC.
-
- GCC is free software; you can redistribute it and/or modify it under
- the terms of the GNU General Public License as published by the Free
- Software Foundation; either version 3, or (at your option) any later
- version.
-
- GCC is distributed in the hope that it will be useful, but WITHOUT ANY
- WARRANTY; without even the implied warranty of MERCHANTABILITY or
- FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- for more details.
-
- You should have received a copy of the GNU General Public License
- along with GCC; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>. */
-
-
-/* This file contains the functions for converting C expressions
- to different data types. The only entry point is `convert'.
- Every language front end must have a `convert' function
- but what kind of conversions it does will depend on the language. */
-
-#include "config.h"
-#include "system.h"
-#include "coretypes.h"
-#include "tm.h"
-#include "diagnostic.h"
-#include "tree.h"
-#include "flags.h"
-#include "convert.h"
-#include "toplev.h"
-#include "langhooks.h"
-
-/* Change of width--truncation and extension of integers or reals--
- is represented with NOP_EXPR. Proper functioning of many things
- assumes that no other conversions can be NOP_EXPRs.
-
- Conversion between integer and pointer is represented with CONVERT_EXPR.
- Converting integer to real uses FLOAT_EXPR
- and real to integer uses FIX_TRUNC_EXPR.
-
- Here is a list of all the functions that assume that widening and
- narrowing is always done with a NOP_EXPR:
- In convert.c, convert_to_integer.
- In c-typeck.c, build_binary_op (boolean ops), and
- c_common_truthvalue_conversion.
- In expr.c: expand_expr, for operands of a MULT_EXPR.
- In fold-const.c: fold.
- In tree.c: get_narrower and get_unwidened. */
-
-/* Create an expression whose value is that of EXPR,
- converted to type TYPE. The TREE_TYPE of the value
- is always TYPE. This function implements all reasonable
- conversions; callers should filter out those that are
- not permitted by the language being compiled. */
-
-tree
-convert (tree type, tree expr)
-{
- tree e = expr;
- enum tree_code code = TREE_CODE (type);
-
- if (type == TREE_TYPE (expr)
- || TREE_CODE (expr) == ERROR_MARK
- || code == ERROR_MARK || TREE_CODE (TREE_TYPE (expr)) == ERROR_MARK)
- return expr;
-
- if (TYPE_MAIN_VARIANT (type) == TYPE_MAIN_VARIANT (TREE_TYPE (expr)))
- return fold_build1 (NOP_EXPR, type, expr);
- if (TREE_CODE (TREE_TYPE (expr)) == ERROR_MARK)
- return error_mark_node;
- if (TREE_CODE (TREE_TYPE (expr)) == VOID_TYPE)
- {
- error ("void value not ignored as it ought to be");
- return error_mark_node;
- }
- if (code == VOID_TYPE)
- return build1 (CONVERT_EXPR, type, e);
- if (code == INTEGER_TYPE || code == ENUMERAL_TYPE)
- return fold (convert_to_integer (type, e));
- if (code == BOOLEAN_TYPE)
- {
- tree t = expr;
- /* If it returns a NOP_EXPR, we must fold it here to avoid
- infinite recursion between fold () and convert (). */
- if (TREE_CODE (t) == NOP_EXPR)
- return fold_build1 (NOP_EXPR, type, TREE_OPERAND (t, 0));
- else
- return fold_build1 (NOP_EXPR, type, t);
- }
- if (code == POINTER_TYPE || code == REFERENCE_TYPE)
- return fold (convert_to_pointer (type, e));
- if (code == REAL_TYPE)
- return fold (convert_to_real (type, e));
- if (code == COMPLEX_TYPE)
- return fold (convert_to_complex (type, e));
- if (code == VECTOR_TYPE)
- return fold (convert_to_vector (type, e));
-
- error ("conversion to non-scalar type requested");
- return error_mark_node;
-}
diff --git a/gcc/treelang/tree1.c b/gcc/treelang/tree1.c
deleted file mode 100644
index e667a846eba..00000000000
--- a/gcc/treelang/tree1.c
+++ /dev/null
@@ -1,309 +0,0 @@
-/* TREELANG Compiler almost main (tree1)
- Called by GCC's toplev.c
-
- Copyright (C) 1986, 87, 89, 92-96, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
- 2007, 2008 Free Software Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING3. If not, see
- <http://www.gnu.org/licenses/>.
-
- In other words, you are welcome to use, share and improve this program.
- You are forbidden to forbid anyone else to use, share and improve
- what you give them. Help stamp out software-hoarding!
-
- ---------------------------------------------------------------------------
-
- Written by Tim Josling 1999, 2000, 2001, based in part on other
- parts of the GCC compiler. */
-
-#include "config.h"
-#include "system.h"
-#include "coretypes.h"
-#include "tm.h"
-#include "flags.h"
-#include "toplev.h"
-#include "version.h"
-
-#include "ggc.h"
-#include "tree.h"
-#include "cgraph.h"
-#include "diagnostic.h"
-
-#include "treelang.h"
-#include "treetree.h"
-#include "opts.h"
-#include "options.h"
-
-extern int yyparse (void);
-
-/* Linked list of symbols - all must be unique in treelang. */
-
-static GTY(()) struct prod_token_parm_item *symbol_table = NULL;
-
-/* Language for usage for messages. */
-
-const char *const language_string = "TREELANG - sample front end for GCC ";
-
-/* Local prototypes. */
-
-void version (void);
-
-/* Global variables. */
-
-extern struct cbl_tree_struct_parse_tree_top* parse_tree_top;
-
-/*
- Options.
-*/
-
-/* Trace the parser. */
-unsigned int option_parser_trace = 0;
-
-/* Trace the lexical analysis. */
-
-unsigned int option_lexer_trace = 0;
-
-/* Warning levels. */
-
-/* Local variables. */
-
-/* This is 1 if we have output the version string. */
-
-static int version_done = 0;
-
-/* Variable nesting level. */
-
-static unsigned int work_nesting_level = 0;
-
-/* Prepare to handle switches. */
-unsigned int
-treelang_init_options (unsigned int argc ATTRIBUTE_UNUSED,
- const char **argv ATTRIBUTE_UNUSED)
-{
- return CL_Treelang;
-}
-
-/* Process a switch - called by opts.c. */
-int
-treelang_handle_option (size_t scode, const char *arg ATTRIBUTE_UNUSED,
- int value)
-{
- enum opt_code code = (enum opt_code) scode;
-
- switch (code)
- {
- case OPT_v:
- if (!version_done)
- {
- fputs (language_string, stdout);
- fputs (pkgversion_string, stdout);
- fputs (version_string, stdout);
- fputs ("\n", stdout);
- version_done = 1;
- }
- break;
-
- case OPT_y:
- option_lexer_trace = 1;
- option_parser_trace = 1;
- break;
-
- case OPT_fparser_trace:
- option_parser_trace = value;
- break;
-
- case OPT_flexer_trace:
- option_lexer_trace = value;
- break;
-
- default:
- gcc_unreachable ();
- }
-
- return 1;
-}
-
-/* Language dependent parser setup. */
-
-bool
-treelang_init (void)
-{
- linemap_add (line_table, LC_ENTER, false, main_input_filename, 1);
-
- /* This error will not happen from GCC as it will always create a
- fake input file. */
- if (!input_filename || input_filename[0] == ' ' || !input_filename[0])
- {
- if (!version_done)
- {
- fprintf (stderr, "No input file specified, try --help for help\n");
- exit (1);
- }
-
- return false;
- }
-
- yyin = fopen (input_filename, "r");
- if (!yyin)
- {
- fprintf (stderr, "Unable to open input file %s\n", input_filename);
- exit (1);
- }
-
- linemap_add (line_table, LC_RENAME, false, "<built-in>", 1);
- linemap_line_start (line_table, 0, 1);
-
- /* Init decls, etc. */
- treelang_init_decl_processing ();
-
- return true;
-}
-
-/* Language dependent wrapup. */
-
-void
-treelang_finish (void)
-{
- fclose (yyin);
-}
-
-/* Parse a file. Debug flag doesn't seem to work. */
-
-void
-treelang_parse_file (int debug_flag ATTRIBUTE_UNUSED)
-{
- source_location s;
- linemap_add (line_table, LC_RENAME, false, main_input_filename, 1);
- s = linemap_line_start (line_table, 1, 80);
- input_location = s;
-
- treelang_debug ();
- yyparse ();
- cgraph_finalize_compilation_unit ();
- linemap_add (line_table, LC_LEAVE, false, NULL, 0);
- cgraph_optimize ();
-}
-
-/* Allocate SIZE bytes and clear them. Not to be used for strings
- which must go in stringpool. */
-
-void *
-my_malloc (size_t size)
-{
- void *mem;
- mem = ggc_alloc (size);
- if (!mem)
- {
- fprintf (stderr, "\nOut of memory\n");
- abort ();
- }
- memset (mem, 0, size);
- return mem;
-}
-
-/* Look up a name in PROD->SYMBOL_TABLE_NAME in the symbol table;
- return the symbol table entry from the symbol table if found there,
- else 0. */
-
-struct prod_token_parm_item*
-lookup_tree_name (struct prod_token_parm_item *prod)
-{
- struct prod_token_parm_item *this;
- struct prod_token_parm_item *this_tok;
- struct prod_token_parm_item *tok;
-
- sanity_check (prod);
-
- tok = SYMBOL_TABLE_NAME (prod);
- sanity_check (tok);
-
- for (this = symbol_table; this; this = this->tp.pro.next)
- {
- sanity_check (this);
- this_tok = this->tp.pro.main_token;
- sanity_check (this_tok);
- if (tok->tp.tok.length != this_tok->tp.tok.length)
- continue;
- if (memcmp (tok->tp.tok.chars, this_tok->tp.tok.chars,
- this_tok->tp.tok.length))
- continue;
-
- if (option_parser_trace)
- fprintf (stderr, "Found symbol %s (%i:%i) as %i \n",
- tok->tp.tok.chars, LOCATION_LINE (tok->tp.tok.location),
- tok->tp.tok.charno, NUMERIC_TYPE (this));
- return this;
- }
-
- if (option_parser_trace)
- fprintf (stderr, "Not found symbol %s (%i:%i) as %i \n",
- tok->tp.tok.chars, LOCATION_LINE (tok->tp.tok.location),
- tok->tp.tok.charno, tok->type);
- return NULL;
-}
-
-/* Insert name PROD into the symbol table. Return 1 if duplicate, 0 if OK. */
-
-int
-insert_tree_name (struct prod_token_parm_item *prod)
-{
- struct prod_token_parm_item *tok;
- tok = SYMBOL_TABLE_NAME (prod);
- sanity_check (prod);
- if (lookup_tree_name (prod))
- {
- error ("%HDuplicate name %q.*s.", &tok->tp.tok.location,
- tok->tp.tok.length, tok->tp.tok.chars);
- return 1;
- }
- prod->tp.pro.next = symbol_table;
- NESTING_LEVEL (prod) = work_nesting_level;
- symbol_table = prod;
- return 0;
-}
-
-/* Create a struct productions of type TYPE, main token MAIN_TOK. */
-
-struct prod_token_parm_item *
-make_production (int type, struct prod_token_parm_item *main_tok)
-{
- struct prod_token_parm_item *prod;
- prod = my_malloc (sizeof (struct prod_token_parm_item));
- prod->category = production_category;
- prod->type = type;
- prod->tp.pro.main_token = main_tok;
- return prod;
-}
-
-/* Abort if ITEM is not a valid structure, based on 'category'. */
-
-void
-sanity_check (struct prod_token_parm_item *item)
-{
- switch (item->category)
- {
- case token_category:
- case production_category:
- case parameter_category:
- break;
-
- default:
- gcc_unreachable ();
- }
-}
-
-/* New garbage collection regime see gty.texi. */
-#include "gt-treelang-tree1.h"
-/*#include "gt-treelang-treelang.h"*/
-#include "gtype-treelang.h"
diff --git a/gcc/treelang/treelang.h b/gcc/treelang/treelang.h
deleted file mode 100644
index aea030a4256..00000000000
--- a/gcc/treelang/treelang.h
+++ /dev/null
@@ -1,152 +0,0 @@
-/* TREELANG Compiler common definitions (treelang.h)
-
- Copyright (C) 1986, 87, 89, 92-96, 1997, 1999, 2000, 2001, 2002, 2003, 2004,
- 2007 Free Software Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the
- Free Software Foundation; either version 3, or (at your option) any
- later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>.
-
- In other words, you are welcome to use, share and improve this program.
- You are forbidden to forbid anyone else to use, share and improve
- what you give them. Help stamp out software-hoarding!
-
- ---------------------------------------------------------------------------
-
- Written by Tim Josling 1999, 2000, 2001, based in part on other
- parts of the GCC compiler. */
-
-#include "input.h"
-
-/* Parse structure type. */
-enum category_enum
-{ /* These values less likely to be there by chance unlike 0/1,
- make checks more meaningful */
- token_category = 111,
- production_category = 222,
- parameter_category = 333
-};
-
-/* Input file FILE. */
-extern FILE* yyin;
-
-/* Forward references to satisfy mutually recursive definitions. */
-struct token_part;
-struct production_part;
-struct prod_token_parm_item;
-typedef struct prod_token_parm_item item;
-
-/* A token from the input file. */
-
-struct token_part GTY(())
-{
- location_t location;
- unsigned int charno;
- unsigned int length; /* The value. */
- const unsigned char *chars;
-};
-
-/* Definitions for fields in production. */
-#define NESTING_LEVEL(a) a->tp.pro.info[0] /* Level used for variable definitions. */
-/* Numeric type used in type definitions and expressions. */
-#define NUMERIC_TYPE(a) a->tp.pro.info[1]
-#define SUB_COUNT 5
-#define SYMBOL_TABLE_NAME(a) (a->tp.pro.sub[0]) /* Name token. */
-#define EXPRESSION_TYPE(a) (a->tp.pro.sub[1]) /* Type identifier. */
-#define OP1(a) (a->tp.pro.sub[2]) /* Exp operand1. */
-#define PARAMETERS(a) (a->tp.pro.sub[2]) /* Function parameters. */
-#define VARIABLE(a) (a->tp.pro.sub[2]) /* Parameter variable ptr. */
-#define VAR_INIT(a) (a->tp.pro.sub[2]) /* Variable init. */
-#define OP2(a) (a->tp.pro.sub[3]) /* Exp operand2. */
-/* Function parameters linked via struct tree_parameter_list. */
-#define FIRST_PARMS(a) (a->tp.pro.sub[3])
-#define OP3(a) (a->tp.pro.sub[4]) /* Exp operand3. */
-#define STORAGE_CLASS_TOKEN(a) (a->tp.pro.sub[4]) /* Storage class token. */
-#define STORAGE_CLASS(a) a->tp.pro.flag1 /* Values in treetree.h. */
-
-struct production_part GTY(())
-{
- struct prod_token_parm_item *main_token; /* Main token for error msgs; variable name token. */
-
- unsigned int info[2]; /* Extra information. */
-
- struct prod_token_parm_item *sub[SUB_COUNT]; /* Sub productions or tokens. */
- tree code; /* Back end hook for this item. */
- struct prod_token_parm_item *next; /* Next in chains of various types. */
-
- unsigned int flag1:2;
- unsigned int flag2:1;
- unsigned int flag3:1;
- unsigned int flag4:1;
- unsigned int flag5:1;
- unsigned int flag6:1;
- unsigned int flag7:1;
-
-};
-
-/* Storage modes. */
-#define STATIC_STORAGE 0
-#define AUTOMATIC_STORAGE 1
-#define EXTERNAL_REFERENCE_STORAGE 2
-#define EXTERNAL_DEFINITION_STORAGE 3
-
-/* Numeric types. */
-#define SIGNED_CHAR 1
-#define UNSIGNED_CHAR 2
-#define SIGNED_INT 3
-#define UNSIGNED_INT 4
-#define VOID_TYPE 5
-
-/* Expression types. */
-#define EXP_PLUS 0 /* Addition expression. */
-#define EXP_REFERENCE 1 /* Variable reference. */
-#define EXP_ASSIGN 2 /* Assignment. */
-#define EXP_FUNCTION_INVOCATION 3 /* Call function. */
-#define EXP_MINUS 4 /* Subtraction. */
-#define EXP_EQUALS 5 /* Equality test. */
-
-/* Parameter list passed to back end. */
-struct parameter_part GTY(())
-{
- struct prod_token_parm_item *next; /* Next entry. */
- const unsigned char *variable_name; /* Name. */
- tree * GTY ((skip)) where_to_put_var_tree; /* Where to save decl. */
-};
-
-/* A production or a token. */
-struct prod_token_parm_item GTY(())
-{
- enum category_enum category; /* Token or production. */
- unsigned int type; /* Token or production type. */
- union t_or_p
- {
- struct token_part GTY((tag ("token_category"))) tok;
- struct production_part GTY((tag ("production_category"))) pro;
- struct parameter_part GTY((tag ("parameter_category"))) par;
- } GTY((desc ("((item *)&%1)->category"))) tp;
-};
-
-
-/* For parser. Alternatively you can define it using %union (bison) or
- union. */
-#define YYSTYPE void *
-
-void *my_malloc (size_t size);
-int insert_tree_name (struct prod_token_parm_item *prod);
-struct prod_token_parm_item *lookup_tree_name (struct prod_token_parm_item *prod);
-struct prod_token_parm_item *make_production (int type, struct prod_token_parm_item *main_tok);
-void mark_production_used (struct prod_token_parm_item *pp);
-void mark_token_used (struct prod_token_parm_item *tt);
-void treelang_debug (void);
-
-void sanity_check (struct prod_token_parm_item *item);
diff --git a/gcc/treelang/treelang.texi b/gcc/treelang/treelang.texi
deleted file mode 100644
index f9e17fb3e81..00000000000
--- a/gcc/treelang/treelang.texi
+++ /dev/null
@@ -1,1310 +0,0 @@
-\input texinfo @c -*-texinfo-*-
-
-@c NOTE THIS IS NOT A GOOD EXAMPLE OF HOW TO DO A MANUAL. FIXME!!!
-@c NOTE THIS IS NOT A GOOD EXAMPLE OF HOW TO DO A MANUAL. FIXME!!!
-
-
-@c %**start of header
-@setfilename treelang.info
-
-@include gcc-common.texi
-
-@set copyrights-treelang 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005
-
-@set email-general gcc@@gcc.gnu.org
-@set email-bugs gcc-bugs@@gcc.gnu.org or bug-gcc@@gnu.org
-@set email-patches gcc-patches@@gcc.gnu.org
-@set path-treelang gcc/gcc/treelang
-
-@ifset VERSION_PACKAGE
-@set which-treelang @value{version-GCC} @value{VERSION_PACKAGE}
-@end ifset
-@ifclear VERSION_PACKAGE
-@set which-treelang @value{version-GCC}
-@end ifclear
-@set which-GCC GCC
-
-@set email-josling tej@@melbpc.org.au
-@set www-josling http://www.geocities.com/timjosling
-
-@c This tells @include'd files that they're part of the overall TREELANG doc
-@c set. (They might be part of a higher-level doc set too.)
-@set DOC-TREELANG
-
-@c @setfilename usetreelang.info
-@c @setfilename maintaintreelang.info
-@c To produce the full manual, use the "treelang.info" setfilename, and
-@c make sure the following do NOT begin with '@c' (and the @clear lines DO)
-@set INTERNALS
-@set USING
-@c To produce a user-only manual, use the "usetreelang.info" setfilename, and
-@c make sure the following does NOT begin with '@c':
-@c @clear INTERNALS
-@c To produce a maintainer-only manual, use the "maintaintreelang.info" setfilename,
-@c and make sure the following does NOT begin with '@c':
-@c @clear USING
-
-@ifset INTERNALS
-@ifset USING
-@settitle Using and Maintaining GNU Treelang
-@end ifset
-@end ifset
-@c seems reasonable to assume at least one of INTERNALS or USING is set...
-@ifclear INTERNALS
-@settitle Using GNU Treelang
-@end ifclear
-@ifclear USING
-@settitle Maintaining GNU Treelang
-@end ifclear
-@c then again, have some fun
-@ifclear INTERNALS
-@ifclear USING
-@settitle Doing Very Little at all with GNU Treelang
-@end ifclear
-@end ifclear
-
-@syncodeindex fn cp
-@syncodeindex vr cp
-@c %**end of header
-
-@c Cause even numbered pages to be printed on the left hand side of
-@c the page and odd numbered pages to be printed on the right hand
-@c side of the page. Using this, you can print on both sides of a
-@c sheet of paper and have the text on the same part of the sheet.
-
-@c The text on right hand pages is pushed towards the right hand
-@c margin and the text on left hand pages is pushed toward the left
-@c hand margin.
-@c (To provide the reverse effect, set bindingoffset to -0.75in.)
-
-@c @tex
-@c \global\bindingoffset=0.75in
-@c \global\normaloffset =0.75in
-@c @end tex
-
-@copying
-Copyright @copyright{} @value{copyrights-treelang} Free Software Foundation, Inc.
-
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
-any later version published by the Free Software Foundation; with the
-Invariant Sections being ``GNU General Public License'', the Front-Cover
-texts being (a) (see below), and with the Back-Cover Texts being (b)
-(see below). A copy of the license is included in the section entitled
-``GNU Free Documentation License''.
-
-(a) The FSF's Front-Cover Text is:
-
- A GNU Manual
-
-(b) The FSF's Back-Cover Text is:
-
- You have freedom to copy and modify this GNU Manual, like GNU
- software. Copies published by the Free Software Foundation raise
- funds for GNU development.
-@end copying
-
-@ifnottex
-@dircategory Software development
-@direntry
-* treelang: (treelang). The GNU Treelang compiler.
-@end direntry
-@ifset INTERNALS
-@ifset USING
-This file documents the use and the internals of the GNU Treelang
-(@code{treelang}) compiler. At the moment this manual is not
-incorporated into the main GCC manual as it is incomplete. It
-corresponds to the @value{which-treelang} version of @code{treelang}.
-@end ifset
-@end ifset
-@ifclear USING
-This file documents the internals of the GNU Treelang (@code{treelang}) compiler.
-It corresponds to the @value{which-treelang} version of @code{treelang}.
-@end ifclear
-@ifclear INTERNALS
-This file documents the use of the GNU Treelang (@code{treelang}) compiler.
-It corresponds to the @value{which-treelang} version of @code{treelang}.
-@end ifclear
-
-Published by the Free Software Foundation
-51 Franklin Street, Fifth Floor
-Boston, MA 02110-1301 USA
-
-@insertcopying
-@end ifnottex
-
-@setchapternewpage odd
-@c @finalout
-@titlepage
-@ifset INTERNALS
-@ifset USING
-@title Using and Maintaining GNU Treelang
-@end ifset
-@end ifset
-@ifclear INTERNALS
-@title Using GNU Treelang
-@end ifclear
-@ifclear USING
-@title Maintaining GNU Treelang
-@end ifclear
-@versionsubtitle
-@author Tim Josling
-@page
-@vskip 0pt plus 1filll
-Published by the Free Software Foundation @*
-51 Franklin Street, Fifth Floor@*
-Boston, MA 02110-1301, USA@*
-@c Last printed ??ber, 19??.@*
-@c Printed copies are available for $? each.@*
-@c ISBN ???
-@sp 1
-@insertcopying
-@end titlepage
-@page
-
-@ifnottex
-
-@node Top, Copying,, (dir)
-@top Introduction
-@cindex Introduction
-
-@ifset INTERNALS
-@ifset USING
-This manual documents how to run, install and maintain @code{treelang}.
-It also documents the features and incompatibilities in the @value{which-treelang}
-version of @code{treelang}.
-@end ifset
-@end ifset
-
-@ifclear INTERNALS
-This manual documents how to run and install @code{treelang}.
-It also documents the features and incompatibilities in the @value{which-treelang}
-version of @code{treelang}.
-@end ifclear
-@ifclear USING
-This manual documents how to maintain @code{treelang}.
-It also documents the features and incompatibilities in the @value{which-treelang}
-version of @code{treelang}.
-@end ifclear
-
-@end ifnottex
-
-@menu
-* Copying::
-* Contributors::
-* GNU Free Documentation License::
-* Funding::
-* Getting Started::
-* What is GNU Treelang?::
-* Lexical Syntax::
-* Parsing Syntax::
-* Compiler Overview::
-* TREELANG and GCC::
-* Compiler::
-* Other Languages::
-* treelang internals::
-* Open Questions::
-* Bugs::
-* Service::
-* Projects::
-* Index::
-
-@detailmenu
- --- The Detailed Node Listing ---
-
-Other Languages
-
-* Interoperating with C and C++::
-
-treelang internals
-
-* treelang files::
-* treelang compiler interfaces::
-* Hints and tips::
-
-treelang compiler interfaces
-
-* treelang driver::
-* treelang main compiler::
-
-treelang main compiler
-
-* Interfacing to toplev.c::
-* Interfacing to the garbage collection::
-* Interfacing to the code generation code. ::
-
-Reporting Bugs
-
-* Sending Patches::
-
-@end detailmenu
-@end menu
-
-@include gpl.texi
-
-@include fdl.texi
-
-@node Contributors
-
-@unnumbered Contributors to GNU Treelang
-@cindex contributors
-@cindex credits
-
-Treelang was based on 'toy' by Richard Kenner, and also uses code from
-the GCC core code tree. Tim Josling first created the language and
-documentation, based on the GCC Fortran compiler's documentation
-framework. Treelang was updated to use the TreeSSA infrastructure by
-James A. Morrison.
-
-@itemize @bullet
-@item
-The packaging and compiler portions of GNU Treelang are based largely
-on the GCC compiler.
-@xref{Contributors,,Contributors to GCC,GCC,Using and Maintaining GCC},
-for more information.
-
-@item
-There is no specific run-time library for treelang, other than the
-standard C runtime.
-
-@item
-It would have been difficult to build treelang without access to Joachim
-Nadler's guide to writing a front end to GCC (written in German). A
-translation of this document into English is available via the
-CobolForGCC project or via the documentation links from the GCC home
-page @uref{http://gcc.gnu.org}.
-@end itemize
-
-@include funding.texi
-
-@node Getting Started
-@chapter Getting Started
-@cindex getting started
-@cindex new users
-@cindex newbies
-@cindex beginners
-
-Treelang is a sample language, useful only to help people understand how
-to implement a new language front end to GCC. It is not a useful
-language in itself other than as an example or basis for building a new
-language. Therefore only language developers are likely to have an
-interest in it.
-
-This manual assumes familiarity with GCC, which you can obtain by using
-it and by reading the manuals @samp{Using the GNU Compiler Collection (GCC)}
-and @samp{GNU Compiler Collection (GCC) Internals}.
-
-To install treelang, follow the GCC installation instructions,
-taking care to ensure you specify treelang in the configure step by adding
-treelang to the list of languages specified by @option{--enable-languages},
-e.g.@: @samp{--enable-languages=all,treelang}.
-
-If you're generally curious about the future of
-@code{treelang}, see @ref{Projects}.
-If you're curious about its past,
-see @ref{Contributors}.
-
-To see a few of the questions maintainers of @code{treelang} have,
-and that you might be able to answer,
-see @ref{Open Questions}.
-
-@ifset USING
-@node What is GNU Treelang?, Lexical Syntax, Getting Started, Top
-@chapter What is GNU Treelang?
-@cindex concepts, basic
-@cindex basic concepts
-
-GNU Treelang, or @code{treelang}, is designed initially as a free
-replacement for, or alternative to, the 'toy' language, but which is
-amenable to inclusion within the GCC source tree.
-
-@code{treelang} is largely a cut down version of C, designed to showcase
-the features of the GCC code generation back end. Only those features
-that are directly supported by the GCC code generation back end are
-implemented. Features are implemented in a manner which is easiest and
-clearest to implement. Not all or even most code generation back end
-features are implemented. The intention is to add features incrementally
-until most features of the GCC back end are implemented in treelang.
-
-The main features missing are structures, arrays and pointers.
-
-A sample program follows:
-
-@smallexample
-// @r{function prototypes}
-// @r{function 'add' taking two ints and returning an int}
-external_definition int add(int arg1, int arg2);
-external_definition int subtract(int arg3, int arg4);
-external_definition int first_nonzero(int arg5, int arg6);
-external_definition int double_plus_one(int arg7);
-
-// @r{function definition}
-add
-@{
- // @r{return the sum of arg1 and arg2}
- return arg1 + arg2;
-@}
-
-
-subtract
-@{
- return arg3 - arg4;
-@}
-
-double_plus_one
-@{
- // @r{aaa is a variable, of type integer and allocated at the start of}
- // @r{the function}
- automatic int aaa;
- // @r{set aaa to the value returned from add, when passed arg7 and arg7 as}
- // @r{the two parameters}
- aaa=add(arg7, arg7);
- aaa=add(aaa, aaa);
- aaa=subtract(subtract(aaa, arg7), arg7) + 1;
- return aaa;
-@}
-
-first_nonzero
-@{
- // @r{C-like if statement}
- if (arg5)
- @{
- return arg5;
- @}
- else
- @{
- @}
- return arg6;
-@}
-@end smallexample
-
-@node Lexical Syntax, Parsing Syntax, What is GNU Treelang?, Top
-@chapter Lexical Syntax
-@cindex Lexical Syntax
-
-Treelang programs consist of whitespace, comments, keywords and names.
-@itemize @bullet
-
-@item
-Whitespace consists of the space character, a tab, and the end of line
-character. Line terminations are as defined by the
-standard C library. Whitespace is ignored except within comments,
-and where it separates parts of the program. In the example below, A and
-B are two separate names separated by whitespace.
-
-@smallexample
-A B
-@end smallexample
-
-@item
-Comments consist of @samp{//} followed by any characters up to the end
-of the line. C style comments (/* */) are not supported. For example,
-the assignment below is followed by a not very helpful comment.
-
-@smallexample
-x = 1; // @r{Set X to 1}
-@end smallexample
-
-@item
-Keywords consist of any of the following reserved words or symbols:
-
-@itemize @bullet
-@item @{
-used to start the statements in a function
-@item @}
-used to end the statements in a function
-@item (
-start list of function arguments, or to change the precedence of operators in
-an expression
-@item )
-end list or prioritized operators in expression
-@item ,
-used to separate parameters in a function prototype or in a function call
-@item ;
-used to end a statement
-@item +
-addition, or unary plus for signed literals
-@item -
-subtraction, or unary minus for signed literals
-@item =
-assignment
-@item ==
-equality test
-@item if
-begin IF statement
-@item else
-begin 'else' portion of IF statement
-@item static
-indicate variable is permanent, or function has file scope only
-@item automatic
-indicate that variable is allocated for the life of the current scope
-@item external_reference
-indicate that variable or function is defined in another file
-@item external_definition
-indicate that variable or function is to be accessible from other files
-@item int
-variable is an integer (same as C int)
-@item char
-variable is a character (same as C char)
-@item unsigned
-variable is unsigned. If this is not present, the variable is signed
-@item return
-start function return statement
-@item void
-used as function type to indicate function returns nothing
-@end itemize
-
-
-@item
-Names consist of any letter or "_" followed by any number of letters,
-numbers, or "_". "$" is not allowed in a name. All names must be globally
-unique, i.e. may not be used twice in any context, and must
-not be a keyword. Names and keywords are case sensitive. For example:
-
-@smallexample
-a A _a a_ IF_X
-@end smallexample
-
-are all different names.
-
-@end itemize
-
-@node Parsing Syntax, Compiler Overview, Lexical Syntax, Top
-@chapter Parsing Syntax
-@cindex Parsing Syntax
-
-Declarations are built up from the lexical elements described above. A
-file may contain one of more declarations.
-
-@itemize @bullet
-
-@item
-declaration: variable declaration OR function prototype OR function declaration
-
-@item
-Function Prototype: storage type NAME ( optional_parameter_list )
-
-@smallexample
-static int add (int a, int b)
-@end smallexample
-
-@item
-variable_declaration: storage type NAME initial;
-
-Example:
-
-@smallexample
-int temp1 = 1;
-@end smallexample
-
-A variable declaration can be outside a function, or at the start of a
-function.
-
-@item
-storage: automatic OR static OR external_reference OR external_definition
-
-This defines the scope, duration and visibility of a function or variable
-
-@enumerate 1
-
-@item
-automatic: This means a variable is allocated at start of the current scope and
-released when the current scope is exited. This can only be used for variables
-within functions. It cannot be used for functions.
-
-@item
-static: This means a variable is allocated at start of program and
-remains allocated until the program as a whole ends. For a function, it
-means that the function is only visible within the current file.
-
-@item
-external_definition: For a variable, which must be defined outside a
-function, it means that the variable is visible from other files. For a
-function, it means that the function is visible from another file.
-
-@item
-external_reference: For a variable, which must be defined outside a
-function, it means that the variable is defined in another file. For a
-function, it means that the function is defined in another file.
-
-@end enumerate
-
-@item
-type: int OR unsigned int OR char OR unsigned char OR void
-
-This defines the data type of a variable or the return type of a function.
-
-@enumerate a
-
-@item
-int: The variable is a signed integer. The function returns a signed integer.
-
-@item
-unsigned int: The variable is an unsigned integer. The function returns an unsigned integer.
-
-@item
-char: The variable is a signed character. The function returns a signed character.
-
-@item
-unsigned char: The variable is an unsigned character. The function returns an unsigned character.
-
-@end enumerate
-
-@item
-parameter_list OR parameter [, parameter]...
-
-@item
-parameter: variable_declaration ,
-
-The variable declarations must not have initializations.
-
-@item
-initial: = value
-
-@item
-value: integer_constant
-
-Values without a unary plus or minus are considered to be unsigned.
-@smallexample
-e.g.@: 1 +2 -3
-@end smallexample
-
-@item
-function_declaration: name @{ variable_declarations statements @}
-
-A function consists of the function name then the declarations (if any)
-and statements (if any) within one pair of braces.
-
-The details of the function arguments come from the function
-prototype. The function prototype must precede the function declaration
-in the file.
-
-@item
-statement: if_statement OR expression_statement OR return_statement
-
-@item
-if_statement: if ( expression ) @{ variable_declarations statements @}
-else @{ variable_declarations statements @}
-
-The first lot of statements is executed if the expression is
-nonzero. Otherwise the second lot of statements is executed. Either
-list of statements may be empty, but both sets of braces and the else must be present.
-
-@smallexample
-if (a==b)
-@{
-// @r{nothing}
-@}
-else
-@{
-a=b;
-@}
-@end smallexample
-
-@item
-expression_statement: expression;
-
-The expression is executed, including any side effects.
-
-@item
-return_statement: return expression_opt;
-
-Returns from the function. If the function is void, the expression must
-be absent, and if the function is not void the expression must be
-present.
-
-@item
-expression: variable OR integer_constant OR expression + expression
-OR expression - expression OR expression == expression OR ( expression )
-OR variable = expression OR function_call
-
-An expression can be a constant or a variable reference or a
-function_call. Expressions can be combined as a sum of two expressions
-or the difference of two expressions, or an equality test of two
-expressions. An assignment is also an expression. Expressions and operator
-precedence work as in C.
-
-@item
-function_call: function_name ( optional_comma_separated_expressions )
-
-This invokes the function, passing to it the values of the expressions
-as actual parameters.
-
-@end itemize
-
-@cindex compilers
-@node Compiler Overview, TREELANG and GCC, Parsing Syntax, Top
-@chapter Compiler Overview
-treelang is run as part of the GCC compiler.
-
-@itemize @bullet
-@cindex source code
-@cindex file, source
-@cindex code, source
-@cindex source file
-@item
-It reads a user's program, stored in a file and containing instructions
-written in the appropriate language (Treelang, C, and so on). This file
-contains @dfn{source code}.
-
-@cindex translation of user programs
-@cindex machine code
-@cindex code, machine
-@cindex mistakes
-@item
-It translates the user's program into instructions a computer can carry
-out more quickly than it takes to translate the instructions in the
-first place. These instructions are called @dfn{machine code}---code
-designed to be efficiently translated and processed by a machine such as
-a computer. Humans usually aren't as good writing machine code as they
-are at writing Treelang or C, because it is easy to make tiny mistakes
-writing machine code. When writing Treelang or C, it is easy to make
-big mistakes. But you can only make one mistake, because the compiler
-stops after it finds any problem.
-
-@cindex debugger
-@cindex bugs, finding
-@cindex @code{gdb}, command
-@cindex commands, @code{gdb}
-@item
-It provides information in the generated machine code
-that can make it easier to find bugs in the program
-(using a debugging tool, called a @dfn{debugger},
-such as @code{gdb}).
-
-@cindex libraries
-@cindex linking
-@cindex @code{ld} command
-@cindex commands, @code{ld}
-@item
-It locates and gathers machine code already generated to perform actions
-requested by statements in the user's program. This machine code is
-organized into @dfn{libraries} and is located and gathered during the
-@dfn{link} phase of the compilation process. (Linking often is thought
-of as a separate step, because it can be directly invoked via the
-@code{ld} command. However, the @code{gcc} command, as with most
-compiler commands, automatically performs the linking step by calling on
-@code{ld} directly, unless asked to not do so by the user.)
-
-@cindex language, incorrect use of
-@cindex incorrect use of language
-@item
-It attempts to diagnose cases where the user's program contains
-incorrect usages of the language. The @dfn{diagnostics} produced by the
-compiler indicate the problem and the location in the user's source file
-where the problem was first noticed. The user can use this information
-to locate and fix the problem.
-
-The compiler stops after the first error. There are no plans to fix
-this, ever, as it would vastly complicate the implementation of treelang
-to little or no benefit.
-
-@cindex diagnostics, incorrect
-@cindex incorrect diagnostics
-@cindex error messages, incorrect
-@cindex incorrect error messages
-(Sometimes an incorrect usage of the language leads to a situation where
-the compiler can not make any sense of what it reads---while a human
-might be able to---and thus ends up complaining about an incorrect
-``problem'' it encounters that, in fact, reflects a misunderstanding of
-the programmer's intention.)
-
-@cindex warnings
-@cindex questionable instructions
-@item
-There are a few warnings in treelang. For example an unused static function
-generate a warnings when -Wunused-function is specified, similarly an unused
-static variable generates a warning when -Wunused-variable are specified.
-The only treelang specific warning is a warning when an expression is in a
-return statement for functions that return void.
-@end itemize
-
-@cindex components of treelang
-@cindex @code{treelang}, components of
-@code{treelang} consists of several components:
-
-@cindex @code{gcc}, command
-@cindex commands, @code{gcc}
-@itemize @bullet
-@item
-A modified version of the @code{gcc} command, which also might be
-installed as the system's @code{cc} command.
-(In many cases, @code{cc} refers to the
-system's ``native'' C compiler, which
-might be a non-GNU compiler, or an older version
-of @code{GCC} considered more stable or that is
-used to build the operating system kernel.)
-
-@cindex @code{treelang}, command
-@cindex commands, @code{treelang}
-@item
-The @code{treelang} command itself.
-
-@item
-The @code{libc} run-time library. This library contains the machine
-code needed to support capabilities of the Treelang language that are
-not directly provided by the machine code generated by the
-@code{treelang} compilation phase. This is the same library that the
-main C compiler uses (libc).
-
-@cindex @code{tree1}, program
-@cindex programs, @code{tree1}
-@cindex assembler
-@cindex @code{as} command
-@cindex commands, @code{as}
-@cindex assembly code
-@cindex code, assembly
-@item
-The compiler itself, is internally named @code{tree1}.
-
-Note that @code{tree1} does not generate machine code directly---it
-generates @dfn{assembly code} that is a more readable form
-of machine code, leaving the conversion to actual machine code
-to an @dfn{assembler}, usually named @code{as}.
-@end itemize
-
-@code{GCC} is often thought of as ``the C compiler'' only,
-but it does more than that.
-Based on command-line options and the names given for files
-on the command line, @code{gcc} determines which actions to perform, including
-preprocessing, compiling (in a variety of possible languages), assembling,
-and linking.
-
-@cindex driver, gcc command as
-@cindex @code{gcc}, command as driver
-@cindex executable file
-@cindex files, executable
-@cindex cc1 program
-@cindex programs, cc1
-@cindex preprocessor
-@cindex cpp program
-@cindex programs, cpp
-For example, the command @samp{gcc foo.c} @dfn{drives} the file
-@file{foo.c} through the preprocessor @code{cpp}, then
-the C compiler (internally named
-@code{cc1}), then the assembler (usually @code{as}), then the linker
-(@code{ld}), producing an executable program named @file{a.out} (on
-UNIX systems).
-
-@cindex treelang program
-@cindex programs, treelang
-As another example, the command @samp{gcc foo.tree} would do much the
-same as @samp{gcc foo.c}, but instead of using the C compiler named
-@code{cc1}, @code{gcc} would use the treelang compiler (named
-@code{tree1}). However there is no preprocessor for treelang.
-
-@cindex @code{tree1}, program
-@cindex programs, @code{tree1}
-In a GNU Treelang installation, @code{gcc} recognizes Treelang source
-files by name just like it does C and C++ source files. It knows to use
-the Treelang compiler named @code{tree1}, instead of @code{cc1} or
-@code{cc1plus}, to compile Treelang files. If a file's name ends in
-@code{.tree} then GCC knows that the program is written in treelang. You
-can also manually override the language.
-
-@cindex @code{gcc}, not recognizing Treelang source
-@cindex unrecognized file format
-@cindex file format not recognized
-Non-Treelang-related operation of @code{gcc} is generally
-unaffected by installing the GNU Treelang version of @code{gcc}.
-However, without the installed version of @code{gcc} being the
-GNU Treelang version, @code{gcc} will not be able to compile
-and link Treelang programs.
-
-@cindex printing version information
-@cindex version information, printing
-The command @samp{gcc -v x.tree} where @samp{x.tree} is a file which
-must exist but whose contents are ignored, is a quick way to display
-version information for the various programs used to compile a typical
-Treelang source file.
-
-The @code{tree1} program represents most of what is unique to GNU
-Treelang; @code{tree1} is a combination of two rather large chunks of
-code.
-
-@cindex GCC Back End (GBE)
-@cindex GBE
-@cindex @code{GCC}, back end
-@cindex back end, GCC
-@cindex code generator
-One chunk is the so-called @dfn{GNU Back End}, or GBE,
-which knows how to generate fast code for a wide variety of processors.
-The same GBE is used by the C, C++, and Treelang compiler programs @code{cc1},
-@code{cc1plus}, and @code{tree1}, plus others.
-Often the GBE is referred to as the ``GCC back end'' or
-even just ``GCC''---in this manual, the term GBE is used
-whenever the distinction is important.
-
-@cindex GNU Treelang Front End (TFE)
-@cindex tree1
-@cindex @code{treelang}, front end
-@cindex front end, @code{treelang}
-The other chunk of @code{tree1} is the majority of what is unique about
-GNU Treelang---the code that knows how to interpret Treelang programs to
-determine what they are intending to do, and then communicate that
-knowledge to the GBE for actual compilation of those programs. This
-chunk is called the @dfn{Treelang Front End} (TFE). The @code{cc1} and
-@code{cc1plus} programs have their own front ends, for the C and C++
-languages, respectively. These fronts ends are responsible for
-diagnosing incorrect usage of their respective languages by the programs
-the process, and are responsible for most of the warnings about
-questionable constructs as well. (The GBE in principle handles
-producing some warnings, like those concerning possible references to
-undefined variables, but these warnings should not occur in treelang
-programs as the front end is meant to pick them up first).
-
-Because so much is shared among the compilers for various languages,
-much of the behavior and many of the user-selectable options for these
-compilers are similar.
-For example, diagnostics (error messages and
-warnings) are similar in appearance; command-line
-options like @samp{-Wall} have generally similar effects; and the quality
-of generated code (in terms of speed and size) is roughly similar
-(since that work is done by the shared GBE).
-
-@node TREELANG and GCC, Compiler, Compiler Overview, Top
-@chapter Compile Treelang, C, or Other Programs
-@cindex compiling programs
-@cindex programs, compiling
-
-@cindex @code{gcc}, command
-@cindex commands, @code{gcc}
-A GNU Treelang installation includes a modified version of the @code{gcc}
-command.
-
-In a non-Treelang installation, @code{gcc} recognizes C, C++,
-and Objective-C source files.
-
-In a GNU Treelang installation, @code{gcc} also recognizes Treelang source
-files and accepts Treelang-specific command-line options, plus some
-command-line options that are designed to cater to Treelang users
-but apply to other languages as well.
-
-@xref{G++ and GCC,,Programming Languages Supported by GCC,GCC,Using
-the GNU Compiler Collection (GCC)},
-for information on the way different languages are handled
-by the GCC compiler (@code{gcc}).
-
-You can use this, combined with the output of the @samp{gcc -v x.tree}
-command to get the options applicable to treelang. Treelang programs
-must end with the suffix @samp{.tree}.
-
-@cindex preprocessor
-
-Treelang programs are not by default run through the C
-preprocessor by @code{gcc}. There is no reason why they cannot be run through the
-preprocessor manually, but you would need to prevent the preprocessor
-from generating #line directives, using the @samp{-P} option, otherwise
-tree1 will not accept the input.
-
-@node Compiler, Other Languages, TREELANG and GCC, Top
-@chapter The GNU Treelang Compiler
-
-The GNU Treelang compiler, @code{treelang}, supports programs written
-in the GNU Treelang language.
-
-@node Other Languages, treelang internals, Compiler, Top
-@chapter Other Languages
-
-@menu
-* Interoperating with C and C++::
-@end menu
-
-@node Interoperating with C and C++, , Other Languages, Other Languages
-@section Tools and advice for interoperating with C and C++
-
-The output of treelang programs looks like C program code to the linker
-and everybody else, so you should be able to freely mix treelang and C
-(and C++) code, with one proviso.
-
-C promotes small integer types to 'int' when used as function parameters and
-return values in non-prototyped functions. Since treelang has no
-non-prototyped functions, the treelang compiler does not do this.
-
-@ifset INTERNALS
-@node treelang internals, Open Questions, Other Languages, Top
-@chapter treelang internals
-
-@menu
-* treelang files::
-* treelang compiler interfaces::
-* Hints and tips::
-@end menu
-
-@node treelang files, treelang compiler interfaces, treelang internals, treelang internals
-@section treelang files
-
-To create a compiler that integrates into GCC, you need create many
-files. Some of the files are integrated into the main GCC makefile, to
-build the various parts of the compiler and to run the test
-suite. Others are incorporated into various GCC programs such as
-@file{gcc.c}. Finally you must provide the actual programs comprising your
-compiler.
-
-@cindex files
-
-The files are:
-
-@enumerate 1
-
-@item
-COPYING. This is the copyright file, assuming you are going to use the
-GNU General Public License. You probably need to use the GPL because if
-you use the GCC back end your program and the back end are one program,
-and the back end is GPLed.
-
-This need not be present if the language is incorporated into the main
-GCC tree, as the main GCC directory has this file.
-
-@item
-COPYING.LIB. This is the copyright file for those parts of your program
-that are not to be covered by the GPL, but are instead to be covered by
-the LGPL (Library or Lesser GPL). This license may be appropriate for
-the library routines associated with your compiler. These are the
-routines that are linked with the @emph{output} of the compiler. Using
-the LGPL for these programs allows programs written using your compiler
-to be closed source. For example LIBC is under the LGPL.
-
-This need not be present if the language is incorporated into the main
-GCC tree, as the main GCC directory has this file.
-
-@item
-ChangeLog. Record all the changes to your compiler. Use the same format
-as used in treelang as it is supported by an emacs editing mode and is
-part of the FSF coding standard. Normally each directory has its own
-changelog. The FSF standard allows but does not require a meaningful
-comment on why the changes were made, above and beyond @emph{why} they
-were made. In the author's opinion it is useful to provide this
-information.
-
-@item
-treelang.texi. The manual, written in texinfo. Your manual would have a
-different file name. You need not write it in texinfo if you don't want
-do, but a lot of GNU software does use texinfo.
-
-@cindex Make-lang.in
-@item
-Make-lang.in. This file is part of the make file which in incorporated
-with the GCC make file skeleton (Makefile.in in the GCC directory) to
-make Makefile, as part of the configuration process.
-
-Makefile in turn is the main instruction to actually build
-everything. The build instructions are held in the main GCC manual and
-web site so they are not repeated here.
-
-There are some comments at the top which will help you understand what
-you need to do.
-
-There are make commands to build things, remove generated files with
-various degrees of thoroughness, count the lines of code (so you know
-how much progress you are making), build info and html files from the
-texinfo source, run the tests etc.
-
-@item
-README. Just a brief informative text file saying what is in this
-directory.
-
-@cindex config-lang.in
-@item
-config-lang.in. This file is read by the configuration progress and must
-be present. You specify the name of your language, the name(s) of the
-compiler(s) including preprocessors you are going to build, whether any,
-usually generated, files should be excluded from diffs (ie when making
-diff files to send in patches). Whether the equate 'stagestuff' is used
-is unknown (???).
-
-@cindex lang.opt
-@item
-lang.opt. This file is included into @file{gcc.c}, the main GCC driver, and
-tells it what options your language supports. This is also used to
-display help.
-
-@cindex lang-specs.h
-@item
-lang-specs.h. This file is also included in @file{gcc.c}. It tells
-@file{gcc.c} when to call your programs and what options to send them. The
-mini-language 'specs' is documented in the source of @file{gcc.c}. Do not
-attempt to write a specs file from scratch - use an existing one as the base
-and enhance it.
-
-@item
-Your texi files. Texinfo can be used to build documentation in HTML,
-info, dvi and postscript formats. It is a tagged language, is documented
-in its own manual, and has its own emacs mode.
-
-@item
-Your programs. The relationships between all the programs are explained
-in the next section. You need to write or use the following programs:
-
-@itemize @bullet
-
-@item
-lexer. This breaks the input into words and passes these to the
-parser. This is @file{lex.l} in treelang, which is passed through flex, a lex
-variant, to produce C code @file{lex.c}. Note there is a school of thought
-that says real men hand code their own lexers. However, you may prefer to
-write far less code and use flex, as was done with treelang.
-
-@item
-parser. This breaks the program into recognizable constructs such as
-expressions, statements etc. This is @file{parse.y} in treelang, which is
-passed through bison, which is a yacc variant, to produce C code
-@file{parse.c}.
-
-@item
-back end interface. This interfaces to the code generation back end. In
-treelang, this is @file{tree1.c} which mainly interfaces to @file{toplev.c} and
-@file{treetree.c} which mainly interfaces to everything else. Many languages
-mix up the back end interface with the parser, as in the C compiler for
-example. It is a matter of taste which way to do it, but with treelang
-it is separated out to make the back end interface cleaner and easier to
-understand.
-
-@item
-header files. For function prototypes and common data items. One point
-to note here is that bison can generate a header files with all the
-numbers is has assigned to the keywords and symbols, and you can include
-the same header in your lexer. This technique is demonstrated in
-treelang.
-
-@item
-compiler main file. GCC comes with a file @file{toplev.c} which is a
-perfectly serviceable main program for your compiler. GNU Treelang uses
-@file{toplev.c} but other languages have been known to replace it with their
-own main program. Again this is a matter of taste and how much code you
-want to write.
-
-@end itemize
-
-@end enumerate
-
-@node treelang compiler interfaces, Hints and tips, treelang files, treelang internals
-@section treelang compiler interfaces
-
-@cindex driver
-@cindex toplev.c
-
-@menu
-* treelang driver::
-* treelang main compiler::
-@end menu
-
-@node treelang driver, treelang main compiler, treelang compiler interfaces, treelang compiler interfaces
-@subsection treelang driver
-
-The GCC compiler consists of a driver, which then executes the various
-compiler phases based on the instructions in the specs files.
-
-Typically a program's language will be identified from its suffix
-(e.g., @file{.tree}) for treelang programs.
-
-The driver (@file{gcc.c}) will then drive (exec) in turn a preprocessor,
-the main compiler, the assembler and the link editor. Options to GCC allow you
-to override all of this. In the case of treelang programs there is no
-preprocessor, and mostly these days the C preprocessor is run within the
-main C compiler rather than as a separate process, apparently for reasons of speed.
-
-You will be using the standard assembler and linkage editor so these are
-ignored from now on.
-
-You have to write your own preprocessor if you want one. This is usually
-totally language specific. The main point to be aware of is to ensure
-that you find some way to pass file name and line number information
-through to the main compiler so that it can tell the back end this
-information and so the debugger can find the right source line for each
-piece of code. That is all there is to say about the preprocessor except
-that the preprocessor will probably not be the slowest part of the
-compiler and will probably not use the most memory so don't waste too
-much time tuning it until you know you need to do so.
-
-@node treelang main compiler, , treelang driver, treelang compiler interfaces
-@subsection treelang main compiler
-
-The main compiler for treelang consists of @file{toplev.c} from the main GCC
-compiler, the parser, lexer and back end interface routines, and the
-back end routines themselves, of which there are many.
-
-@file{toplev.c} does a lot of work for you and you should almost certainly
-use it.
-
-Writing this code is the hard part of creating a compiler using GCC. The
-back end interface documentation is incomplete and the interface is
-complex.
-
-There are three main aspects to interfacing to the other GCC code.
-
-@menu
-* Interfacing to toplev.c::
-* Interfacing to the garbage collection::
-* Interfacing to the code generation code. ::
-@end menu
-
-@node Interfacing to toplev.c, Interfacing to the garbage collection, treelang main compiler, treelang main compiler
-@subsubsection Interfacing to toplev.c
-
-In treelang this is handled mainly in tree1.c
-and partly in treetree.c. Peruse toplev.c for details of what you need
-to do.
-
-@node Interfacing to the garbage collection, Interfacing to the code generation code. , Interfacing to toplev.c, treelang main compiler
-@subsubsection Interfacing to the garbage collection
-
-Interfacing to the garbage collection. In treelang this is mainly in
-tree1.c.
-
-Memory allocation in the compiler should be done using the ggc_alloc and
-kindred routines in ggc*.*. At the end of every 'function' in your language, toplev.c calls
-the garbage collection several times. The garbage collection calls mark
-routines which go through the memory which is still used, telling the
-garbage collection not to free it. Then all the memory not used is
-freed.
-
-What this means is that you need a way to hook into this marking
-process. This is done by calling ggc_add_root. This provides the address
-of a callback routine which will be called duing garbage collection and
-which can call ggc_mark to save the storage. If storage is only
-used within the parsing of a function, you do not need to provide a way
-to mark it.
-
-Note that you can also call ggc_mark_tree to mark any of the back end
-internal 'tree' nodes. This routine will follow the branches of the
-trees and mark all the subordinate structures. This is useful for
-example when you have created a variable declaration that will be used
-across multiple functions, or for a function declaration (from a
-prototype) that may be used later on. See the next item for more on the
-tree nodes.
-
-@node Interfacing to the code generation code. , , Interfacing to the garbage collection, treelang main compiler
-@subsubsection Interfacing to the code generation code.
-
-In treelang this is done in treetree.c. A typedef called 'tree' which is
-defined in tree.h and tree.def in the GCC directory and largely
-implemented in tree.c and stmt.c forms the basic interface to the
-compiler back end.
-
-In general you call various tree routines to generate code, either
-directly or through toplev.c. You build up data structures and
-expressions in similar ways.
-
-You can read some documentation on this which can be found via the GCC
-main web page. In particular, the documentation produced by Joachim
-Nadler and translated by Tim Josling can be quite useful. the C compiler
-also has documentation in the main GCC manual (particularly the current
-CVS version) which is useful on a lot of the details.
-
-In time it is hoped to enhance this document to provide a more
-comprehensive overview of this topic. The main gap is in explaining how
-it all works together.
-
-@node Hints and tips, , treelang compiler interfaces, treelang internals
-@section Hints and tips
-
-@itemize @bullet
-
-@item
-TAGS: Use the make ETAGS commands to create TAGS files which can be used in
-emacs to jump to any symbol quickly.
-
-@item
-GREP: grep is also a useful way to find all uses of a symbol.
-
-@item
-TREE: The main routines to look at are tree.h and tree.def. You will
-probably want a hardcopy of these.
-
-@item
-SAMPLE: look at the sample interfacing code in treetree.c. You can use
-gdb to trace through the code and learn about how it all works.
-
-@item
-GDB: the GCC back end works well with gdb. It traps abort() and allows
-you to trace back what went wrong.
-
-@item
-Error Checking: The compiler back end does some error and consistency
-checking. Often the result of an error is just no code being
-generated. You will then need to trace through and find out what is
-going wrong. The rtl dump files can help here also.
-
-@item
-rtl dump files: The main compiler documents these files which are dumps
-of the rtl (intermediate code) which is manipulated doing the code
-generation process. This can provide useful clues about what is going
-wrong. The rtl 'language' is documented in the main GCC manual.
-
-@end itemize
-
-@end ifset
-
-@node Open Questions, Bugs, treelang internals, Top
-@chapter Open Questions
-
-If you know GCC well, please consider looking at the file treetree.c and
-resolving any questions marked "???".
-
-@node Bugs, Service, Open Questions, Top
-@chapter Reporting Bugs
-@cindex bugs
-@cindex reporting bugs
-
-You can report bugs to @email{@value{email-bugs}}. Please make
-sure bugs are real before reporting them. Follow the guidelines in the
-main GCC manual for submitting bug reports.
-
-@menu
-* Sending Patches::
-@end menu
-
-@node Sending Patches, , Bugs, Bugs
-@section Sending Patches for GNU Treelang
-
-If you would like to write bug fixes or improvements for the GNU
-Treelang compiler, that is very helpful. Send suggested fixes to
-@email{@value{email-patches}}.
-
-@node Service, Projects, Bugs, Top
-@chapter How To Get Help with GNU Treelang
-
-If you need help installing, using or changing GNU Treelang, there are two
-ways to find it:
-
-@itemize @bullet
-
-@item
-Look in the service directory for someone who might help you for a fee.
-The service directory is found in the file named @file{SERVICE} in the
-GCC distribution.
-
-@item
-Send a message to @email{@value{email-general}}.
-
-@end itemize
-
-@end ifset
-@ifset INTERNALS
-
-@node Projects, Index, Service, Top
-@chapter Projects
-@cindex projects
-
-If you want to contribute to @code{treelang} by doing research,
-design, specification, documentation, coding, or testing,
-the following information should give you some ideas.
-
-Send a message to @email{@value{email-general}} if you plan to add a
-feature.
-
-The main requirement for treelang is to add features and to add
-documentation. Features are things that the GCC back end can do but
-which are not reflected in treelang. Examples include structures,
-unions, pointers, arrays.
-
-@end ifset
-
-@node Index, , Projects, Top
-@unnumbered Index
-
-@printindex cp
-@summarycontents
-@contents
-@bye
diff --git a/gcc/treelang/treetree.c b/gcc/treelang/treetree.c
deleted file mode 100644
index 18354dc79f3..00000000000
--- a/gcc/treelang/treetree.c
+++ /dev/null
@@ -1,1184 +0,0 @@
-/* TREELANG Compiler interface to GCC's middle end (treetree.c)
- Called by the parser.
-
- If you want a working example of how to write a front end to GCC,
- you are in the right place.
-
- Copyright (C) 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007
- Free Software Foundation, Inc.
-
- This code is based on toy.c written by Richard Kenner.
-
- It was later modified by Jonathan Bartlett whose changes have all
- been removed (by Tim Josling).
-
- Various bits and pieces were cloned from the GCC main tree, as
- GCC evolved, for COBOLForGCC, by Tim Josling.
-
- It was adapted to TREELANG by Tim Josling 2001.
-
- Updated to function-at-a-time by James A. Morrison, 2004.
-
- -----------------------------------------------------------------------
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the
- Free Software Foundation; either version 3, or (at your option) any
- later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>.
-
- In other words, you are welcome to use, share and improve this program.
- You are forbidden to forbid anyone else to use, share and improve
- what you give them. Help stamp out software-hoarding!
-
- ----------------------------------------------------------------------- */
-
-/* Assumption: garbage collection is never called implicitly. It will
- not be called 'at any time' when short of memory. It will only be
- called explicitly at the end of each function. This removes the
- need for a *lot* of bother to ensure everything is in the mark trees
- at all times. */
-
-/* Note, it is OK to use GCC extensions such as long long in a compiler front
- end. This is because the GCC front ends are built using GCC. */
-
-/* GCC headers. */
-
-#include "config.h"
-#include "system.h"
-#include "coretypes.h"
-#include "tm.h"
-#include "tree.h"
-#include "tree-dump.h"
-#include "tree-iterator.h"
-#include "tree-gimple.h"
-#include "function.h"
-#include "flags.h"
-#include "output.h"
-#include "ggc.h"
-#include "toplev.h"
-#include "varray.h"
-#include "langhooks-def.h"
-#include "langhooks.h"
-#include "target.h"
-
-#include "cgraph.h"
-
-#include "treelang.h"
-#include "treetree.h"
-#include "opts.h"
-
-extern int option_main;
-extern char **file_names;
-
-/* Types expected by gcc's garbage collector.
- These types exist to allow language front-ends to
- add extra information in gcc's parse tree data structure.
- But the treelang front end doesn't use them -- it has
- its own parse tree data structure.
- We define them here only to satisfy gcc's garbage collector. */
-
-/* Language-specific identifier information. */
-
-struct lang_identifier GTY(())
-{
- struct tree_identifier common;
-};
-
-/* Language-specific tree node information. */
-
-union lang_tree_node
- GTY((desc ("TREE_CODE (&%h.generic) == IDENTIFIER_NODE")))
-{
- union tree_node GTY ((tag ("0"),
- desc ("tree_node_structure (&%h)")))
- generic;
- struct lang_identifier GTY ((tag ("1"))) identifier;
-};
-
-/* Language-specific type information. */
-
-struct lang_type GTY(())
-{
- char junk; /* dummy field to ensure struct is not empty */
-};
-
-/* Language-specific declaration information. */
-
-struct lang_decl GTY(())
-{
- char junk; /* dummy field to ensure struct is not empty */
-};
-
-struct language_function GTY(())
-{
- char junk; /* dummy field to ensure struct is not empty */
-};
-
-static bool tree_mark_addressable (tree exp);
-static tree tree_lang_type_for_size (unsigned precision, int unsignedp);
-static tree tree_lang_type_for_mode (enum machine_mode mode, int unsignedp);
-
-/* Functions to keep track of the current scope. */
-static void pushlevel (int ignore);
-static tree poplevel (int keep, int reverse, int functionbody);
-static tree pushdecl (tree decl);
-static tree* getstmtlist (void);
-
-/* Langhooks. */
-extern const struct attribute_spec treelang_attribute_table[];
-static tree getdecls (void);
-static int global_bindings_p (void);
-static void insert_block (tree);
-
-static void tree_push_type_decl (tree id, tree type_node);
-
-/* The front end language hooks (addresses of code for this front
- end). These are not really very language-dependent, i.e.
- treelang, C, Mercury, etc. can all use almost the same definitions. */
-
-#undef LANG_HOOKS_MARK_ADDRESSABLE
-#define LANG_HOOKS_MARK_ADDRESSABLE tree_mark_addressable
-#undef LANG_HOOKS_TYPE_FOR_MODE
-#define LANG_HOOKS_TYPE_FOR_MODE tree_lang_type_for_mode
-#undef LANG_HOOKS_TYPE_FOR_SIZE
-#define LANG_HOOKS_TYPE_FOR_SIZE tree_lang_type_for_size
-#undef LANG_HOOKS_PARSE_FILE
-#define LANG_HOOKS_PARSE_FILE treelang_parse_file
-#undef LANG_HOOKS_ATTRIBUTE_TABLE
-#define LANG_HOOKS_ATTRIBUTE_TABLE treelang_attribute_table
-
-/* #undef LANG_HOOKS_TYPES_COMPATIBLE_P
-#define LANG_HOOKS_TYPES_COMPATIBLE_P hook_bool_tree_tree_true
-*/
-/* Hook routines and data unique to treelang. */
-
-#undef LANG_HOOKS_INIT
-#define LANG_HOOKS_INIT treelang_init
-#undef LANG_HOOKS_NAME
-#define LANG_HOOKS_NAME "GNU treelang"
-#undef LANG_HOOKS_FINISH
-#define LANG_HOOKS_FINISH treelang_finish
-#undef LANG_HOOKS_INIT_OPTIONS
-#define LANG_HOOKS_INIT_OPTIONS treelang_init_options
-#undef LANG_HOOKS_HANDLE_OPTION
-#define LANG_HOOKS_HANDLE_OPTION treelang_handle_option
-const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER;
-
-/* Tree code type/name/code tables. */
-
-#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE,
-
-const enum tree_code_class tree_code_type[] = {
-#include "tree.def"
- tcc_exceptional
-};
-#undef DEFTREECODE
-
-#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) LENGTH,
-
-const unsigned char tree_code_length[] = {
-#include "tree.def"
- 0
-};
-#undef DEFTREECODE
-
-#define DEFTREECODE(SYM, NAME, TYPE, LEN) NAME,
-
-const char *const tree_code_name[] = {
-#include "tree.def"
- "@@dummy"
-};
-#undef DEFTREECODE
-
-/* Number of bits in int and char - accessed by front end. */
-
-unsigned int tree_code_int_size = SIZEOF_INT * HOST_BITS_PER_CHAR;
-
-unsigned int tree_code_char_size = HOST_BITS_PER_CHAR;
-
-/* Return the tree stuff for this type TYPE_NUM. */
-
-tree
-tree_code_get_type (int type_num)
-{
- switch (type_num)
- {
- case SIGNED_CHAR:
- return signed_char_type_node;
-
- case UNSIGNED_CHAR:
- return unsigned_char_type_node;
-
- case SIGNED_INT:
- return integer_type_node;
-
- case UNSIGNED_INT:
- return unsigned_type_node;
-
- case VOID_TYPE:
- return void_type_node;
-
- default:
- gcc_unreachable ();
- }
-}
-
-/* Output the code for the start of an if statement. The test
- expression is EXP (true if not zero), and the stmt occurred at line
- LINENO in file FILENAME. */
-
-void
-tree_code_if_start (tree exp, location_t loc)
-{
- tree cond_exp, cond;
- cond_exp = fold_build2 (NE_EXPR, boolean_type_node, exp,
- build_int_cst (TREE_TYPE (exp), 0));
- SET_EXPR_LOCATION (cond_exp, loc);
- cond = build3 (COND_EXPR, void_type_node, cond_exp, NULL_TREE,
- NULL_TREE);
- SET_EXPR_LOCATION (cond, loc);
- append_to_statement_list_force (cond, getstmtlist ());
- pushlevel (0);
-}
-
-/* Output the code for the else of an if statement. The else occurred
- at line LINENO in file FILENAME. */
-
-void
-tree_code_if_else (location_t loc ATTRIBUTE_UNUSED)
-{
- tree stmts = *getstmtlist ();
- tree block = poplevel (1, 0, 0);
- if (BLOCK_VARS (block))
- {
- tree bindexpr = build3 (BIND_EXPR, void_type_node, BLOCK_VARS (block),
- stmts, block);
- stmts = alloc_stmt_list ();
- append_to_statement_list (bindexpr, &stmts);
- }
-
- TREE_OPERAND (STATEMENT_LIST_TAIL (*getstmtlist ())->stmt, 1) = stmts;
- pushlevel (0);
-}
-
-/* Output the code for the end_if an if statement. The end_if (final brace)
- occurred at line LINENO in file FILENAME. */
-
-void
-tree_code_if_end (location_t loc ATTRIBUTE_UNUSED)
-{
- tree stmts = *getstmtlist ();
- tree block = poplevel (1, 0, 0);
- if (BLOCK_VARS (block))
- {
- tree bindexpr = build3 (BIND_EXPR, void_type_node, BLOCK_VARS (block),
- stmts, block);
- stmts = alloc_stmt_list ();
- append_to_statement_list (bindexpr, &stmts);
- }
-
- TREE_OPERAND (STATEMENT_LIST_TAIL (*getstmtlist ())->stmt, 2) = stmts;
-}
-
-/* Create a function. The prototype name is NAME, storage class is
- STORAGE_CLASS, type of return variable is RET_TYPE, parameter lists
- is PARMS, returns decl for this function. */
-
-tree
-tree_code_create_function_prototype (const unsigned char *chars,
- unsigned int storage_class,
- unsigned int ret_type,
- struct prod_token_parm_item* parms,
- location_t loc)
-{
-
- tree id;
- struct prod_token_parm_item* parm;
- tree type_list = NULL_TREE;
- tree type_node;
- tree fn_type;
- tree fn_decl;
- tree parm_list = NULL_TREE;
-
- /* Build the type. */
- id = get_identifier ((const char*)chars);
- for (parm = parms; parm; parm = parm->tp.par.next)
- {
- gcc_assert (parm->category == parameter_category);
- type_node = tree_code_get_type (parm->type);
- type_list = tree_cons (NULL_TREE, type_node, type_list);
- }
- /* Last parm if void indicates fixed length list (as opposed to
- printf style va_* list). */
- type_list = tree_cons (NULL_TREE, void_type_node, type_list);
-
- /* The back end needs them in reverse order. */
- type_list = nreverse (type_list);
-
- type_node = tree_code_get_type (ret_type);
- fn_type = build_function_type (type_node, type_list);
-
- id = get_identifier ((const char*)chars);
- fn_decl = build_decl (FUNCTION_DECL, id, fn_type);
-
- /* Nested functions not supported here. */
- DECL_CONTEXT (fn_decl) = NULL_TREE;
- DECL_SOURCE_LOCATION (fn_decl) = loc;
-
- TREE_PUBLIC (fn_decl) = 0;
- DECL_EXTERNAL (fn_decl) = 0;
- TREE_STATIC (fn_decl) = 0;
- switch (storage_class)
- {
- case STATIC_STORAGE:
- break;
-
- case EXTERNAL_DEFINITION_STORAGE:
- TREE_PUBLIC (fn_decl) = 1;
- break;
-
- case EXTERNAL_REFERENCE_STORAGE:
- DECL_EXTERNAL (fn_decl) = 1;
- break;
-
- case AUTOMATIC_STORAGE:
- default:
- gcc_unreachable ();
- }
-
- /* Make the argument variable decls. */
- for (parm = parms; parm; parm = parm->tp.par.next)
- {
- tree parm_decl = build_decl (PARM_DECL, get_identifier
- ((const char*) (parm->tp.par.variable_name)),
- tree_code_get_type (parm->type));
-
- /* Some languages have different nominal and real types. */
- DECL_ARG_TYPE (parm_decl) = TREE_TYPE (parm_decl);
- gcc_assert (DECL_ARG_TYPE (parm_decl));
- gcc_assert (fn_decl);
- DECL_CONTEXT (parm_decl) = fn_decl;
- DECL_SOURCE_LOCATION (parm_decl) = loc;
- parm_list = chainon (parm_decl, parm_list);
- }
-
- /* Back into reverse order as the back end likes them. */
- parm_list = nreverse (parm_list);
-
- DECL_ARGUMENTS (fn_decl) = parm_list;
-
- /* Save the decls for use when the args are referred to. */
- for (parm = parms; parm_list;
- parm_list = TREE_CHAIN (parm_list),
- parm = parm->tp.par.next)
- {
- gcc_assert (parm); /* Too few. */
- *parm->tp.par.where_to_put_var_tree = parm_list;
- }
- gcc_assert (!parm); /* Too many. */
-
- /* Process declaration of function defined elsewhere. */
- rest_of_decl_compilation (fn_decl, 1, 0);
-
- return fn_decl;
-}
-
-
-/* Output code for start of function; the decl of the function is in
- PREV_SAVED (as created by tree_code_create_function_prototype),
- the function is at line number LINENO in file FILENAME. The
- parameter details are in the lists PARMS. Returns nothing. */
-
-void
-tree_code_create_function_initial (tree prev_saved,
- location_t loc)
-{
- tree fn_decl;
- tree resultdecl;
-
- fn_decl = prev_saved;
- gcc_assert (fn_decl);
-
- /* Output message if not -quiet. */
- announce_function (fn_decl);
-
- /* This has something to do with forcing output also. */
- pushdecl (fn_decl);
-
- /* Set current function for error msgs etc. */
- current_function_decl = fn_decl;
- DECL_INITIAL (fn_decl) = error_mark_node;
-
- DECL_SOURCE_LOCATION (fn_decl) = loc;
-
- /* Create a DECL for the functions result. */
- resultdecl =
- build_decl (RESULT_DECL, NULL_TREE, TREE_TYPE (TREE_TYPE (fn_decl)));
- DECL_CONTEXT (resultdecl) = fn_decl;
- DECL_ARTIFICIAL (resultdecl) = 1;
- DECL_IGNORED_P (resultdecl) = 1;
- DECL_SOURCE_LOCATION (resultdecl) = loc;
- DECL_RESULT (fn_decl) = resultdecl;
-
- /* Create a new level at the start of the function. */
-
- pushlevel (0);
-
- TREE_STATIC (fn_decl) = 1;
-}
-
-/* Wrapup a function contained in file FILENAME, ending at line LINENO. */
-void
-tree_code_create_function_wrapup (location_t loc)
-{
- tree block;
- tree fn_decl;
- tree stmts = *getstmtlist ();
-
- fn_decl = current_function_decl;
-
- /* Pop the level. */
-
- block = poplevel (1, 0, 1);
-
- /* And attach it to the function. */
-
- DECL_SAVED_TREE (fn_decl) = build3 (BIND_EXPR, void_type_node,
- BLOCK_VARS (block),
- stmts, block);
-
- allocate_struct_function (fn_decl, false);
- cfun->function_end_locus = loc;
-
- /* Dump the original tree to a file. */
- dump_function (TDI_original, fn_decl);
-
- /* Convert current function to GIMPLE for the middle end. */
- gimplify_function_tree (fn_decl);
- dump_function (TDI_generic, fn_decl);
-
- /* We are not inside of any scope now. */
- current_function_decl = NULL_TREE;
- set_cfun (NULL);
-
- /* Pass the current function off to the middle end. */
- (void)cgraph_node (fn_decl);
- cgraph_finalize_function (fn_decl, false);
-}
-
-/* Create a variable.
-
- The storage class is STORAGE_CLASS (eg LOCAL).
- The name is CHARS/LENGTH.
- The type is EXPRESSION_TYPE (eg UNSIGNED_TYPE).
- The init tree is INIT. */
-
-tree
-tree_code_create_variable (unsigned int storage_class,
- const unsigned char *chars,
- unsigned int length,
- unsigned int expression_type,
- tree init,
- location_t loc)
-{
- tree var_type;
- tree var_id;
- tree var_decl;
-
- /* 1. Build the type. */
- var_type = tree_code_get_type (expression_type);
-
- /* 2. Build the name. */
- gcc_assert (chars[length] == 0); /* Should be null terminated. */
-
- var_id = get_identifier ((const char*)chars);
-
- /* 3. Build the decl and set up init. */
- var_decl = build_decl (VAR_DECL, var_id, var_type);
-
- /* 3a. Initialization. */
- if (init)
- DECL_INITIAL (var_decl) = fold_convert (var_type, init);
- else
- DECL_INITIAL (var_decl) = NULL_TREE;
-
- gcc_assert (TYPE_SIZE (var_type) != 0); /* Did not calculate size. */
-
- DECL_CONTEXT (var_decl) = current_function_decl;
-
- DECL_SOURCE_LOCATION (var_decl) = loc;
-
- DECL_EXTERNAL (var_decl) = 0;
- TREE_PUBLIC (var_decl) = 0;
- TREE_STATIC (var_decl) = 0;
- /* Set the storage mode and whether only visible in the same file. */
- switch (storage_class)
- {
- case STATIC_STORAGE:
- TREE_STATIC (var_decl) = 1;
- break;
-
- case AUTOMATIC_STORAGE:
- break;
-
- case EXTERNAL_DEFINITION_STORAGE:
- TREE_PUBLIC (var_decl) = 1;
- break;
-
- case EXTERNAL_REFERENCE_STORAGE:
- DECL_EXTERNAL (var_decl) = 1;
- break;
-
- default:
- gcc_unreachable ();
- }
-
- TYPE_NAME (TREE_TYPE (var_decl)) = TYPE_NAME (var_type);
- return pushdecl (copy_node (var_decl));
-}
-
-
-/* Generate code for return statement. Type is in TYPE, expression
- is in EXP if present. */
-
-void
-tree_code_generate_return (tree type, tree exp)
-{
- tree setret;
-#ifdef ENABLE_CHECKING
- tree param;
-
- for (param = DECL_ARGUMENTS (current_function_decl);
- param;
- param = TREE_CHAIN (param))
- gcc_assert (DECL_CONTEXT (param) == current_function_decl);
-#endif
-
- if (exp && TREE_TYPE (TREE_TYPE (current_function_decl)) != void_type_node)
- {
- setret = fold_build2 (MODIFY_EXPR, type,
- DECL_RESULT (current_function_decl),
- fold_convert (type, exp));
- TREE_SIDE_EFFECTS (setret) = 1;
- TREE_USED (setret) = 1;
- setret = build1 (RETURN_EXPR, void_type_node, setret);
- /* Use EXPR_LOCUS so we don't lose any information about the file we
- are compiling. */
- SET_EXPR_LOCUS (setret, EXPR_LOCUS (exp));
- }
- else
- setret = build1 (RETURN_EXPR, void_type_node, NULL_TREE);
-
- append_to_statement_list_force (setret, getstmtlist ());
-}
-
-
-/* Output the code for this expression statement CODE. */
-
-void
-tree_code_output_expression_statement (tree code, location_t loc)
-{
- /* Output the line number information. */
- SET_EXPR_LOCATION (code, loc);
- TREE_USED (code) = 1;
- TREE_SIDE_EFFECTS (code) = 1;
- /* put CODE into the code list. */
- append_to_statement_list_force (code, getstmtlist ());
-}
-
-/* Return a tree for a constant integer value in the token TOK. No
- size checking is done. */
-
-tree
-tree_code_get_integer_value (const unsigned char *chars, unsigned int length)
-{
- long long int val = 0;
- unsigned int ix;
- unsigned int start = 0;
- int negative = 1;
- switch (chars[0])
- {
- case (unsigned char)'-':
- negative = -1;
- start = 1;
- break;
-
- case (unsigned char)'+':
- start = 1;
- break;
-
- default:
- break;
- }
- for (ix = start; ix < length; ix++)
- val = val * 10 + chars[ix] - (unsigned char)'0';
- val = val*negative;
- return build_int_cst_wide (start == 1 ?
- integer_type_node : unsigned_type_node,
- val & 0xffffffff, (val >> 32) & 0xffffffff);
-}
-
-/* Return the tree for an expression, type EXP_TYPE (see treetree.h)
- with tree type TYPE and with operands1 OP1, OP2 (maybe), OP3 (maybe). */
-tree
-tree_code_get_expression (unsigned int exp_type,
- tree type, tree op1, tree op2,
- tree op3 ATTRIBUTE_UNUSED,
- location_t loc)
-{
- tree ret1;
- int operator;
-
- switch (exp_type)
- {
- case EXP_ASSIGN:
- gcc_assert (op1 && op2);
- operator = MODIFY_EXPR;
- ret1 = fold_build2 (operator, void_type_node, op1,
- fold_convert (TREE_TYPE (op1), op2));
-
- break;
-
- case EXP_PLUS:
- operator = PLUS_EXPR;
- goto binary_expression;
-
- case EXP_MINUS:
- operator = MINUS_EXPR;
- goto binary_expression;
-
- case EXP_EQUALS:
- operator = EQ_EXPR;
- goto binary_expression;
-
- /* Expand a binary expression. Ensure the operands are the right type. */
- binary_expression:
- gcc_assert (op1 && op2);
- ret1 = fold_build2 (operator, type,
- fold_convert (type, op1),
- fold_convert (type, op2));
- break;
-
- /* Reference to a variable. This is dead easy, just return the
- decl for the variable. If the TYPE is different than the
- variable type, convert it. However, to keep accurate location
- information we wrap it in a NOP_EXPR is is easily stripped. */
- case EXP_REFERENCE:
- gcc_assert (op1);
- TREE_USED (op1) = 1;
- if (type == TREE_TYPE (op1))
- ret1 = build1 (NOP_EXPR, type, op1);
- else
- ret1 = fold_convert (type, op1);
- break;
-
- case EXP_FUNCTION_INVOCATION:
- gcc_assert (op1);
- gcc_assert(TREE_TYPE (TREE_TYPE (op1)) == type);
- TREE_USED (op1) = 1;
- ret1 = build_function_call_expr(op1, op2);
- break;
-
- default:
- gcc_unreachable ();
- }
-
- /* Declarations already have a location and constants can be shared so they
- shouldn't a location set on them. */
- if (! DECL_P (ret1) && ! TREE_CONSTANT (ret1))
- SET_EXPR_LOCATION (ret1, loc);
- return ret1;
-}
-
-/* Init parameter list and return empty list. */
-
-tree
-tree_code_init_parameters (void)
-{
- return NULL_TREE;
-}
-
-/* Add a parameter EXP whose expression type is EXP_PROTO to list
- LIST, returning the new list. */
-
-tree
-tree_code_add_parameter (tree list, tree proto_exp, tree exp)
-{
- tree new_exp;
- new_exp = tree_cons (NULL_TREE,
- fold_convert (TREE_TYPE (proto_exp),
- exp), NULL_TREE);
- if (!list)
- return new_exp;
- return chainon (new_exp, list);
-}
-
-/* Get a stringpool entry for a string S of length L. This is needed
- because the GTY routines don't mark strings, forcing you to put
- them into stringpool, which is never freed. */
-
-const char*
-get_string (const char *s, size_t l)
-{
- tree t;
- t = get_identifier_with_length (s, l);
- return IDENTIFIER_POINTER(t);
-}
-
-/* Save typing debug_tree all the time. Dump a tree T pretty and
- concise. */
-
-void dt (tree t);
-
-void
-dt (tree t)
-{
- debug_tree (t);
-}
-
-/* Routines Expected by gcc: */
-
-/* These are used to build types for various sizes. The code below
- is a simplified version of that of GNAT. */
-
-#ifndef MAX_BITS_PER_WORD
-#define MAX_BITS_PER_WORD BITS_PER_WORD
-#endif
-
-/* This variable keeps a table for types for each precision so that we only
- allocate each of them once. Signed and unsigned types are kept separate. */
-static GTY(()) tree signed_and_unsigned_types[MAX_BITS_PER_WORD + 1][2];
-
-/* Mark EXP saying that we need to be able to take the
- address of it; it should not be allocated in a register.
- Value is 1 if successful.
-
- This implementation was copied from c-decl.c. */
-
-static bool
-tree_mark_addressable (tree exp)
-{
- register tree x = exp;
- while (1)
- switch (TREE_CODE (x))
- {
- case COMPONENT_REF:
- case ADDR_EXPR:
- case ARRAY_REF:
- case REALPART_EXPR:
- case IMAGPART_EXPR:
- x = TREE_OPERAND (x, 0);
- break;
-
- case CONSTRUCTOR:
- TREE_ADDRESSABLE (x) = 1;
- return 1;
-
- case VAR_DECL:
- case CONST_DECL:
- case PARM_DECL:
- case RESULT_DECL:
- if (DECL_REGISTER (x) && !TREE_ADDRESSABLE (x)
- && DECL_NONLOCAL (x))
- {
- if (TREE_PUBLIC (x))
- {
- error ("Global register variable %qD used in nested function.",
- x);
- return 0;
- }
- pedwarn ("Register variable %qD used in nested function.", x);
- }
- else if (DECL_REGISTER (x) && !TREE_ADDRESSABLE (x))
- {
- if (TREE_PUBLIC (x))
- {
- error ("Address of global register variable %qD requested.",
- x);
- return 0;
- }
-
- pedwarn ("Address of register variable %qD requested.", x);
- }
-
- /* drops in */
- case FUNCTION_DECL:
- TREE_ADDRESSABLE (x) = 1;
-
- default:
- return 1;
- }
-}
-
-/* Return an integer type with the number of bits of precision given by
- PRECISION. UNSIGNEDP is nonzero if the type is unsigned; otherwise
- it is a signed type. */
-
-static tree
-tree_lang_type_for_size (unsigned precision, int unsignedp)
-{
- tree t;
-
- if (precision <= MAX_BITS_PER_WORD
- && signed_and_unsigned_types[precision][unsignedp] != 0)
- return signed_and_unsigned_types[precision][unsignedp];
-
- if (unsignedp)
- t = signed_and_unsigned_types[precision][1]
- = make_unsigned_type (precision);
- else
- t = signed_and_unsigned_types[precision][0]
- = make_signed_type (precision);
-
- return t;
-}
-
-/* Return a data type that has machine mode MODE. UNSIGNEDP selects
- an unsigned type; otherwise a signed type is returned. */
-
-static tree
-tree_lang_type_for_mode (enum machine_mode mode, int unsignedp)
-{
- if (SCALAR_INT_MODE_P (mode))
- return tree_lang_type_for_size (GET_MODE_BITSIZE (mode), unsignedp);
- else
- return NULL_TREE;
-}
-
-
-/* These functions and variables deal with binding contours. We only
- need these functions for the list of PARM_DECLs, but we leave the
- functions more general; these are a simplified version of the
- functions from GNAT. */
-
-/* For each binding contour we allocate a binding_level structure which records
- the entities defined or declared in that contour. Contours include:
-
- the global one
- one for each subprogram definition
- one for each compound statement (declare block)
-
- Binding contours are used to create GCC tree BLOCK nodes. */
-
-struct binding_level
-{
- /* A chain of ..._DECL nodes for all variables, constants, functions,
- parameters and type declarations. These ..._DECL nodes are chained
- through the TREE_CHAIN field. Note that these ..._DECL nodes are stored
- in the reverse of the order supplied to be compatible with the
- back-end. */
- tree names;
- /* For each level (except the global one), a chain of BLOCK nodes for all
- the levels that were entered and exited one level down from this one. */
- tree blocks;
-
- tree stmts;
- /* The binding level containing this one (the enclosing binding level). */
- struct binding_level *level_chain;
-};
-
-/* The binding level currently in effect. */
-static struct binding_level *current_binding_level = NULL;
-
-/* The outermost binding level. This binding level is created when the
- compiler is started and it will exist through the entire compilation. */
-static struct binding_level *global_binding_level;
-
-/* Binding level structures are initialized by copying this one. */
-static struct binding_level clear_binding_level = {NULL, NULL, NULL, NULL };
-
-/* Return non-zero if we are currently in the global binding level. */
-
-static int
-global_bindings_p (void)
-{
- return current_binding_level == global_binding_level ? -1 : 0;
-}
-
-
-/* Return the list of declarations in the current level. Note that this list
- is in reverse order (it has to be so for back-end compatibility). */
-
-static tree
-getdecls (void)
-{
- return current_binding_level->names;
-}
-
-/* Return a STATMENT_LIST for the current block. */
-
-static tree*
-getstmtlist (void)
-{
- return &current_binding_level->stmts;
-}
-
-/* Enter a new binding level. The input parameter is ignored, but has to be
- specified for back-end compatibility. */
-
-static void
-pushlevel (int ignore ATTRIBUTE_UNUSED)
-{
- struct binding_level *newlevel = XNEW (struct binding_level);
-
- *newlevel = clear_binding_level;
-
- /* Add this level to the front of the chain (stack) of levels that are
- active. */
- newlevel->level_chain = current_binding_level;
- current_binding_level = newlevel;
- current_binding_level->stmts = alloc_stmt_list ();
-}
-
-/* Exit a binding level.
- Pop the level off, and restore the state of the identifier-decl mappings
- that were in effect when this level was entered.
-
- If KEEP is nonzero, this level had explicit declarations, so
- and create a "block" (a BLOCK node) for the level
- to record its declarations and subblocks for symbol table output.
-
- If FUNCTIONBODY is nonzero, this level is the body of a function,
- so create a block as if KEEP were set and also clear out all
- label names.
-
- If REVERSE is nonzero, reverse the order of decls before putting
- them into the BLOCK. */
-
-static tree
-poplevel (int keep, int reverse, int functionbody)
-{
- /* Points to a BLOCK tree node. This is the BLOCK node constructed for the
- binding level that we are about to exit and which is returned by this
- routine. */
- tree block_node = NULL_TREE;
- tree decl_chain;
- tree subblock_chain = current_binding_level->blocks;
- tree subblock_node;
-
- /* Reverse the list of *_DECL nodes if desired. Note that the ..._DECL
- nodes chained through the `names' field of current_binding_level are in
- reverse order except for PARM_DECL node, which are explicitly stored in
- the right order. */
- decl_chain = (reverse) ? nreverse (current_binding_level->names)
- : current_binding_level->names;
-
- /* If there were any declarations in the current binding level, or if this
- binding level is a function body, or if there are any nested blocks then
- create a BLOCK node to record them for the life of this function. */
- if (keep || functionbody)
- block_node = build_block (keep ? decl_chain : 0, subblock_chain, 0, 0);
-
- /* Record the BLOCK node just built as the subblock its enclosing scope. */
- for (subblock_node = subblock_chain; subblock_node;
- subblock_node = TREE_CHAIN (subblock_node))
- BLOCK_SUPERCONTEXT (subblock_node) = block_node;
-
- /* Clear out the meanings of the local variables of this level. */
-
- for (subblock_node = decl_chain; subblock_node;
- subblock_node = TREE_CHAIN (subblock_node))
- if (DECL_NAME (subblock_node) != 0)
- /* If the identifier was used or addressed via a local extern decl,
- don't forget that fact. */
- if (DECL_EXTERNAL (subblock_node))
- {
- if (TREE_USED (subblock_node))
- TREE_USED (DECL_NAME (subblock_node)) = 1;
- }
-
- /* Pop the current level. */
- current_binding_level = current_binding_level->level_chain;
-
- if (functionbody)
- {
- /* This is the top level block of a function. */
- DECL_INITIAL (current_function_decl) = block_node;
- }
- else if (block_node)
- {
- current_binding_level->blocks
- = chainon (current_binding_level->blocks, block_node);
- }
-
- /* If we did not make a block for the level just exited, any blocks made for
- inner levels (since they cannot be recorded as subblocks in that level)
- must be carried forward so they will later become subblocks of something
- else. */
- else if (subblock_chain)
- current_binding_level->blocks
- = chainon (current_binding_level->blocks, subblock_chain);
- if (block_node)
- TREE_USED (block_node) = 1;
-
- return block_node;
-}
-
-/* Insert BLOCK at the end of the list of subblocks of the
- current binding level. This is used when a BIND_EXPR is expanded,
- to handle the BLOCK node inside the BIND_EXPR. */
-
-static void
-insert_block (tree block)
-{
- TREE_USED (block) = 1;
- current_binding_level->blocks
- = chainon (current_binding_level->blocks, block);
-}
-
-
-/* Records a ..._DECL node DECL as belonging to the current lexical scope.
- Returns the ..._DECL node. */
-
-tree
-pushdecl (tree decl)
-{
- /* External objects aren't nested, other objects may be. */
-
- if ((DECL_EXTERNAL (decl)) || (decl==current_function_decl))
- DECL_CONTEXT (decl) = 0;
- else
- DECL_CONTEXT (decl) = current_function_decl;
-
- /* Put the declaration on the list. The list of declarations is in reverse
- order. The list will be reversed later if necessary. This needs to be
- this way for compatibility with the back-end. */
-
- TREE_CHAIN (decl) = current_binding_level->names;
- current_binding_level->names = decl;
-
- /* For the declaration of a type, set its name if it is not already set. */
-
- if (TREE_CODE (decl) == TYPE_DECL
- && TYPE_NAME (TREE_TYPE (decl)) == 0)
- TYPE_NAME (TREE_TYPE (decl)) = DECL_NAME (decl);
-
- /* Put automatic variables into the intermediate representation. */
- if (TREE_CODE (decl) == VAR_DECL && !DECL_EXTERNAL (decl)
- && !TREE_STATIC (decl) && !TREE_PUBLIC (decl))
- tree_code_output_expression_statement (build1 (DECL_EXPR, void_type_node,
- decl),
- DECL_SOURCE_LOCATION (decl));
- return decl;
-}
-
-
-static void
-tree_push_type_decl(tree id, tree type_node)
-{
- tree decl = build_decl (TYPE_DECL, id, type_node);
- TYPE_NAME (type_node) = id;
- pushdecl (decl);
-}
-
-#define NULL_BINDING_LEVEL (struct binding_level *) NULL
-
-/* Create the predefined scalar types of C,
- and some nodes representing standard constants (0, 1, (void *) 0).
- Initialize the global binding level.
- Make definitions for built-in primitive functions. */
-
-void
-treelang_init_decl_processing (void)
-{
- current_function_decl = NULL;
- current_binding_level = NULL_BINDING_LEVEL;
- pushlevel (0); /* make the binding_level structure for global names */
- global_binding_level = current_binding_level;
-
- build_common_tree_nodes (flag_signed_char, false);
-
- /* set standard type names */
-
- /* Define `int' and `char' last so that they are not overwritten. */
- tree_push_type_decl (NULL_TREE, intQI_type_node);
- tree_push_type_decl (NULL_TREE, intHI_type_node);
- tree_push_type_decl (NULL_TREE, intSI_type_node);
- tree_push_type_decl (NULL_TREE, intDI_type_node);
-#if HOST_BITS_PER_WIDE_INT >= 64
- tree_push_type_decl (NULL_TREE, intTI_type_node);
-#endif
- tree_push_type_decl (NULL_TREE, unsigned_intQI_type_node);
- tree_push_type_decl (NULL_TREE, unsigned_intHI_type_node);
- tree_push_type_decl (NULL_TREE, unsigned_intSI_type_node);
- tree_push_type_decl (NULL_TREE, unsigned_intDI_type_node);
-#if HOST_BITS_PER_WIDE_INT >= 64
- tree_push_type_decl (NULL_TREE, unsigned_intTI_type_node);
-#endif
-
- tree_push_type_decl (get_identifier ("int"), integer_type_node);
- tree_push_type_decl (get_identifier ("char"), char_type_node);
- tree_push_type_decl (get_identifier ("long int"),
- long_integer_type_node);
- tree_push_type_decl (get_identifier ("unsigned int"),
- unsigned_type_node);
- tree_push_type_decl (get_identifier ("long unsigned int"),
- long_unsigned_type_node);
- tree_push_type_decl (get_identifier ("long long int"),
- long_long_integer_type_node);
- tree_push_type_decl (get_identifier ("long long unsigned int"),
- long_long_unsigned_type_node);
- tree_push_type_decl (get_identifier ("short int"),
- short_integer_type_node);
- tree_push_type_decl (get_identifier ("short unsigned int"),
- short_unsigned_type_node);
- tree_push_type_decl (get_identifier ("signed char"),
- signed_char_type_node);
- tree_push_type_decl (get_identifier ("unsigned char"),
- unsigned_char_type_node);
- size_type_node = make_unsigned_type (POINTER_SIZE);
- tree_push_type_decl (get_identifier ("size_t"), size_type_node);
- set_sizetype (size_type_node);
-
- build_common_tree_nodes_2 (/* short_double= */ 0);
-
- tree_push_type_decl (get_identifier ("float"), float_type_node);
- tree_push_type_decl (get_identifier ("double"), double_type_node);
- tree_push_type_decl (get_identifier ("long double"), long_double_type_node);
- tree_push_type_decl (get_identifier ("void"), void_type_node);
-
- build_common_builtin_nodes ();
- (*targetm.init_builtins) ();
-
- pedantic_lvalues = pedantic;
-}
-
-static tree
-handle_attribute (tree *node, tree name, tree ARG_UNUSED (args),
- int ARG_UNUSED (flags), bool *no_add_attrs)
-{
- if (TREE_CODE (*node) == FUNCTION_DECL)
- {
- if (strcmp (IDENTIFIER_POINTER (name), "const") == 0)
- TREE_READONLY (*node) = 1;
- if (strcmp (IDENTIFIER_POINTER (name), "nothrow") == 0)
- TREE_NOTHROW (*node) = 1;
- }
- else
- {
- warning (OPT_Wattributes, "%qD attribute ignored", name);
- *no_add_attrs = true;
- }
-
- return NULL_TREE;
-}
-
-const struct attribute_spec treelang_attribute_table[] =
-{
- { "const", 0, 0, true, false, false, handle_attribute },
- { "nothrow", 0, 0, true, false, false, handle_attribute },
- { NULL, 0, 0, false, false, false, NULL },
-};
-
-#include "debug.h" /* for debug_hooks, needed by gt-treelang-treetree.h */
-#include "gt-treelang-treetree.h"
diff --git a/gcc/treelang/treetree.h b/gcc/treelang/treetree.h
deleted file mode 100644
index 6774626cd91..00000000000
--- a/gcc/treelang/treetree.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/* TREELANG Compiler definitions for interfacing to treetree.c
- (compiler back end interface).
-
- Copyright (C) 1986, 87, 89, 92-96, 1997, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2007 Free Software Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the
- Free Software Foundation; either version 3, or (at your option) any
- later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING3. If not see
- <http://www.gnu.org/licenses/>.
-
- In other words, you are welcome to use, share and improve this program.
- You are forbidden to forbid anyone else to use, share and improve
- what you give them. Help stamp out software-hoarding!
-
- ---------------------------------------------------------------------------
-
- Written by Tim Josling 1999, 2000, 2001, based in part on other
- parts of the GCC compiler. */
-
-tree tree_code_init_parameters (void);
-tree tree_code_add_parameter (tree list, tree proto_exp, tree exp);
-tree tree_code_get_integer_value (const unsigned char *chars, unsigned int length);
-void tree_code_generate_return (tree type, tree exp);
-void tree_ggc_storage_always_used (void *m);
-tree tree_code_get_expression (unsigned int exp_type, tree type, tree op1,
- tree op2, tree op3, location_t loc);
-tree tree_code_get_numeric_type (unsigned int size1, unsigned int sign1);
-void tree_code_create_function_initial (tree prev_saved,
- location_t loc);
-void tree_code_create_function_wrapup (location_t loc);
-tree tree_code_create_function_prototype (const unsigned char *chars,
- unsigned int storage_class,
- unsigned int ret_type,
- struct prod_token_parm_item* parms,
- location_t loc);
-tree tree_code_create_variable (unsigned int storage_class,
- const unsigned char *chars,
- unsigned int length,
- unsigned int expression_type,
- tree init,
- location_t loc);
-void tree_code_output_expression_statement (tree code,
- location_t loc);
-void tree_code_if_start (tree exp, location_t loc);
-void tree_code_if_else (location_t loc);
-void tree_code_if_end (location_t loc);
-tree tree_code_get_type (int type_num);
-void treelang_init_decl_processing (void);
-void treelang_finish (void);
-bool treelang_init (void);
-unsigned int treelang_init_options (unsigned int, const char **);
-int treelang_handle_option (size_t scode, const char *arg, int value);
-void treelang_parse_file (int debug_flag);
-void push_var_level (void);
-void pop_var_level (void);
-const char* get_string (const char *s, size_t l);
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 5b2258e4b1d..a6be847c546 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,8 @@
+2008-03-06 Markus Milleder <markus.milleder@generali.at>
+
+ PR preprocessor/35458
+ * mkdeps.c (munge): Quote '#' with a '\'.
+
2008-02-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR preprocessor/35379
diff --git a/libcpp/mkdeps.c b/libcpp/mkdeps.c
index 11488ce908f..23d9dc1653d 100644
--- a/libcpp/mkdeps.c
+++ b/libcpp/mkdeps.c
@@ -79,6 +79,11 @@ munge (const char *filename)
/* '$' is quoted by doubling it. */
len++;
break;
+
+ case '#':
+ /* '#' is quoted with a backslash. */
+ len++;
+ break;
}
}
@@ -100,6 +105,10 @@ munge (const char *filename)
*dst++ = '$';
break;
+ case '#':
+ *dst++ = '\\';
+ break;
+
default:
/* nothing */;
}
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index e418769c4a5..589f44b5369 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,9 @@
+2008-03-02 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/35401
+ * config/t-slibgcc-darwin: Make install-leaf dependent on
+ install-darwin-libgcc-stubs instead of install.
+
2008-01-25 Joseph Myers <joseph@codesourcery.com>
* config.host (tic4x-*-*, c4x-*-rtems*, tic4x-*-rtems*, c4x-*,
diff --git a/libgcc/config/t-slibgcc-darwin b/libgcc/config/t-slibgcc-darwin
index d1e43119dfc..3dd172367f4 100644
--- a/libgcc/config/t-slibgcc-darwin
+++ b/libgcc/config/t-slibgcc-darwin
@@ -38,7 +38,7 @@ SHLIB_INSTALL = \
ifeq ($(enable_shared),yes)
all: $(INSTALL_FILES)
-install: install-darwin-libgcc-stubs
+install-leaf: install-darwin-libgcc-stubs
endif
# In order to support -mmacosx-version-min, you need to have multiple
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 8434c23b54d..2ada2632c36 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,31 @@
+2008-03-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/32812
+ * intrinsics/random.c (scramble_seed, unscramble_seed): New
+ functions.
+ (random_seed_i4): Scramble the seed the user gives us before
+ storing it, and unscramble it when we return it back later.
+
+2008-03-05 Hans-Peter Nilsson <hp@axis.com>
+
+ PR libfortran/35293
+ * io/unix.c (fd_truncate): Fold s->special_file case into
+ success case of ftruncate/chsize call instead of the failure case.
+ Make failure case actually return failure. Properly update stream
+ pointers on failure. Call runtime_error for targets without
+ neither ftruncate nor chsize where such a call would be needed.
+
+2008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33197
+ * intrinsics/erfc_scaled_inc.c: New file.
+ * intrinsics/erfc_scaled.c: New file.
+ * gfortran.map (GFORTRAN_1.0): Add _gfortran_erfc_scaled_r*.
+ * Makefile.am: Add intrinsics/erfc_scaled.c.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * Makefile.in: Regenerate.
+
2008-03-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR libfortran/35355
@@ -13,9 +41,9 @@
2008-02-25 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/29549
- * Makefile.am: Add -fcx-fortran-rules to AM_CFLAGS for all of
- libgfortran.
- * Makefile.in: Regenerated.
+ * Makefile.am: Add -fcx-fortran-rules to AM_CFLAGS for all of
+ libgfortran.
+ * Makefile.in: Regenerated.
2008-02-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
diff --git a/libgfortran/Makefile.am b/libgfortran/Makefile.am
index 16348c4a6fc..b601f4f3c9a 100644
--- a/libgfortran/Makefile.am
+++ b/libgfortran/Makefile.am
@@ -67,6 +67,7 @@ intrinsics/dtime.c \
intrinsics/env.c \
intrinsics/eoshift0.c \
intrinsics/eoshift2.c \
+intrinsics/erfc_scaled.c \
intrinsics/etime.c \
intrinsics/exit.c \
intrinsics/fnum.c \
diff --git a/libgfortran/Makefile.in b/libgfortran/Makefile.in
index 91ab7a2e06c..92b266e76b2 100644
--- a/libgfortran/Makefile.in
+++ b/libgfortran/Makefile.in
@@ -361,10 +361,11 @@ am__libgfortran_la_SOURCES_DIST = runtime/backtrace.c \
intrinsics/chmod.c intrinsics/clock.c intrinsics/cpu_time.c \
intrinsics/cshift0.c intrinsics/ctime.c \
intrinsics/date_and_time.c intrinsics/dtime.c intrinsics/env.c \
- intrinsics/eoshift0.c intrinsics/eoshift2.c intrinsics/etime.c \
- intrinsics/exit.c intrinsics/fnum.c intrinsics/gerror.c \
- intrinsics/getcwd.c intrinsics/getlog.c intrinsics/getXid.c \
- intrinsics/hostnm.c intrinsics/ierrno.c intrinsics/ishftc.c \
+ intrinsics/eoshift0.c intrinsics/eoshift2.c \
+ intrinsics/erfc_scaled.c intrinsics/etime.c intrinsics/exit.c \
+ intrinsics/fnum.c intrinsics/gerror.c intrinsics/getcwd.c \
+ intrinsics/getlog.c intrinsics/getXid.c intrinsics/hostnm.c \
+ intrinsics/ierrno.c intrinsics/ishftc.c \
intrinsics/iso_c_generated_procs.c intrinsics/iso_c_binding.c \
intrinsics/kill.c intrinsics/link.c intrinsics/malloc.c \
intrinsics/mvbits.c intrinsics/move_alloc.c \
@@ -631,16 +632,17 @@ am__objects_31 = close.lo file_pos.lo format.lo inquire.lo \
am__objects_32 = associated.lo abort.lo access.lo args.lo \
c99_functions.lo chdir.lo chmod.lo clock.lo cpu_time.lo \
cshift0.lo ctime.lo date_and_time.lo dtime.lo env.lo \
- eoshift0.lo eoshift2.lo etime.lo exit.lo fnum.lo gerror.lo \
- getcwd.lo getlog.lo getXid.lo hostnm.lo ierrno.lo ishftc.lo \
- iso_c_generated_procs.lo iso_c_binding.lo kill.lo link.lo \
- malloc.lo mvbits.lo move_alloc.lo pack_generic.lo perror.lo \
- signal.lo size.lo sleep.lo spread_generic.lo \
- string_intrinsics.lo system.lo rand.lo random.lo rename.lo \
- reshape_generic.lo reshape_packed.lo selected_int_kind.lo \
- selected_real_kind.lo stat.lo symlnk.lo system_clock.lo \
- time.lo transpose_generic.lo umask.lo unlink.lo \
- unpack_generic.lo in_pack_generic.lo in_unpack_generic.lo
+ eoshift0.lo eoshift2.lo erfc_scaled.lo etime.lo exit.lo \
+ fnum.lo gerror.lo getcwd.lo getlog.lo getXid.lo hostnm.lo \
+ ierrno.lo ishftc.lo iso_c_generated_procs.lo iso_c_binding.lo \
+ kill.lo link.lo malloc.lo mvbits.lo move_alloc.lo \
+ pack_generic.lo perror.lo signal.lo size.lo sleep.lo \
+ spread_generic.lo string_intrinsics.lo system.lo rand.lo \
+ random.lo rename.lo reshape_generic.lo reshape_packed.lo \
+ selected_int_kind.lo selected_real_kind.lo stat.lo symlnk.lo \
+ system_clock.lo time.lo transpose_generic.lo umask.lo \
+ unlink.lo unpack_generic.lo in_pack_generic.lo \
+ in_unpack_generic.lo
am__objects_33 =
am__objects_34 = _abs_c4.lo _abs_c8.lo _abs_c10.lo _abs_c16.lo \
_abs_i4.lo _abs_i8.lo _abs_i16.lo _abs_r4.lo _abs_r8.lo \
@@ -905,6 +907,7 @@ intrinsics/dtime.c \
intrinsics/env.c \
intrinsics/eoshift0.c \
intrinsics/eoshift2.c \
+intrinsics/erfc_scaled.c \
intrinsics/etime.c \
intrinsics/exit.c \
intrinsics/fnum.c \
@@ -1660,6 +1663,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eoshift3_16.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eoshift3_4.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eoshift3_8.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/erfc_scaled.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/etime.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exit.Plo@am__quote@
@@ -4703,6 +4707,13 @@ eoshift2.lo: intrinsics/eoshift2.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o eoshift2.lo `test -f 'intrinsics/eoshift2.c' || echo '$(srcdir)/'`intrinsics/eoshift2.c
+erfc_scaled.lo: intrinsics/erfc_scaled.c
+@am__fastdepCC_TRUE@ if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT erfc_scaled.lo -MD -MP -MF "$(DEPDIR)/erfc_scaled.Tpo" -c -o erfc_scaled.lo `test -f 'intrinsics/erfc_scaled.c' || echo '$(srcdir)/'`intrinsics/erfc_scaled.c; \
+@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/erfc_scaled.Tpo" "$(DEPDIR)/erfc_scaled.Plo"; else rm -f "$(DEPDIR)/erfc_scaled.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='intrinsics/erfc_scaled.c' object='erfc_scaled.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o erfc_scaled.lo `test -f 'intrinsics/erfc_scaled.c' || echo '$(srcdir)/'`intrinsics/erfc_scaled.c
+
etime.lo: intrinsics/etime.c
@am__fastdepCC_TRUE@ if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT etime.lo -MD -MP -MF "$(DEPDIR)/etime.Tpo" -c -o etime.lo `test -f 'intrinsics/etime.c' || echo '$(srcdir)/'`intrinsics/etime.c; \
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/etime.Tpo" "$(DEPDIR)/etime.Plo"; else rm -f "$(DEPDIR)/etime.Tpo"; exit 1; fi
diff --git a/libgfortran/config.h.in b/libgfortran/config.h.in
index 72d46d9e365..ddf8dd57620 100644
--- a/libgfortran/config.h.in
+++ b/libgfortran/config.h.in
@@ -805,19 +805,19 @@
/* Define to the version of this package. */
#undef PACKAGE_VERSION
-/* The size of a `char', as computed by sizeof. */
+/* The size of `char', as computed by sizeof. */
#undef SIZEOF_CHAR
-/* The size of a `int', as computed by sizeof. */
+/* The size of `int', as computed by sizeof. */
#undef SIZEOF_INT
-/* The size of a `long', as computed by sizeof. */
+/* The size of `long', as computed by sizeof. */
#undef SIZEOF_LONG
-/* The size of a `short', as computed by sizeof. */
+/* The size of `short', as computed by sizeof. */
#undef SIZEOF_SHORT
-/* The size of a `void *', as computed by sizeof. */
+/* The size of `void *', as computed by sizeof. */
#undef SIZEOF_VOID_P
/* Define to 1 if you have the ANSI C header files. */
@@ -835,5 +835,5 @@
/* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES
-/* Define to `long' if <sys/types.h> does not define. */
+/* Define to `long int' if <sys/types.h> does not define. */
#undef off_t
diff --git a/libgfortran/gfortran.map b/libgfortran/gfortran.map
index 7df40163606..33aafb668e2 100644
--- a/libgfortran/gfortran.map
+++ b/libgfortran/gfortran.map
@@ -88,6 +88,10 @@ GFORTRAN_1.0 {
_gfortran_eoshift3_4_char;
_gfortran_eoshift3_8;
_gfortran_eoshift3_8_char;
+ _gfortran_erfc_scaled_r4;
+ _gfortran_erfc_scaled_r8;
+ _gfortran_erfc_scaled_r10;
+ _gfortran_erfc_scaled_r16;
_gfortran_etime;
_gfortran_etime_sub;
_gfortran_exit_i4;
diff --git a/libgfortran/intrinsics/erfc_scaled.c b/libgfortran/intrinsics/erfc_scaled.c
new file mode 100644
index 00000000000..d7936c61291
--- /dev/null
+++ b/libgfortran/intrinsics/erfc_scaled.c
@@ -0,0 +1,57 @@
+/* Implementation of the ERFC_SCALED intrinsic.
+ Copyright (C) 2008 Free Software Foundation, Inc.
+
+This file is part of the GNU Fortran runtime library (libgfortran).
+
+Libgfortran is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public
+License as published by the Free Software Foundation; either
+version 2 of the License, or (at your option) any later version.
+
+In addition to the permissions in the GNU General Public License, the
+Free Software Foundation gives you unlimited permission to link the
+compiled version of this file into combinations with other programs,
+and to distribute those combinations without any restriction coming
+from the use of this file. (The General Public License restrictions
+do apply in other respects; for example, they cover modification of
+the file, and distribution when not linked into a combine
+executable.)
+
+Libgfortran is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public
+License along with libgfortran; see the file COPYING. If not,
+write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA. */
+
+#include "libgfortran.h"
+
+/* This implementation of ERFC_SCALED is based on the netlib algorithm
+ available at http://www.netlib.org/specfun/erf */
+
+#ifdef HAVE_GFC_REAL_4
+#undef KIND
+#define KIND 4
+#include "erfc_scaled_inc.c"
+#endif
+
+#ifdef HAVE_GFC_REAL_8
+#undef KIND
+#define KIND 8
+#include "erfc_scaled_inc.c"
+#endif
+
+#ifdef HAVE_GFC_REAL_10
+#undef KIND
+#define KIND 10
+#include "erfc_scaled_inc.c"
+#endif
+
+#ifdef HAVE_GFC_REAL_16
+#undef KIND
+#define KIND 16
+#include "erfc_scaled_inc.c"
+#endif
diff --git a/libgfortran/intrinsics/erfc_scaled_inc.c b/libgfortran/intrinsics/erfc_scaled_inc.c
new file mode 100644
index 00000000000..fab815584ca
--- /dev/null
+++ b/libgfortran/intrinsics/erfc_scaled_inc.c
@@ -0,0 +1,175 @@
+/* Implementation of the ERFC_SCALED intrinsic, to be included by erfc_scaled.c
+ Copyright (c) 2008 Free Software Foundation, Inc.
+
+This file is part of the GNU Fortran runtime library (libgfortran).
+
+Libgfortran is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public
+License as published by the Free Software Foundation; either
+version 2 of the License, or (at your option) any later version.
+
+In addition to the permissions in the GNU General Public License, the
+Free Software Foundation gives you unlimited permission to link the
+compiled version of this file into combinations with other programs,
+and to distribute those combinations without any restriction coming
+from the use of this file. (The General Public License restrictions
+do apply in other respects; for example, they cover modification of
+the file, and distribution when not linked into a combine
+executable.)
+
+Libgfortran is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR a PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public
+License along with libgfortran; see the file COPYING. If not,
+write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA. */
+
+/* This implementation of ERFC_SCALED is based on the netlib algorithm
+ available at http://www.netlib.org/specfun/erf */
+
+#define TYPE KIND_SUFFIX(GFC_REAL_,KIND)
+#define CONCAT(x,y) x ## y
+#define KIND_SUFFIX(x,y) CONCAT(x,y)
+
+#if (KIND == 4)
+# define EXP(x) expf(x)
+# define TRUNC(x) truncf(x)
+#elif (KIND == 8)
+# define EXP(x) exp(x)
+# define TRUNC(x) trunc(x)
+#else
+# define EXP(x) expl(x)
+# define TRUNC(x) truncl(x)
+#endif
+
+extern TYPE KIND_SUFFIX(erfc_scaled_r,KIND) (TYPE);
+export_proto(KIND_SUFFIX(erfc_scaled_r,KIND));
+
+TYPE
+KIND_SUFFIX(erfc_scaled_r,KIND) (TYPE x)
+{
+ /* The main computation evaluates near-minimax approximations
+ from "Rational Chebyshev approximations for the error function"
+ by W. J. Cody, Math. Comp., 1969, PP. 631-638. This
+ transportable program uses rational functions that theoretically
+ approximate erf(x) and erfc(x) to at least 18 significant
+ decimal digits. The accuracy achieved depends on the arithmetic
+ system, the compiler, the intrinsic functions, and proper
+ selection of the machine-dependent constants. */
+
+ int i;
+ TYPE del, res, xden, xnum, y, ysq;
+
+#if (KIND == 4)
+ static TYPE xneg = -9.382, xsmall = 5.96e-8,
+ xbig = 9.194, xhuge = 2.90e+3, xmax = 4.79e+37;
+#else
+ static TYPE xneg = -26.628, xsmall = 1.11e-16,
+ xbig = 26.543, xhuge = 6.71e+7, xmax = 2.53e+307;
+#endif
+
+#define SQRPI ((TYPE) 0.56418958354775628695L)
+#define THRESH ((TYPE) 0.46875L)
+
+ static TYPE a[5] = { 3.16112374387056560l, 113.864154151050156l,
+ 377.485237685302021l, 3209.37758913846947l, 0.185777706184603153l };
+
+ static TYPE b[4] = { 23.6012909523441209l, 244.024637934444173l,
+ 1282.61652607737228l, 2844.23683343917062l };
+
+ static TYPE c[9] = { 0.564188496988670089l, 8.88314979438837594l,
+ 66.1191906371416295l, 298.635138197400131l, 881.952221241769090l,
+ 1712.04761263407058l, 2051.07837782607147l, 1230.33935479799725l,
+ 2.15311535474403846e-8l };
+
+ static TYPE d[8] = { 15.7449261107098347l, 117.693950891312499l,
+ 537.181101862009858l, 1621.38957456669019l, 3290.79923573345963l,
+ 4362.61909014324716l, 3439.36767414372164l, 1230.33935480374942l };
+
+ static TYPE p[6] = { 0.305326634961232344l, 0.360344899949804439l,
+ 0.125781726111229246l, 0.0160837851487422766l,
+ 0.000658749161529837803l, 0.0163153871373020978l };
+
+ static TYPE q[5] = { 2.56852019228982242l, 1.87295284992346047l,
+ 0.527905102951428412l, 0.0605183413124413191l,
+ 0.00233520497626869185l };
+
+ y = (x > 0 ? x : -x);
+ if (y <= THRESH)
+ {
+ ysq = 0;
+ if (y > xsmall)
+ ysq = y * y;
+ xnum = a[4]*ysq;
+ xden = ysq;
+ for (i = 0; i <= 2; i++)
+ {
+ xnum = (xnum + a[i]) * ysq;
+ xden = (xden + b[i]) * ysq;
+ }
+ res = x * (xnum + a[3]) / (xden + b[3]);
+ res = 1 - res;
+ res = EXP(ysq) * res;
+ return res;
+ }
+ else if (y <= 4)
+ {
+ xnum = c[8]*y;
+ xden = y;
+ for (i = 0; i <= 6; i++)
+ {
+ xnum = (xnum + c[i]) * y;
+ xden = (xden + d[i]) * y;
+ }
+ res = (xnum + c[7]) / (xden + d[7]);
+ }
+ else
+ {
+ res = 0;
+ if (y >= xbig)
+ {
+ if (y >= xmax)
+ goto finish;
+ if (y >= xhuge)
+ {
+ res = SQRPI / y;
+ goto finish;
+ }
+ }
+ ysq = ((TYPE) 1) / (y * y);
+ xnum = p[5]*ysq;
+ xden = ysq;
+ for (i = 0; i <= 3; i++)
+ {
+ xnum = (xnum + p[i]) * ysq;
+ xden = (xden + q[i]) * ysq;
+ }
+ res = ysq *(xnum + p[4]) / (xden + q[4]);
+ res = (SQRPI - res) / y;
+ }
+
+finish:
+ if (x < 0)
+ {
+ if (x < xneg)
+ res = __builtin_inf ();
+ else
+ {
+ ysq = TRUNC (x*((TYPE) 16))/((TYPE) 16);
+ del = (x-ysq)*(x+ysq);
+ y = EXP(ysq*ysq) * EXP(del);
+ res = (y+y) - res;
+ }
+ }
+ return res;
+}
+
+#undef EXP
+#undef TRUNC
+
+#undef CONCAT
+#undef TYPE
+#undef KIND_SUFFIX
diff --git a/libgfortran/intrinsics/random.c b/libgfortran/intrinsics/random.c
index bc41eca9ab5..360e6ec22ba 100644
--- a/libgfortran/intrinsics/random.c
+++ b/libgfortran/intrinsics/random.c
@@ -639,6 +639,29 @@ arandom_r16 (gfc_array_r16 *x)
#endif
+
+
+static void
+scramble_seed (unsigned char *dest, unsigned char *src, int size)
+{
+ int i;
+
+ for (i = 0; i < size; i++)
+ dest[(i % 2) * (size / 2) + i / 2] = src[i];
+}
+
+
+static void
+unscramble_seed (unsigned char *dest, unsigned char *src, int size)
+{
+ int i;
+
+ for (i = 0; i < size; i++)
+ dest[i] = src[(i % 2) * (size / 2) + i / 2];
+}
+
+
+
/* random_seed is used to seed the PRNG with either a default
set of seeds or user specified set of seeds. random_seed
must be called with no argument or exactly one argument. */
@@ -647,6 +670,7 @@ void
random_seed_i4 (GFC_INTEGER_4 *size, gfc_array_i4 *put, gfc_array_i4 *get)
{
int i;
+ unsigned char seed[4*kiss_size];
__gthread_mutex_lock (&random_lock);
@@ -673,9 +697,15 @@ random_seed_i4 (GFC_INTEGER_4 *size, gfc_array_i4 *put, gfc_array_i4 *get)
if (((put->dim[0].ubound + 1 - put->dim[0].lbound)) < kiss_size)
runtime_error ("Array size of PUT is too small.");
- /* This code now should do correct strides. */
+ /* We copy the seed given by the user. */
for (i = 0; i < kiss_size; i++)
- kiss_seed[i] = (GFC_UINTEGER_4) put->data[i * put->dim[0].stride];
+ memcpy (seed + i * sizeof(GFC_UINTEGER_4),
+ &(put->data[(kiss_size - 1 - i) * put->dim[0].stride]),
+ sizeof(GFC_UINTEGER_4));
+
+ /* We put it after scrambling the bytes, to paper around users who
+ provide seeds with quality only in the lower or upper part. */
+ scramble_seed ((unsigned char *) kiss_seed, seed, 4*kiss_size);
}
/* Return the seed to GET data. */
@@ -689,9 +719,14 @@ random_seed_i4 (GFC_INTEGER_4 *size, gfc_array_i4 *put, gfc_array_i4 *get)
if (((get->dim[0].ubound + 1 - get->dim[0].lbound)) < kiss_size)
runtime_error ("Array size of GET is too small.");
- /* This code now should do correct strides. */
+ /* Unscramble the seed. */
+ unscramble_seed (seed, (unsigned char *) kiss_seed, 4*kiss_size);
+
+ /* Then copy it back to the user variable. */
for (i = 0; i < kiss_size; i++)
- get->data[i * get->dim[0].stride] = (GFC_INTEGER_4) kiss_seed[i];
+ memcpy (&(get->data[(kiss_size - 1 - i) * get->dim[0].stride]),
+ seed + i * sizeof(GFC_UINTEGER_4),
+ sizeof(GFC_UINTEGER_4));
}
__gthread_mutex_unlock (&random_lock);
diff --git a/libgfortran/io/unix.c b/libgfortran/io/unix.c
index d33c11091a0..b3645f0003d 100644
--- a/libgfortran/io/unix.c
+++ b/libgfortran/io/unix.c
@@ -706,16 +706,28 @@ fd_truncate (unix_stream * s)
/* Using ftruncate on a seekable special file (like /dev/null)
is undefined, so we treat it as if the ftruncate succeeded. */
+ if (!s->special_file
+ && (
#ifdef HAVE_FTRUNCATE
- if (s->special_file || ftruncate (s->fd, s->logical_offset))
+ ftruncate (s->fd, s->logical_offset) != 0
+#elif defined HAVE_CHSIZE
+ chsize (s->fd, s->logical_offset) != 0
#else
-#ifdef HAVE_CHSIZE
- if (s->special_file || chsize (s->fd, s->logical_offset))
-#endif
+ /* If we have neither, always fail and exit, noisily. */
+ runtime_error ("required ftruncate or chsize support not present"), 1
#endif
+ ))
{
- s->physical_offset = s->file_length = 0;
- return SUCCESS;
+ /* The truncation failed and we need to handle this gracefully.
+ The file length remains the same, but the file-descriptor
+ offset needs adjustment per the successful lseek above.
+ (Similarly, the contents of the buffer isn't valid anymore.)
+ A ftruncate call does not affect the physical (file-descriptor)
+ offset, according to the ftruncate manual, so neither should a
+ failed call. */
+ s->physical_offset = s->logical_offset;
+ s->active = 0;
+ return FAILURE;
}
s->physical_offset = s->file_length = s->logical_offset;
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 44286ca469f..84c70491ece 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,24 @@
+2008-03-06 Jakub Jelinek <jakub@redhat.com>
+
+ * testsuite/libgomp.c/atomic-3.c: New test.
+
+2008-03-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33197
+ * testsuite/libgomp.fortran/fortran.exp: Add .f08 and
+ .F08 file suffixes.
+
+2008-03-03 Peter O'Gorman <pogma@thewrittenword.com>
+
+ PR libgomp/33131
+ * configure.ac: Add ACX_HEADER_STRING.
+ * env.c: Include strings.h.
+ * aclocal.m4: Regenerate.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+ * Makefile.in: Regenerate.
+ * testsuite/Makefile.in: Regenerate.
+
2008-02-15 Jakub Jelinek <jakub@redhat.com>
PR middle-end/35196
diff --git a/libgomp/Makefile.in b/libgomp/Makefile.in
index 6ba3dcc9a28..21eb046ceb4 100644
--- a/libgomp/Makefile.in
+++ b/libgomp/Makefile.in
@@ -52,11 +52,11 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
$(top_srcdir)/../config/depstand.m4 \
$(top_srcdir)/../config/enable.m4 \
+ $(top_srcdir)/../config/futex.m4 \
$(top_srcdir)/../config/lead-dot.m4 \
$(top_srcdir)/../config/multi.m4 \
$(top_srcdir)/../config/stdint.m4 \
- $(top_srcdir)/../config/tls.m4 \
- $(top_srcdir)/../config/futex.m4 $(top_srcdir)/../ltoptions.m4 \
+ $(top_srcdir)/../config/tls.m4 $(top_srcdir)/../ltoptions.m4 \
$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/../libtool.m4 $(top_srcdir)/configure.ac
@@ -217,9 +217,12 @@ USE_FORTRAN_TRUE = @USE_FORTRAN_TRUE@
VERSION = @VERSION@
XCFLAGS = @XCFLAGS@
XLDFLAGS = @XLDFLAGS@
+ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
ac_ct_FC = @ac_ct_FC@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__include = @am__include@
@@ -235,9 +238,6 @@ build_os = @build_os@
build_vendor = @build_vendor@
config_path = @config_path@
datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
enable_shared = @enable_shared@
enable_static = @enable_static@
exec_prefix = @exec_prefix@
@@ -246,7 +246,6 @@ host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
-htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
@@ -254,17 +253,14 @@ libdir = @libdir@
libexecdir = @libexecdir@
libtool_VERSION = @libtool_VERSION@
link_gomp = @link_gomp@
-localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
multi_basedir = @multi_basedir@
oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
-psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
@@ -545,13 +541,10 @@ dist-info: $(INFO_DEPS)
$(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \
esac; \
if test -f $$base; then d=.; else d=$(srcdir); fi; \
- base_i=`echo "$$base" | sed 's|\.info$$||;s|$$|.i|'`; \
- for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \
- if test -f $$file; then \
- relfile=`expr "$$file" : "$$d/\(.*\)"`; \
- test -f $(distdir)/$$relfile || \
- cp -p $$file $(distdir)/$$relfile; \
- else :; fi; \
+ for file in $$d/$$base*; do \
+ relfile=`expr "$$file" : "$$d/\(.*\)"`; \
+ test -f $(distdir)/$$relfile || \
+ cp -p $$file $(distdir)/$$relfile; \
done; \
done
diff --git a/libgomp/aclocal.m4 b/libgomp/aclocal.m4
index 1746f255949..eee6ec06b28 100644
--- a/libgomp/aclocal.m4
+++ b/libgomp/aclocal.m4
@@ -859,11 +859,11 @@ AC_SUBST([am__untar])
m4_include([../config/acx.m4])
m4_include([../config/depstand.m4])
m4_include([../config/enable.m4])
+m4_include([../config/futex.m4])
m4_include([../config/lead-dot.m4])
m4_include([../config/multi.m4])
m4_include([../config/stdint.m4])
m4_include([../config/tls.m4])
-m4_include([../config/futex.m4])
m4_include([../ltoptions.m4])
m4_include([../ltsugar.m4])
m4_include([../ltversion.m4])
diff --git a/libgomp/config.h.in b/libgomp/config.h.in
index b21360ab386..eed8a8837af 100644
--- a/libgomp/config.h.in
+++ b/libgomp/config.h.in
@@ -91,24 +91,27 @@
/* Define to the version of this package. */
#undef PACKAGE_VERSION
-/* The size of `char', as computed by sizeof. */
+/* The size of a `char', as computed by sizeof. */
#undef SIZEOF_CHAR
-/* The size of `int', as computed by sizeof. */
+/* The size of a `int', as computed by sizeof. */
#undef SIZEOF_INT
-/* The size of `long', as computed by sizeof. */
+/* The size of a `long', as computed by sizeof. */
#undef SIZEOF_LONG
-/* The size of `short', as computed by sizeof. */
+/* The size of a `short', as computed by sizeof. */
#undef SIZEOF_SHORT
-/* The size of `void *', as computed by sizeof. */
+/* The size of a `void *', as computed by sizeof. */
#undef SIZEOF_VOID_P
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
+/* Define if you can safely include both <string.h> and <strings.h>. */
+#undef STRING_WITH_STRINGS
+
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
diff --git a/libgomp/configure.ac b/libgomp/configure.ac
index 0cda749d593..47c61bea625 100644
--- a/libgomp/configure.ac
+++ b/libgomp/configure.ac
@@ -153,6 +153,7 @@ AC_SUBST(libtool_VERSION)
# Check header files.
AC_STDC_HEADERS
AC_HEADER_TIME
+ACX_HEADER_STRING
AC_CHECK_HEADERS(unistd.h semaphore.h sys/loadavg.h sys/time.h)
GCC_HEADER_STDINT(gstdint.h)
diff --git a/libgomp/env.c b/libgomp/env.c
index 4a07bfa4975..6c6a35228eb 100644
--- a/libgomp/env.c
+++ b/libgomp/env.c
@@ -32,7 +32,18 @@
#include "libgomp_f.h"
#include <ctype.h>
#include <stdlib.h>
-#include <string.h>
+#ifdef STRING_WITH_STRINGS
+# include <string.h>
+# include <strings.h>
+#else
+# ifdef HAVE_STRING_H
+# include <string.h>
+# else
+# ifdef HAVE_STRINGS_H
+# include <strings.h>
+# endif
+# endif
+#endif
#include <limits.h>
#include <errno.h>
diff --git a/libgomp/testsuite/Makefile.in b/libgomp/testsuite/Makefile.in
index fa3cba6f8f2..aaf23dcbc6d 100644
--- a/libgomp/testsuite/Makefile.in
+++ b/libgomp/testsuite/Makefile.in
@@ -42,13 +42,14 @@ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
$(top_srcdir)/../config/depstand.m4 \
$(top_srcdir)/../config/enable.m4 \
+ $(top_srcdir)/../config/futex.m4 \
$(top_srcdir)/../config/lead-dot.m4 \
$(top_srcdir)/../config/multi.m4 \
$(top_srcdir)/../config/stdint.m4 \
$(top_srcdir)/../config/tls.m4 $(top_srcdir)/../ltoptions.m4 \
$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
- $(top_srcdir)/acinclude.m4 $(top_srcdir)/../libtool.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
+ $(top_srcdir)/../libtool.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
diff --git a/libgomp/testsuite/libgomp.c/atomic-3.c b/libgomp/testsuite/libgomp.c/atomic-3.c
new file mode 100644
index 00000000000..5b8fdc1a79e
--- /dev/null
+++ b/libgomp/testsuite/libgomp.c/atomic-3.c
@@ -0,0 +1,50 @@
+/* { dg-do run } */
+/* { dg-options "-fopenmp -O0" } */
+
+#include <omp.h>
+#include <stdlib.h>
+
+short e[64];
+int g;
+_Complex double d, f;
+int num_threads;
+
+__attribute__((noinline)) void
+foo (int x, long long y)
+{
+#pragma omp parallel num_threads (4)
+ {
+ int i;
+ #pragma omp barrier
+ for (i = 0; i < 2400; i++)
+ {
+ if (i == 0)
+ num_threads = omp_get_num_threads ();
+ #pragma omp atomic
+ e[0] += x;
+ #pragma omp atomic
+ e[16] += x;
+ #pragma omp atomic
+ g += y;
+ #pragma omp atomic
+ __real__ d += x;
+ #pragma omp atomic
+ __imag__ f += x;
+ }
+ }
+}
+
+int
+main (void)
+{
+ int i;
+ foo (3, 3LL);
+ if (g != 3 * 2400 * num_threads
+ || __real__ d != g || __imag__ d != 0
+ || __real__ f != 0 || __imag__ f != g)
+ abort ();
+ for (i = 0; i < 64; i++)
+ if (e[i] != ((i && i != 16) ? 0 : g))
+ abort ();
+ return 0;
+}
diff --git a/libgomp/testsuite/libgomp.fortran/fortran.exp b/libgomp/testsuite/libgomp.fortran/fortran.exp
index ec0f878c821..b7d6b1072e7 100644
--- a/libgomp/testsuite/libgomp.fortran/fortran.exp
+++ b/libgomp/testsuite/libgomp.fortran/fortran.exp
@@ -10,7 +10,7 @@ dg-init
if [file exists "${blddir}/${lang_test_file}"] {
# Gather a list of all tests.
- set tests [lsort [find $srcdir/$subdir *.\[fF\]{,90,95,03}]]
+ set tests [lsort [find $srcdir/$subdir *.\[fF\]{,90,95,03,08}]]
set ld_library_path "$always_ld_library_path:${blddir}/${lang_library_path}"
set_ld_library_path_env_vars
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index 0153ff7e173..baa4bdabe22 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,8 @@
+2008-03-11 Nick Clifton <nickc@redhat.com>
+
+ * md5.c (md5_process_bytes): Do not assume that memcpy will
+ provide a return value.
+
2008-02-19 Ben Elliston <bje@au.ibm.com>
PR other/12618
diff --git a/libiberty/md5.c b/libiberty/md5.c
index 83e0beb339f..9de9d88c22a 100644
--- a/libiberty/md5.c
+++ b/libiberty/md5.c
@@ -234,7 +234,8 @@ md5_process_bytes (const void *buffer, size_t len, struct md5_ctx *ctx)
if (UNALIGNED_P (buffer))
while (len > 64)
{
- md5_process_block (memcpy (ctx->buffer, buffer, 64), 64, ctx);
+ memcpy (ctx->buffer, buffer, 64);
+ md5_process_block (ctx->buffer, 64, ctx);
buffer = (const char *) buffer + 64;
len -= 64;
}
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index dbad79f083d..84ea6c0b3be 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,475 @@
+2008-03-10 Jim Meyering <meyering@redhat.com>
+
+ Don't leak upon failed realloc.
+ * gnu/classpath/natSystemProperties.cc
+ (SystemProperties::insertSystemProperties):
+
+2008-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * HACKING: Fix grep patterns.
+
+2008-03-04 David Daney <ddaney@avtrex.com>
+
+ * scripts/makemake.tcl (properties_map): Don't exclude
+ gnu/java/locale.
+ * gnu/java/lang/MainThread.java (Klocale, Kcalendar): Remove.
+ * java/text/Collator.java: Organize imports.
+ (getAvailableLocales): Merge from classpath.
+ (getInstance): Same.
+ * sources.am: Regenerate.
+ * Makefile.in: Regenerate.
+ * classpath/lib/java/text/DecimalFormatSymbols.class,
+ classpath/lib/java/text/DateFormatSymbols.class,
+ classpath/lib/java/util/Currency.class,
+ classpath/lib/java/util/Calendar.class,
+ classpath/lib/gnu/java/lang/MainThread.class,
+ classpath/lib/java/text/Collator.class,
+ gnu/java/lang/MainThread.h,
+ java/text/DateFormatSymbols.h,
+ java/text/DecimalFormatSymbols.h,
+ java/util/Calendar.h,
+ java/util/Currency.h: Regenerate.
+ * classpath/lib/gnu/java/locale/LocaleInformation_en_PH.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_AR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_BW.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_de_BE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_te_IN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_iw_IL.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_fr_LU.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_AE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_sk_SK.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_fr_CA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_MX.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_EG.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_lt_LT.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_ZW.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_QA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_gv_GB.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_yi_US.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_SD.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_IQ.class,
+ classpath/lib/gnu/java/locale/Calendar_de.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_HN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_YE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_de_CH.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_PR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_BH.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_mi_NZ.class,
+ classpath/lib/gnu/java/locale/Calendar_nl.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_fr_BE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_EC.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_mt_MT.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_HK.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_CL.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_kw_GB.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_mk_MK.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_ES.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_cs_CZ.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_nl_NL.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_CA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_bs_BA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ru_UA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_US.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_fr_CH.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ja_JP.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_it_CH.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_PA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_kl_GL.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_de.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_el_GR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_IN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_DO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_tr_TR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_PE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_zh_TW.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_OM.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_KW.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ga_IE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_hu_HU.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_nl.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ca_ES.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_zh_SG.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_de_AT.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_LB.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_PY.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_nl_BE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_af_ZA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_he_IL.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ro_RO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_vi_VN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_cy_GB.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_hi_IN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_CO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_JO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_br_FR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ta_IN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_ZA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_fr_FR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_DZ.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_eu_ES.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_TN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_tl_PH.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_pl_PL.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_sv_FI.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_id_ID.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_GB.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_uz_UZ.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_fi_FI.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_IE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_MA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_be_BY.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_bn_IN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_pt_PT.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_BO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_AU.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_NI.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_zh_CN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_VE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ka_GE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_it_IT.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_US.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_sl_SI.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_DK.class,
+ classpath/lib/gnu/java/locale/LocaleInformation.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_CR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ru_RU.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_sq_AL.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_de_DE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_GT.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_sr_YU.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_da_DK.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_gd_GB.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_hr_HR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_zh_HK.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_uk_UA.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ko_KR.class,
+ classpath/lib/gnu/java/locale/Calendar_en.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_LY.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_pt_BR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_nn_NO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_NZ.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_SV.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ur_PK.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_et_EE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_lv_LV.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_es_UY.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_oc_FR.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_fo_FO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_IN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_de_LU.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_gl_ES.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_en_SG.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_se_NO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_mr_IN.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_tg_TJ.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_no_NO.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_ar_SY.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_sv_SE.class,
+ classpath/lib/gnu/java/locale/LocaleInformation_fa_IR.class,
+ classpath/lib/gnu/java/locale/Calendar.class,
+ gnu/java/locale/LocaleInformation_fr_CA.java,
+ gnu/java/locale/LocaleInformation_sk_SK.java,
+ gnu/java/locale/LocaleInformation_ar_BH.java,
+ gnu/java/locale/LocaleInformation_ko_KR.h,
+ gnu/java/locale/LocaleInformation_bs_BA.h,
+ gnu/java/locale/LocaleInformation_nn_NO.h,
+ gnu/java/locale/LocaleInformation_en_NZ.h,
+ gnu/java/locale/LocaleInformation_en_ZW.java,
+ gnu/java/locale/LocaleInformation_es_US.h,
+ gnu/java/locale/LocaleInformation_es_SV.h,
+ gnu/java/locale/LocaleInformation_de_LU.java,
+ gnu/java/locale/LocaleInformation_fo_FO.java,
+ gnu/java/locale/LocaleInformation_oc_FR.java,
+ gnu/java/locale/LocaleInformation_it_CH.h,
+ gnu/java/locale/LocaleInformation_de.h,
+ gnu/java/locale/LocaleInformation_el_GR.h,
+ gnu/java/locale/LocaleInformation_tr_TR.h,
+ gnu/java/locale/LocaleInformation_ka_GE.java,
+ gnu/java/locale/LocaleInformation_nn_NO.java,
+ gnu/java/locale/LocaleInformation_se_NO.h,
+ gnu/java/locale/LocaleInformation_ga_IE.h,
+ gnu/java/locale/LocaleInformation_ru_UA.java,
+ gnu/java/locale/LocaleInformation_fa_IR.java,
+ gnu/java/locale/LocaleInformation_ja_JP.java,
+ gnu/java/locale/LocaleInformation_sv_SE.h,
+ gnu/java/locale/LocaleInformation_bn_IN.java,
+ gnu/java/locale/LocaleInformation_af_ZA.h,
+ gnu/java/locale/LocaleInformation_es_PE.java,
+ gnu/java/locale/LocaleInformation_hi_IN.h,
+ gnu/java/locale/LocaleInformation_en_ZA.java,
+ gnu/java/locale/LocaleInformation_es_CO.h,
+ gnu/java/locale/LocaleInformation_es_AR.h,
+ gnu/java/locale/LocaleInformation_en_PH.h,
+ gnu/java/locale/LocaleInformation_ta_IN.h,
+ gnu/java/locale/LocaleInformation_en_ZA.h,
+ gnu/java/locale/LocaleInformation_nl_NL.java,
+ gnu/java/locale/LocaleInformation_ar_KW.java,
+ gnu/java/locale/LocaleInformation_fr_FR.h,
+ gnu/java/locale/LocaleInformation_ar_LY.java,
+ gnu/java/locale/LocaleInformation_uz_UZ.java,
+ gnu/java/locale/LocaleInformation_tl_PH.h,
+ gnu/java/locale/LocaleInformation_fi_FI.java,
+ gnu/java/locale/LocaleInformation_pl_PL.h,
+ gnu/java/locale/LocaleInformation_sv_FI.h,
+ gnu/java/locale/LocaleInformation_es_MX.h,
+ gnu/java/locale/LocaleInformation_uz_UZ.h,
+ gnu/java/locale/LocaleInformation_fi_FI.h,
+ gnu/java/locale/LocaleInformation_ar_SD.java,
+ gnu/java/locale/LocaleInformation_ar_QA.h,
+ gnu/java/locale/LocaleInformation_kw_GB.java,
+ gnu/java/locale/LocaleInformation_ar_YE.h,
+ gnu/java/locale/LocaleInformation_es_PR.java,
+ gnu/java/locale/LocaleInformation_zh_SG.java,
+ gnu/java/locale/LocaleInformation_ca_ES.java,
+ gnu/java/locale/LocaleInformation_ka_GE.h,
+ gnu/java/locale/LocaleInformation_ar_BH.h,
+ gnu/java/locale/LocaleInformation_fr_CH.java,
+ gnu/java/locale/Calendar_nl.h,
+ gnu/java/locale/LocaleInformation_en_DK.h,
+ gnu/java/locale/LocaleInformation.h,
+ gnu/java/locale/LocaleInformation_ar_JO.java,
+ gnu/java/locale/LocaleInformation_br_FR.java,
+ gnu/java/locale/LocaleInformation_ru_RU.java,
+ gnu/java/locale/LocaleInformation_de_BE.java,
+ gnu/java/locale/LocaleInformation_ru_RU.h,
+ gnu/java/locale/LocaleInformation_de_DE.h,
+ gnu/java/locale/LocaleInformation_hr_HR.h,
+ gnu/java/locale/LocaleInformation_gd_GB.h,
+ gnu/java/locale/LocaleInformation_nl.java,
+ gnu/java/locale/LocaleInformation_en_GB.java,
+ gnu/java/locale/LocaleInformation_uk_UA.h,
+ gnu/java/locale/LocaleInformation_ar_LY.h,
+ gnu/java/locale/LocaleInformation_ru_UA.h,
+ gnu/java/locale/LocaleInformation_es_UY.java,
+ gnu/java/locale/LocaleInformation_fr_CH.h,
+ gnu/java/locale/LocaleInformation_lv_LV.h,
+ gnu/java/locale/LocaleInformation_de.java,
+ gnu/java/locale/LocaleInformation_el_GR.java,
+ gnu/java/locale/LocaleInformation_es_CR.java,
+ gnu/java/locale/LocaleInformation_ar_IN.h,
+ gnu/java/locale/LocaleInformation_es_DO.h,
+ gnu/java/locale/LocaleInformation_es_PE.h,
+ gnu/java/locale/LocaleInformation_ar_OM.h,
+ gnu/java/locale/LocaleInformation_zh_HK.java,
+ gnu/java/locale/LocaleInformation_mr_IN.java,
+ gnu/java/locale/LocaleInformation_no_NO.h,
+ gnu/java/locale/LocaleInformation_es_EC.java,
+ gnu/java/locale/LocaleInformation_ro_RO.java,
+ gnu/java/locale/LocaleInformation_he_IL.java,
+ gnu/java/locale/Calendar.java,
+ gnu/java/locale/LocaleInformation_ar_LB.h,
+ gnu/java/locale/LocaleInformation_fa_IR.h,
+ gnu/java/locale/LocaleInformation_es_CO.java,
+ gnu/java/locale/LocaleInformation_cy_GB.h,
+ gnu/java/locale/LocaleInformation_en_SG.java,
+ gnu/java/locale/LocaleInformation_mk_MK.java,
+ gnu/java/locale/LocaleInformation_es_ES.java,
+ gnu/java/locale/LocaleInformation_eu_ES.java,
+ gnu/java/locale/LocaleInformation_en_BW.h,
+ gnu/java/locale/LocaleInformation_es_VE.java,
+ gnu/java/locale/LocaleInformation_zh_CN.java,
+ gnu/java/locale/LocaleInformation_hr_HR.java,
+ gnu/java/locale/LocaleInformation_gd_GB.java,
+ gnu/java/locale/LocaleInformation_se_NO.java,
+ gnu/java/locale/LocaleInformation_te_IN.h,
+ gnu/java/locale/LocaleInformation_en.h,
+ gnu/java/locale/LocaleInformation_ar_TN.h,
+ gnu/java/locale/Calendar_nl.java,
+ gnu/java/locale/LocaleInformation_es_US.java,
+ gnu/java/locale/LocaleInformation_nl_BE.java,
+ gnu/java/locale/LocaleInformation_es_PY.java,
+ gnu/java/locale/LocaleInformation_sk_SK.h,
+ gnu/java/locale/LocaleInformation_fr_CA.h,
+ gnu/java/locale/LocaleInformation_be_BY.java,
+ gnu/java/locale/LocaleInformation_lv_LV.java,
+ gnu/java/locale/LocaleInformation_lt_LT.h,
+ gnu/java/locale/LocaleInformation_gv_GB.java,
+ gnu/java/locale/LocaleInformation_ar_MA.h,
+ gnu/java/locale/LocaleInformation_en_IE.h,
+ gnu/java/locale/LocaleInformation_es_CL.java,
+ gnu/java/locale/LocaleInformation_bn_IN.h,
+ gnu/java/locale/Calendar_de.java,
+ gnu/java/locale/LocaleInformation_yi_US.h,
+ gnu/java/locale/LocaleInformation_ar_DZ.java,
+ gnu/java/locale/LocaleInformation_es_GT.java,
+ gnu/java/locale/Calendar_de.h,
+ gnu/java/locale/LocaleInformation_es_NI.h,
+ gnu/java/locale/LocaleInformation_en_CA.java,
+ gnu/java/locale/LocaleInformation_zh_CN.h,
+ gnu/java/locale/LocaleInformation_es_VE.h,
+ gnu/java/locale/LocaleInformation_de_CH.h,
+ gnu/java/locale/LocaleInformation_en_NZ.java,
+ gnu/java/locale/LocaleInformation_mi_NZ.java,
+ gnu/java/locale/LocaleInformation_en_US.h,
+ gnu/java/locale/LocaleInformation_sl_SI.h,
+ gnu/java/locale/LocaleInformation_et_EE.java,
+ gnu/java/locale/LocaleInformation_mi_NZ.h,
+ gnu/java/locale/LocaleInformation_ar_QA.java,
+ gnu/java/locale/LocaleInformation_en_HK.java,
+ gnu/java/locale/LocaleInformation_ar_IQ.java,
+ gnu/java/locale/LocaleInformation_ar_OM.java,
+ gnu/java/locale/LocaleInformation_fr_FR.java,
+ gnu/java/locale/LocaleInformation_es_CR.h,
+ gnu/java/locale/LocaleInformation_en.java,
+ gnu/java/locale/LocaleInformation_es_GT.h,
+ gnu/java/locale/LocaleInformation_ur_PK.java,
+ gnu/java/locale/LocaleInformation_pt_PT.java,
+ gnu/java/locale/LocaleInformation_et_EE.h,
+ gnu/java/locale/LocaleInformation_ar_IN.java,
+ gnu/java/locale/LocaleInformation_es_AR.java,
+ gnu/java/locale/LocaleInformation_en_PH.java,
+ gnu/java/locale/LocaleInformation_en_IN.h,
+ gnu/java/locale/LocaleInformation_kl_GL.h,
+ gnu/java/locale/LocaleInformation_gl_ES.h,
+ gnu/java/locale/LocaleInformation_sq_AL.java,
+ gnu/java/locale/LocaleInformation_en_SG.h,
+ gnu/java/locale/LocaleInformation_de_CH.java,
+ gnu/java/locale/LocaleInformation_ga_IE.java,
+ gnu/java/locale/LocaleInformation_no_NO.java,
+ gnu/java/locale/LocaleInformation_de_AT.java,
+ gnu/java/locale/LocaleInformation_tg_TJ.h,
+ gnu/java/locale/LocaleInformation_hu_HU.h,
+ gnu/java/locale/LocaleInformation_es_SV.java,
+ gnu/java/locale/LocaleInformation_zh_SG.h,
+ gnu/java/locale/LocaleInformation_ca_ES.h,
+ gnu/java/locale/LocaleInformation_de_AT.h,
+ gnu/java/locale/LocaleInformation_ar_SY.h,
+ gnu/java/locale/LocaleInformation_he_IL.h,
+ gnu/java/locale/LocaleInformation_ro_RO.h,
+ gnu/java/locale/LocaleInformation_zh_TW.java,
+ gnu/java/locale/LocaleInformation_es_NI.java,
+ gnu/java/locale/LocaleInformation_ar_JO.h,
+ gnu/java/locale/LocaleInformation_br_FR.h,
+ gnu/java/locale/Calendar_en.java,
+ gnu/java/locale/LocaleInformation_eu_ES.h,
+ gnu/java/locale/LocaleInformation_pt_BR.java,
+ gnu/java/locale/LocaleInformation_tg_TJ.java,
+ gnu/java/locale/LocaleInformation_iw_IL.h,
+ gnu/java/locale/LocaleInformation_ar_AE.h,
+ gnu/java/locale/LocaleInformation_fr_LU.h,
+ gnu/java/locale/LocaleInformation_id_ID.h,
+ gnu/java/locale/LocaleInformation_sv_SE.java,
+ gnu/java/locale/LocaleInformation_en_GB.h,
+ gnu/java/locale/LocaleInformation_ar_EG.h,
+ gnu/java/locale/LocaleInformation_cy_GB.java,
+ gnu/java/locale/LocaleInformation_be_BY.h,
+ gnu/java/locale/LocaleInformation_yi_US.java,
+ gnu/java/locale/LocaleInformation_tr_TR.java,
+ gnu/java/locale/LocaleInformation_pt_PT.h,
+ gnu/java/locale/LocaleInformation_ar_IQ.h,
+ gnu/java/locale/LocaleInformation_cs_CZ.java,
+ gnu/java/locale/LocaleInformation_ar_TN.java,
+ gnu/java/locale/LocaleInformation_ko_KR.java,
+ gnu/java/locale/LocaleInformation_ar_AE.java,
+ gnu/java/locale/LocaleInformation_fr_LU.java,
+ gnu/java/locale/LocaleInformation_it_IT.h,
+ gnu/java/locale/LocaleInformation_mt_MT.java,
+ gnu/java/locale/LocaleInformation_fr_BE.h,
+ gnu/java/locale/LocaleInformation_es_DO.java,
+ gnu/java/locale/LocaleInformation_ta_IN.java,
+ gnu/java/locale/LocaleInformation_es_CL.h,
+ gnu/java/locale/LocaleInformation_te_IN.java,
+ gnu/java/locale/LocaleInformation_ar_YE.java,
+ gnu/java/locale/LocaleInformation_kw_GB.h,
+ gnu/java/locale/LocaleInformation_uk_UA.java,
+ gnu/java/locale/LocaleInformation_cs_CZ.h,
+ gnu/java/locale/LocaleInformation_da_DK.h,
+ gnu/java/locale/LocaleInformation_en_CA.h,
+ gnu/java/locale/Calendar_en.h,
+ gnu/java/locale/LocaleInformation_pt_BR.h,
+ gnu/java/locale/LocaleInformation_ar_SY.java,
+ gnu/java/locale/LocaleInformation_lt_LT.java,
+ gnu/java/locale/LocaleInformation_vi_VN.java,
+ gnu/java/locale/LocaleInformation_ur_PK.h,
+ gnu/java/locale/LocaleInformation_en_IN.java,
+ gnu/java/locale/LocaleInformation_kl_GL.java,
+ gnu/java/locale/LocaleInformation_ja_JP.h,
+ gnu/java/locale/LocaleInformation_es_UY.h,
+ gnu/java/locale/LocaleInformation_es_PA.h,
+ gnu/java/locale/LocaleInformation_de_LU.h,
+ gnu/java/locale/LocaleInformation_fo_FO.h,
+ gnu/java/locale/LocaleInformation_oc_FR.h,
+ gnu/java/locale/LocaleInformation_zh_TW.h,
+ gnu/java/locale/LocaleInformation_hu_HU.java,
+ gnu/java/locale/LocaleInformation_ar_KW.h,
+ gnu/java/locale/LocaleInformation_mr_IN.h,
+ gnu/java/locale/LocaleInformation_ar_EG.java,
+ gnu/java/locale/LocaleInformation_nl.h,
+ gnu/java/locale/LocaleInformation_af_ZA.java,
+ gnu/java/locale/LocaleInformation_es_PY.h,
+ gnu/java/locale/LocaleInformation_nl_BE.h,
+ gnu/java/locale/LocaleInformation_vi_VN.h,
+ gnu/java/locale/LocaleInformation_es_PA.java,
+ gnu/java/locale/Calendar.h,
+ gnu/java/locale/LocaleInformation_da_DK.java,
+ gnu/java/locale/LocaleInformation_de_BE.h,
+ gnu/java/locale/LocaleInformation_ar_DZ.h,
+ gnu/java/locale/LocaleInformation_bs_BA.java,
+ gnu/java/locale/LocaleInformation_id_ID.java,
+ gnu/java/locale/LocaleInformation_en_US.java,
+ gnu/java/locale/LocaleInformation_sl_SI.java,
+ gnu/java/locale/LocaleInformation_fr_BE.java,
+ gnu/java/locale/LocaleInformation_ar_LB.java,
+ gnu/java/locale/LocaleInformation_it_CH.java,
+ gnu/java/locale/LocaleInformation_en_ZW.h,
+ gnu/java/locale/LocaleInformation_gv_GB.h,
+ gnu/java/locale/LocaleInformation_es_HN.java,
+ gnu/java/locale/LocaleInformation_es_BO.h,
+ gnu/java/locale/LocaleInformation_en_AU.h,
+ gnu/java/locale/LocaleInformation_ar_SD.h,
+ gnu/java/locale/LocaleInformation_sr_YU.java,
+ gnu/java/locale/LocaleInformation_es_HN.h,
+ gnu/java/locale/LocaleInformation_iw_IL.java,
+ gnu/java/locale/LocaleInformation_it_IT.java,
+ gnu/java/locale/LocaleInformation_es_MX.java,
+ gnu/java/locale/LocaleInformation_es_PR.h,
+ gnu/java/locale/LocaleInformation_ar_MA.java,
+ gnu/java/locale/LocaleInformation_en_IE.java,
+ gnu/java/locale/LocaleInformation.java,
+ gnu/java/locale/LocaleInformation_en_DK.java,
+ gnu/java/locale/LocaleInformation_es_EC.h,
+ gnu/java/locale/LocaleInformation_mt_MT.h,
+ gnu/java/locale/LocaleInformation_hi_IN.java,
+ gnu/java/locale/LocaleInformation_en_AU.java,
+ gnu/java/locale/LocaleInformation_es_BO.java,
+ gnu/java/locale/LocaleInformation_gl_ES.java,
+ gnu/java/locale/LocaleInformation_en_BW.java,
+ gnu/java/locale/LocaleInformation_en_HK.h,
+ gnu/java/locale/LocaleInformation_de_DE.java,
+ gnu/java/locale/LocaleInformation_mk_MK.h,
+ gnu/java/locale/LocaleInformation_es_ES.h,
+ gnu/java/locale/LocaleInformation_sq_AL.h,
+ gnu/java/locale/LocaleInformation_sv_FI.java,
+ gnu/java/locale/LocaleInformation_pl_PL.java,
+ gnu/java/locale/LocaleInformation_tl_PH.java,
+ gnu/java/locale/LocaleInformation_sr_YU.h,
+ gnu/java/locale/LocaleInformation_nl_NL.h,
+ gnu/java/locale/LocaleInformation_zh_HK.h,
+ java/text/DateFormatSymbols.java,
+ java/text/DecimalFormatSymbols.java,
+ java/util/Currency.java,
+ java/util/Calendar.java: Remove
+
+2008-03-03 Andrew Haley <aph@littlepinkcloud.com>
+
+ * testsuite/lib/libjava.exp (libjava_arguments): Use regexp
+ instead of string match when checking for linux targets.
+
+2008-03-03 Matthias Klose <doko@ubuntu.com>
+
+ * classpath/tools/classes/gnu/classpath/tools/orbd/Main.class,
+ classpath/lib/gnu/java/locale/LocaleData.class
+ classpath/lib/gnu/java/rmi/registry/RegistryImpl.class
+ classpath/lib/gnu/gcj/convert/Convert.class
+ classpath/lib/gnu/gcj/tools/gcj_dbtool/Main.class: Regenerate.
+
+2008-03-02 Jakub Jelinek <jakub@redhat.com>
+
+ * gnu/gcj/convert/Convert.java (version): Update copyright notice
+ dates.
+ * gnu/gcj/tools/gcj_dbtool/Main.java (main): Likewise.
+
2008-02-27 David Daney <ddaney@avtrex.com>
* HACKING: Correct typo in find command.
diff --git a/libjava/HACKING b/libjava/HACKING
index 75bc63b35e7..03563b2afa2 100644
--- a/libjava/HACKING
+++ b/libjava/HACKING
@@ -67,7 +67,7 @@ To import a new release:
svn+ssh://gcc.gnu.org/svn/gcc/branches/CLASSPATH/libjava/classpath
this contains "pure" GNU Classpath inside the GCC tree.
- Clean it up and get the files from a new version:
- - find classpath -type f | grep -v /\.svn | grep -v /\.cvs | xargs rm
+ - find classpath -type f | grep -v '/\.svn' | grep -v '/\.cvs' | xargs rm
- tar zxf classpath-x.tar.gz
- cp -r classpath-x/* classpath
- Add/Remove files:
@@ -121,10 +121,10 @@ To import a new release:
will need to update the .class files and generated CNI header files in
your working tree
- Add/Remove newly generated files:
- - svn status classpath | grep '^\!.*\.class$' | cut -c8- | xargs svn remove
- - svn status classpath | grep '^\?' | cut -c8- | xargs svn add
- - svn status gnu java javax org sun | grep '^\!.*\.h$' | cut -c8- | xargs svn remove
- - svn status gnu java javax org sun | grep '^\?' | cut -c8- | xargs svn add
+ - svn status classpath | grep '^!.*\.class$' | cut -c8- | xargs svn remove
+ - svn status classpath | grep '^?' | cut -c8- | xargs svn add
+ - svn status gnu java javax org sun | grep '^!.*\.h$' | cut -c8- | xargs svn remove
+ - svn status gnu java javax org sun | grep '^?' | cut -c8- | xargs svn add
Over time we plan to remove as many of the remaining divergences as
possible.
diff --git a/libjava/Makefile.in b/libjava/Makefile.in
index 6003de5de0a..fae8669b6a7 100644
--- a/libjava/Makefile.in
+++ b/libjava/Makefile.in
@@ -1835,147 +1835,8 @@ classpath/gnu/java/lang/reflect/TypeSignature.java
gnu_java_lang_reflect_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_lang_reflect_source_files)))
gnu_java_locale_source_files = \
-gnu/java/locale/Calendar.java \
-gnu/java/locale/Calendar_de.java \
-gnu/java/locale/Calendar_en.java \
-gnu/java/locale/Calendar_nl.java \
classpath/gnu/java/locale/LocaleData.java \
-classpath/gnu/java/locale/LocaleHelper.java \
-gnu/java/locale/LocaleInformation.java \
-gnu/java/locale/LocaleInformation_af_ZA.java \
-gnu/java/locale/LocaleInformation_ar_AE.java \
-gnu/java/locale/LocaleInformation_ar_BH.java \
-gnu/java/locale/LocaleInformation_ar_DZ.java \
-gnu/java/locale/LocaleInformation_ar_EG.java \
-gnu/java/locale/LocaleInformation_ar_IN.java \
-gnu/java/locale/LocaleInformation_ar_IQ.java \
-gnu/java/locale/LocaleInformation_ar_JO.java \
-gnu/java/locale/LocaleInformation_ar_KW.java \
-gnu/java/locale/LocaleInformation_ar_LB.java \
-gnu/java/locale/LocaleInformation_ar_LY.java \
-gnu/java/locale/LocaleInformation_ar_MA.java \
-gnu/java/locale/LocaleInformation_ar_OM.java \
-gnu/java/locale/LocaleInformation_ar_QA.java \
-gnu/java/locale/LocaleInformation_ar_SD.java \
-gnu/java/locale/LocaleInformation_ar_SY.java \
-gnu/java/locale/LocaleInformation_ar_TN.java \
-gnu/java/locale/LocaleInformation_ar_YE.java \
-gnu/java/locale/LocaleInformation_be_BY.java \
-gnu/java/locale/LocaleInformation_bn_IN.java \
-gnu/java/locale/LocaleInformation_br_FR.java \
-gnu/java/locale/LocaleInformation_bs_BA.java \
-gnu/java/locale/LocaleInformation_ca_ES.java \
-gnu/java/locale/LocaleInformation_cs_CZ.java \
-gnu/java/locale/LocaleInformation_cy_GB.java \
-gnu/java/locale/LocaleInformation_da_DK.java \
-gnu/java/locale/LocaleInformation_de.java \
-gnu/java/locale/LocaleInformation_de_AT.java \
-gnu/java/locale/LocaleInformation_de_BE.java \
-gnu/java/locale/LocaleInformation_de_CH.java \
-gnu/java/locale/LocaleInformation_de_DE.java \
-gnu/java/locale/LocaleInformation_de_LU.java \
-gnu/java/locale/LocaleInformation_el_GR.java \
-gnu/java/locale/LocaleInformation_en.java \
-gnu/java/locale/LocaleInformation_en_AU.java \
-gnu/java/locale/LocaleInformation_en_BW.java \
-gnu/java/locale/LocaleInformation_en_CA.java \
-gnu/java/locale/LocaleInformation_en_DK.java \
-gnu/java/locale/LocaleInformation_en_GB.java \
-gnu/java/locale/LocaleInformation_en_HK.java \
-gnu/java/locale/LocaleInformation_en_IE.java \
-gnu/java/locale/LocaleInformation_en_IN.java \
-gnu/java/locale/LocaleInformation_en_NZ.java \
-gnu/java/locale/LocaleInformation_en_PH.java \
-gnu/java/locale/LocaleInformation_en_SG.java \
-gnu/java/locale/LocaleInformation_en_US.java \
-gnu/java/locale/LocaleInformation_en_ZA.java \
-gnu/java/locale/LocaleInformation_en_ZW.java \
-gnu/java/locale/LocaleInformation_es_AR.java \
-gnu/java/locale/LocaleInformation_es_BO.java \
-gnu/java/locale/LocaleInformation_es_CL.java \
-gnu/java/locale/LocaleInformation_es_CO.java \
-gnu/java/locale/LocaleInformation_es_CR.java \
-gnu/java/locale/LocaleInformation_es_DO.java \
-gnu/java/locale/LocaleInformation_es_EC.java \
-gnu/java/locale/LocaleInformation_es_ES.java \
-gnu/java/locale/LocaleInformation_es_GT.java \
-gnu/java/locale/LocaleInformation_es_HN.java \
-gnu/java/locale/LocaleInformation_es_MX.java \
-gnu/java/locale/LocaleInformation_es_NI.java \
-gnu/java/locale/LocaleInformation_es_PA.java \
-gnu/java/locale/LocaleInformation_es_PE.java \
-gnu/java/locale/LocaleInformation_es_PR.java \
-gnu/java/locale/LocaleInformation_es_PY.java \
-gnu/java/locale/LocaleInformation_es_SV.java \
-gnu/java/locale/LocaleInformation_es_US.java \
-gnu/java/locale/LocaleInformation_es_UY.java \
-gnu/java/locale/LocaleInformation_es_VE.java \
-gnu/java/locale/LocaleInformation_et_EE.java \
-gnu/java/locale/LocaleInformation_eu_ES.java \
-gnu/java/locale/LocaleInformation_fa_IR.java \
-gnu/java/locale/LocaleInformation_fi_FI.java \
-gnu/java/locale/LocaleInformation_fo_FO.java \
-gnu/java/locale/LocaleInformation_fr_BE.java \
-gnu/java/locale/LocaleInformation_fr_CA.java \
-gnu/java/locale/LocaleInformation_fr_CH.java \
-gnu/java/locale/LocaleInformation_fr_FR.java \
-gnu/java/locale/LocaleInformation_fr_LU.java \
-gnu/java/locale/LocaleInformation_ga_IE.java \
-gnu/java/locale/LocaleInformation_gd_GB.java \
-gnu/java/locale/LocaleInformation_gl_ES.java \
-gnu/java/locale/LocaleInformation_gv_GB.java \
-gnu/java/locale/LocaleInformation_he_IL.java \
-gnu/java/locale/LocaleInformation_hi_IN.java \
-gnu/java/locale/LocaleInformation_hr_HR.java \
-gnu/java/locale/LocaleInformation_hu_HU.java \
-gnu/java/locale/LocaleInformation_id_ID.java \
-gnu/java/locale/LocaleInformation_it_CH.java \
-gnu/java/locale/LocaleInformation_it_IT.java \
-gnu/java/locale/LocaleInformation_iw_IL.java \
-gnu/java/locale/LocaleInformation_ja_JP.java \
-gnu/java/locale/LocaleInformation_ka_GE.java \
-gnu/java/locale/LocaleInformation_kl_GL.java \
-gnu/java/locale/LocaleInformation_ko_KR.java \
-gnu/java/locale/LocaleInformation_kw_GB.java \
-gnu/java/locale/LocaleInformation_lt_LT.java \
-gnu/java/locale/LocaleInformation_lv_LV.java \
-gnu/java/locale/LocaleInformation_mi_NZ.java \
-gnu/java/locale/LocaleInformation_mk_MK.java \
-gnu/java/locale/LocaleInformation_mr_IN.java \
-gnu/java/locale/LocaleInformation_mt_MT.java \
-gnu/java/locale/LocaleInformation_nl.java \
-gnu/java/locale/LocaleInformation_nl_BE.java \
-gnu/java/locale/LocaleInformation_nl_NL.java \
-gnu/java/locale/LocaleInformation_nn_NO.java \
-gnu/java/locale/LocaleInformation_no_NO.java \
-gnu/java/locale/LocaleInformation_oc_FR.java \
-gnu/java/locale/LocaleInformation_pl_PL.java \
-gnu/java/locale/LocaleInformation_pt_BR.java \
-gnu/java/locale/LocaleInformation_pt_PT.java \
-gnu/java/locale/LocaleInformation_ro_RO.java \
-gnu/java/locale/LocaleInformation_ru_RU.java \
-gnu/java/locale/LocaleInformation_ru_UA.java \
-gnu/java/locale/LocaleInformation_se_NO.java \
-gnu/java/locale/LocaleInformation_sk_SK.java \
-gnu/java/locale/LocaleInformation_sl_SI.java \
-gnu/java/locale/LocaleInformation_sq_AL.java \
-gnu/java/locale/LocaleInformation_sr_YU.java \
-gnu/java/locale/LocaleInformation_sv_FI.java \
-gnu/java/locale/LocaleInformation_sv_SE.java \
-gnu/java/locale/LocaleInformation_ta_IN.java \
-gnu/java/locale/LocaleInformation_te_IN.java \
-gnu/java/locale/LocaleInformation_tg_TJ.java \
-gnu/java/locale/LocaleInformation_tl_PH.java \
-gnu/java/locale/LocaleInformation_tr_TR.java \
-gnu/java/locale/LocaleInformation_uk_UA.java \
-gnu/java/locale/LocaleInformation_ur_PK.java \
-gnu/java/locale/LocaleInformation_uz_UZ.java \
-gnu/java/locale/LocaleInformation_vi_VN.java \
-gnu/java/locale/LocaleInformation_yi_US.java \
-gnu/java/locale/LocaleInformation_zh_CN.java \
-gnu/java/locale/LocaleInformation_zh_HK.java \
-gnu/java/locale/LocaleInformation_zh_SG.java \
-gnu/java/locale/LocaleInformation_zh_TW.java
+classpath/gnu/java/locale/LocaleHelper.java
gnu_java_locale_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_locale_source_files)))
gnu_java_math_source_files = \
@@ -4916,9 +4777,9 @@ classpath/java/text/CollationElementIterator.java \
classpath/java/text/CollationKey.java \
java/text/Collator.java \
classpath/java/text/DateFormat.java \
-java/text/DateFormatSymbols.java \
+classpath/java/text/DateFormatSymbols.java \
classpath/java/text/DecimalFormat.java \
-java/text/DecimalFormatSymbols.java \
+classpath/java/text/DecimalFormatSymbols.java \
classpath/java/text/FieldPosition.java \
classpath/java/text/Format.java \
classpath/java/text/MessageFormat.java \
@@ -4950,12 +4811,12 @@ classpath/external/jsr166/java/util/ArrayDeque.java \
classpath/java/util/ArrayList.java \
classpath/java/util/Arrays.java \
classpath/java/util/BitSet.java \
-java/util/Calendar.java \
+classpath/java/util/Calendar.java \
classpath/java/util/Collection.java \
classpath/java/util/Collections.java \
classpath/java/util/Comparator.java \
classpath/java/util/ConcurrentModificationException.java \
-java/util/Currency.java \
+classpath/java/util/Currency.java \
classpath/java/util/Date.java \
classpath/external/jsr166/java/util/Deque.java \
classpath/java/util/Dictionary.java \
@@ -7897,6 +7758,276 @@ property_files = \
classpath/resource/gnu/classpath/tools/tnameserv/messages.properties \
classpath/resource/gnu/java/awt/peer/gtk/font.properties \
classpath/resource/gnu/java/awt/peer/x/fonts.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa_DJ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa_ER_SAAHO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_af.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_af_ZA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_am.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_am_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_DZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_JO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_LB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_MA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_QA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_SA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_SY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_TN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_YE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_as.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_as_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_az.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_az_Cyrl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_be.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_be_BY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bg.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bg_BG.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bn_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bs.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_byn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_byn_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ca.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ca_ES.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_cs.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_cs_CZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_cy.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_cy_GB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_da.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_da_DK.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_AT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_BE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_CH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_DE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_LI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_LU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_dv.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_dv_MV.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_dz.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_dz_BT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_el.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_el_CY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_el_GR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_AS.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_AU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_BE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_BW.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_BZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_CA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_GB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_GU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_HK.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_IE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_MH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_MP.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_MT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_NZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_PH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_PK.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_SG.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_UM.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_US.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_US_POSIX.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_VI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_ZA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_ZW.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_eo.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_AR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_BO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_CL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_CO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_CR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_DO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_EC.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_ES.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_GT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_HN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_MX.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_NI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_PA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_PE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_PR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_PY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_SV.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_US.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_UY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_VE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_et.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_et_EE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_eu.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_eu_ES.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fa.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fa_AF.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fa_IR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fi.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fi_FI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fo.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fo_FO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr_BE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr_CA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr_CH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr_LU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ga.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ga_IE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gez.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gez_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gez_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gl_ES.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gu.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gu_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gv.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gv_GB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_haw.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_haw_US.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_he.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_he_IL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hi.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hi_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hu.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hu_HU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hy.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hy_AM.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hy_AM_REVISED.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_id.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_id_ID.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_is.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_is_IS.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_it.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_it_CH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_it_IT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_iu.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ja.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ja_JP.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ka.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kk.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kk_KZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kl_GL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_km.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_km_KH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kn_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ko.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ko_KR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kok.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kok_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kw.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kw_GB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ky.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lo.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lo_LA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lt.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lt_LT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lv.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lv_LV.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mk.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ml.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ml_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mr_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ms.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ms_BN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ms_MY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mt.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mt_MT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nb.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nb_NO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nl_BE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nl_NL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nn_NO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_om.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_om_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_om_KE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_or.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_or_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pa.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pa_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pl_PL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ps.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ps_AF.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pt.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pt_BR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pt_PT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ro.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ro_RO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ru.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ru_RU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ru_UA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sa.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sa_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sid.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sid_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sk.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sk_SK.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sl_SI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so_DJ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so_KE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so_SO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sq.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sq_AL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr_BA_Cyrl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr_BA_Latn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr_Cyrl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr_Latn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sv.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sv_FI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sv_SE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sw.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sw_KE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sw_TZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_syr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_syr_SY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ta.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ta_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_te.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_te_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_th.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_th_TH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ti.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ti_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ti_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tig.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tig_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tr_TR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tt.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tt_RU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uk.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uk_UA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ur.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uz.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uz_AF_Arab.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uz_Arab.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uz_Latn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_vi.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_wal.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_wal_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_CN_Hans.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_HK_Hant.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_Hant.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_MO_Hant.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_SG_Hans.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_TW_Hant.properties \
classpath/resource/gnu/java/util/regex/MessagesBundle.properties \
classpath/resource/gnu/java/util/regex/MessagesBundle_fr.properties \
classpath/resource/gnu/java/util/regex/MessagesBundle_it.properties \
diff --git a/libjava/classpath/ChangeLog b/libjava/classpath/ChangeLog
index 87ffc2344ec..c3d8f6395b6 100644
--- a/libjava/classpath/ChangeLog
+++ b/libjava/classpath/ChangeLog
@@ -1,3 +1,19 @@
+2008-03-10 Jim Meyering <meyering@redhat.com>
+
+ Don't leak upon failed realloc.
+ * native/jni/classpath/jcl.c (JCL_realloc): Upon failed realloc,
+ free the original buffer before throwing the exception.
+
+2008-03-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * doc/cp-hacking.texinfo: Fix spacing after periods.
+ * doc/cp-tools.texinfo: Likewise.
+ * doc/cp-vmintegration.texinfo: Likewise.
+
+ * doc/cp-hacking.texinfo: Fix some typos.
+ * doc/cp-tools.texinfo: Likewise.
+ * doc/cp-vmintegration.texinfo: Likewise.
+
2008-01-27 Bernhard Fischer <rep.dot.nop@gmail.com>
* java/util/SimpleTimeZone.java (SimpleTimeZone): Fix typo in comment.
diff --git a/libjava/classpath/ChangeLog.gcj b/libjava/classpath/ChangeLog.gcj
index ef35119e8ff..ffc357133b6 100644
--- a/libjava/classpath/ChangeLog.gcj
+++ b/libjava/classpath/ChangeLog.gcj
@@ -1,3 +1,9 @@
+2008-03-02 Jakub Jelinek <jakub@redhat.com>
+
+ * gnu/java/rmi/registry/RegistryImpl.java (version): Update
+ copyright notice dates.
+ * tools/gnu/classpath/tools/orbd/Main.java (run): Likewise.
+
2008-02-20 Matthias Klose <doko@ubuntu.com>
* tools/Makefile.am ($(TOOLS_ZIP)): Revert part of previous change,
diff --git a/libjava/classpath/doc/cp-hacking.texinfo b/libjava/classpath/doc/cp-hacking.texinfo
index f4beb7e799f..ee2b8f53cab 100644
--- a/libjava/classpath/doc/cp-hacking.texinfo
+++ b/libjava/classpath/doc/cp-hacking.texinfo
@@ -303,7 +303,7 @@ Classpath stories page}.
As with OS platform support, this priority list could change if a
volunteer comes forward to port, maintain, and test releases for a
-particular JVM. Since gcj is part of the GNU Compiler Collective it
+particular JVM@. Since gcj is part of the GNU Compiler Collective it
is one of the most important targets. But since it doesn't currently
work out of the box with GNU Classpath it is currently not the easiest
target. When hacking on GNU Classpath the easiest is to use
@@ -484,7 +484,7 @@ specify @option{--enable-qt-peer} and need the following library:
@table @b
@item Qt
@uref{http://www.trolltech.com/products/qt,Qt} version 4.0.1 or higher.
-The Qt library is a cros-platform graphics toolkit.
+The Qt library is a cross-platform graphics toolkit.
@end table
@@ -558,7 +558,7 @@ library headers:
@table @b
@item GConf
@uref{http://www.gnome.org/projects/gconf/,GConf} version 2.11.2
-(or higher). GConf is used for storing dektop and application
+(or higher). GConf is used for storing desktop and application
configuration settings in GNOME.
@end table
@@ -853,7 +853,7 @@ for ``^method_def'' is mostly gone already. Since it is customary for
almost everybody who writes java source code to put modifiers, return
value and method name on the same line, we do too.
-@c fixme Another rational for always indenting the method definition is that itmakes it a bit easier to distinguish methods in inner and anonymousclasses from code in their enclosing context. NEED EXAMPLE.
+@c fixme Another rational for always indenting the method definition is that it makes it a bit easier to distinguish methods in inner and anonymous classes from code in their enclosing context. NEED EXAMPLE.
@item
Implements and extends on separate lines, throws too. Indent extends,
@@ -952,7 +952,7 @@ use @code{+Predundant-modifiers} on the command line.
@item
Modifiers should be listed in the standard order recommended by the
-JLS. Jikes will warn for this when given @code{+Pmodifier-order}.
+JLS@. Jikes will warn for this when given @code{+Pmodifier-order}.
@item
Because the output of different compilers differs, we have
@@ -1002,7 +1002,7 @@ words which have been added in later versions. Notable examples are
@code{assert} (added in 1.4) and @code{enum} (added in 1.5). Jikes will warn
of the use of the word @code{enum}, but, as it doesn't yet support the 1.5
version of the language, it will still allow this usage through. A
-compiler which supports 1.5 (e.g. the Eclipse compiler, ecj) will simply
+compiler which supports 1.5 (e.g.@: the Eclipse compiler, ecj) will simply
fail to compile the offending source code.
@c fixme Describe Anonymous classes (example).
@@ -1073,7 +1073,7 @@ You can find instructions on getting a CVS checkout for classpath at
You don't have to get CVS commit write access to contribute, but it is
sometimes more convenient to be able to add your changes directly to
-the project CVS. Please contact the GNU Classpath savannah admins to
+the project CVS@. Please contact the GNU Classpath savannah admins to
arrange CVS access if you would like to have it.
Make sure to be subscribed to the commit-classpath mailinglist while
@@ -1252,7 +1252,7 @@ Just as with the normal code style guide, don't make lines longer then
@item
Just as with comments in the code. The ChangeLog entry should be a
-full sentence, starting with a captital and ending with a period.
+full sentence, starting with a capital and ending with a period.
@item
Be precise in what changed, not the effect of the change (which should
@@ -1742,7 +1742,7 @@ Unicode characters and vice versa.
In Classpath, @code{InputStreamReader} and @code{OutputStreamWriter}
rely on an internal class called @code{gnu.java.io.EncodingManager} to load
-translaters that perform the actual conversion. There are two types of
+translators that perform the actual conversion. There are two types of
converters, encoders and decoders. Encoders are subclasses of
@code{gnu.java.io.encoder.Encoder}. This type of converter takes a Java
(Unicode) character stream or buffer and converts it to bytes using
@@ -1974,7 +1974,7 @@ that this functional area is supported.
@item weekdays - A @code{String} array of weekday names.
@item shortWeekdays - A @code{String} array of abbreviated weekday names.
@item ampms - A @code{String} array containing AM/PM names.
-@item eras - A @code{String} array containing era (ie, BC/AD) names.
+@item eras - A @code{String} array containing era (i.e., BC/AD) names.
@item zoneStrings - An array of information about valid timezones for this
locale.
@item localPatternChars - A @code{String} defining date/time pattern symbols.
diff --git a/libjava/classpath/doc/cp-tools.texinfo b/libjava/classpath/doc/cp-tools.texinfo
index f961bfd87e8..9e370c09296 100644
--- a/libjava/classpath/doc/cp-tools.texinfo
+++ b/libjava/classpath/doc/cp-tools.texinfo
@@ -338,7 +338,7 @@ jarsigner @option{-verify} [@var{OPTION}]@dots{} @var{FILE}
@c man begin DESCRIPTION gjarsigner
When the first form is used, the tool signs the designated JAR file. The second form, on the other hand, is used to verify a previously signed JAR file.
-@var{FILE} is the .JAR file to process; i.e. to sign if the first syntax form is used, or to verify if the second syntax form is used instead.
+@var{FILE} is the .JAR file to process; i.e., to sign if the first syntax form is used, or to verify if the second syntax form is used instead.
@var{ALIAS} must be a known @i{Alias} of a @i{Key Entry} in the designated @i{Key Store}. The private key material associated with this @i{Alias} is then used for signing the designated .JAR file.
@c man end
@@ -369,7 +369,7 @@ When present, the tool will include --which otherwise it does not-- the @code{.S
When present, the tool will include in the @code{.SF} generated file --which otherwise it does not-- a header containing a hash of the whole manifest file. When that header is included, the tool can quickly check, during verification, if the hash (in the header) matches or not the manifest file.
@item -provider PROVIDER_CLASS_NAME
-A fully qualified class name of a @i{Security Provider} to add to the current list of @i{Security Providers} already installed in the JVM in-use. If a provider class is specified with this option, and was successfully added to the runtime --i.e. it was not already installed-- then the tool will attempt to remove this @i{Security Provider} before exiting.
+A fully qualified class name of a @i{Security Provider} to add to the current list of @i{Security Providers} already installed in the JVM in-use. If a provider class is specified with this option, and was successfully added to the runtime --i.e.@: it was not already installed-- then the tool will attempt to remove this @i{Security Provider} before exiting.
@item -help
Prints a help text similar to this one.
@@ -390,7 +390,7 @@ The following options may be specified when using the tool for signing purposes.
@item -keystore @var{URL}
Use this option to specify the location of the key store to use. The default value is a file URL referencing the file named @file{.keystore} located in the path returned by the call to @code{java.lang.System#getProperty(String)} using @code{user.home} as argument.
-If a URL was specified, but was found to be malformed --e.g. missing protocol element-- the tool will attempt to use the URL value as a file-name (with absolute or relative path-name) of a key store --as if the protocol was @code{file:}.
+If a URL was specified, but was found to be malformed --e.g.@: missing protocol element-- the tool will attempt to use the URL value as a file-name (with absolute or relative path-name) of a key store --as if the protocol was @code{file:}.
@item -storetype @var{STORE_TYPE}
Use this option to specify the type of the key store to use. The default value, if this option is omitted, is that of the property @code{keystore.type} in the security properties file, which is obtained by invoking the static method call @code{getDefaultType()} in @code{java.security.KeyStore}.
@@ -404,12 +404,12 @@ Use this option to specify the password which the tool will use to unlock the @i
If this option is omitted, the tool will first attempt to unlock the @i{Key Entry} using the same password protecting the key store. If this fails, you will then be prompted to provide a password.
@item -sigfile @var{NAME}
-Use this option to designate a literal that will be used to construct file names for both the @code{.SF} and @code{.DSA} signature files. These files will be generated, by the tool, and placed in the @file{META-INF} directory of the signed JAR. Permissible characters for @var{NAME} must be in the range "a-zA-Z0-9_-". All characters will be converted to upper-case ones.
+Use this option to designate a literal that will be used to construct file names for both the @code{.SF} and @code{.DSA} signature files. These files will be generated, by the tool, and placed in the @file{META-INF} directory of the signed JAR@. Permissible characters for @var{NAME} must be in the range "a-zA-Z0-9_-". All characters will be converted to upper-case ones.
If this option is missing, the first eight characters of the @var{ALIAS} argument will be used. When this is the case, any character in @var{ALIAS} that is outside the permissible range of characters will be replaced by an underscore.
@item -signedjar @var{FILE}
-Use this option to specify the file name of the signed JAR. If this option is omitted, then the signed JAR will be named the same as @var{FILE}; i.e. the input JAR file will be replaced with the signed copy.
+Use this option to specify the file name of the signed JAR@. If this option is omitted, then the signed JAR will be named the same as @var{FILE}; i.e., the input JAR file will be replaced with the signed copy.
@end table
@c man end
@@ -449,7 +449,7 @@ keytool [@var{COMMAND}] @dots{}
@c man begin DESCRIPTION gkeytool
Cryptographic credentials, in a Java environment, are usually stored in a @i{Key Store}. The Java SDK specifies a @i{Key Store} as a persistent container of two types of objects: @i{Key Entries} and @i{Trusted Certificates}. The security tool @command{keytool} is a Java-based application for managing those types of objects.
-A @i{Key Entry} represents the private key part of a key-pair used in Public-Key Cryptography, and a signed X.509 certificate which authenticates the public key part for a known entity; i.e. the owner of the key-pair. The X.509 certificate itself contains the public key part of the key-pair.
+A @i{Key Entry} represents the private key part of a key-pair used in Public-Key Cryptography, and a signed X.509 certificate which authenticates the public key part for a known entity; i.e.@: the owner of the key-pair. The X.509 certificate itself contains the public key part of the key-pair.
A @i{Trusted Certificate} is a signed X.509 certificate issued by a trusted entity. The @i{Trust} in this context is relative to the User of the @command{keytool}. In other words, the existence of a @i{Trusted Certificate} in the @i{Key Store} processed by a @command{keytool} command implies that the User trusts the @i{Issuer} of that @i{Trusted Certificate} to also sign, and hence authenticates, other @i{Subjects} the tool may process.
@@ -596,11 +596,11 @@ Use this option to specify the password protecting the key store. If this option
@item -keystore @var{URL}
Use this option to specify the location of the key store to use. The default value is a file URL referencing the file named @file{.keystore} located in the path returned by the call to @code{java.lang.System#getProperty(String)} using @code{user.home} as argument.
-If a URL was specified, but was found to be malformed --e.g. missing protocol element-- the tool will attempt to use the URL value as a file-name (with absolute or relative path-name) of a key store --as if the protocol was @code{file:}.
+If a URL was specified, but was found to be malformed --e.g.@: missing protocol element-- the tool will attempt to use the URL value as a file-name (with absolute or relative path-name) of a key store --as if the protocol was @code{file:}.
@anchor{provider}
@item -provider @var{PROVIDER_CLASS_NAME}
-A fully qualified class name of a @i{Security Provider} to add to the current list of @i{Security Providers} already installed in the JVM in-use. If a provider class is specified with this option, and was successfully added to the runtime --i.e. it was not already installed-- then the tool will attempt to removed this @i{Security Provider} before exiting.
+A fully qualified class name of a @i{Security Provider} to add to the current list of @i{Security Providers} already installed in the JVM in-use. If a provider class is specified with this option, and was successfully added to the runtime --i.e.@: it was not already installed-- then the tool will attempt to removed this @i{Security Provider} before exiting.
@anchor{file}
@item -file @var{FILE}
@@ -624,17 +624,17 @@ A @i{Distinguished Name} (or DN) MUST be supplied with some of the @code{COMMAND
@ftable @var
@item CN
-The Common Name; e.g. @kbd{host.domain.com}
+The Common Name; e.g.@: @kbd{host.domain.com}
@item OU
-The Organizational Unit; e.g. @kbd{IT Department}
+The Organizational Unit; e.g.@: @kbd{IT Department}
@item O
-The Organization Name; e.g. @kbd{The Sample Company}
+The Organization Name; e.g.@: @kbd{The Sample Company}
@item L
-The Locality Name; e.g. @kbd{Sydney}
+The Locality Name; e.g.@: @kbd{Sydney}
@item ST
-The State Name; e.g. @kbd{New South Wales}
+The State Name; e.g.@: @kbd{New South Wales}
@item C
-The 2-letter Country identifier; e.g. @kbd{AU}
+The 2-letter Country identifier; e.g.@: @kbd{AU}
@end ftable
When specified with a @code{-dname} option, each pair of component/value will be separated from the other with a comma. Each component and value pair MUST be separated by an equal sign. For example, the following is a valid DN value:@*
@@ -683,10 +683,10 @@ For more details @pxref{keyalg,, ALGORITHM}.
For more details @pxref{keysize,, KEY_SIZE}.
@item -sigalg @var{ALGORITHM}
-The canonical name of the digital signature algorithm to use for signing certificates. If this option is omitted, a default value will be chosen based on the type of the key-pair; i.e. the algorithm that ends up being used by the -keyalg option. If the key-pair generation algorithm is @code{DSA}, the value for the signature algorithm will be @code{SHA1withDSA}. If on the other hand the key-pair generation algorithm is @code{RSA}, then the tool will use @code{MD5withRSA} as the signature algorithm.
+The canonical name of the digital signature algorithm to use for signing certificates. If this option is omitted, a default value will be chosen based on the type of the key-pair; i.e., the algorithm that ends up being used by the -keyalg option. If the key-pair generation algorithm is @code{DSA}, the value for the signature algorithm will be @code{SHA1withDSA}. If on the other hand the key-pair generation algorithm is @code{RSA}, then the tool will use @code{MD5withRSA} as the signature algorithm.
@item -dname @var{NAME}
-This a mandatory value for the command. If no value is specified --i.e. the @option{-dname} option is omitted-- the tool will prompt you to enter a @i{Distinguished Name} to use as both the @i{Owner} and @i{Issuer} of the generated self-signed certificate.
+This a mandatory value for the command. If no value is specified --i.e.@: the @option{-dname} option is omitted-- the tool will prompt you to enter a @i{Distinguished Name} to use as both the @i{Owner} and @i{Issuer} of the generated self-signed certificate.
For more details @pxref{dn,, X.500 DISTINGUISHED NAME}.
@@ -909,7 +909,7 @@ FC...IVwNVOfQLRX+O5kAhQ/a4RTZme2L8PnpvgRwrf7Eg8D6w==
-----END NEW CERTIFICATE REQUEST-----
@end example
-@b{IMPORTANT}: Some documentation (e.g. RSA examples) claims that the @code{Attributes} field, in the CSR is @code{OPTIONAL} while RFC-2986 implies the opposite. This implementation considers this field, by default, as @code{OPTIONAL}, unless the option @option{-attributes} is specified on the command line.
+@b{IMPORTANT}: Some documentation (e.g.@: RSA examples) claims that the @code{Attributes} field, in the CSR is @code{OPTIONAL} while RFC-2986 implies the opposite. This implementation considers this field, by default, as @code{OPTIONAL}, unless the option @option{-attributes} is specified on the command line.
@table @gcctabopt
@item -alias @var{ALIAS}
@@ -1792,7 +1792,7 @@ java(1), @dots{}
@comment node-name, next, previous, up
@chapter I18N Issues
-Some tools --@pxref{Security Tools}-- allow using other than the English language when prompting the User for input, and outputing messages. This chapter describes the elements used to offer this support and how they can be adapted for use with specific languages.
+Some tools --@pxref{Security Tools}-- allow using other than the English language when prompting the User for input, and outputting messages. This chapter describes the elements used to offer this support and how they can be adapted for use with specific languages.
@menu
* Language Resources:: Where resources are located
@@ -1807,7 +1807,7 @@ Some tools --@pxref{Security Tools}-- allow using other than the English languag
The Tools use Java @code{ResourceBundle}s to store messages, and message templates they use at runtime to generate the message text itself, depending on the locale in use at the time.
-The @i{Resource Bundles} these tools use are essentially Java @i{Properties} files consisting of a set of @i{Name/Value} pairs. The @i{Name} is the @i{Propery Name} and the @i{Value} is a substitution string that is used when the code references the associated @i{Name}. For example the following is a line in a @i{Resource Bundle} used by the @code{keytool} Tool:
+The @i{Resource Bundles} these tools use are essentially Java @i{Properties} files consisting of a set of @i{Name/Value} pairs. The @i{Name} is the @i{Property Name} and the @i{Value} is a substitution string that is used when the code references the associated @i{Name}. For example the following is a line in a @i{Resource Bundle} used by the @code{keytool} Tool:
@example
Command.23=A correct key password MUST be provided
@@ -1847,7 +1847,7 @@ The collection of @i{Resource Bundles} in a location act as an inverted tree wit
In the above example, bundle #1 will act as the parent of bundle #2, which in turn will act as the parent for bundle #3. This ordering is used by the Java runtime to choose which file to load based on the set Locale. For example if the Locale is @code{fr_CH}, @code{messages_fr.properties} will be used because (a) @code{messages_fr_CH.properties} does not exist, but (b) @code{messages_fr.properties} is the parent for the required bundle, and it exists. As another example, suppose the Locale was set to @code{en_AU}; then the tool will end up using @code{messages.properties} because (a) @code{messages_en_AU.properties} does not exist, (b) @code{messages_en.properties} which is the parent for the required bundle does not exist, but (c) @code{messages.properties} exists and is the root of the hierarchy.
-You can see from the examples above that @file{messages.properties} is the safety net that the Java runtime falls back to when failing to find a specific bunlde and its parent(s). This file is always provided with the Tool. In time, more localized versions will be included to cater for other languages.
+You can see from the examples above that @file{messages.properties} is the safety net that the Java runtime falls back to when failing to find a specific bundle and its parent(s). This file is always provided with the Tool. In time, more localized versions will be included to cater for other languages.
In the meantime, if you are willing to contribute localized versions of these resources, grab the @file{messages.properties} for a specific tool; translate it; save it with the appropriate language and region suffix and mail it to @code{classpath@@gnu.org}.
diff --git a/libjava/classpath/doc/cp-vmintegration.texinfo b/libjava/classpath/doc/cp-vmintegration.texinfo
index 4d54e30f44c..8381828de6d 100644
--- a/libjava/classpath/doc/cp-vmintegration.texinfo
+++ b/libjava/classpath/doc/cp-vmintegration.texinfo
@@ -281,7 +281,7 @@ which is responsible for the specified class.
@item @code{forName(String, boolean, ClassLoader)} -- The VM should create a
@code{Class} instance corresponding to the named class. As noted in
@ref{VM Hooks}, the internal content of the instance is the
-responsibility of the VM. The supplied class loader is recorded as that
+responsibility of the VM@. The supplied class loader is recorded as that
which loaded the class, and the boolean specifies whether or not to
run the class initializer.
@item @code{isArray(Class)} -- Another property test, corresponding to a
@@ -393,7 +393,7 @@ supplied class.
loader.
@item @code{getPrimitiveClass(char)} -- The VM should provide a @code{Class}
implementation for one of the primitive classes. The supplied character
-matches the JNI code for the primitive class e.g. `B' for byte and
+matches the JNI code for the primitive class e.g.@: `B' for byte and
`Z' for boolean.
@end itemize
@item Java Methods
@@ -419,7 +419,7 @@ The method should return a map converting package names to boolean status
values. The stub implementation provides an empty map.
@item @code{classAssertionStatus()} -- Same as the last, but for classes.
@item @code{getSystemClassLoader()} -- The default calls @code{ClassLoader}
-to create a new auxillary class loader with a system and extension class
+to create a new auxiliary class loader with a system and extension class
loader. The VM may wish to replace it if it wishes to supply its own custom
system class loader.
@end itemize
@@ -485,7 +485,7 @@ making a VM implementation optional.
@subsection @code{java.lang.VMThrowable}
@code{VMThrowable} is used to hold the VM state of a throwable, created either
when a @code{Throwable} is created or the @code{fillInStackTrace()} method is
-called (i.e. when the actual stack trace is needed, as a lot of exceptions are
+called (i.e., when the actual stack trace is needed, as a lot of exceptions are
never actually used). The actual class has two @code{native} methods,
one (@code{fillInStackTrace()}) being a method of the class used to obtain
instances, and the other an instance method, @code{getStackTrace()}.
@@ -633,7 +633,7 @@ running the finalization process at exit.
returning an integer which is non-zero for success. Nothing happens if the
file has already been loaded.
@item @code{mapLibraryName(String)} -- The VM should map the system-independent
-library name supplied to the platform-dependent equivalent (e.g. a @code{.so}
+library name supplied to the platform-dependent equivalent (e.g.@: a @code{.so}
or @code{.dll} file)
@end itemize
@@ -701,7 +701,7 @@ throw an appropriate exception.
@item @code{suspend()} -- The thread should be suspended until resumed.
@item @code{resume()} -- The thread should be resumed from its suspended state.
This pair of methods are deprecated, due to the possibility of a deadlock
-occuring when a thread with locks is suspended.
+occurring when a thread with locks is suspended.
@item @code{nativeSetPriority(int)} -- Called by @code{setPriority}
to allow the setting to flow down to the native thread.
@item @code{nativeStop(Throwable)} -- The VM should stop the thread abnormally
@@ -736,7 +736,7 @@ The @code{VMMath} class provides a series of native methods
for some of the mathematical functions present in @code{java.lang.Math}.
Classpath provides a default implementation of these which maps the
functions to those provided by @code{fdlibm}. VM implementors are welcome
-to replace this with more efficent implementations, as long as the accuracy
+to replace this with more efficient implementations, as long as the accuracy
contract of these methods, specified in @code{java.lang.Math}, is maintained.
@itemize @bullet
@@ -962,7 +962,7 @@ a directory.
@itemize @bullet
@item @code{canWriteDirectory(File)} -- Checks that the directory can be
written to, by trying to create a temporary file in it.
-@item @code{listRoots()} -- Returns the root of a GNU filesystem i.e. `/'
+@item @code{listRoots()} -- Returns the root of a GNU filesystem, i.e.@: `/'
in an array.
@item @code{isHidden(String)} -- Checks whether the file starts with `.',
which is how files are hidden on UNIX-style systems.
@@ -1247,7 +1247,7 @@ by a specific class loader.
@end itemize
Instrumentation allows to modify the bytecode of a class before it gets read
-by the VM. In GNU Classpath, the @code{ClassLoader.defineClass} method calls
+by the VM@. In GNU Classpath, the @code{ClassLoader.defineClass} method calls
the @code{VMClassLoader.defineClassWithTransformers} method which first checks
if @code{VMClassLoader.instrumenter} is @code{null}. If it's the case, it
directly calls @code{VMClassLoader.defineClass}. If it's not the case, the
@@ -1257,11 +1257,11 @@ object and returns a new bytecode array. Then, it calls the
@code{VMClassLoader.defineClass} method with this new bytecode array.
The second use of instrumentation is to redefine a class after it has been
-loaded by the VM. This is done in the Java application by calling the
+loaded by the VM@. This is done in the Java application by calling the
@code{Instrumentation.redefineClasses} method of the standard interface on
a @code{Instrumentation} object. The @code{InstrumentationImpl.redefineClasses}
method calls the @code{VMInstrumentationImpl.redefineClasses} native method
-which must be implemented by the VM. The implementation should call the
+which must be implemented by the VM@. The implementation should call the
@code{InstrumentationImpl.callTransformers} method.
@node gnu.java.lang.management, java.lang.management, gnu.java.lang, Classpath Hooks
@@ -1304,7 +1304,7 @@ arguments, excluding those that are directed at the
this to be a native method.
@item @code{(getName())} -- The VM developer should choose
an appropriate name for the virtual machine. This name can
-be instance-specific e.g. it can include things like the
+be instance-specific e.g.@: it can include things like the
process identifier or host name of the machine, which only
apply to the current running instance. Thus, the intention is
that this name refers to the entity that the other information
@@ -1540,7 +1540,7 @@ interface, and is supported by VM functionality in the form of
@code{gnu.java.lang.management.VMMemoryPoolMXBeanImpl}. Providing
this interface requires implementing a number of methods for each supported
pool. These return statistics on memory usage, and, optionally, allows
-monitoring of when memory usage exceedes a preset threshold.
+monitoring of when memory usage exceeds a preset threshold.
Optional support is determined by the following properties:
@@ -1611,7 +1611,7 @@ memory pools that the manager maintains. A default implementation
which scans the results of @code{getMemoryManagerNames()} for each
pool is provided.
@item @code{(isValid(String))} -- Returns true if the specified
-manager is still valid i.e. it is still in use by the virtual machine.
+manager is still valid, i.e., it is still in use by the virtual machine.
@end itemize
@node gnu.java.lang.management.VMGarbageCollectorMXBeanImpl,,gnu.java.lang.management.VMMemoryManagerMXBeanImpl,gnu.java.lang.management
@@ -1739,7 +1739,7 @@ The following issues are of note;
The GNU Classpath implementation of @code{java.lang.Class} provides an
object for storing the internal state of the class maintained by the VM.
This is the only known place where this matters. The class is
-constructed with this data by the VM. Some VMs do not create the
+constructed with this data by the VM@. Some VMs do not create the
@code{Class} object at the point where the class is defined; instead,
they wait until a @code{Class} object is actually used.
@@ -1913,14 +1913,14 @@ mechanism.
@i{Green threads 1}: Green threads are threads scheduled by the VM,
typically by switching swapping registers. In early VMs green threads
were seen as advantageous as they didn't require the operating system
-to resechedule, save and swap all of a threads registers. The green
+to reschedule, save and swap all of a threads registers. The green
thread 1 model switches thread on an externally created event, such as
a timer interrupt. An example of a VM using this approach is Kaffe
configured with its jthreads model.
@item
@i{Green threads 2}: The essential difference with this model is to
not switch threads on an event, but at fixed points in the code being
-executed by the VM. Points chosen could be backward branches (loops)
+executed by the VM@. Points chosen could be backward branches (loops)
or method calls. This approach can be advantageous to nonconservative
garbage collectors, as non-running threads would be at known points
and can have fixed register maps. It can also reduce the number of
@@ -1937,7 +1937,7 @@ model.
An example of the problem of mixing threading models is:
@itemize @bullet
@item
-A Java thread calls a native method. The native method aquires a lock.
+A Java thread calls a native method. The native method acquires a lock.
@item
The native method calls back into the VM.
@item
@@ -1946,7 +1946,7 @@ An event triggers the VM to reschedule the currently running thread.
A new VM thread, executing on the same underlying native thread, calls
a native method.
@item
-The native method tries to aquire the lock already aquired earlier. As
+The native method tries to acquire the lock already acquired earlier. As
the lock is busy the thread waits and allows the operating system to
reschedule native threads.
@item
@@ -1976,7 +1976,7 @@ and swap Java threads off of that native thread. The VM can't,
however, swap two blocked native threads that are potentially
deadlocking each other on a lock. The lock will be associated with the
native thread. To prevent this from happening the VM must hijack
-functions that operate on locks. This is done by redifining the lock
+functions that operate on locks. This is done by redefining the lock
functions inside the VM and configuring the linker so that it uses the
VMs symbol in preference to that of the external thread support
library. The VM's lock function can then reschedule Java threads if it
@@ -1989,7 +1989,7 @@ must wait for the lock.
As of GNU Classpath 0.15 a system property named @code{gnu.classpath.boot.library.path}
can be set by the VM to specify the directories which contain GNU Classpath's native
libraries. Usually this value is given at configuration time and is then hardcoded
-in the VM. However for development purposes it is handy to switch to another installation
+in the VM@. However for development purposes it is handy to switch to another installation
by overriding the properties' value on the command line.
A VM that does not support this feature can simply ignore the property.
diff --git a/libjava/classpath/gnu/java/rmi/registry/RegistryImpl.java b/libjava/classpath/gnu/java/rmi/registry/RegistryImpl.java
index 7dcca612ab2..ec076d0b774 100644
--- a/libjava/classpath/gnu/java/rmi/registry/RegistryImpl.java
+++ b/libjava/classpath/gnu/java/rmi/registry/RegistryImpl.java
@@ -1,5 +1,5 @@
/* RegistryImpl.java --
- Copyright (c) 1996, 1997, 1998, 1999, 2002, 2005
+ Copyright (c) 1996, 1997, 1998, 1999, 2002, 2005, 2008
Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -111,7 +111,7 @@ public static void version() {
+ System.getProperty("java.vm.name")
+ ") "
+ System.getProperty("java.vm.version"));
- System.out.println("Copyright 2006 Free Software Foundation, Inc.");
+ System.out.println("Copyright 2008 Free Software Foundation, Inc.");
System.out.println("This is free software; see the source for copying conditions. There is NO");
System.out.println("warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.");
System.exit(0);
diff --git a/libjava/classpath/lib/gnu/gcj/convert/Convert.class b/libjava/classpath/lib/gnu/gcj/convert/Convert.class
index 898b4bb29ca..89dc4556c23 100644
--- a/libjava/classpath/lib/gnu/gcj/convert/Convert.class
+++ b/libjava/classpath/lib/gnu/gcj/convert/Convert.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/gcj/tools/gcj_dbtool/Main.class b/libjava/classpath/lib/gnu/gcj/tools/gcj_dbtool/Main.class
index 1ff54ad89ef..10f6cb36a47 100644
--- a/libjava/classpath/lib/gnu/gcj/tools/gcj_dbtool/Main.class
+++ b/libjava/classpath/lib/gnu/gcj/tools/gcj_dbtool/Main.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/lang/MainThread.class b/libjava/classpath/lib/gnu/java/lang/MainThread.class
index 3b43fb50912..84a66936421 100644
--- a/libjava/classpath/lib/gnu/java/lang/MainThread.class
+++ b/libjava/classpath/lib/gnu/java/lang/MainThread.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/Calendar.class b/libjava/classpath/lib/gnu/java/locale/Calendar.class
deleted file mode 100644
index b7b8240e7de..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/Calendar.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/Calendar_de.class b/libjava/classpath/lib/gnu/java/locale/Calendar_de.class
deleted file mode 100644
index 4d8c8cd22fe..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/Calendar_de.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/Calendar_en.class b/libjava/classpath/lib/gnu/java/locale/Calendar_en.class
deleted file mode 100644
index a4bd37bd58c..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/Calendar_en.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/Calendar_nl.class b/libjava/classpath/lib/gnu/java/locale/Calendar_nl.class
deleted file mode 100644
index 12a29098390..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/Calendar_nl.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleData.class b/libjava/classpath/lib/gnu/java/locale/LocaleData.class
index 338cc8fc352..f2772bbdd13 100644
--- a/libjava/classpath/lib/gnu/java/locale/LocaleData.class
+++ b/libjava/classpath/lib/gnu/java/locale/LocaleData.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation.class
deleted file mode 100644
index c9f1dec7e33..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_af_ZA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_af_ZA.class
deleted file mode 100644
index 729064cecc5..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_af_ZA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_AE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_AE.class
deleted file mode 100644
index e3c7fc7ce71..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_AE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_BH.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_BH.class
deleted file mode 100644
index b141f210444..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_BH.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_DZ.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_DZ.class
deleted file mode 100644
index fd6305f21b0..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_DZ.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_EG.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_EG.class
deleted file mode 100644
index f0cbb10854d..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_EG.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_IN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_IN.class
deleted file mode 100644
index b2330f00c80..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_IN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_IQ.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_IQ.class
deleted file mode 100644
index e95055012ad..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_IQ.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_JO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_JO.class
deleted file mode 100644
index 716e7c3d1ed..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_JO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_KW.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_KW.class
deleted file mode 100644
index b24ade7af17..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_KW.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_LB.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_LB.class
deleted file mode 100644
index a64387beb94..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_LB.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_LY.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_LY.class
deleted file mode 100644
index 8707922160b..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_LY.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_MA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_MA.class
deleted file mode 100644
index 204f9ad7759..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_MA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_OM.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_OM.class
deleted file mode 100644
index 8f0e338b878..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_OM.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_QA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_QA.class
deleted file mode 100644
index d9419f3e396..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_QA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_SD.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_SD.class
deleted file mode 100644
index fe2446b0012..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_SD.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_SY.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_SY.class
deleted file mode 100644
index f48749e819e..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_SY.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_TN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_TN.class
deleted file mode 100644
index 94d142985d9..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_TN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_YE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_YE.class
deleted file mode 100644
index 277a3317448..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ar_YE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_be_BY.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_be_BY.class
deleted file mode 100644
index 21f5f50c372..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_be_BY.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_bn_IN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_bn_IN.class
deleted file mode 100644
index f3ad3dff5f2..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_bn_IN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_br_FR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_br_FR.class
deleted file mode 100644
index 08a98b7d84d..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_br_FR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_bs_BA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_bs_BA.class
deleted file mode 100644
index 358c91182ec..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_bs_BA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ca_ES.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ca_ES.class
deleted file mode 100644
index a06e022c94d..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ca_ES.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_cs_CZ.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_cs_CZ.class
deleted file mode 100644
index 269b02094eb..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_cs_CZ.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_cy_GB.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_cy_GB.class
deleted file mode 100644
index 43f59539d40..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_cy_GB.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_da_DK.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_da_DK.class
deleted file mode 100644
index f8ab484deae..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_da_DK.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de.class
deleted file mode 100644
index 35e50631876..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_AT.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_AT.class
deleted file mode 100644
index b4183d5e4cf..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_AT.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_BE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_BE.class
deleted file mode 100644
index cdb4ed1df84..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_BE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_CH.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_CH.class
deleted file mode 100644
index 03e0f52d6aa..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_CH.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_DE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_DE.class
deleted file mode 100644
index a17a8d0d9ee..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_DE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_LU.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_LU.class
deleted file mode 100644
index 01d8cefca45..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_de_LU.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_el_GR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_el_GR.class
deleted file mode 100644
index 6801e4fa1ff..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_el_GR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en.class
deleted file mode 100644
index 9b0737af2f1..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_AU.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_AU.class
deleted file mode 100644
index b4b4589a967..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_AU.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_BW.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_BW.class
deleted file mode 100644
index b335913c5b2..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_BW.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_CA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_CA.class
deleted file mode 100644
index fd3662fac6a..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_CA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_DK.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_DK.class
deleted file mode 100644
index b21a64e2ed0..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_DK.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_GB.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_GB.class
deleted file mode 100644
index 726bc09d55e..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_GB.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_HK.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_HK.class
deleted file mode 100644
index d93fa78ddf6..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_HK.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_IE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_IE.class
deleted file mode 100644
index 29f94926666..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_IE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_IN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_IN.class
deleted file mode 100644
index 8b481d3a790..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_IN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_NZ.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_NZ.class
deleted file mode 100644
index 79da6e7893f..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_NZ.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_PH.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_PH.class
deleted file mode 100644
index 34b0b6de6b3..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_PH.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_SG.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_SG.class
deleted file mode 100644
index bcac524b291..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_SG.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_US.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_US.class
deleted file mode 100644
index 86ac887c5ba..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_US.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_ZA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_ZA.class
deleted file mode 100644
index ad39c7410b6..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_ZA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_ZW.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_ZW.class
deleted file mode 100644
index c091717dde6..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_en_ZW.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_AR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_AR.class
deleted file mode 100644
index 89d7016db36..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_AR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_BO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_BO.class
deleted file mode 100644
index 9fc3b4f1ea4..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_BO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CL.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CL.class
deleted file mode 100644
index 2b26bbb4751..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CL.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CO.class
deleted file mode 100644
index a8bdc90aeb7..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CR.class
deleted file mode 100644
index d04fdc6af1e..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_CR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_DO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_DO.class
deleted file mode 100644
index ab3b866e5b3..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_DO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_EC.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_EC.class
deleted file mode 100644
index e9bfefb3cd5..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_EC.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_ES.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_ES.class
deleted file mode 100644
index d6949ff6b02..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_ES.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_GT.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_GT.class
deleted file mode 100644
index d973bd51292..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_GT.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_HN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_HN.class
deleted file mode 100644
index 22a9587b1fc..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_HN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_MX.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_MX.class
deleted file mode 100644
index 14b1c58ae7f..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_MX.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_NI.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_NI.class
deleted file mode 100644
index 18e8b732dcf..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_NI.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PA.class
deleted file mode 100644
index 07e1832f4c6..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PE.class
deleted file mode 100644
index 5c979a5bb19..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PR.class
deleted file mode 100644
index 9fd5d7e2b69..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PY.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PY.class
deleted file mode 100644
index a5c2920fd98..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_PY.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_SV.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_SV.class
deleted file mode 100644
index 799972be2f9..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_SV.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_US.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_US.class
deleted file mode 100644
index 98642cd3ba1..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_US.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_UY.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_UY.class
deleted file mode 100644
index 1d588f93a7b..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_UY.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_VE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_VE.class
deleted file mode 100644
index 807553e5a72..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_es_VE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_et_EE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_et_EE.class
deleted file mode 100644
index 24124993499..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_et_EE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_eu_ES.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_eu_ES.class
deleted file mode 100644
index 19617158941..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_eu_ES.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fa_IR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fa_IR.class
deleted file mode 100644
index e66957fc387..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fa_IR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fi_FI.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fi_FI.class
deleted file mode 100644
index 55c2ee410cf..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fi_FI.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fo_FO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fo_FO.class
deleted file mode 100644
index a8dba36d778..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fo_FO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_BE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_BE.class
deleted file mode 100644
index ffaa796c44b..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_BE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_CA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_CA.class
deleted file mode 100644
index 45f47a39afd..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_CA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_CH.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_CH.class
deleted file mode 100644
index 5d38b8e3add..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_CH.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_FR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_FR.class
deleted file mode 100644
index e9f94c3259d..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_FR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_LU.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_LU.class
deleted file mode 100644
index d85f9c12833..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_fr_LU.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ga_IE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ga_IE.class
deleted file mode 100644
index 49406bdd3c7..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ga_IE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gd_GB.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gd_GB.class
deleted file mode 100644
index 783ca689b98..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gd_GB.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gl_ES.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gl_ES.class
deleted file mode 100644
index 02d23282fa2..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gl_ES.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gv_GB.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gv_GB.class
deleted file mode 100644
index 7d8d888c205..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_gv_GB.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_he_IL.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_he_IL.class
deleted file mode 100644
index cdf9faa6813..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_he_IL.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hi_IN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hi_IN.class
deleted file mode 100644
index 1455cf41094..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hi_IN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hr_HR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hr_HR.class
deleted file mode 100644
index a0b17507e09..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hr_HR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hu_HU.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hu_HU.class
deleted file mode 100644
index 669990ff552..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_hu_HU.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_id_ID.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_id_ID.class
deleted file mode 100644
index f92f3f5b4ec..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_id_ID.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_it_CH.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_it_CH.class
deleted file mode 100644
index 84a8630b1ac..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_it_CH.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_it_IT.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_it_IT.class
deleted file mode 100644
index 9ba8a69446d..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_it_IT.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_iw_IL.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_iw_IL.class
deleted file mode 100644
index 72274174fe8..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_iw_IL.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ja_JP.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ja_JP.class
deleted file mode 100644
index 80cd3d37019..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ja_JP.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ka_GE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ka_GE.class
deleted file mode 100644
index 5fa3ef3ae47..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ka_GE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_kl_GL.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_kl_GL.class
deleted file mode 100644
index b135dd6be12..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_kl_GL.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ko_KR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ko_KR.class
deleted file mode 100644
index f15729b3774..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ko_KR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_kw_GB.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_kw_GB.class
deleted file mode 100644
index 6455ce9cabd..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_kw_GB.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_lt_LT.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_lt_LT.class
deleted file mode 100644
index a2d480d87f4..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_lt_LT.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_lv_LV.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_lv_LV.class
deleted file mode 100644
index 7b1fb49fe94..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_lv_LV.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mi_NZ.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mi_NZ.class
deleted file mode 100644
index b51852fecbd..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mi_NZ.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mk_MK.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mk_MK.class
deleted file mode 100644
index fe192ab51fb..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mk_MK.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mr_IN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mr_IN.class
deleted file mode 100644
index 1d3a552d3e9..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mr_IN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mt_MT.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mt_MT.class
deleted file mode 100644
index f2f84f2dffc..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_mt_MT.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl.class
deleted file mode 100644
index 9c0d94886a9..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl_BE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl_BE.class
deleted file mode 100644
index dca6e00fcfe..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl_BE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl_NL.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl_NL.class
deleted file mode 100644
index 2b56f82dbed..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nl_NL.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nn_NO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nn_NO.class
deleted file mode 100644
index 1bbdb0e6278..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_nn_NO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_no_NO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_no_NO.class
deleted file mode 100644
index 7790732dc65..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_no_NO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_oc_FR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_oc_FR.class
deleted file mode 100644
index 7dcb834cf48..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_oc_FR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pl_PL.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pl_PL.class
deleted file mode 100644
index f74b3d0cd99..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pl_PL.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pt_BR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pt_BR.class
deleted file mode 100644
index 2723253fd7e..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pt_BR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pt_PT.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pt_PT.class
deleted file mode 100644
index bf2692ee02a..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_pt_PT.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ro_RO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ro_RO.class
deleted file mode 100644
index 7e8a32cbd1b..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ro_RO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ru_RU.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ru_RU.class
deleted file mode 100644
index ae37812879a..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ru_RU.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ru_UA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ru_UA.class
deleted file mode 100644
index 65f67e8d30d..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ru_UA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_se_NO.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_se_NO.class
deleted file mode 100644
index df03a3f52c8..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_se_NO.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sk_SK.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sk_SK.class
deleted file mode 100644
index a847f706658..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sk_SK.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sl_SI.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sl_SI.class
deleted file mode 100644
index ceed0395b90..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sl_SI.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sq_AL.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sq_AL.class
deleted file mode 100644
index f2bf4fae11c..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sq_AL.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sr_YU.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sr_YU.class
deleted file mode 100644
index 95386a25b35..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sr_YU.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sv_FI.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sv_FI.class
deleted file mode 100644
index 352e9bf557d..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sv_FI.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sv_SE.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sv_SE.class
deleted file mode 100644
index a9f6592fffc..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_sv_SE.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ta_IN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ta_IN.class
deleted file mode 100644
index 0df44135d9c..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ta_IN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_te_IN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_te_IN.class
deleted file mode 100644
index 7fda0919519..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_te_IN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tg_TJ.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tg_TJ.class
deleted file mode 100644
index 6f137d6aa90..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tg_TJ.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tl_PH.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tl_PH.class
deleted file mode 100644
index 8638b0b4b16..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tl_PH.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tr_TR.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tr_TR.class
deleted file mode 100644
index 37eb8a3ac51..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_tr_TR.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_uk_UA.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_uk_UA.class
deleted file mode 100644
index 435c40fcfbc..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_uk_UA.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ur_PK.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ur_PK.class
deleted file mode 100644
index f9f79c8c27d..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_ur_PK.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_uz_UZ.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_uz_UZ.class
deleted file mode 100644
index 99520b036fb..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_uz_UZ.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_vi_VN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_vi_VN.class
deleted file mode 100644
index 537181b9971..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_vi_VN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_yi_US.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_yi_US.class
deleted file mode 100644
index 59b99e01411..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_yi_US.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_CN.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_CN.class
deleted file mode 100644
index 248fa2e5e1b..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_CN.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_HK.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_HK.class
deleted file mode 100644
index 43826134f7b..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_HK.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_SG.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_SG.class
deleted file mode 100644
index 8129928f8d1..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_SG.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_TW.class b/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_TW.class
deleted file mode 100644
index 075188639f7..00000000000
--- a/libjava/classpath/lib/gnu/java/locale/LocaleInformation_zh_TW.class
+++ /dev/null
Binary files differ
diff --git a/libjava/classpath/lib/gnu/java/rmi/registry/RegistryImpl.class b/libjava/classpath/lib/gnu/java/rmi/registry/RegistryImpl.class
index b3627694897..95e721095bc 100644
--- a/libjava/classpath/lib/gnu/java/rmi/registry/RegistryImpl.class
+++ b/libjava/classpath/lib/gnu/java/rmi/registry/RegistryImpl.class
Binary files differ
diff --git a/libjava/classpath/lib/java/text/Collator.class b/libjava/classpath/lib/java/text/Collator.class
index 74894e357f5..3cb9ea46df6 100644
--- a/libjava/classpath/lib/java/text/Collator.class
+++ b/libjava/classpath/lib/java/text/Collator.class
Binary files differ
diff --git a/libjava/classpath/lib/java/text/DateFormatSymbols.class b/libjava/classpath/lib/java/text/DateFormatSymbols.class
index 969dd8be585..5e91833888c 100644
--- a/libjava/classpath/lib/java/text/DateFormatSymbols.class
+++ b/libjava/classpath/lib/java/text/DateFormatSymbols.class
Binary files differ
diff --git a/libjava/classpath/lib/java/text/DecimalFormatSymbols.class b/libjava/classpath/lib/java/text/DecimalFormatSymbols.class
index e9dbff93d03..3719a028c07 100644
--- a/libjava/classpath/lib/java/text/DecimalFormatSymbols.class
+++ b/libjava/classpath/lib/java/text/DecimalFormatSymbols.class
Binary files differ
diff --git a/libjava/classpath/lib/java/util/Calendar.class b/libjava/classpath/lib/java/util/Calendar.class
index cff0461aac6..1743652bff9 100644
--- a/libjava/classpath/lib/java/util/Calendar.class
+++ b/libjava/classpath/lib/java/util/Calendar.class
Binary files differ
diff --git a/libjava/classpath/lib/java/util/Currency.class b/libjava/classpath/lib/java/util/Currency.class
index b2ca13189c6..bc2a965d43b 100644
--- a/libjava/classpath/lib/java/util/Currency.class
+++ b/libjava/classpath/lib/java/util/Currency.class
Binary files differ
diff --git a/libjava/classpath/native/jni/classpath/jcl.c b/libjava/classpath/native/jni/classpath/jcl.c
index cd3f5161d06..0180ab9f0f5 100644
--- a/libjava/classpath/native/jni/classpath/jcl.c
+++ b/libjava/classpath/native/jni/classpath/jcl.c
@@ -1,5 +1,5 @@
/* jcl.c
- Copyright (C) 1998, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2005, 2006, 2008 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -152,9 +152,11 @@ JCL_malloc (JNIEnv * env, size_t size)
JNIEXPORT void *JNICALL
JCL_realloc (JNIEnv * env, void *ptr, size_t size)
{
+ void *orig_ptr = ptr;
ptr = realloc (ptr, size);
if (ptr == 0)
{
+ free (orig_ptr);
JCL_ThrowException (env, "java/lang/OutOfMemoryError",
"malloc() failed.");
return NULL;
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.class b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.class
index 85dacf35894..4fa26d976ee 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/orbd/Main.class
Binary files differ
diff --git a/libjava/classpath/tools/gnu/classpath/tools/orbd/Main.java b/libjava/classpath/tools/gnu/classpath/tools/orbd/Main.java
index 91c50d7f8c7..afb30ad7224 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/orbd/Main.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/orbd/Main.java
@@ -1,5 +1,5 @@
/* NamingServicePersistent.java -- The persistent naming service.
- Copyright (C) 2006 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2008 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -181,7 +181,7 @@ public class Main
System.out.println("GNU Classpath persistent naming service "
+ "started at " + iorr.Internet.host + ":"
+ iorr.Internet.port + " key 'NameService'.\n\n"
- + "Copyright (C) 2006 Free Software Foundation\n"
+ + "Copyright (C) 2008 Free Software Foundation\n"
+ "This tool comes with ABSOLUTELY NO WARRANTY. "
+ "This is free software, and you are\nwelcome to "
+ "redistribute it under conditions, defined in "
diff --git a/libjava/gnu/classpath/natSystemProperties.cc b/libjava/gnu/classpath/natSystemProperties.cc
index 089a14e5b4e..e259304b165 100644
--- a/libjava/gnu/classpath/natSystemProperties.cc
+++ b/libjava/gnu/classpath/natSystemProperties.cc
@@ -270,7 +270,10 @@ gnu::classpath::SystemProperties::insertSystemProperties (::java::util::Properti
if (errno != ERANGE)
break;
buflen = 2 * buflen;
+ char *orig_buf = buffer;
buffer = (char *) realloc (buffer, buflen);
+ if (buffer == NULL)
+ free (orig_buf);
}
if (buffer != NULL)
free (buffer);
diff --git a/libjava/gnu/gcj/convert/Convert.java b/libjava/gnu/gcj/convert/Convert.java
index cf67061d6b7..2d5c053cb9f 100644
--- a/libjava/gnu/gcj/convert/Convert.java
+++ b/libjava/gnu/gcj/convert/Convert.java
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2002, 2005, 2006, 2007 Free Software Foundation
+/* Copyright (C) 1999, 2002, 2005, 2006, 2007, 2008 Free Software Foundation
This file is part of libgcj.
@@ -45,7 +45,7 @@ public class Convert
+ ") "
+ System.getProperty("java.vm.version"));
System.out.println();
- System.out.println("Copyright (C) 2006 Free Software Foundation, Inc.");
+ System.out.println("Copyright (C) 2008 Free Software Foundation, Inc.");
System.out.println("This is free software; see the source for copying conditions. There is NO");
System.out.println("warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.");
System.exit(0);
diff --git a/libjava/gnu/gcj/tools/gcj_dbtool/Main.java b/libjava/gnu/gcj/tools/gcj_dbtool/Main.java
index 6ad5fd1b786..f1c45471186 100644
--- a/libjava/gnu/gcj/tools/gcj_dbtool/Main.java
+++ b/libjava/gnu/gcj/tools/gcj_dbtool/Main.java
@@ -1,4 +1,4 @@
-/* Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation
+/* Copyright (C) 2004, 2005, 2006, 2007, 2008 Free Software Foundation
This file is part of libgcj.
@@ -46,7 +46,7 @@ public class Main
+ ") "
+ System.getProperty("java.vm.version"));
System.out.println();
- System.out.println("Copyright 2006 Free Software Foundation, Inc.");
+ System.out.println("Copyright 2008 Free Software Foundation, Inc.");
System.out.println("This is free software; see the source for copying conditions. There is NO");
System.out.println("warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.");
return;
diff --git a/libjava/gnu/java/lang/MainThread.h b/libjava/gnu/java/lang/MainThread.h
index d92d04dc868..8c94dd584ac 100644
--- a/libjava/gnu/java/lang/MainThread.h
+++ b/libjava/gnu/java/lang/MainThread.h
@@ -38,8 +38,6 @@ public: // actually package-private
static ::java::lang::Class * Kfile;
static ::java::lang::Class * Khttp;
static ::java::lang::Class * Kjar;
- static ::java::lang::Class * Klocale;
- static ::java::lang::Class * Kcalendar;
private:
::java::lang::Class * __attribute__((aligned(__alignof__( ::java::lang::Thread)))) klass;
::java::lang::String * klass_name;
diff --git a/libjava/gnu/java/lang/MainThread.java b/libjava/gnu/java/lang/MainThread.java
index 5b8b417ad4d..a33445c21ad 100644
--- a/libjava/gnu/java/lang/MainThread.java
+++ b/libjava/gnu/java/lang/MainThread.java
@@ -1,6 +1,6 @@
/* gnu.java.lang.MainThread
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
- Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+ 2006, 2008 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -59,8 +59,6 @@ final class MainThread extends Thread
static final Class Kfile = gnu.java.net.protocol.file.Handler.class;
static final Class Khttp = gnu.java.net.protocol.http.Handler.class;
static final Class Kjar = gnu.java.net.protocol.jar.Handler.class;
- static final Class Klocale = gnu.java.locale.LocaleInformation.class;
- static final Class Kcalendar = gnu.java.locale.Calendar.class;
// Private data.
private Class klass;
diff --git a/libjava/gnu/java/locale/Calendar.h b/libjava/gnu/java/locale/Calendar.h
deleted file mode 100644
index b0d7eee75ff..00000000000
--- a/libjava/gnu/java/locale/Calendar.h
+++ /dev/null
@@ -1,43 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_Calendar__
-#define __gnu_java_locale_Calendar__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class Calendar;
- }
- }
- }
-}
-
-class gnu::java::locale::Calendar : public ::java::util::ListResourceBundle
-{
-
-public:
- Calendar();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-private:
- static JArray< ::java::util::Locale * > * availableLocales;
- static ::java::lang::String * calendarClass;
- static ::java::lang::Integer * firstDayOfWeek;
- static ::java::lang::Integer * minimalDaysInFirstWeek;
- static ::java::util::Date * gregorianCutOver;
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_Calendar__
diff --git a/libjava/gnu/java/locale/Calendar.java b/libjava/gnu/java/locale/Calendar.java
deleted file mode 100644
index 28a9b602fdd..00000000000
--- a/libjava/gnu/java/locale/Calendar.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Calendar.java -- Default Calendar locale data
- Copyright (C) 1999 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package gnu.java.locale;
-
-import java.util.Date;
-import java.util.ListResourceBundle;
-import java.util.Locale;
-
-/**
- * This class contains locale data for java.util.Calendar.<br>
- *
- * If you localize this to another language only set fields, that
- * you change. See Calendar_de for an example. Also add your
- * locale to this list of availableLocales below in this(!) file.
- *
- * @author Jochen Hoenicke
- */
-public class Calendar extends ListResourceBundle
-{
- /**
- * The locales for which Calendar is localized.
- */
- private static final Locale[] availableLocales = {
- Locale.GERMAN, Locale.ENGLISH, new Locale("nl", "")
- };
-
- /**
- * This is the default calendar class, that is returned on
- * java.util.Calendar.getInstance().
- * @see java.util.Calendar#getInstance()
- */
- private static final String calendarClass = "java.util.GregorianCalendar";
-
- /**
- * This is used by java.util.Calendar.
- * @see java.util.Calendar#getFirstDayOfWeek()
- */
- private static final Integer firstDayOfWeek
- = new Integer(java.util.Calendar.SUNDAY);
- /**
- * This is used by java.util.Calendar.
- * @see java.util.Calendar#getMinimalDaysInFirstWeek()
- */
- private static final Integer minimalDaysInFirstWeek = new Integer(1);
-
- /**
- * The point at which the Gregorian calendar rules were used.
- * The default for most catholic
- * countries is midnight (UTC) on October 5, 1582 (Julian),
- * or October 15, 1582 (Gregorian).
- * @see java.util.GregorianCalendar#getGregorianCutOver
- */
- /* If you change this date be aware, that this formular does only
- * work for months from MARCH to DECEMBER and doesn't work in
- * leap years (look in java.util.GregorianCalendar.getDayOfYear for
- * more info).
- */
- private static final Date gregorianCutOver = new Date
- ((24*60*60*1000L) *
- (((1582*(365*4+1))/4 +
- (java.util.Calendar.OCTOBER*(31+30+31+30+31) - 9) / 5 + 5) -
- ((1970*(365*4+1))/4 + 1 - 13)));
-
- /**
- * This is the object array used to hold the keys and values
- * for this bundle
- */
- private static final Object[][] contents =
- {
- { "availableLocales", availableLocales },
- { "calendarClass", calendarClass },
- { "firstDayOfWeek", firstDayOfWeek },
- { "minimalDaysInFirstWeek", minimalDaysInFirstWeek },
- { "gregorianCutOver", gregorianCutOver }
- };
-
- /**
- * This method returns the object array of key, value pairs containing
- * the data for this bundle.
- *
- * @return The key, value information.
- */
- public Object[][] getContents()
- {
- return(contents);
- }
-}
diff --git a/libjava/gnu/java/locale/Calendar_de.h b/libjava/gnu/java/locale/Calendar_de.h
deleted file mode 100644
index 77328560159..00000000000
--- a/libjava/gnu/java/locale/Calendar_de.h
+++ /dev/null
@@ -1,38 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_Calendar_de__
-#define __gnu_java_locale_Calendar_de__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class Calendar_de;
- }
- }
- }
-}
-
-class gnu::java::locale::Calendar_de : public ::java::util::ListResourceBundle
-{
-
-public:
- Calendar_de();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_Calendar_de__
diff --git a/libjava/gnu/java/locale/Calendar_de.java b/libjava/gnu/java/locale/Calendar_de.java
deleted file mode 100644
index 218bef23d09..00000000000
--- a/libjava/gnu/java/locale/Calendar_de.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Calendar_de.java -- German calendar locale data
- Copyright (C) 1999 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package gnu.java.locale;
-
-import java.util.Calendar;
-import java.util.ListResourceBundle;
-
-/**
- * This class contains locale data for java.util.Calendar specific for
- * german language.
- * @author Jochen Hoenicke
- */
-public class Calendar_de extends ListResourceBundle
-{
- /**
- * This is the object array used to hold the keys and values
- * for this bundle
- */
- private static final Object[][] contents =
- {
- { "firstDayOfWeek", new Integer(Calendar.MONDAY) },
- { "minimalDaysInFirstWeek", new Integer(4) },
- };
-
- /**
- * This method returns the object array of key, value pairs containing
- * the data for this bundle.
- *
- * @return The key, value information.
- */
- public Object[][] getContents()
- {
- return contents;
- }
-}
diff --git a/libjava/gnu/java/locale/Calendar_en.h b/libjava/gnu/java/locale/Calendar_en.h
deleted file mode 100644
index 523be552ae8..00000000000
--- a/libjava/gnu/java/locale/Calendar_en.h
+++ /dev/null
@@ -1,38 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_Calendar_en__
-#define __gnu_java_locale_Calendar_en__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class Calendar_en;
- }
- }
- }
-}
-
-class gnu::java::locale::Calendar_en : public ::java::util::ListResourceBundle
-{
-
-public:
- Calendar_en();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_Calendar_en__
diff --git a/libjava/gnu/java/locale/Calendar_en.java b/libjava/gnu/java/locale/Calendar_en.java
deleted file mode 100644
index 3b11260811f..00000000000
--- a/libjava/gnu/java/locale/Calendar_en.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Calendar_en.java -- English calendar locale data
- Copyright (C) 1999 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-/**
- * This class contains locale data for java.util.Calendar specific for
- * english language.
- * @author Jochen Hoenicke
- */
-public class Calendar_en extends ListResourceBundle
-{
- /**
- * This is the object array used to hold the keys and values
- * for this bundle
- */
- private static final Object[][] contents =
- {
- /* Use default values. */
- };
-
- /**
- * This method returns the object array of key, value pairs containing
- * the data for this bundle.
- *
- * @return The key, value information.
- */
- public Object[][] getContents()
- {
- return contents;
- }
-}
diff --git a/libjava/gnu/java/locale/Calendar_nl.h b/libjava/gnu/java/locale/Calendar_nl.h
deleted file mode 100644
index 01f75b188ff..00000000000
--- a/libjava/gnu/java/locale/Calendar_nl.h
+++ /dev/null
@@ -1,38 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_Calendar_nl__
-#define __gnu_java_locale_Calendar_nl__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class Calendar_nl;
- }
- }
- }
-}
-
-class gnu::java::locale::Calendar_nl : public ::java::util::ListResourceBundle
-{
-
-public:
- Calendar_nl();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_Calendar_nl__
diff --git a/libjava/gnu/java/locale/Calendar_nl.java b/libjava/gnu/java/locale/Calendar_nl.java
deleted file mode 100644
index 1e366746ac5..00000000000
--- a/libjava/gnu/java/locale/Calendar_nl.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Calendar_nl.java -- Dutch calendar locale data
- Copyright (C) 1999 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package gnu.java.locale;
-
-import java.util.Calendar;
-import java.util.ListResourceBundle;
-
-/**
- * This class contains locale data for java.util.Calendar specific for
- * dutch language.
- * @author Mark Wielaard
- */
-public class Calendar_nl extends ListResourceBundle
-{
- /**
- * This is the object array used to hold the keys and values
- * for this bundle
- */
- private static final Object[][] contents =
- {
- { "firstDayOfWeek", new Integer(Calendar.MONDAY) },
-
- /* XXX - I guess the default for gregorianCutover
- * is also true for the Netherlands. But is it?
- */
- };
-
- /**
- * This method returns the object array of key, value pairs containing
- * the data for this bundle.
- *
- * @return The key, value information.
- */
- public Object[][] getContents()
- {
- return contents;
- }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation.h b/libjava/gnu/java/locale/LocaleInformation.h
deleted file mode 100644
index b8ccfeceb36..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation.h
+++ /dev/null
@@ -1,32 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation__
-#define __gnu_java_locale_LocaleInformation__
-
-#pragma interface
-
-#include <gnu/java/locale/LocaleInformation_en.h>
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation : public ::gnu::java::locale::LocaleInformation_en
-{
-
-public:
- LocaleInformation();
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation__
diff --git a/libjava/gnu/java/locale/LocaleInformation.java b/libjava/gnu/java/locale/LocaleInformation.java
deleted file mode 100644
index 35431f1a64e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/* LocaleInformation.java -- Default locale information
- Copyright (C) 1998, 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package gnu.java.locale;
-
-/**
- * This is the resource bundle for the default locale, which right now is
- * hardcoded to US English.
- */
-public class LocaleInformation extends LocaleInformation_en
-{
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_af_ZA.h b/libjava/gnu/java/locale/LocaleInformation_af_ZA.h
deleted file mode 100644
index 9c5e11ffcc0..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_af_ZA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_af_ZA__
-#define __gnu_java_locale_LocaleInformation_af_ZA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_af_ZA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_af_ZA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_af_ZA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_af_ZA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_af_ZA.java b/libjava/gnu/java/locale/LocaleInformation_af_ZA.java
deleted file mode 100644
index 920bd4c19e9..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_af_ZA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_af_ZA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_af_ZA extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrydag", "Saterdag" };
-
- static final String[] shortWeekdays = { null, "So", "Ma", "Di", "Wo", "Do", "Vr", "Sa" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Des", null };
-
- static final String[] months = { "Januarie", "Februarie", "Maart", "April", "Mei", "Junie", "Julie", "Augustus", "September", "Oktober", "November", "Desember", null };
-
- static final String[] ampms = { "VM", "NM" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "R";
- static final String intlCurrencySymbol = "ZAR";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_AE.h b/libjava/gnu/java/locale/LocaleInformation_ar_AE.h
deleted file mode 100644
index a2cd814e9c7..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_AE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_AE__
-#define __gnu_java_locale_LocaleInformation_ar_AE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_AE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_AE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_AE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_AE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_AE.java b/libjava/gnu/java/locale/LocaleInformation_ar_AE.java
deleted file mode 100644
index 6420fe4e9b4..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_AE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_AE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_AE extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A " };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u0625.";
- static final String intlCurrencySymbol = "AED";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_BH.h b/libjava/gnu/java/locale/LocaleInformation_ar_BH.h
deleted file mode 100644
index de1d231887a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_BH.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_BH__
-#define __gnu_java_locale_LocaleInformation_ar_BH__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_BH;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_BH : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_BH();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_BH__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_BH.java b/libjava/gnu/java/locale/LocaleInformation_ar_BH.java
deleted file mode 100644
index e93bfab66f6..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_BH.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_BH.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_BH extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u0628.";
- static final String intlCurrencySymbol = "BHD";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_DZ.h b/libjava/gnu/java/locale/LocaleInformation_ar_DZ.h
deleted file mode 100644
index 8ffc0a4ef13..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_DZ.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_DZ__
-#define __gnu_java_locale_LocaleInformation_ar_DZ__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_DZ;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_DZ : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_DZ();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_DZ__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_DZ.java b/libjava/gnu/java/locale/LocaleInformation_ar_DZ.java
deleted file mode 100644
index 66f34bf41e1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_DZ.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_DZ.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_DZ extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u062C.";
- static final String intlCurrencySymbol = "DZD";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_EG.h b/libjava/gnu/java/locale/LocaleInformation_ar_EG.h
deleted file mode 100644
index d8d31d00e94..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_EG.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_EG__
-#define __gnu_java_locale_LocaleInformation_ar_EG__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_EG;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_EG : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_EG();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_EG__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_EG.java b/libjava/gnu/java/locale/LocaleInformation_ar_EG.java
deleted file mode 100644
index 01967025060..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_EG.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_EG.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_EG extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062C.\u0645.";
- static final String intlCurrencySymbol = "EGP";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_IN.h b/libjava/gnu/java/locale/LocaleInformation_ar_IN.h
deleted file mode 100644
index 5d0d7f6581f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_IN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_IN__
-#define __gnu_java_locale_LocaleInformation_ar_IN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_IN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_IN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_IN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_IN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_IN.java b/libjava/gnu/java/locale/LocaleInformation_ar_IN.java
deleted file mode 100644
index ed3bb890c6c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_IN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_IN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_IN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##,##0.###";
- static final String percentFormat = "#,##,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "EEEE dd MMMM yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "\u20A8";
- static final String intlCurrencySymbol = "INR";
- static final String currencyFormat = "$ #,##,##0.00;-$ #,##,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_IQ.h b/libjava/gnu/java/locale/LocaleInformation_ar_IQ.h
deleted file mode 100644
index 55c24a508e7..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_IQ.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_IQ__
-#define __gnu_java_locale_LocaleInformation_ar_IQ__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_IQ;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_IQ : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_IQ();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_IQ__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_IQ.java b/libjava/gnu/java/locale/LocaleInformation_ar_IQ.java
deleted file mode 100644
index 39b5c3d4e12..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_IQ.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_IQ.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_IQ extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u0639.";
- static final String intlCurrencySymbol = "IQD";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_JO.h b/libjava/gnu/java/locale/LocaleInformation_ar_JO.h
deleted file mode 100644
index c4726d0b5c1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_JO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_JO__
-#define __gnu_java_locale_LocaleInformation_ar_JO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_JO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_JO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_JO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_JO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_JO.java b/libjava/gnu/java/locale/LocaleInformation_ar_JO.java
deleted file mode 100644
index 59dd2cae34f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_JO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_JO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_JO extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortMonths = { "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0634\u0628\u0627\u0637", "\u0622\u0630\u0627\u0631", "\u0646\u064A\u0633\u0627\u0646", "\u0646\u0648\u0627\u0631", "\u062D\u0632\u064A\u0631\u0627\u0646", "\u062A\u0645\u0648\u0632", "\u0622\u0628", "\u0623\u064A\u0644\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u0623\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644", null };
-
- static final String[] months = { "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0634\u0628\u0627\u0637", "\u0622\u0630\u0627\u0631", "\u0646\u064A\u0633\u0627\u0646", "\u0646\u0648\u0627\u0631", "\u062D\u0632\u064A\u0631\u0627\u0646", "\u062A\u0645\u0648\u0632", "\u0622\u0628", "\u0623\u064A\u0644\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u0623\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u0623.";
- static final String intlCurrencySymbol = "JOD";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_KW.h b/libjava/gnu/java/locale/LocaleInformation_ar_KW.h
deleted file mode 100644
index 0fb530020e2..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_KW.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_KW__
-#define __gnu_java_locale_LocaleInformation_ar_KW__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_KW;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_KW : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_KW();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_KW__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_KW.java b/libjava/gnu/java/locale/LocaleInformation_ar_KW.java
deleted file mode 100644
index a0def9fd19b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_KW.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_KW.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_KW extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u0643.";
- static final String intlCurrencySymbol = "KWD";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_LB.h b/libjava/gnu/java/locale/LocaleInformation_ar_LB.h
deleted file mode 100644
index 11b7c54d3b9..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_LB.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_LB__
-#define __gnu_java_locale_LocaleInformation_ar_LB__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_LB;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_LB : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_LB();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_LB__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_LB.java b/libjava/gnu/java/locale/LocaleInformation_ar_LB.java
deleted file mode 100644
index dff773e3626..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_LB.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_LB.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_LB extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortMonths = { "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0634\u0628\u0627\u0637", "\u0622\u0630\u0627\u0631", "\u0646\u064A\u0633\u0627\u0646", "\u0646\u0648\u0627\u0631", "\u062D\u0632\u064A\u0631\u0627\u0646", "\u062A\u0645\u0648\u0632", "\u0622\u0628", "\u0623\u064A\u0644\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u0623\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644", null };
-
- static final String[] months = { "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0634\u0628\u0627\u0637", "\u0622\u0630\u0627\u0631", "\u0646\u064A\u0633\u0627\u0646", "\u0646\u0648\u0627\u0631", "\u062D\u0632\u064A\u0631\u0627\u0646", "\u062A\u0645\u0648\u0632", "\u0622\u0628", "\u0623\u064A\u0644\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u0623\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u0644.\u0644.";
- static final String intlCurrencySymbol = "LBP";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_LY.h b/libjava/gnu/java/locale/LocaleInformation_ar_LY.h
deleted file mode 100644
index 1f4c4800b64..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_LY.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_LY__
-#define __gnu_java_locale_LocaleInformation_ar_LY__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_LY;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_LY : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_LY();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_LY__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_LY.java b/libjava/gnu/java/locale/LocaleInformation_ar_LY.java
deleted file mode 100644
index 981f2cba248..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_LY.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_LY.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_LY extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u0644.";
- static final String intlCurrencySymbol = "LYD";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_MA.h b/libjava/gnu/java/locale/LocaleInformation_ar_MA.h
deleted file mode 100644
index df092d26d96..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_MA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_MA__
-#define __gnu_java_locale_LocaleInformation_ar_MA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_MA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_MA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_MA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_MA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_MA.java b/libjava/gnu/java/locale/LocaleInformation_ar_MA.java
deleted file mode 100644
index 6799b0ac49a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_MA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_MA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_MA extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u0645.";
- static final String intlCurrencySymbol = "MAD";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_OM.h b/libjava/gnu/java/locale/LocaleInformation_ar_OM.h
deleted file mode 100644
index 692578c5b08..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_OM.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_OM__
-#define __gnu_java_locale_LocaleInformation_ar_OM__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_OM;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_OM : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_OM();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_OM__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_OM.java b/libjava/gnu/java/locale/LocaleInformation_ar_OM.java
deleted file mode 100644
index 12381086770..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_OM.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_OM.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_OM extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u0631.\u0639.";
- static final String intlCurrencySymbol = "OMR";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_QA.h b/libjava/gnu/java/locale/LocaleInformation_ar_QA.h
deleted file mode 100644
index 9bf80ccd4f1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_QA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_QA__
-#define __gnu_java_locale_LocaleInformation_ar_QA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_QA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_QA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_QA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_QA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_QA.java b/libjava/gnu/java/locale/LocaleInformation_ar_QA.java
deleted file mode 100644
index 71a6955ee3b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_QA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_QA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_QA extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u0631.\u0642.";
- static final String intlCurrencySymbol = "QAR";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_SD.h b/libjava/gnu/java/locale/LocaleInformation_ar_SD.h
deleted file mode 100644
index 817df472faa..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_SD.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_SD__
-#define __gnu_java_locale_LocaleInformation_ar_SD__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_SD;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_SD : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_SD();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_SD__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_SD.java b/libjava/gnu/java/locale/LocaleInformation_ar_SD.java
deleted file mode 100644
index ef0b8e6785a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_SD.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_SD.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_SD extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062C.\u0633.";
- static final String intlCurrencySymbol = "SDP";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_SY.h b/libjava/gnu/java/locale/LocaleInformation_ar_SY.h
deleted file mode 100644
index ee0df32fdd4..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_SY.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_SY__
-#define __gnu_java_locale_LocaleInformation_ar_SY__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_SY;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_SY : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_SY();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_SY__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_SY.java b/libjava/gnu/java/locale/LocaleInformation_ar_SY.java
deleted file mode 100644
index 7451981a837..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_SY.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_SY.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_SY extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortMonths = { "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0634\u0628\u0627\u0637", "\u0622\u0630\u0627\u0631", "\u0646\u064A\u0633\u0627\u0646", "\u0646\u0648\u0627\u0631", "\u062D\u0632\u064A\u0631\u0627\u0646", "\u062A\u0645\u0648\u0632", "\u0622\u0628", "\u0623\u064A\u0644\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u0623\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644", null };
-
- static final String[] months = { "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0634\u0628\u0627\u0637", "\u0622\u0630\u0627\u0631", "\u0646\u064A\u0633\u0627\u0646", "\u0646\u0648\u0627\u0631\u0627\u0646", "\u062D\u0632\u064A\u0631", "\u062A\u0645\u0648\u0632", "\u0622\u0628", "\u0623\u064A\u0644\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u0623\u0648\u0644", "\u062A\u0634\u0631\u064A\u0646 \u0627\u0644\u062B\u0627\u0646\u064A", "\u0643\u0627\u0646\u0648\u0646 \u0627\u0644\u0623\u0648\u0644", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u0644.\u0633.";
- static final String intlCurrencySymbol = "SYP";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_TN.h b/libjava/gnu/java/locale/LocaleInformation_ar_TN.h
deleted file mode 100644
index 248ace98d46..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_TN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_TN__
-#define __gnu_java_locale_LocaleInformation_ar_TN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_TN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_TN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_TN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_TN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_TN.java b/libjava/gnu/java/locale/LocaleInformation_ar_TN.java
deleted file mode 100644
index fab3bb8c282..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_TN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_TN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_TN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u062F.\u062A.";
- static final String intlCurrencySymbol = "TND";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_YE.h b/libjava/gnu/java/locale/LocaleInformation_ar_YE.h
deleted file mode 100644
index 8a9dbe8fdbc..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_YE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ar_YE__
-#define __gnu_java_locale_LocaleInformation_ar_YE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ar_YE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ar_YE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ar_YE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ar_YE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ar_YE.java b/libjava/gnu/java/locale/LocaleInformation_ar_YE.java
deleted file mode 100644
index f70e36e8657..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ar_YE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ar_YE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ar_YE extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0627\u0644\u0623\u062D\u062F", "\u0627\u0644\u0627\u062B\u0646\u064A\u0646", "\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621", "\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621", "\u0627\u0644\u062E\u0645\u064A\u0633", "\u0627\u0644\u062C\u0645\u0639\u0629", "\u0627\u0644\u0633\u0628\u062A" };
-
- static final String[] shortWeekdays = { null, "\u062D", "\u0646", "\u062B", "\u0631", "\u062E", "\u062C", "\u0633" };
-
- static final String[] shortMonths = { "\u064A\u0646\u0627", "\u0641\u0628\u0631", "\u0645\u0627\u0631", "\u0623\u0628\u0631", "\u0645\u0627\u064A", "\u064A\u0648\u0646", "\u064A\u0648\u0644", "\u0623\u063A\u0633", "\u0633\u0628\u062A", "\u0623\u0643\u062A", "\u0646\u0648\u0641", "\u062F\u064A\u0633", null };
-
- static final String[] months = { "\u064A\u0646\u0627\u064A\u0631", "\u0641\u0628\u0631\u0627\u064A\u0631", "\u0645\u0627\u0631\u0633", "\u0623\u0628\u0631\u064A\u0644", "\u0645\u0627\u064A\u0648", "\u064A\u0648\u0646\u064A\u0648", "\u064A\u0648\u0644\u064A\u0648", "\u0623\u063A\u0633\u0637\u0633", "\u0633\u0628\u062A\u0645\u0628\u0631", "\u0623\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0641\u0645\u0628\u0631", "\u062F\u064A\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0645" };
-
- static final String shortDateFormat = "dd MMM, yyyy";
- static final String defaultTimeFormat = "z hh:m:s a";
- static final String currencySymbol = "\u0631.\u064A.";
- static final String intlCurrencySymbol = "YER";
- static final String currencyFormat = "$ #,##0.000;$ #,##0.000-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_be_BY.h b/libjava/gnu/java/locale/LocaleInformation_be_BY.h
deleted file mode 100644
index 51a72506f64..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_be_BY.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_be_BY__
-#define __gnu_java_locale_LocaleInformation_be_BY__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_be_BY;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_be_BY : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_be_BY();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_be_BY__
diff --git a/libjava/gnu/java/locale/LocaleInformation_be_BY.java b/libjava/gnu/java/locale/LocaleInformation_be_BY.java
deleted file mode 100644
index 9adc5b5e64a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_be_BY.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_be_BY.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_be_BY extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u041D\u044F\u0434\u0437\u0435\u043B\u044F", "\u041F\u0430\u043D\u044F\u0434\u0437\u0435\u043B\u0430\u043A", "\u0410\u045E\u0442\u043E\u0440\u0430\u043A", "\u0421\u0435\u0440\u0430\u0434\u0430", "\u0427\u0430\u0446\u0432\u0435\u0440", "\u041F\u044F\u0442\u043D\u0456\u0446\u0430", "\u0421\u0443\u0431\u043E\u0442\u0430" };
-
- static final String[] shortWeekdays = { null, "\u041D\u044F\u0434", "\u041F\u0430\u043D", "\u0410\u045E\u0442", "\u0421\u0440\u0434", "\u0427\u0446\u0432", "\u041F\u044F\u0442", "\u0421\u0443\u0431" };
-
- static final String[] shortMonths = { "\u0421\u0442\u0434", "\u041B\u044E\u0442", "\u0421\u0430\u043A", "\u041A\u0440\u0441", "\u0422\u0440\u0430", "\u0427\u044D\u0440", "\u041B\u0456\u043F", "\u0416\u043D\u0432", "\u0412\u0440\u0441", "\u041A\u0441\u0442", "\u041B\u0456\u0441", "\u0421\u043D\u0436", null };
-
- static final String[] months = { "\u0421\u0442\u0443\u0434\u0437\u0435\u043D\u044C", "\u041B\u044E\u0442\u044B", "\u0421\u0430\u043A\u0430\u0432\u0456\u043A", "\u041A\u0440\u0430\u0441\u0430\u0432\u0456\u043A", "\u0422\u0440\u0430\u0432\u0435\u043D\u044C", "\u0427\u044D\u0440\u0432\u0435\u043D\u044C", "\u041B\u0456\u043F\u0435\u043D\u044C", "\u0416\u043D\u0456\u0432\u0435\u043D\u044C", "\u0412\u0435\u0440\u0430\u0441\u0435\u043D\u044C", "\u041A\u0430\u0441\u0442\u0440\u044B\u0447\u043D\u0456\u043A", "\u041B\u0456\u0441\u0442\u0430\u043F\u0430\u0434", "\u0421\u043D\u0435\u0436\u0430\u043D\u044C", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u0440\u0443\u0431";
- static final String intlCurrencySymbol = "BYB";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_bn_IN.h b/libjava/gnu/java/locale/LocaleInformation_bn_IN.h
deleted file mode 100644
index 24264ea85cc..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_bn_IN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_bn_IN__
-#define __gnu_java_locale_LocaleInformation_bn_IN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_bn_IN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_bn_IN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_bn_IN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_bn_IN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_bn_IN.java b/libjava/gnu/java/locale/LocaleInformation_bn_IN.java
deleted file mode 100644
index 6afe1113f5f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_bn_IN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_bn_IN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_bn_IN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##,##0.###";
- static final String percentFormat = "#,##,##0%";
- static final String[] weekdays = { null, "\u09B0\u09AC\u09BF\u09AC\u09BE\u09B0", "\u09B8\u09CB\u09AE\u09AC\u09BE\u09B0", "\u09AE\u0999\u0997\u09B2\u09AC\u09BE\u09B0", "\u09AC\u09C1\u09A7\u09AC\u09BE\u09B0", "\u09AC\u09C3\u09B9\u09B8\u09CD\u09AA\u09A4\u09BF\u09AC\u09BE\u09B0", "\u09B6\u09C1\u0995\u09CD\u09B0\u09AC\u09BE\u09B0", "\u09B6\u09A8\u09BF\u09AC\u09BE\u09B0" };
-
- static final String[] shortWeekdays = { null, "\u09B0\u09AC\u09BF", "\u09B8\u09CB\u09AE", "\u09AE\u0999\u0997\u09B2", "\u09AC\u09C1\u09A7", "\u09AC\u09C3\u09B9\u09B8\u09CD\u09AA\u09A4\u09BF", "\u09B6\u09C1\u0995\u09CD\u09B0", "\u09B6\u09A8\u09BF" };
-
- static final String[] shortMonths = { "\u099C\u09BE\u09A8\u09C1\u09DF\u09BE\u09B0\u09C0", "\u09AB\u09C7\u09AC\u09CD\u09B0\u09C1\u09DF\u09BE\u09B0\u09C0", "\u09AE\u09BE\u09B0\u09CD\u099A", "\u098F\u09AA\u09CD\u09B0\u09BF\u09B2", "\u09AE\u09C7", "\u099C\u09C1\u09A8", "\u099C\u09C1\u09B2\u09BE\u0987", "\u0986\u0997\u09B8\u09CD\u099F", "\u09B8\u09C7\u09AA\u09CD\u099F\u09C7\u09AE\u09CD\u09AC\u09B0", "\u0985\u0995\u09CD\u099F\u09CB\u09AC\u09B0", "\u09A8\u09AD\u09C7\u09AE\u09CD\u09AC\u09B0", "\u09A1\u09BF\u09B8\u09C7\u09AE\u09CD\u09AC\u09B0", null };
-
- static final String[] months = { "\u099C\u09BE\u09A8\u09C1\u09DF\u09BE\u09B0\u09C0", "\u09AB\u09C7\u09AC\u09CD\u09B0\u09C1\u09DF\u09BE\u09B0\u09C0", "\u09AE\u09BE\u09B0\u09CD\u099A", "\u098F\u09AA\u09CD\u09B0\u09BF\u09B2", "\u09AE\u09C7", "\u099C\u09C1\u09A8", "\u099C\u09C1\u09B2\u09BE\u0987", "\u0986\u0997\u09B8\u09CD\u099F", "\u09B8\u09C7\u09AA\u09CD\u099F\u09C7\u09AE\u09CD\u09AC\u09B0", "\u0985\u0995\u09CD\u099F\u09CB\u09AC\u09B0", "\u09A8\u09AD\u09C7\u09AE\u09CD\u09AC\u09B0", "\u09A1\u09BF\u09B8\u09C7\u09AE\u09CD\u09AC\u09B0", null };
-
- static final String[] ampms = { "\u09AA\u09C2\u09B0\u09CD\u09AC\u09BE\u09B9\u09CD\u09A3", "\u0985\u09AA\u09B0\u09BE\u09B9\u09CD\u09A3" };
-
- static final String shortDateFormat = "EEEE dd MMM yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "\u099F\u09BE\u0995\u09BE";
- static final String intlCurrencySymbol = "INR";
- static final String currencyFormat = "$ #,###,#0.00;-$ #,###,#0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_br_FR.h b/libjava/gnu/java/locale/LocaleInformation_br_FR.h
deleted file mode 100644
index 251ae2f4a10..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_br_FR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_br_FR__
-#define __gnu_java_locale_LocaleInformation_br_FR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_br_FR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_br_FR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_br_FR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_br_FR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_br_FR.java b/libjava/gnu/java/locale/LocaleInformation_br_FR.java
deleted file mode 100644
index a11eea484fe..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_br_FR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_br_FR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_br_FR extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "sul", "lun", "meurzh", "merc'her", "yaou", "gwener", "sadorn" };
-
- static final String[] shortWeekdays = { null, "sul", "lun", "meu", "mer", "yao", "gwe", "sad" };
-
- static final String[] shortMonths = { "Gen ", "C'hw", "Meu ", "Ebr ", "Mae ", "Eve ", "Gou ", "Eos ", "Gwe ", "Her ", "Du ", "Ker ", null };
-
- static final String[] months = { "Genver", "C'hwevrer", "Meurzh", "Ebrel", "Mae", "Mezheven", "Gouere", "Eost", "Gwengolo", "Here", "Du", "Kerzu", null };
-
- static final String[] ampms = { " ", " " };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "hhem:s a";
- static final String currencySymbol = "F";
- static final String intlCurrencySymbol = "FRF";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_bs_BA.h b/libjava/gnu/java/locale/LocaleInformation_bs_BA.h
deleted file mode 100644
index a71855e8969..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_bs_BA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_bs_BA__
-#define __gnu_java_locale_LocaleInformation_bs_BA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_bs_BA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_bs_BA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_bs_BA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_bs_BA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_bs_BA.java b/libjava/gnu/java/locale/LocaleInformation_bs_BA.java
deleted file mode 100644
index 829a0ab7af3..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_bs_BA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_bs_BA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_bs_BA extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "\u010Cetvrtak", "Petak", "Subota" };
-
- static final String[] shortWeekdays = { null, "Ned", "Pon", "Uto", "Sri", "\u010Cet", "Pet", "Sub" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec", null };
-
- static final String[] months = { "Januar", "Februar", "Mart", "April", "Maj", "Juni", "Juli", "August", "Septembar", "Oktobar", "Novembar", "Decembar", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "KM";
- static final String intlCurrencySymbol = "BAK";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ca_ES.h b/libjava/gnu/java/locale/LocaleInformation_ca_ES.h
deleted file mode 100644
index 659a2a1196b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ca_ES.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ca_ES__
-#define __gnu_java_locale_LocaleInformation_ca_ES__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ca_ES;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ca_ES : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ca_ES();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ca_ES__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ca_ES.java b/libjava/gnu/java/locale/LocaleInformation_ca_ES.java
deleted file mode 100644
index b2e57e82ae4..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ca_ES.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ca_ES.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ca_ES extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "diumenge", "dilluns", "dimarts", "dimecres", "dijous", "divendres", "dissabte" };
-
- static final String[] shortWeekdays = { null, "dg", "dl", "dt", "dc", "dj", "dv", "ds" };
-
- static final String[] shortMonths = { "gen", "feb", "mar", "abr", "mai", "jun", "jul", "ago", "set", "oct", "nov", "des", null };
-
- static final String[] months = { "gener", "febrer", "mar\u00E7", "abril", "maig", "juny", "juliol", "agost", "setembre", "octubre", "novembre", "desembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Pts";
- static final String intlCurrencySymbol = "ESP";
- static final String currencyFormat = "$ #,###,#0.;-$ #,###,#0.";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_cs_CZ.h b/libjava/gnu/java/locale/LocaleInformation_cs_CZ.h
deleted file mode 100644
index a871895e977..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_cs_CZ.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_cs_CZ__
-#define __gnu_java_locale_LocaleInformation_cs_CZ__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_cs_CZ;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_cs_CZ : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_cs_CZ();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_cs_CZ__
diff --git a/libjava/gnu/java/locale/LocaleInformation_cs_CZ.java b/libjava/gnu/java/locale/LocaleInformation_cs_CZ.java
deleted file mode 100644
index f9173174181..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_cs_CZ.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_cs_CZ.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_cs_CZ extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "\u00A0";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Ned\u011Ble", "Pond\u011Bl\u00ED", "\u00DAter\u00FD", "St\u0159eda", "\u010Ctvrtek", "P\u00E1tek", "Sobota" };
-
- static final String[] shortWeekdays = { null, "Ne", "Po", "\u00DAt", "St", "\u010Ct", "P\u00E1", "So" };
-
- static final String[] shortMonths = { "led", "\u00FAno", "b\u0159e", "dub", "kv\u011B", "\u010Den", "\u010Dec", "srp", "z\u00E1\u0159", "\u0159\u00EDj", "lis", "pro", null };
-
- static final String[] months = { "leden", "\u00FAnor", "b\u0159ezen", "duben", "kv\u011Bten", "\u010Derven", "\u010Dervenec", "srpen", "z\u00E1\u0159\u00ED", "\u0159\u00EDjen", "listopad", "prosinec", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "hh:m:s";
- static final String currencySymbol = "K\u010D";
- static final String intlCurrencySymbol = "CZK";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_cy_GB.h b/libjava/gnu/java/locale/LocaleInformation_cy_GB.h
deleted file mode 100644
index 150a1c4f14c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_cy_GB.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_cy_GB__
-#define __gnu_java_locale_LocaleInformation_cy_GB__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_cy_GB;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_cy_GB : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_cy_GB();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_cy_GB__
diff --git a/libjava/gnu/java/locale/LocaleInformation_cy_GB.java b/libjava/gnu/java/locale/LocaleInformation_cy_GB.java
deleted file mode 100644
index b284761dcbb..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_cy_GB.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_cy_GB.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_cy_GB extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_GB.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_GB.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_GB.numberFormat;
- static final String percentFormat = LocaleInformation_en_GB.percentFormat;
- static final String[] weekdays = { null, "Sul", "Llun", "Mawrth", "Mercher", "Iau", "Gwener", "Sadwrn" };
-
- static final String[] shortWeekdays = { null, "Sul", "Llu", "Maw", "Mer", "Iau", "Gwe", "Sad" };
-
- static final String[] shortMonths = { "Ion", "Chw", "Maw", "Ebr", "Mai", "Meh", "Gor", "Aws", "Med", "Hyd", "Tach", "Rha", null };
-
- static final String[] months = { "Ionawr", "Chwefror", "Mawrth", "Ebrill", "Mai", "Mehefin", "Gorffennaf", "Awst", "Medi", "Hydref", "Tachwedd", "Rhagfyr", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_en_GB.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_en_GB.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_en_GB.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_da_DK.h b/libjava/gnu/java/locale/LocaleInformation_da_DK.h
deleted file mode 100644
index 1f20d1bb6a1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_da_DK.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_da_DK__
-#define __gnu_java_locale_LocaleInformation_da_DK__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_da_DK;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_da_DK : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_da_DK();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_da_DK__
diff --git a/libjava/gnu/java/locale/LocaleInformation_da_DK.java b/libjava/gnu/java/locale/LocaleInformation_da_DK.java
deleted file mode 100644
index 6b6ff3d3071..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_da_DK.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_da_DK.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_da_DK extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "s\u00F8ndag", "mandag", "tirsdag", "onsdag", "torsdag", "fredag", "l\u00F8rdag" };
-
- static final String[] shortWeekdays = { null, "s\u00F8n", "man", "tir", "ons", "tor", "fre", "l\u00F8r" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "maj", "jun", "jul", "aug", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "januar", "februar", "marts", "april", "maj", "juni", "juli", "august", "september", "oktober", "november", "december", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd-MM-yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "kr";
- static final String intlCurrencySymbol = "DKK";
- static final String currencyFormat = "$ #,###,##0.00;$ -#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_de.h b/libjava/gnu/java/locale/LocaleInformation_de.h
deleted file mode 100644
index ed1bde66188..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de.h
+++ /dev/null
@@ -1,59 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_de__
-#define __gnu_java_locale_LocaleInformation_de__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_de;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_de : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_de();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-private:
- static ::java::lang::String * collation_rules;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * eras;
- static JArray< JArray< ::java::lang::String * > * > * zoneStrings;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * mediumDateFormat;
- static ::java::lang::String * longDateFormat;
- static ::java::lang::String * fullDateFormat;
- static ::java::lang::String * defaultDateFormat;
- static ::java::lang::String * shortTimeFormat;
- static ::java::lang::String * mediumTimeFormat;
- static ::java::lang::String * longTimeFormat;
- static ::java::lang::String * fullTimeFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * monetarySeparator;
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_de__
diff --git a/libjava/gnu/java/locale/LocaleInformation_de.java b/libjava/gnu/java/locale/LocaleInformation_de.java
deleted file mode 100644
index a76f8cef1bd..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de.java
+++ /dev/null
@@ -1,230 +0,0 @@
-/* LocaleInformation_de.java -- German locale data
- Copyright (C) 1999, 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-/**
- * This class contains locale data for the German locale
- * @author Jochen Hoenicke
- */
-public class LocaleInformation_de extends ListResourceBundle
-{
-
-/*
- * This area is used for defining object values
- */
-
-/**
- * This is the set of collation rules used by java.text.RuleBasedCollator
- * to sort strings properly. See the documentation of that class for the
- * proper format.
- */
-private static final String collation_rules =
- "<0<1<2<3<4<5<6<7<8<9<A,a<b,B<c,C<d,D<e,E<f,F<g,G<h,H<i,I<j,J<k,K" +
- "<l,L<m,M<n,N<o,O<p,P<q,Q<r,R<s,S<t,T<u,U<v,V<w,W<x,X<y,Y<z,Z" +
- "&ae,\u00e4&Ae,\u00c4&oe,\u00f6&Oe,\u00d6&ue,\u00fc&Ue,\u00dc&ss,\u00df";
-
-/**
- * This is the list of months, fully spelled out
- */
-private static final String[] months = { "Januar", "Februar", "M\u00e4rz",
- "April", "Mai", "Juni", "Juli", "August", "September", "Oktober",
- "November", "Dezember", null };
-
-/**
- * This is the list of abbreviated month names
- */
-private static final String[] shortMonths = {
- "Jan", "Feb", "M\u00e4r", "Apr", "Mai",
- "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez", null
-};
-
-/**
- * This is the list of weekdays, fully spelled out
- */
-private static final String[] weekdays = {
- null, "Sonntag", "Montag", "Dienstag",
- "Mittwoch", "Donnerstag", "Freitag", "Samstag"
-};
-
-/**
- * This is the list of abbreviated weekdays
- */
-private static final String[] shortWeekdays = {
- null, "So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"
-};
-
-/**
- * This is the list of era identifiers
- */
-private static final String[] eras = { "v. Chr.", "n. Chr." };
-
-/**
- * This is the list of timezone strings. The JDK appears to include a
- * city name as the sixth element.
- */
-private static final String[][] zoneStrings =
-{
- // European time zones. The city names are a little bit random.
- { "WET", "Westeurop\u00e4ische Zeit", "WEZ", "Westeurop\u00e4ische Sommerzeit", "WESZ", "London" },
- { "CET", "Mitteleurop\u00e4ische Zeit", "MEZ", "Mitteleurop\u00e4ische Sommerzeit", "MESZ", "Berlin" },
- { "EET", "Osteurop\u00e4ische Zeit", "OEZ", "Mitteleurop\u00e4ische Sommerzeit", "OESZ", "Istanbul" },
-};
-
-/**
- * This is the DateFormat.SHORT date format
- */
-private static final String shortDateFormat = "dd.MM.yy";
-
-/**
- * This is the DateFormat.MEDIUM format
- */
-private static final String mediumDateFormat = "d. MMM yy";
-
-/**
- * This is the DateFormat.LONG format
- */
-private static final String longDateFormat = "d. MMMM yyyy";
-
-/**
- * This is the DateFormat.FULL format
- */
-private static final String fullDateFormat = "EEEE, d. MMMM yyyy";
-
-/**
- * This is the DateFormat.DEFAULT format
- */
-private static final String defaultDateFormat = "dd.MM.yy";
-
-/**
- * This is the DateFormat.SHORT format
- */
-private static final String shortTimeFormat = "H:mm";
-
-/**
- * This is the DateFormat.MEDIUM format
- */
-private static final String mediumTimeFormat = "H:mm:ss";
-
-/**
- * This is the DateFormat.LONG format
- */
-private static final String longTimeFormat = "H:mm:ss z";
-
-/**
- * This is the DateFormat.FULL format
- */
-private static final String fullTimeFormat = "H:mm:ss 'Uhr' z";
-
-/**
- * This is the DateFormat.DEFAULT format
- */
-private static final String defaultTimeFormat = "H:mm:ss";
-
-/**
- * This is the currency symbol
- */
-private static final String currencySymbol = "DM";
-
-/**
- * This is the international currency symbol.
- */
-private static final String intlCurrencySymbol = "DEM";
-
-/**
- * This is the decimal point.
- */
-private static final String decimalSeparator = ",";
-
-/**
- * This is the decimal separator in monetary values.
- */
-private static final String monetarySeparator = ",";
-
-/*************************************************************************/
-
-/**
- * This is the object array used to hold the keys and values
- * for this bundle
- */
-
-private static final Object[][] contents =
-{
- // For RuleBasedCollator
- { "collation_rules", collation_rules },
- // For SimpleDateFormat/DateFormatSymbols
- { "months", months },
- { "shortMonths", shortMonths },
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "eras", eras },
- { "zoneStrings", zoneStrings },
- { "shortDateFormat", shortDateFormat },
- { "mediumDateFormat", mediumDateFormat },
- { "longDateFormat", longDateFormat },
- { "fullDateFormat", fullDateFormat },
- { "defaultDateFormat", defaultDateFormat },
- { "shortTimeFormat", shortTimeFormat },
- { "mediumTimeFormat", mediumTimeFormat },
- { "longTimeFormat", longTimeFormat },
- { "fullTimeFormat", fullTimeFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- // For DecimalFormat/DecimalFormatSymbols
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "decimalSeparator", decimalSeparator },
- { "monetarySeparator", monetarySeparator },
-};
-
-/*************************************************************************/
-
-/**
- * This method returns the object array of key, value pairs containing
- * the data for this bundle.
- *
- * @return The key, value information.
- */
-public Object[][]
-getContents()
-{
- return(contents);
-}
-
-} // class LocaleInformation_de
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_AT.h b/libjava/gnu/java/locale/LocaleInformation_de_AT.h
deleted file mode 100644
index a8bdd954e9d..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_AT.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_de_AT__
-#define __gnu_java_locale_LocaleInformation_de_AT__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_de_AT;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_de_AT : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_de_AT();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_de_AT__
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_AT.java b/libjava/gnu/java/locale/LocaleInformation_de_AT.java
deleted file mode 100644
index 9afd597cc0b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_AT.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_de_AT.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_de_AT extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag" };
-
- static final String[] shortWeekdays = { null, "Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam" };
-
- static final String[] shortMonths = { "J\u00E4n", "Feb", "M\u00E4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez", null };
-
- static final String[] months = { "J\u00E4nner", "Feber", "M\u00E4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "S";
- static final String intlCurrencySymbol = "ATS";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_BE.h b/libjava/gnu/java/locale/LocaleInformation_de_BE.h
deleted file mode 100644
index 1b82c400722..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_BE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_de_BE__
-#define __gnu_java_locale_LocaleInformation_de_BE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_de_BE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_de_BE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_de_BE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_de_BE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_BE.java b/libjava/gnu/java/locale/LocaleInformation_de_BE.java
deleted file mode 100644
index 5a9163d739c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_BE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_de_BE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_de_BE extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_de_DE.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_de_DE.groupingSeparator;
- static final String numberFormat = LocaleInformation_de_DE.numberFormat;
- static final String percentFormat = LocaleInformation_de_DE.percentFormat;
- static final String[] weekdays = { null, "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag" };
-
- static final String[] shortWeekdays = { null, "Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam" };
-
- static final String[] shortMonths = { "Jan", "Feb", "M\u00E4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez", null };
-
- static final String[] months = { "Januar", "Februar", "M\u00E4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Fr";
- static final String intlCurrencySymbol = "BEF";
- static final String currencyFormat = "$ #,###,##0.00;$ -#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_CH.h b/libjava/gnu/java/locale/LocaleInformation_de_CH.h
deleted file mode 100644
index b1294cda235..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_CH.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_de_CH__
-#define __gnu_java_locale_LocaleInformation_de_CH__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_de_CH;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_de_CH : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_de_CH();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_de_CH__
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_CH.java b/libjava/gnu/java/locale/LocaleInformation_de_CH.java
deleted file mode 100644
index fd9970b9ed5..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_CH.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_de_CH.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_de_CH extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = " ";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag" };
-
- static final String[] shortWeekdays = { null, "Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam" };
-
- static final String[] shortMonths = { "Jan", "Feb", "M\u00E4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez", null };
-
- static final String[] months = { "Januar", "Februar", "M\u00E4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Fr.";
- static final String intlCurrencySymbol = "CHF";
- static final String currencyFormat = "$ #,###,##0.00;$ -#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_DE.h b/libjava/gnu/java/locale/LocaleInformation_de_DE.h
deleted file mode 100644
index fe3ae5e6334..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_DE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_de_DE__
-#define __gnu_java_locale_LocaleInformation_de_DE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_de_DE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_de_DE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_de_DE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_de_DE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_DE.java b/libjava/gnu/java/locale/LocaleInformation_de_DE.java
deleted file mode 100644
index 6704d256d9b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_DE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_de_DE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_de_DE extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag" };
-
- static final String[] shortWeekdays = { null, "Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam" };
-
- static final String[] shortMonths = { "Jan", "Feb", "M\u00E4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez", null };
-
- static final String[] months = { "Januar", "Februar", "M\u00E4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "DM";
- static final String intlCurrencySymbol = "DEM";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_LU.h b/libjava/gnu/java/locale/LocaleInformation_de_LU.h
deleted file mode 100644
index 0a567655cd8..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_LU.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_de_LU__
-#define __gnu_java_locale_LocaleInformation_de_LU__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_de_LU;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_de_LU : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_de_LU();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_de_LU__
diff --git a/libjava/gnu/java/locale/LocaleInformation_de_LU.java b/libjava/gnu/java/locale/LocaleInformation_de_LU.java
deleted file mode 100644
index 30a9715523e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_de_LU.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_de_LU.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_de_LU extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_de_DE.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_de_DE.groupingSeparator;
- static final String numberFormat = LocaleInformation_de_DE.numberFormat;
- static final String percentFormat = LocaleInformation_de_DE.percentFormat;
- static final String[] weekdays = { null, "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag" };
-
- static final String[] shortWeekdays = { null, "Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam" };
-
- static final String[] shortMonths = { "Jan", "Feb", "M\u00E4r", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez", null };
-
- static final String[] months = { "Januar", "Februar", "M\u00E4rz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "FLUX";
- static final String intlCurrencySymbol = "LUF";
- static final String currencyFormat = "$ #,###,##0.00;$ -#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_el_GR.h b/libjava/gnu/java/locale/LocaleInformation_el_GR.h
deleted file mode 100644
index da89dd3872c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_el_GR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_el_GR__
-#define __gnu_java_locale_LocaleInformation_el_GR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_el_GR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_el_GR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_el_GR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_el_GR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_el_GR.java b/libjava/gnu/java/locale/LocaleInformation_el_GR.java
deleted file mode 100644
index af8fb92547e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_el_GR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_el_GR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_el_GR extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "\u039A\u03C5\u03C1\u03B9\u03B1\u03BA\u03B7", "\u0394\u03B5\u03C5\u03C4\u03AD\u03C1\u03B1", "\u03A4\u03C1\u03AF\u03C4\u03B7", "\u03A4\u03B5\u03C4\u03AC\u03C1\u03C4\u03B7", "\u03A0\u03AD\u03BC\u03C0\u03C4\u03B7", "\u03A0\u03B1\u03C1\u03B1\u03C3\u03BA\u03B5\u03C5\u03AE", "\u03A3\u03B1\u03B2\u03B2\u03AC\u03C4\u03BF" };
-
- static final String[] shortWeekdays = { null, "\u039A\u03C5\u03C1", "\u0394\u03B5\u03C5", "\u03A4\u03C1\u03B9", "\u03A4\u03B5\u03C4", "\u03A0\u03B5\u03BC", "\u03A0\u03B1\u03C1", "\u03A3\u03B1\u03B2" };
-
- static final String[] shortMonths = { "\u0399\u03B1\u03BD", "\u03A6\u03B5\u03B2", "\u039C\u03AC\u03C1", "\u0391\u03C0\u03C1", "\u039C\u03AC\u03B9", "\u0399\u03BF\u03CD\u03BD", "\u0399\u03BF\u03CD\u03BB", "\u0391\u03CD\u03B3", "\u03A3\u03B5\u03C0", "\u039F\u03BA\u03C4", "\u039D\u03BF\u03AD", "\u0394\u03B5\u03BA", null };
-
- static final String[] months = { "\u0399\u03B1\u03BD\u03BF\u03AC\u03C1\u03B9\u03BF\u03C2", "\u03A6\u03B5\u03B2\u03C1\u03BF\u03AC\u03C1\u03B9\u03BF\u03C2", "\u039C\u03AC\u03C1\u03C4\u03B9\u03BF\u03C2", "\u0391\u03C0\u03C1\u03AF\u03BB\u03B9\u03BF\u03C2", "\u039C\u03AC\u03B9\u03BF\u03C2", "\u0399\u03BF\u03CD\u03BD\u03B9\u03BF\u03C2", "\u0399\u03BF\u03CD\u03BB\u03B9\u03BF\u03C2", "\u0391\u03CD\u03B3\u03BF\u03C5\u03C3\u03C4\u03BF\u03C2", "\u03A3\u03B5\u03C0\u03C4\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2", "\u039F\u03BA\u03C4\u03CE\u03B2\u03C1\u03B9\u03BF\u03C2", "\u039D\u03BF\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2", "\u0394\u03B5\u03BA\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u03B4\u03C1\u03C7";
- static final String intlCurrencySymbol = "GRD";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en.h b/libjava/gnu/java/locale/LocaleInformation_en.h
deleted file mode 100644
index 0aeba5a2f8c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en.h
+++ /dev/null
@@ -1,46 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en__
-#define __gnu_java_locale_LocaleInformation_en__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-private:
- static ::java::lang::String * collation_rules;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * ampms;
- static JArray< ::java::lang::String * > * eras;
- static JArray< JArray< ::java::lang::String * > * > * zoneStrings;
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en.java b/libjava/gnu/java/locale/LocaleInformation_en.java
deleted file mode 100644
index 04c9c3ba5b4..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en.java
+++ /dev/null
@@ -1,207 +0,0 @@
-/* LocaleInformation_en.java -- US English locale data
- Copyright (C) 1998, 1999, 2001, 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-/**
- * This class contains locale data for English.
- */
-public class LocaleInformation_en extends ListResourceBundle
-{
-
- /*
- * This area is used for defining object values
- */
-
- /**
- * This is the set of collation rules used by java.text.RuleBasedCollator
- * to sort strings properly. See the documentation of that class for the
- * proper format.
- */
- // FIXME: this is nowhere near complete.
- // In particular we must mark accents as ignorable,
- // and probably other things as well.
- private static final String collation_rules =
- "<0<1<2<3<4<5<6<7<8<9<A,a<b,B<c,C<d,D<e,E<f,F<g,G<h,H<i,I<j,J<k,K" +
- "<l,L<m,M<n,N<o,O<p,P<q,Q<r,R<s,S<t,T<u,U<v,V<w,W<x,X<y,Y<z,Z";
-
- /**
- * This is the list of months, fully spelled out
- */
- private static final String[] months =
- {
- "January", "February", "March", "April", "May", "June",
- "July", "August", "September", "October", "November", "December", null
- };
-
- /**
- * This is the list of abbreviated month names
- */
- private static final String[] shortMonths =
- {
- "Jan", "Feb", "Mar", "Apr", "May", "Jun",
- "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null
- };
-
- /**
- * This is the list of weekdays, fully spelled out
- */
- private static final String[] weekdays =
- {
- null, "Sunday", "Monday", "Tuesday", "Wednesday",
- "Thursday", "Friday", "Saturday"
- };
-
- /**
- * This is the list of abbreviated weekdays
- */
- private static final String[] shortWeekdays =
- {
- null, "Sun", "Mon", "Tue", "Wed",
- "Thu", "Fri", "Sat"
- };
-
- /**
- * This is the list of AM/PM strings
- */
- private static final String[] ampms = { "AM", "PM" };
-
- /**
- * This is the list of era identifiers
- */
- private static final String[] eras = { "BC", "AD" };
-
- private static final String[][] zoneStrings =
- {
- { "GMT", "Greenwich Mean Time", "GMT",
- /**/ "Greenwich Mean Time", "GMT", "GMT" },
- { "PST", "Pacific Standard Time", "PST",
- /**/ "Pacific Daylight Time", "PDT", "San Francisco" },
- { "MST", "Mountain Standard Time", "MST",
- /**/ "Mountain Daylight Time", "MDT", "Denver" },
- { "PNT", "Mountain Standard Time", "MST",
- /**/ "Mountain Standard Time", "MST", "Phoenix" },
- { "CST", "Central Standard Time", "CST",
- /**/ "Central Daylight Time", "CDT", "Chicago" },
- { "EST", "Eastern Standard Time", "EST",
- /**/ "Eastern Daylight Time", "EDT", "Boston" },
- { "IET", "Eastern Standard Time", "EST",
- /**/ "Eastern Standard Time", "EST", "Indianapolis" },
- { "PRT", "Atlantic Standard Time", "AST",
- /**/ "Atlantic Daylight Time", "ADT", "Halifax" },
- { "CNT", "Newfoundland Standard Time", "NST",
- /**/ "Newfoundland Daylight Time", "NDT", "St. Johns" },
- { "ECT", "Central European Standard Time", "CET",
- /**/ "Central European Daylight Time", "CEST", "Paris" },
- { "CTT", "China Standard Time", "CST",
- /**/ "China Standard Time", "CST", "Shanghai" },
- { "JST", "Japan Standard Time", "JST",
- /**/ "Japan Standard Time", "JST", "Tokyo" },
- { "HST", "Hawaii Standard Time", "HST",
- /**/ "Hawaii Standard Time", "HST", "Honolulu" },
- { "AST", "Alaska Standard Time", "AKST",
- /**/ "Alaska Daylight Time", "AKDT", "Anchorage" }
- };
-
- /*************************************************************************/
-
- /**
- * This is the object array used to hold the keys and values
- * for this bundle
- */
-
- private static final Object[][] contents =
- {
- // For RuleBasedCollator
- { "collation_rules", collation_rules },
-
- // For SimpleDateFormat/DateFormatSymbols
- { "months", months },
- { "shortMonths", shortMonths },
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "ampms", ampms },
- { "eras", eras },
- { "localPatternChars", "GyMdkHmsSEDFwWahKzYeugAZ" },
- { "zoneStrings", zoneStrings },
-
- { "shortDateFormat", "M/d/yy" }, // Java's Y2K bug.
- { "mediumDateFormat", "d-MMM-yy" },
- { "longDateFormat", "MMMM d, yyyy" },
- { "fullDateFormat", "EEEE MMMM d, yyyy G" },
- { "defaultDateFormat", "d-MMMM-yy" },
- { "shortTimeFormat", "h:mm a" },
- { "mediumTimeFormat", "h:mm:ss a" },
- { "longTimeFormat", "h:mm:ss a z" },
- { "fullTimeFormat", "h:mm:ss;S 'o''clock' a z" },
- { "defaultTimeFormat", "h:mm:ss a" },
-
- // For DecimalFormat/DecimalFormatSymbols
- { "decimalSeparator", "." },
- { "digit", "#" },
- { "exponential", "E" },
- { "groupingSeparator", "," },
- { "infinity", "\u221e" },
- { "NaN", "\ufffd" },
- { "minusSign", "-" },
- { "monetarySeparator", "." },
- { "patternSeparator", ";" },
- { "percent", "%" },
- { "perMill", "\u2030" },
- { "zeroDigit", "0" },
-
- // For NumberFormat.
- { "numberFormat", "#,##0.###" },
- { "percentFormat", "#,##0%" },
- };
-
- /*************************************************************************/
-
- /**
- * This method returns the object array of key, value pairs containing
- * the data for this bundle.
- *
- * @return The key, value information.
- */
- public Object[][] getContents ()
- {
- return contents;
- }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_AU.h b/libjava/gnu/java/locale/LocaleInformation_en_AU.h
deleted file mode 100644
index 0b6267b21ea..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_AU.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_AU__
-#define __gnu_java_locale_LocaleInformation_en_AU__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_AU;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_AU : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_AU();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_AU__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_AU.java b/libjava/gnu/java/locale/LocaleInformation_en_AU.java
deleted file mode 100644
index 351f1264092..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_AU.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_AU.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_AU extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "AUD";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_BW.h b/libjava/gnu/java/locale/LocaleInformation_en_BW.h
deleted file mode 100644
index 95cd728346d..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_BW.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_BW__
-#define __gnu_java_locale_LocaleInformation_en_BW__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_BW;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_BW : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_BW();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_BW__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_BW.java b/libjava/gnu/java/locale/LocaleInformation_en_BW.java
deleted file mode 100644
index 345070d48d4..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_BW.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_BW.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_BW extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_ZA.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_ZA.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_ZA.numberFormat;
- static final String percentFormat = LocaleInformation_en_ZA.percentFormat;
- static final String[] weekdays = LocaleInformation_en_ZA.weekdays;
-
- static final String[] shortWeekdays = LocaleInformation_en_ZA.shortWeekdays;
-
- static final String[] shortMonths = LocaleInformation_en_ZA.shortMonths;
-
- static final String[] months = LocaleInformation_en_ZA.months;
-
- static final String[] ampms = LocaleInformation_en_ZA.ampms;
-
- static final String shortDateFormat = LocaleInformation_en_ZA.shortDateFormat;
- static final String defaultTimeFormat = LocaleInformation_en_ZA.defaultTimeFormat;
- static final String currencySymbol = "Pu";
- static final String intlCurrencySymbol = "BWP";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_CA.h b/libjava/gnu/java/locale/LocaleInformation_en_CA.h
deleted file mode 100644
index d5d86f75d4f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_CA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_CA__
-#define __gnu_java_locale_LocaleInformation_en_CA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_CA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_CA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_CA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_CA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_CA.java b/libjava/gnu/java/locale/LocaleInformation_en_CA.java
deleted file mode 100644
index a156466dc6a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_CA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_CA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_CA extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "hh:m:s a";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "CAD";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_DK.h b/libjava/gnu/java/locale/LocaleInformation_en_DK.h
deleted file mode 100644
index 703921f29f2..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_DK.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_DK__
-#define __gnu_java_locale_LocaleInformation_en_DK__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_DK;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_DK : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_DK();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_DK__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_DK.java b/libjava/gnu/java/locale/LocaleInformation_en_DK.java
deleted file mode 100644
index f646f36a42d..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_DK.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_DK.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_DK extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u00A4";
- static final String intlCurrencySymbol = "DKK";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_GB.h b/libjava/gnu/java/locale/LocaleInformation_en_GB.h
deleted file mode 100644
index 8ca4d334467..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_GB.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_GB__
-#define __gnu_java_locale_LocaleInformation_en_GB__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_GB;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_GB : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_GB();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_GB__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_GB.java b/libjava/gnu/java/locale/LocaleInformation_en_GB.java
deleted file mode 100644
index 75ecb1819db..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_GB.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_GB.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_GB extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u00A3";
- static final String intlCurrencySymbol = "GBP";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_HK.h b/libjava/gnu/java/locale/LocaleInformation_en_HK.h
deleted file mode 100644
index 84b99a2badd..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_HK.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_HK__
-#define __gnu_java_locale_LocaleInformation_en_HK__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_HK;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_HK : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_HK();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_HK__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_HK.java b/libjava/gnu/java/locale/LocaleInformation_en_HK.java
deleted file mode 100644
index 65a7baf9feb..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_HK.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_HK.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_HK extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "EEEE, MMMM dd, yyyy";
- static final String defaultTimeFormat = "ahh:m:s z";
- static final String currencySymbol = "HK$";
- static final String intlCurrencySymbol = "HKD";
- static final String currencyFormat = "$#,##0.00;($#,##0.00)";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_IE.h b/libjava/gnu/java/locale/LocaleInformation_en_IE.h
deleted file mode 100644
index f7aad1a9a7e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_IE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_IE__
-#define __gnu_java_locale_LocaleInformation_en_IE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_IE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_IE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_IE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_IE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_IE.java b/libjava/gnu/java/locale/LocaleInformation_en_IE.java
deleted file mode 100644
index 883e4a48e37..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_IE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_IE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_IE extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_GB.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_GB.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_GB.numberFormat;
- static final String percentFormat = LocaleInformation_en_GB.percentFormat;
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u00A3";
- static final String intlCurrencySymbol = "IEP";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_IN.h b/libjava/gnu/java/locale/LocaleInformation_en_IN.h
deleted file mode 100644
index 9e38fb2d824..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_IN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_IN__
-#define __gnu_java_locale_LocaleInformation_en_IN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_IN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_IN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_IN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_IN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_IN.java b/libjava/gnu/java/locale/LocaleInformation_en_IN.java
deleted file mode 100644
index 2eea83a62c7..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_IN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_IN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_IN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##,##0.###";
- static final String percentFormat = "#,##,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "EEEE dd MMMM yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "\u20A8";
- static final String intlCurrencySymbol = "INR";
- static final String currencyFormat = "$ #,##,##0.00;-$ #,##,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_NZ.h b/libjava/gnu/java/locale/LocaleInformation_en_NZ.h
deleted file mode 100644
index 1493f27da60..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_NZ.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_NZ__
-#define __gnu_java_locale_LocaleInformation_en_NZ__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_NZ;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_NZ : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_NZ();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_NZ__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_NZ.java b/libjava/gnu/java/locale/LocaleInformation_en_NZ.java
deleted file mode 100644
index 0a5c5ceee5d..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_NZ.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_NZ.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_NZ extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "NZD";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_PH.h b/libjava/gnu/java/locale/LocaleInformation_en_PH.h
deleted file mode 100644
index e9251b117ed..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_PH.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_PH__
-#define __gnu_java_locale_LocaleInformation_en_PH__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_PH;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_PH : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_PH();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_PH__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_PH.java b/libjava/gnu/java/locale/LocaleInformation_en_PH.java
deleted file mode 100644
index 72debdd7ec6..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_PH.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_PH.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_PH extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "EEEE, dd MMMM, yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "Php";
- static final String intlCurrencySymbol = "PHP";
- static final String currencyFormat = "$#,##0.00;($#,##0.00)";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_SG.h b/libjava/gnu/java/locale/LocaleInformation_en_SG.h
deleted file mode 100644
index 7b46bb3e07c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_SG.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_SG__
-#define __gnu_java_locale_LocaleInformation_en_SG__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_SG;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_SG : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_SG();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_SG__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_SG.java b/libjava/gnu/java/locale/LocaleInformation_en_SG.java
deleted file mode 100644
index f34448636eb..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_SG.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_SG.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_SG extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "EEEE dd,MMMM,yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "SGD";
- static final String currencyFormat = "$#,##0.00;($#,##0.00)";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_US.h b/libjava/gnu/java/locale/LocaleInformation_en_US.h
deleted file mode 100644
index 9875c5b286f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_US.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_US__
-#define __gnu_java_locale_LocaleInformation_en_US__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_US;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_US : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_US();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_US__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_US.java b/libjava/gnu/java/locale/LocaleInformation_en_US.java
deleted file mode 100644
index 7a5fd8332b6..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_US.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_US.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_US extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "MM/dd/yyyy";
- static final String defaultTimeFormat = "hh:m:s a";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "USD";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_ZA.h b/libjava/gnu/java/locale/LocaleInformation_en_ZA.h
deleted file mode 100644
index 88aef9206bc..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_ZA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_ZA__
-#define __gnu_java_locale_LocaleInformation_en_ZA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_ZA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_ZA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_ZA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_ZA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_ZA.java b/libjava/gnu/java/locale/LocaleInformation_en_ZA.java
deleted file mode 100644
index 36dcb274760..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_ZA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_ZA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_ZA extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" };
-
- static final String[] shortWeekdays = { null, "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
-
- static final String[] shortMonths = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", null };
-
- static final String[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "R";
- static final String intlCurrencySymbol = "ZAR";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_ZW.h b/libjava/gnu/java/locale/LocaleInformation_en_ZW.h
deleted file mode 100644
index 05794a9a213..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_ZW.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_en_ZW__
-#define __gnu_java_locale_LocaleInformation_en_ZW__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_en_ZW;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_en_ZW : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_en_ZW();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_en_ZW__
diff --git a/libjava/gnu/java/locale/LocaleInformation_en_ZW.java b/libjava/gnu/java/locale/LocaleInformation_en_ZW.java
deleted file mode 100644
index 0f9fb4a9748..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_en_ZW.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_en_ZW.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_en_ZW extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_ZA.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_ZA.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_ZA.numberFormat;
- static final String percentFormat = LocaleInformation_en_ZA.percentFormat;
- static final String[] weekdays = LocaleInformation_en_ZA.weekdays;
-
- static final String[] shortWeekdays = LocaleInformation_en_ZA.shortWeekdays;
-
- static final String[] shortMonths = LocaleInformation_en_ZA.shortMonths;
-
- static final String[] months = LocaleInformation_en_ZA.months;
-
- static final String[] ampms = LocaleInformation_en_ZA.ampms;
-
- static final String shortDateFormat = LocaleInformation_en_ZA.shortDateFormat;
- static final String defaultTimeFormat = LocaleInformation_en_ZA.defaultTimeFormat;
- static final String currencySymbol = "Z$";
- static final String intlCurrencySymbol = "ZWD";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_AR.h b/libjava/gnu/java/locale/LocaleInformation_es_AR.h
deleted file mode 100644
index fc665e37c23..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_AR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_AR__
-#define __gnu_java_locale_LocaleInformation_es_AR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_AR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_AR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_AR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_AR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_AR.java b/libjava/gnu/java/locale/LocaleInformation_es_AR.java
deleted file mode 100644
index 42d3c76a7e1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_AR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_AR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_AR extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "ARS";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_BO.h b/libjava/gnu/java/locale/LocaleInformation_es_BO.h
deleted file mode 100644
index 5fc8d518570..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_BO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_BO__
-#define __gnu_java_locale_LocaleInformation_es_BO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_BO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_BO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_BO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_BO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_BO.java b/libjava/gnu/java/locale/LocaleInformation_es_BO.java
deleted file mode 100644
index 01a98098dfb..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_BO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_BO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_BO extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$b";
- static final String intlCurrencySymbol = "BOB";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_CL.h b/libjava/gnu/java/locale/LocaleInformation_es_CL.h
deleted file mode 100644
index 27d5bb4c3c9..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_CL.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_CL__
-#define __gnu_java_locale_LocaleInformation_es_CL__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_CL;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_CL : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_CL();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_CL__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_CL.java b/libjava/gnu/java/locale/LocaleInformation_es_CL.java
deleted file mode 100644
index 73c93ff848d..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_CL.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_CL.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_CL extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "CLP";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_CO.h b/libjava/gnu/java/locale/LocaleInformation_es_CO.h
deleted file mode 100644
index 2bcae306959..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_CO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_CO__
-#define __gnu_java_locale_LocaleInformation_es_CO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_CO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_CO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_CO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_CO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_CO.java b/libjava/gnu/java/locale/LocaleInformation_es_CO.java
deleted file mode 100644
index 25100a04df1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_CO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_CO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_CO extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "COP";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_CR.h b/libjava/gnu/java/locale/LocaleInformation_es_CR.h
deleted file mode 100644
index c051184dec6..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_CR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_CR__
-#define __gnu_java_locale_LocaleInformation_es_CR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_CR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_CR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_CR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_CR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_CR.java b/libjava/gnu/java/locale/LocaleInformation_es_CR.java
deleted file mode 100644
index d0e5a51fe40..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_CR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_CR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_CR extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "C";
- static final String intlCurrencySymbol = "CRC";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_DO.h b/libjava/gnu/java/locale/LocaleInformation_es_DO.h
deleted file mode 100644
index 76e75996cfa..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_DO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_DO__
-#define __gnu_java_locale_LocaleInformation_es_DO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_DO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_DO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_DO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_DO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_DO.java b/libjava/gnu/java/locale/LocaleInformation_es_DO.java
deleted file mode 100644
index 33d64a9ff19..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_DO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_DO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_DO extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "DOP";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_EC.h b/libjava/gnu/java/locale/LocaleInformation_es_EC.h
deleted file mode 100644
index cda5b98034f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_EC.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_EC__
-#define __gnu_java_locale_LocaleInformation_es_EC__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_EC;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_EC : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_EC();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_EC__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_EC.java b/libjava/gnu/java/locale/LocaleInformation_es_EC.java
deleted file mode 100644
index d6025461a00..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_EC.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_EC.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_EC extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "ECS";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_ES.h b/libjava/gnu/java/locale/LocaleInformation_es_ES.h
deleted file mode 100644
index c3047114501..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_ES.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_ES__
-#define __gnu_java_locale_LocaleInformation_es_ES__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_ES;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_ES : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_ES();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_ES__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_ES.java b/libjava/gnu/java/locale/LocaleInformation_es_ES.java
deleted file mode 100644
index 5a25106c877..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_ES.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_ES.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_ES extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Pts";
- static final String intlCurrencySymbol = "ESP";
- static final String currencyFormat = "$ #,###,##0.;-$ #,###,##0.";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_GT.h b/libjava/gnu/java/locale/LocaleInformation_es_GT.h
deleted file mode 100644
index 36ed4e25f07..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_GT.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_GT__
-#define __gnu_java_locale_LocaleInformation_es_GT__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_GT;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_GT : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_GT();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_GT__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_GT.java b/libjava/gnu/java/locale/LocaleInformation_es_GT.java
deleted file mode 100644
index 435549bd424..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_GT.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_GT.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_GT extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Q";
- static final String intlCurrencySymbol = "GTQ";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_HN.h b/libjava/gnu/java/locale/LocaleInformation_es_HN.h
deleted file mode 100644
index 11369dd85db..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_HN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_HN__
-#define __gnu_java_locale_LocaleInformation_es_HN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_HN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_HN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_HN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_HN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_HN.java b/libjava/gnu/java/locale/LocaleInformation_es_HN.java
deleted file mode 100644
index 90366d41720..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_HN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_HN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_HN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "L.";
- static final String intlCurrencySymbol = "HNL";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_MX.h b/libjava/gnu/java/locale/LocaleInformation_es_MX.h
deleted file mode 100644
index 5c944f123aa..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_MX.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_MX__
-#define __gnu_java_locale_LocaleInformation_es_MX__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_MX;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_MX : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_MX();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_MX__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_MX.java b/libjava/gnu/java/locale/LocaleInformation_es_MX.java
deleted file mode 100644
index e5060c9b8f2..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_MX.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_MX.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_MX extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "MXP";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_NI.h b/libjava/gnu/java/locale/LocaleInformation_es_NI.h
deleted file mode 100644
index e9733a2d3d6..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_NI.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_NI__
-#define __gnu_java_locale_LocaleInformation_es_NI__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_NI;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_NI : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_NI();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_NI__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_NI.java b/libjava/gnu/java/locale/LocaleInformation_es_NI.java
deleted file mode 100644
index 4b9bb07d09c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_NI.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_NI.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_NI extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$C";
- static final String intlCurrencySymbol = "NIO";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_PA.h b/libjava/gnu/java/locale/LocaleInformation_es_PA.h
deleted file mode 100644
index 3f47027613a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_PA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_PA__
-#define __gnu_java_locale_LocaleInformation_es_PA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_PA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_PA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_PA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_PA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_PA.java b/libjava/gnu/java/locale/LocaleInformation_es_PA.java
deleted file mode 100644
index 8461d0a95e0..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_PA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_PA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_PA extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "B/";
- static final String intlCurrencySymbol = "PAB";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_PE.h b/libjava/gnu/java/locale/LocaleInformation_es_PE.h
deleted file mode 100644
index e6aac1ea1c8..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_PE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_PE__
-#define __gnu_java_locale_LocaleInformation_es_PE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_PE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_PE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_PE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_PE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_PE.java b/libjava/gnu/java/locale/LocaleInformation_es_PE.java
deleted file mode 100644
index 49474c7ec6e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_PE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_PE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_PE extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "S/";
- static final String intlCurrencySymbol = "PEN";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_PR.h b/libjava/gnu/java/locale/LocaleInformation_es_PR.h
deleted file mode 100644
index 8ee47388cd1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_PR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_PR__
-#define __gnu_java_locale_LocaleInformation_es_PR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_PR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_PR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_PR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_PR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_PR.java b/libjava/gnu/java/locale/LocaleInformation_es_PR.java
deleted file mode 100644
index 376f1716dc1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_PR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_PR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_PR extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "USD";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_PY.h b/libjava/gnu/java/locale/LocaleInformation_es_PY.h
deleted file mode 100644
index 24edae871b2..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_PY.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_PY__
-#define __gnu_java_locale_LocaleInformation_es_PY__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_PY;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_PY : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_PY();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_PY__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_PY.java b/libjava/gnu/java/locale/LocaleInformation_es_PY.java
deleted file mode 100644
index 0e649d08069..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_PY.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_PY.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_PY extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Gs.";
- static final String intlCurrencySymbol = "PYG";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_SV.h b/libjava/gnu/java/locale/LocaleInformation_es_SV.h
deleted file mode 100644
index 8907f3d724a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_SV.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_SV__
-#define __gnu_java_locale_LocaleInformation_es_SV__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_SV;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_SV : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_SV();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_SV__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_SV.java b/libjava/gnu/java/locale/LocaleInformation_es_SV.java
deleted file mode 100644
index ef0b89e73df..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_SV.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_SV.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_SV extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u00A2";
- static final String intlCurrencySymbol = "SVC";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_US.h b/libjava/gnu/java/locale/LocaleInformation_es_US.h
deleted file mode 100644
index ad462d97115..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_US.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_US__
-#define __gnu_java_locale_LocaleInformation_es_US__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_US;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_US : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_US();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_US__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_US.java b/libjava/gnu/java/locale/LocaleInformation_es_US.java
deleted file mode 100644
index 6b5d5db0e8c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_US.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_US.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_US extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_US.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_US.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_US.numberFormat;
- static final String percentFormat = LocaleInformation_en_US.percentFormat;
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "USD";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_UY.h b/libjava/gnu/java/locale/LocaleInformation_es_UY.h
deleted file mode 100644
index 7c0a1b6dbc9..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_UY.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_UY__
-#define __gnu_java_locale_LocaleInformation_es_UY__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_UY;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_UY : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_UY();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_UY__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_UY.java b/libjava/gnu/java/locale/LocaleInformation_es_UY.java
deleted file mode 100644
index 1be0f339461..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_UY.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_UY.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_UY extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "N$";
- static final String intlCurrencySymbol = "UYU";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_VE.h b/libjava/gnu/java/locale/LocaleInformation_es_VE.h
deleted file mode 100644
index eafea044caa..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_VE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_es_VE__
-#define __gnu_java_locale_LocaleInformation_es_VE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_es_VE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_es_VE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_es_VE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_es_VE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_es_VE.java b/libjava/gnu/java/locale/LocaleInformation_es_VE.java
deleted file mode 100644
index 09f5b177a1d..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_es_VE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_es_VE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_es_VE extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "lunes", "martes", "mi\u00E9rcoles", "jueves", "viernes", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mi\u00E9", "jue", "vie", "s\u00E1b" };
-
- static final String[] shortMonths = { "ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic", null };
-
- static final String[] months = { "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Bs.";
- static final String intlCurrencySymbol = "VEB";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_et_EE.h b/libjava/gnu/java/locale/LocaleInformation_et_EE.h
deleted file mode 100644
index a267270629e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_et_EE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_et_EE__
-#define __gnu_java_locale_LocaleInformation_et_EE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_et_EE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_et_EE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_et_EE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_et_EE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_et_EE.java b/libjava/gnu/java/locale/LocaleInformation_et_EE.java
deleted file mode 100644
index 314b05d5a74..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_et_EE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_et_EE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_et_EE extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "\u00A0";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "p\u00FChap\u00E4ev", "esmasp\u00E4ev", "teisip\u00E4ev", "kolmap\u00E4ev", "neljap\u00E4ev", "reede", "laup\u00E4ev" };
-
- static final String[] shortWeekdays = { null, "P", "E", "T", "K", "N", "R", "L" };
-
- static final String[] shortMonths = { "jaan ", "veebr", "m\u00E4rts", "apr ", "mai ", "juuni", "juuli", "aug ", "sept ", "okt ", "nov ", "dets ", null };
-
- static final String[] months = { "jaanuar", "veebruar", "m\u00E4rts", "aprill", "mai", "juuni", "juuli", "august", "september", "oktoober", "november", "detsember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "kr";
- static final String intlCurrencySymbol = "EEK";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_eu_ES.h b/libjava/gnu/java/locale/LocaleInformation_eu_ES.h
deleted file mode 100644
index 107351cfa8b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_eu_ES.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_eu_ES__
-#define __gnu_java_locale_LocaleInformation_eu_ES__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_eu_ES;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_eu_ES : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_eu_ES();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_eu_ES__
diff --git a/libjava/gnu/java/locale/LocaleInformation_eu_ES.java b/libjava/gnu/java/locale/LocaleInformation_eu_ES.java
deleted file mode 100644
index 5187fda3549..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_eu_ES.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_eu_ES.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_eu_ES extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "igandea", "astelehena", "asteartea", "asteazkena", "osteguna", "ostirala", "larunbata" };
-
- static final String[] shortWeekdays = { null, "iga", "leh", "art", "azk", "teg", "tir", "lar" };
-
- static final String[] shortMonths = { "urt", "ots", "mar", "api", "mai", "eka", "uzt", "abu", "ira", "urr", "aza", "abe", null };
-
- static final String[] months = { "urtarrila", "otsaila", "martxoa", "apirila", "maiatza", "ekaina", "uztaila", "abuztua", "iraila", "urria", "azaroa", "abendua", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Pts";
- static final String intlCurrencySymbol = "ESP";
- static final String currencyFormat = "$ #,###,##0.;-$ #,###,##0.";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_fa_IR.h b/libjava/gnu/java/locale/LocaleInformation_fa_IR.h
deleted file mode 100644
index e0f5c813300..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fa_IR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_fa_IR__
-#define __gnu_java_locale_LocaleInformation_fa_IR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_fa_IR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_fa_IR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_fa_IR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_fa_IR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_fa_IR.java b/libjava/gnu/java/locale/LocaleInformation_fa_IR.java
deleted file mode 100644
index 0decadcd883..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fa_IR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_fa_IR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_fa_IR extends ListResourceBundle
-{
- static final String decimalSeparator = "\u066B";
- static final String groupingSeparator = "\u066C";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u06CC\u06A9\u200C\u0634\u0646\u0628\u0647", "\u062F\u0648\u0634\u0646\u0628\u0647", "\u0633\u0647\u200C\u0634\u0646\u0628\u0647", "\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647", "\u067E\u0646\u062C\u200C\u0634\u0646\u0628\u0647", "\u062C\u0645\u0639\u0647", "\u0634\u0646\u0628\u0647" };
-
- static final String[] shortWeekdays = { null, "\u06CC.", "\u062F.", "\u0633.", "\u0686.", "\u067E.", "\u062C.", "\u0634." };
-
- static final String[] shortMonths = { "\u0698\u0627\u0646", "\u0641\u0648\u0631", "\u0645\u0627\u0631", "\u0622\u0648\u0631", "\u0645\u0640\u0647", "\u0698\u0648\u0646", "\u0698\u0648\u06CC", "\u0627\u0648\u062A", "\u0633\u067E\u062A", "\u0627\u0643\u062A", "\u0646\u0648\u0627", "\u062F\u0633\u0627", null };
-
- static final String[] months = { "\u0698\u0627\u0646\u0648\u06CC\u0647", "\u0641\u0648\u0631\u06CC\u0647", "\u0645\u0627\u0631\u0633", "\u0622\u0648\u0631\u06CC\u0644", "\u0645\u0647", "\u0698\u0648\u0626\u0646", "\u0698\u0648\u0626\u06CC\u0647", "\u0627\u0648\u062A", "\u0633\u067E\u062A\u0627\u0645\u0628\u0631", "\u0627\u0643\u062A\u0628\u0631", "\u0646\u0648\u0627\u0645\u0628\u0631", "\u062F\u0633\u0627\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635\u0628\u062D", "\u0639\u0635\u0631" };
-
- static final String shortDateFormat = "yyyy/MM/dd";
- static final String defaultTimeFormat = "hh:m:s a";
- static final String currencySymbol = "\u0631\u06CC\u0627\u0644";
- static final String intlCurrencySymbol = "IRR";
- static final String currencyFormat = "#,##0. $;-#,##0. $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_fi_FI.h b/libjava/gnu/java/locale/LocaleInformation_fi_FI.h
deleted file mode 100644
index ec45eccaa62..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fi_FI.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_fi_FI__
-#define __gnu_java_locale_LocaleInformation_fi_FI__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_fi_FI;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_fi_FI : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_fi_FI();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_fi_FI__
diff --git a/libjava/gnu/java/locale/LocaleInformation_fi_FI.java b/libjava/gnu/java/locale/LocaleInformation_fi_FI.java
deleted file mode 100644
index 888034af9ec..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fi_FI.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_fi_FI.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_fi_FI extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "sunnuntai", "maanantai", "tiistai", "keskiviikko", "torstai", "perjantai", "lauantai" };
-
- static final String[] shortWeekdays = { null, "su", "ma", "ti", "ke", "to", "pe", "la" };
-
- static final String[] shortMonths = { "tammi\u00A0", "helmi\u00A0", "maalis", "huhti\u00A0", "touko\u00A0", "kes\u00E4\u00A0\u00A0", "hein\u00E4\u00A0", "elo\u00A0\u00A0\u00A0", "syys\u00A0\u00A0", "loka\u00A0\u00A0", "marras", "joulu\u00A0", null };
-
- static final String[] months = { "tammikuu", "helmikuu", "maaliskuu", "huhtikuu", "toukokuu", "kes\u00E4kuu", "hein\u00E4kuu", "elokuu", "syyskuu", "lokakuu", "marraskuu", "joulukuu", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "mk";
- static final String intlCurrencySymbol = "FIM";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_fo_FO.h b/libjava/gnu/java/locale/LocaleInformation_fo_FO.h
deleted file mode 100644
index ad6afd8de37..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fo_FO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_fo_FO__
-#define __gnu_java_locale_LocaleInformation_fo_FO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_fo_FO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_fo_FO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_fo_FO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_fo_FO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_fo_FO.java b/libjava/gnu/java/locale/LocaleInformation_fo_FO.java
deleted file mode 100644
index 1d49612bec6..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fo_FO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_fo_FO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_fo_FO extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_da_DK.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_da_DK.groupingSeparator;
- static final String numberFormat = LocaleInformation_da_DK.numberFormat;
- static final String percentFormat = LocaleInformation_da_DK.percentFormat;
- static final String[] weekdays = { null, "sunnudagur", "m\u00E1nadagur", "t\u00FDsdagur", "mikudagur", "h\u00F3sdagur", "fr\u00EDggjadagur", "leygardagur" };
-
- static final String[] shortWeekdays = { null, "sun", "m\u00E1n", "t\u00FDs", "mik", "h\u00F3s", "fr\u00ED", "ley" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "mai", "jun", "jul", "aug", "sep", "okt", "nov", "des", null };
-
- static final String[] months = { "januar", "februar", "mars", "apr\u00EDl", "mai", "juni", "juli", "august", "september", "oktober", "november", "desember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM-yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_da_DK.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_da_DK.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_da_DK.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_BE.h b/libjava/gnu/java/locale/LocaleInformation_fr_BE.h
deleted file mode 100644
index dd2430b6ec2..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_BE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_fr_BE__
-#define __gnu_java_locale_LocaleInformation_fr_BE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_fr_BE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_fr_BE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_fr_BE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_fr_BE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_BE.java b/libjava/gnu/java/locale/LocaleInformation_fr_BE.java
deleted file mode 100644
index 999f1fab9a4..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_BE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_fr_BE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_fr_BE extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi" };
-
- static final String[] shortWeekdays = { null, "dim", "lun", "mar", "mer", "jeu", "ven", "sam" };
-
- static final String[] shortMonths = { "jan", "f\u00E9v", "mar", "avr", "mai", "jun", "jui", "ao\u00FB", "sep", "oct", "nov", "d\u00E9c", null };
-
- static final String[] months = { "janvier", "f\u00E9vrier", "mars", "avril", "mai", "juin", "juillet", "ao\u00FBt", "septembre", "octobre", "novembre", "d\u00E9cembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "FB";
- static final String intlCurrencySymbol = "BEF";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_CA.h b/libjava/gnu/java/locale/LocaleInformation_fr_CA.h
deleted file mode 100644
index 151f50ba0f3..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_CA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_fr_CA__
-#define __gnu_java_locale_LocaleInformation_fr_CA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_fr_CA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_fr_CA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_fr_CA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_fr_CA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_CA.java b/libjava/gnu/java/locale/LocaleInformation_fr_CA.java
deleted file mode 100644
index 1b47cdc5074..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_CA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_fr_CA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_fr_CA extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = " ";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi" };
-
- static final String[] shortWeekdays = { null, "dim", "lun", "mar", "mer", "jeu", "ven", "sam" };
-
- static final String[] shortMonths = { "jan", "f\u00E9v", "mar", "avr", "mai", "jun", "jui", "ao\u00FB", "sep", "oct", "nov", "d\u00E9c", null };
-
- static final String[] months = { "janvier", "f\u00E9vrier", "mars", "avril", "mai", "juin", "juillet", "ao\u00FBt", "septembre", "octobre", "novembre", "d\u00E9cembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "CAD";
- static final String currencyFormat = "#,###,##0.00 $;(#,###,##0.00 $)";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_CH.h b/libjava/gnu/java/locale/LocaleInformation_fr_CH.h
deleted file mode 100644
index ae0c3be4899..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_CH.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_fr_CH__
-#define __gnu_java_locale_LocaleInformation_fr_CH__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_fr_CH;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_fr_CH : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_fr_CH();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_fr_CH__
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_CH.java b/libjava/gnu/java/locale/LocaleInformation_fr_CH.java
deleted file mode 100644
index 7b011a29dc8..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_CH.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_fr_CH.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_fr_CH extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi" };
-
- static final String[] shortWeekdays = { null, "dim", "lun", "mar", "mer", "jeu", "ven", "sam" };
-
- static final String[] shortMonths = { "jan", "f\u00E9v", "mar", "avr", "mai", "jun", "jui", "ao\u00FB", "sep", "oct", "nov", "d\u00E9c", null };
-
- static final String[] months = { "janvier", "f\u00E9vrier", "mars", "avril", "mai", "juin", "juillet", "ao\u00FBt", "septembre", "octobre", "novembre", "d\u00E9cembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd. MM. yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_de_CH.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_de_CH.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_de_CH.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_FR.h b/libjava/gnu/java/locale/LocaleInformation_fr_FR.h
deleted file mode 100644
index 71ce984ed4b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_FR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_fr_FR__
-#define __gnu_java_locale_LocaleInformation_fr_FR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_fr_FR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_fr_FR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_fr_FR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_fr_FR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_FR.java b/libjava/gnu/java/locale/LocaleInformation_fr_FR.java
deleted file mode 100644
index a53032a4263..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_FR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_fr_FR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_fr_FR extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi" };
-
- static final String[] shortWeekdays = { null, "dim", "lun", "mar", "mer", "jeu", "ven", "sam" };
-
- static final String[] shortMonths = { "jan", "f\u00E9v", "mar", "avr", "mai", "jun", "jui", "ao\u00FB", "sep", "oct", "nov", "d\u00E9c", null };
-
- static final String[] months = { "janvier", "f\u00E9vrier", "mars", "avril", "mai", "juin", "juillet", "ao\u00FBt", "septembre", "octobre", "novembre", "d\u00E9cembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "F";
- static final String intlCurrencySymbol = "FRF";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_LU.h b/libjava/gnu/java/locale/LocaleInformation_fr_LU.h
deleted file mode 100644
index f1a51b5260d..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_LU.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_fr_LU__
-#define __gnu_java_locale_LocaleInformation_fr_LU__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_fr_LU;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_fr_LU : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_fr_LU();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_fr_LU__
diff --git a/libjava/gnu/java/locale/LocaleInformation_fr_LU.java b/libjava/gnu/java/locale/LocaleInformation_fr_LU.java
deleted file mode 100644
index 03080d7b2f4..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_fr_LU.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_fr_LU.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_fr_LU extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi" };
-
- static final String[] shortWeekdays = { null, "dim", "lun", "mar", "mer", "jeu", "ven", "sam" };
-
- static final String[] shortMonths = { "jan", "f\u00E9v", "mar", "avr", "mai", "jun", "jui", "ao\u00FB", "sep", "oct", "nov", "d\u00E9c", null };
-
- static final String[] months = { "janvier", "f\u00E9vrier", "mars", "avril", "mai", "juin", "juillet", "ao\u00FBt", "septembre", "octobre", "novembre", "d\u00E9cembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "FLUX";
- static final String intlCurrencySymbol = "LUF";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ga_IE.h b/libjava/gnu/java/locale/LocaleInformation_ga_IE.h
deleted file mode 100644
index 63a0703dbb8..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ga_IE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ga_IE__
-#define __gnu_java_locale_LocaleInformation_ga_IE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ga_IE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ga_IE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ga_IE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ga_IE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ga_IE.java b/libjava/gnu/java/locale/LocaleInformation_ga_IE.java
deleted file mode 100644
index e85d8e59b39..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ga_IE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ga_IE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ga_IE extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "D\u00E9 Domhnaigh", "D\u00E9 Luain", "D\u00E9 M\u00E1irt", "D\u00E9 C\u00E9adaoin", "D\u00E9ardaoin", "D\u00E9 hAoine", "D\u00E9 Sathairn" };
-
- static final String[] shortWeekdays = { null, "Domh", "Luan", "M\u00E1irt", "C\u00E9ad", "D\u00E9ar", "Aoine", "Sath" };
-
- static final String[] shortMonths = { "Ean", "Feabh", "M\u00E1rta", "Aib", "Beal", "Meith", "I\u00FAil", "L\u00FAn", "MF\u00F3mh", "DF\u00F3mh", "Samh", "Noll", null };
-
- static final String[] months = { "Ean\u00E1ir", "Feabhra", "M\u00E1rta", "Aibre\u00E1n", "M\u00ED na Bealtaine", "Meith", "I\u00FAil", "L\u00FAnasa", "Me\u00E1n F\u00F3mhair", "Deireadh F\u00F3mhair", "M\u00ED na Samhna", "M\u00ED na Nollag", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u00A3";
- static final String intlCurrencySymbol = "IEP";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_gd_GB.h b/libjava/gnu/java/locale/LocaleInformation_gd_GB.h
deleted file mode 100644
index 4ae0fd27df9..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_gd_GB.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_gd_GB__
-#define __gnu_java_locale_LocaleInformation_gd_GB__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_gd_GB;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_gd_GB : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_gd_GB();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_gd_GB__
diff --git a/libjava/gnu/java/locale/LocaleInformation_gd_GB.java b/libjava/gnu/java/locale/LocaleInformation_gd_GB.java
deleted file mode 100644
index 0f359782b01..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_gd_GB.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_gd_GB.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_gd_GB extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_GB.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_GB.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_GB.numberFormat;
- static final String percentFormat = LocaleInformation_en_GB.percentFormat;
- static final String[] weekdays = { null, "Did\u00F2mhnaich", "Diluain", "Dim\u00E0irt", "Diciadain", "Diardaoin", "Dihaoine", "Disathairne" };
-
- static final String[] shortWeekdays = { null, "Dido", "Dilu", "Dim", "Dic", "Diar", "Diha", "Disa" };
-
- static final String[] shortMonths = { "Fao", "Gea", "M\u00E0r", "Gib", "Mh\u00E0", "OgM", "luc", "L\u00F9n", "Sul", "Dam", "Sam", "D\u00F9b", null };
-
- static final String[] months = { "Am Faoilteach", "An Gearran", "Am M\u00E0rt", "An Giblean", "A' Mh\u00E0igh", "An t-Mh\u00ECos", "An t-luchar", "An L\u00F9nasdal", "An t-Sultain", "An Damhair", "An t-Samhain", "An D\u00F9bhlachd", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_en_GB.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_en_GB.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_en_GB.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_gl_ES.h b/libjava/gnu/java/locale/LocaleInformation_gl_ES.h
deleted file mode 100644
index 6daee1ba8e2..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_gl_ES.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_gl_ES__
-#define __gnu_java_locale_LocaleInformation_gl_ES__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_gl_ES;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_gl_ES : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_gl_ES();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_gl_ES__
diff --git a/libjava/gnu/java/locale/LocaleInformation_gl_ES.java b/libjava/gnu/java/locale/LocaleInformation_gl_ES.java
deleted file mode 100644
index de55c8d2324..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_gl_ES.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_gl_ES.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_gl_ES extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "Domingo", "Luns", "Martes", "M\u00E9rcores", "Xoves", "Venres", "S\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "Dom", "Lun", "Mar", "M\u00E9r", "Xov", "Ven", "S\u00E1b" };
-
- static final String[] shortMonths = { "Xan", "Feb", "Mar", "Abr", "Mai", "Xu\u00F1", "Xul", "Ago", "Set", "Out", "Nov", "Dec", null };
-
- static final String[] months = { "Xaneiro", "Febreiro", "Marzo", "Abril", "Maio", "Xu\u00F1o", "Xullo", "Agosto", "Setembro", "Outubro", "Novembro", "Decembro", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Pta";
- static final String intlCurrencySymbol = "ESP";
- static final String currencyFormat = "$ #,###,##0.;-$ #,###,##0.";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_gv_GB.h b/libjava/gnu/java/locale/LocaleInformation_gv_GB.h
deleted file mode 100644
index 82b81dbbf40..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_gv_GB.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_gv_GB__
-#define __gnu_java_locale_LocaleInformation_gv_GB__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_gv_GB;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_gv_GB : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_gv_GB();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_gv_GB__
diff --git a/libjava/gnu/java/locale/LocaleInformation_gv_GB.java b/libjava/gnu/java/locale/LocaleInformation_gv_GB.java
deleted file mode 100644
index b0e3c1bfad3..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_gv_GB.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_gv_GB.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_gv_GB extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Jedoonee", "Jelhein", "Jemayrt", "Jercean", "Jerdein", "Jeheiney", "Jesarn" };
-
- static final String[] shortWeekdays = { null, "Jed", "Jel", "Jem", "Jerc", "Jerd", "Jeh", "Jes" };
-
- static final String[] shortMonths = { "J-guer", "T-arree", "Mayrnt", "Avrril", "Boaldyn", "M-souree", "J-souree", "Luanistyn", "M-fouyir", "J-fouyir", "M.Houney", "M.Nollick", null };
-
- static final String[] months = { "Jerrey-geuree", "Toshiaght-arree", "Mayrnt", "Averil", "Boaldyn", "Mean-souree", "Jerrey-souree", "Luanistyn", "Mean-fouyir", "Jerrey-fouyir", "Mee Houney", "Mee ny Nollick", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u00A3";
- static final String intlCurrencySymbol = "GBP";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_he_IL.h b/libjava/gnu/java/locale/LocaleInformation_he_IL.h
deleted file mode 100644
index f53e5d47b6e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_he_IL.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_he_IL__
-#define __gnu_java_locale_LocaleInformation_he_IL__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_he_IL;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_he_IL : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_he_IL();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_he_IL__
diff --git a/libjava/gnu/java/locale/LocaleInformation_he_IL.java b/libjava/gnu/java/locale/LocaleInformation_he_IL.java
deleted file mode 100644
index feea0b2de79..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_he_IL.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_he_IL.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_he_IL extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u05E8\u05D0\u05E9\u05D5\u05DF", "\u05E9\u05E0\u05D9", "\u05E9\u05DC\u05D9\u05E9\u05D9", "\u05E8\u05D1\u05D9\u05E2\u05D9", "\u05D7\u05DE\u05D9\u05E9\u05D9", "\u05E9\u05D9\u05E9\u05D9", "\u05E9\u05D1\u05EA" };
-
- static final String[] shortWeekdays = { null, "\u05D0'", "\u05D1'", "\u05D2'", "\u05D3'", "\u05D4'", "\u05D5'", "\u05E9'" };
-
- static final String[] shortMonths = { "\u05D9\u05E0\u05D5", "\u05E4\u05D1\u05E8", "\u05DE\u05E8\u05E5", "\u05D0\u05E4\u05E8", "\u05DE\u05D0\u05D9", "\u05D9\u05D5\u05E0", "\u05D9\u05D5\u05DC", "\u05D0\u05D5\u05D2", "\u05E1\u05E4\u05D8", "\u05D0\u05D5\u05E7", "\u05E0\u05D5\u05D1", "\u05D3\u05E6\u05DE", null };
-
- static final String[] months = { "\u05D9\u05E0\u05D5\u05D0\u05E8", "\u05E4\u05D1\u05E8\u05D5\u05D0\u05E8", "\u05DE\u05E8\u05E5", "\u05D0\u05E4\u05E8\u05D9\u05DC", "\u05DE\u05D0\u05D9", "\u05D9\u05D5\u05E0\u05D9", "\u05D9\u05D5\u05DC\u05D9", "\u05D0\u05D5\u05D2\u05D5\u05E1\u05D8", "\u05E1\u05E4\u05D8\u05DE\u05D1\u05E8", "\u05D0\u05D5\u05E7\u05D8\u05D5\u05D1\u05E8", "\u05E0\u05D5\u05D1\u05DE\u05D1\u05E8", "\u05D3\u05E6\u05DE\u05D1\u05E8", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "hh:m:s a";
- static final String currencySymbol = "\u05E9\u05D7";
- static final String intlCurrencySymbol = "ILS";
- static final String currencyFormat = "$ #,###,##0.00;$ #,###,##0.00-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_hi_IN.h b/libjava/gnu/java/locale/LocaleInformation_hi_IN.h
deleted file mode 100644
index dcdbce454e6..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_hi_IN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_hi_IN__
-#define __gnu_java_locale_LocaleInformation_hi_IN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_hi_IN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_hi_IN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_hi_IN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_hi_IN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_hi_IN.java b/libjava/gnu/java/locale/LocaleInformation_hi_IN.java
deleted file mode 100644
index a7ff74caea3..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_hi_IN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_hi_IN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_hi_IN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0930\u0935\u093F\u0935\u093E\u0930 ", "\u0938\u094B\u092E\u0935\u093E\u0930 ", "\u092E\u0902\u0917\u0932\u0935\u093E\u0930 ", "\u092C\u0941\u0927\u0935\u093E\u0930 ", "\u0917\u0941\u0930\u0941\u0935\u093E\u0930 ", "\u0936\u0941\u0915\u094D\u0930\u0935\u093E\u0930 ", "\u0936\u0928\u093F\u0935\u093E\u0930 " };
-
- static final String[] shortWeekdays = { null, "\u0930\u0935\u093F ", "\u0938\u094B\u092E ", "\u092E\u0902\u0917\u0932 ", "\u092C\u0941\u0927 ", "\u0917\u0941\u0930\u0941 ", "\u0936\u0941\u0915\u094D\u0930 ", "\u0936\u0928\u093F " };
-
- static final String[] shortMonths = { "\u091C\u0928\u0935\u0930\u0940", "\u092B\u093C\u0930\u0935\u0930\u0940", "\u092E\u093E\u0930\u094D\u091A", "\u0905\u092A\u094D\u0930\u0947\u0932", "\u092E\u0908", "\u091C\u0942\u0928", "\u091C\u0941\u0932\u093E\u0908", "\u0905\u0917\u0938\u094D\u0924", "\u0938\u093F\u0924\u092E\u094D\u092C\u0930", "\u0905\u0915\u094D\u091F\u0942\u092C\u0930", "\u0928\u0935\u092E\u094D\u092C\u0930", "\u0926\u093F\u0938\u092E\u094D\u092C\u0930", null };
-
- static final String[] months = { "\u091C\u0928\u0935\u0930\u0940", "\u092B\u093C\u0930\u0935\u0930\u0940", "\u092E\u093E\u0930\u094D\u091A", "\u0905\u092A\u094D\u0930\u0947\u0932", "\u092E\u0908", "\u091C\u0942\u0928", "\u091C\u0941\u0932\u093E\u0908", "\u0905\u0917\u0938\u094D\u0924", "\u0938\u093F\u0924\u092E\u094D\u092C\u0930", "\u0905\u0915\u094D\u091F\u0942\u092C\u0930", "\u0928\u0935\u092E\u094D\u092C\u0930", "\u0926\u093F\u0938\u092E\u094D\u092C\u0930", null };
-
- static final String[] ampms = { "\u092A\u0942\u0930\u094D\u0935\u093E\u0939\u094D\u0928", "\u0905\u092A\u0930\u093E\u0939\u094D\u0928" };
-
- static final String shortDateFormat = "EEEE dd MMM yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "\u0930\u0942";
- static final String intlCurrencySymbol = "INR";
- static final String currencyFormat = "$ #,##0.00;-$ #,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_hr_HR.h b/libjava/gnu/java/locale/LocaleInformation_hr_HR.h
deleted file mode 100644
index ff1fd9fdd6a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_hr_HR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_hr_HR__
-#define __gnu_java_locale_LocaleInformation_hr_HR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_hr_HR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_hr_HR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_hr_HR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_hr_HR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_hr_HR.java b/libjava/gnu/java/locale/LocaleInformation_hr_HR.java
deleted file mode 100644
index 0719a974834..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_hr_HR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_hr_HR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_hr_HR extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "\u010Cetvrtak", "Petak", "Subota" };
-
- static final String[] shortWeekdays = { null, "Ned", "Pon", "Uto", "Sri", "\u010Cet", "Pet", "Sub" };
-
- static final String[] shortMonths = { "Sij", "Vel", "O\u017Eu", "Tra", "Svi", "Lip", "Srp", "Kol", "Ruj", "Lis", "Stu", "Pro", null };
-
- static final String[] months = { "Sije\u010Danj", "Velja\u010Da", "O\u017Eujak", "Travanj", "Svibanj", "Lipanj", "Srpanj", "Kolovoz", "Rujan", "Listopad", "Studeni", "Prosinac", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Kn";
- static final String intlCurrencySymbol = "HRK";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_hu_HU.h b/libjava/gnu/java/locale/LocaleInformation_hu_HU.h
deleted file mode 100644
index e4521bb83eb..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_hu_HU.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_hu_HU__
-#define __gnu_java_locale_LocaleInformation_hu_HU__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_hu_HU;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_hu_HU : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_hu_HU();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_hu_HU__
diff --git a/libjava/gnu/java/locale/LocaleInformation_hu_HU.java b/libjava/gnu/java/locale/LocaleInformation_hu_HU.java
deleted file mode 100644
index 3491b07e0db..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_hu_HU.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_hu_HU.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_hu_HU extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "VAS\u00C1RNAP", "H\u00C9TF\u0150", "KEDD", "SZERDA", "CS\u00DCT\u00D6RT\u00D6K", "P\u00C9NTEK", "SZOMBAT" };
-
- static final String[] shortWeekdays = { null, "V", "H", "K", "SZE", "CS", "P", "SZO" };
-
- static final String[] shortMonths = { "JAN", "FEB", "M\u00C1R", "\u00C1PR", "M\u00C1J", "J\u00DAN", "J\u00DAL", "AUG", "SZE", "OKT", "NOV", "DEC", null };
-
- static final String[] months = { "JANU\u00C1R", "FEBRU\u00C1R", "M\u00C1RCIUS", "\u00C1PRILIS", "M\u00C1JUS", "J\u00DANIUS", "J\u00DALIUS", "AUGUSZTUS", "SZEPTEMBER", "OKT\u00D3BER", "NOVEMBER", "DECEMBER", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "FT";
- static final String intlCurrencySymbol = "HUF";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_id_ID.h b/libjava/gnu/java/locale/LocaleInformation_id_ID.h
deleted file mode 100644
index 9cc9a6771bf..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_id_ID.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_id_ID__
-#define __gnu_java_locale_LocaleInformation_id_ID__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_id_ID;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_id_ID : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_id_ID();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_id_ID__
diff --git a/libjava/gnu/java/locale/LocaleInformation_id_ID.java b/libjava/gnu/java/locale/LocaleInformation_id_ID.java
deleted file mode 100644
index caa9bf51845..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_id_ID.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_id_ID.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_id_ID extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu" };
-
- static final String[] shortWeekdays = { null, "Min", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab" };
-
- static final String[] shortMonths = { "Jan", "Peb", "Mar", "Apr", "Mei", "Jun", "Jul", "Agu", "Sep", "Okt", "Nov", "Des", null };
-
- static final String[] months = { "Januari", "Pebruari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Rp";
- static final String intlCurrencySymbol = "IDR";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_it_CH.h b/libjava/gnu/java/locale/LocaleInformation_it_CH.h
deleted file mode 100644
index 9f4a532a70b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_it_CH.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_it_CH__
-#define __gnu_java_locale_LocaleInformation_it_CH__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_it_CH;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_it_CH : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_it_CH();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_it_CH__
diff --git a/libjava/gnu/java/locale/LocaleInformation_it_CH.java b/libjava/gnu/java/locale/LocaleInformation_it_CH.java
deleted file mode 100644
index 1b13342b8b9..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_it_CH.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_it_CH.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_it_CH extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "'";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "domenica", "luned\u00EC", "marted\u00EC", "mercoled\u00EC", "gioved\u00EC", "venerd\u00EC", "sabato" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mer", "gio", "ven", "sab" };
-
- static final String[] shortMonths = { "gen", "feb", "mar", "apr", "mag", "giu", "lug", "ago", "set", "ott", "nov", "dic", null };
-
- static final String[] months = { "gennaio", "febbraio", "marzo", "aprile", "maggio", "giugno", "luglio", "agosto", "settembre", "ottobre", "novembre", "dicembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd. MM. yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_de_CH.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_de_CH.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_de_CH.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_it_IT.h b/libjava/gnu/java/locale/LocaleInformation_it_IT.h
deleted file mode 100644
index 9a609df670b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_it_IT.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_it_IT__
-#define __gnu_java_locale_LocaleInformation_it_IT__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_it_IT;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_it_IT : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_it_IT();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_it_IT__
diff --git a/libjava/gnu/java/locale/LocaleInformation_it_IT.java b/libjava/gnu/java/locale/LocaleInformation_it_IT.java
deleted file mode 100644
index c261385d426..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_it_IT.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_it_IT.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_it_IT extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domenica", "luned\u00EC", "marted\u00EC", "mercoled\u00EC", "gioved\u00EC", "venerd\u00EC", "sabato" };
-
- static final String[] shortWeekdays = { null, "dom", "lun", "mar", "mer", "gio", "ven", "sab" };
-
- static final String[] shortMonths = { "gen", "feb", "mar", "apr", "mag", "giu", "lug", "ago", "set", "ott", "nov", "dic", null };
-
- static final String[] months = { "gennaio", "febbraio", "marzo", "aprile", "maggio", "giugno", "luglio", "agosto", "settembre", "ottobre", "novembre", "dicembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "L.";
- static final String intlCurrencySymbol = "ITL";
- static final String currencyFormat = "$ #,###,##0.;-$ #,###,##0.";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_iw_IL.h b/libjava/gnu/java/locale/LocaleInformation_iw_IL.h
deleted file mode 100644
index 4dffbed802e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_iw_IL.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_iw_IL__
-#define __gnu_java_locale_LocaleInformation_iw_IL__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_iw_IL;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_iw_IL : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_iw_IL();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_iw_IL__
diff --git a/libjava/gnu/java/locale/LocaleInformation_iw_IL.java b/libjava/gnu/java/locale/LocaleInformation_iw_IL.java
deleted file mode 100644
index 4472d983519..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_iw_IL.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_iw_IL.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_iw_IL extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u05E8\u05D0\u05E9\u05D5\u05DF", "\u05E9\u05E0\u05D9", "\u05E9\u05DC\u05D9\u05E9\u05D9", "\u05E8\u05D1\u05D9\u05E2\u05D9", "\u05D7\u05DE\u05D9\u05E9\u05D9", "\u05E9\u05D9\u05E9\u05D9", "\u05E9\u05D1\u05EA" };
-
- static final String[] shortWeekdays = { null, "\u05D0'", "\u05D1'", "\u05D2'", "\u05D3'", "\u05D4'", "\u05D5'", "\u05E9'" };
-
- static final String[] shortMonths = { "\u05D9\u05E0\u05D5", "\u05E4\u05D1\u05E8", "\u05DE\u05E8\u05E5", "\u05D0\u05E4\u05E8", "\u05DE\u05D0\u05D9", "\u05D9\u05D5\u05E0", "\u05D9\u05D5\u05DC", "\u05D0\u05D5\u05D2", "\u05E1\u05E4\u05D8", "\u05D0\u05D5\u05E7", "\u05E0\u05D5\u05D1", "\u05D3\u05E6\u05DE", null };
-
- static final String[] months = { "\u05D9\u05E0\u05D5\u05D0\u05E8", "\u05E4\u05D1\u05E8\u05D5\u05D0\u05E8", "\u05DE\u05E8\u05E5", "\u05D0\u05E4\u05E8\u05D9\u05DC", "\u05DE\u05D0\u05D9", "\u05D9\u05D5\u05E0\u05D9", "\u05D9\u05D5\u05DC\u05D9", "\u05D0\u05D5\u05D2\u05D5\u05E1\u05D8", "\u05E1\u05E4\u05D8\u05DE\u05D1\u05E8", "\u05D0\u05D5\u05E7\u05D8\u05D5\u05D1\u05E8", "\u05E0\u05D5\u05D1\u05DE\u05D1\u05E8", "\u05D3\u05E6\u05DE\u05D1\u05E8", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "hh:m:s a";
- static final String currencySymbol = "\u05E9\u05D7";
- static final String intlCurrencySymbol = "ILS";
- static final String currencyFormat = "$ #,###,##0.00;$ #,###,##0.00-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ja_JP.h b/libjava/gnu/java/locale/LocaleInformation_ja_JP.h
deleted file mode 100644
index 64fcc71d3dd..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ja_JP.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ja_JP__
-#define __gnu_java_locale_LocaleInformation_ja_JP__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ja_JP;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ja_JP : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ja_JP();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ja_JP__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ja_JP.java b/libjava/gnu/java/locale/LocaleInformation_ja_JP.java
deleted file mode 100644
index fc93683f094..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ja_JP.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ja_JP.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ja_JP extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u65E5\u66DC\u65E5", "\u6708\u66DC\u65E5", "\u706B\u66DC\u65E5", "\u6C34\u66DC\u65E5", "\u6728\u66DC\u65E5", "\u91D1\u66DC\u65E5", "\u571F\u66DC\u65E5" };
-
- static final String[] shortWeekdays = { null, "\u65E5", "\u6708", "\u706B", "\u6C34", "\u6728", "\u91D1", "\u571F" };
-
- static final String[] shortMonths = { " 1\u6708", " 2\u6708", " 3\u6708", " 4\u6708", " 5\u6708", " 6\u6708", " 7\u6708", " 8\u6708", " 9\u6708", "10\u6708", "11\u6708", "12\u6708", null };
-
- static final String[] months = { "1\u6708", "2\u6708", "3\u6708", "4\u6708", "5\u6708", "6\u6708", "7\u6708", "8\u6708", "9\u6708", "10\u6708", "11\u6708", "12\u6708", null };
-
- static final String[] ampms = { "\u5348\u524D", "\u5348\u5F8C" };
-
- static final String shortDateFormat = "yyyyMMdd";
- static final String defaultTimeFormat = "ahhms";
- static final String currencySymbol = "\uFFE5";
- static final String intlCurrencySymbol = "JPY";
- static final String currencyFormat = "$#,##0.;$-#,##0.";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ka_GE.h b/libjava/gnu/java/locale/LocaleInformation_ka_GE.h
deleted file mode 100644
index b897c582455..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ka_GE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ka_GE__
-#define __gnu_java_locale_LocaleInformation_ka_GE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ka_GE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ka_GE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ka_GE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ka_GE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ka_GE.java b/libjava/gnu/java/locale/LocaleInformation_ka_GE.java
deleted file mode 100644
index cbec6aa4faa..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ka_GE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ka_GE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ka_GE extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u10D9\u10D5\u10D8\u10E0\u10D0", "\u10DD\u10E0\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8", "\u10E1\u10D0\u10DB\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8", "\u10DD\u10D7\u10EE\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8", "\u10EE\u10E3\u10D7\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8", "\u10DE\u10D0\u10E0\u10D0\u10E1\u10D9\u10D4\u10D5\u10D8", "\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8" };
-
- static final String[] shortWeekdays = { null, "\u10D9\u10D5\u10D8", "\u10DD\u10E0\u10E8", "\u10E1\u10D0\u10DB", "\u10DD\u10D7\u10EE", "\u10EE\u10E3\u10D7", "\u10DE\u10D0\u10E0", "\u10E8\u10D0\u10D1" };
-
- static final String[] shortMonths = { "\u10D8\u10D0\u10DC", "\u10D7\u10D4\u10D1", "\u10DB\u10D0\u10E0", "\u10D0\u10DE\u10E0", "\u10DB\u10D0\u10D8", "\u10D8\u10D5\u10DC", "\u10D8\u10D5\u10DA", "\u10D0\u10D2\u10D5", "\u10E1\u10D4\u10E5", "\u10DD\u10E5\u10E2", "\u10DC\u10DD\u10D4", "\u10D3\u10D4\u10D9", null };
-
- static final String[] months = { "\u10D8\u10D0\u10DC\u10D5\u10D0\u10E0\u10D8", "\u10D7\u10D4\u10D1\u10D4\u10E0\u10D5\u10D0\u10DA\u10D8", "\u10DB\u10D0\u10E0\u10E2\u10D8", "\u10D0\u10DE\u10E0\u10D8\u10DA\u10D8", "\u10DB\u10D0\u10D8\u10E1\u10D8", "\u10D8\u10D5\u10DC\u10D8\u10E1\u10D8", "\u10D8\u10D5\u10DA\u10D8\u10E1\u10D8", "\u10D0\u10D2\u10D5\u10D8\u10E1\u10E2\u10DD", "\u10E1\u10D4\u10E5\u10E2\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8", "\u10DD\u10E5\u10E2\u10DD\u10DB\u10D1\u10D4\u10E0\u10D8", "\u10DC\u10DD\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8", "\u10D3\u10D4\u10D9\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "MM/dd/yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u10DA";
- static final String intlCurrencySymbol = "GEL";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_kl_GL.h b/libjava/gnu/java/locale/LocaleInformation_kl_GL.h
deleted file mode 100644
index 1d0301c7a1f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_kl_GL.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_kl_GL__
-#define __gnu_java_locale_LocaleInformation_kl_GL__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_kl_GL;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_kl_GL : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_kl_GL();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_kl_GL__
diff --git a/libjava/gnu/java/locale/LocaleInformation_kl_GL.java b/libjava/gnu/java/locale/LocaleInformation_kl_GL.java
deleted file mode 100644
index 23d00a8d46a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_kl_GL.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_kl_GL.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_kl_GL extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_da_DK.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_da_DK.groupingSeparator;
- static final String numberFormat = LocaleInformation_da_DK.numberFormat;
- static final String percentFormat = LocaleInformation_da_DK.percentFormat;
- static final String[] weekdays = { null, "sabaat", "ataasinngorneq", "marlunngorneq", "pingasunngorneq", "sisamanngorneq", "tallimanngorneq", "arfininngorneq" };
-
- static final String[] shortWeekdays = { null, "sab", "ata", "mar", "pin", "sis", "tal", "arf" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "maj", "jun", "jul", "aug", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "januari", "februari", "martsi", "aprili", "maji", "juni", "juli", "augustusi", "septemberi", "oktoberi", "novemberi", "decemberi", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd MMM yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_da_DK.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_da_DK.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_da_DK.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ko_KR.h b/libjava/gnu/java/locale/LocaleInformation_ko_KR.h
deleted file mode 100644
index 6521be5d65b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ko_KR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ko_KR__
-#define __gnu_java_locale_LocaleInformation_ko_KR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ko_KR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ko_KR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ko_KR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ko_KR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ko_KR.java b/libjava/gnu/java/locale/LocaleInformation_ko_KR.java
deleted file mode 100644
index d21ce83f1c2..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ko_KR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ko_KR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ko_KR extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\uC77C\uC694\uC77C", "\uC6D4\uC694\uC77C", "\uD654\uC694\uC77C", "\uC218\uC694\uC77C", "\uBAA9\uC694\uC77C", "\uAE08\uC694\uC77C", "\uD1A0\uC694\uC77C" };
-
- static final String[] shortWeekdays = { null, "\uC77C", "\uC6D4", "\uD654", "\uC218", "\uBAA9", "\uAE08", "\uD1A0" };
-
- static final String[] shortMonths = { " 1\uC6D4", " 2\uC6D4", " 3\uC6D4", " 4\uC6D4", " 5\uC6D4", " 6\uC6D4", " 7\uC6D4", " 8\uC6D4", " 9\uC6D4", "10\uC6D4", "11\uC6D4", "12\uC6D4", null };
-
- static final String[] months = { "\uC77C\uC6D4", "\uC774\uC6D4", "\uC0BC\uC6D4", "\uC0AC\uC6D4", "\uC624\uC6D4", "\uC720\uC6D4", "\uCE60\uC6D4", "\uD314\uC6D4", "\uAD6C\uC6D4", "\uC2DC\uC6D4", "\uC2ED\uC77C\uC6D4", "\uC2ED\uC774\uC6D4", null };
-
- static final String[] ampms = { "\uC624\uC804", "\uC624\uD6C4" };
-
- static final String shortDateFormat = "yyyy MM dd";
- static final String defaultTimeFormat = "a hh m s";
- static final String currencySymbol = "\uFFE6";
- static final String intlCurrencySymbol = "KRW";
- static final String currencyFormat = "$#,###,##0.;$-#,###,##0.";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_kw_GB.h b/libjava/gnu/java/locale/LocaleInformation_kw_GB.h
deleted file mode 100644
index b6ee13c9136..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_kw_GB.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_kw_GB__
-#define __gnu_java_locale_LocaleInformation_kw_GB__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_kw_GB;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_kw_GB : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_kw_GB();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_kw_GB__
diff --git a/libjava/gnu/java/locale/LocaleInformation_kw_GB.java b/libjava/gnu/java/locale/LocaleInformation_kw_GB.java
deleted file mode 100644
index b10edbc2d39..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_kw_GB.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_kw_GB.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_kw_GB extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "De Sul", "De Lun", "De Merth", "De Merher", "De Yow", "De Gwener", "De Sadorn" };
-
- static final String[] shortWeekdays = { null, "Sul", "Lun", "Mth", "Mhr", "Yow", "Gwe", "Sad" };
-
- static final String[] shortMonths = { "Gen", "Whe>", "Mer", "Ebr", "Me", "Evn", "Gor", "Est", "Gwn", "Hed", "Du", "Kev", null };
-
- static final String[] months = { "Mys Genver", "Mys Whevrel", "Mys Merth", "Mys Ebrel", "Mys Me", "Mys Evan", "Mys Gortheren", "Mye Est", "Mys Gwyngala", "Mys Hedra", "Mys Du", "Mys Kevardhu", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u00A3";
- static final String intlCurrencySymbol = "GBP";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_lt_LT.h b/libjava/gnu/java/locale/LocaleInformation_lt_LT.h
deleted file mode 100644
index 2cafbe194f8..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_lt_LT.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_lt_LT__
-#define __gnu_java_locale_LocaleInformation_lt_LT__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_lt_LT;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_lt_LT : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_lt_LT();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_lt_LT__
diff --git a/libjava/gnu/java/locale/LocaleInformation_lt_LT.java b/libjava/gnu/java/locale/LocaleInformation_lt_LT.java
deleted file mode 100644
index b2074da078d..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_lt_LT.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_lt_LT.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_lt_LT extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Sekmadienis", "Pirmadienis", "Antradienis", "Tre\u010Diadienis", "Ketvirtadienis", "Penktadienis", "\u0160e\u0161tadienis" };
-
- static final String[] shortWeekdays = { null, "Sk", "Pr", "An", "Tr", "Kt", "Pn", "\u0160t" };
-
- static final String[] shortMonths = { "Sau", "Vas", "Kov", "Bal", "Geg", "Bir", "Lie", "Rgp", "Rgs", "Spa", "Lap", "Grd", null };
-
- static final String[] months = { "sausio", "vasario", "kovo", "baland\u017Eio", "gegu\u017E\u0117s", "bir\u017Eelio", "liepos", "rugpj\u016B\u010Dio", "rugs\u0117jo", "spalio", "lapkri\u010Dio", "gruod\u017Eio", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy.MM.dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Lt";
- static final String intlCurrencySymbol = "LTL";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_lv_LV.h b/libjava/gnu/java/locale/LocaleInformation_lv_LV.h
deleted file mode 100644
index 15cb631f4f3..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_lv_LV.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_lv_LV__
-#define __gnu_java_locale_LocaleInformation_lv_LV__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_lv_LV;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_lv_LV : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_lv_LV();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_lv_LV__
diff --git a/libjava/gnu/java/locale/LocaleInformation_lv_LV.java b/libjava/gnu/java/locale/LocaleInformation_lv_LV.java
deleted file mode 100644
index a7765130507..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_lv_LV.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_lv_LV.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_lv_LV extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "\u00A0";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "sv\u0113tdiena", "pirmdiena", "otrdiena", "tre\u0161diena", "ceturtdiena", "piektdiena", "sestdiena" };
-
- static final String[] shortWeekdays = { null, "Sv", "P\u00A0", "O\u00A0", "T\u00A0", "C\u00A0", "Pk", "S\u00A0" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "mai", "j\u016Bn", "j\u016Bl", "aug", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "janv\u0101ris", "febru\u0101ris", "marts", "apr\u012Blis", "maijs", "j\u016Bnijs", "j\u016Blijs", "augusts", "septembris", "oktobris", "novembris", "decembris", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy.MM.dd.";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Ls";
- static final String intlCurrencySymbol = "LVL";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_mi_NZ.h b/libjava/gnu/java/locale/LocaleInformation_mi_NZ.h
deleted file mode 100644
index 1b08f9b23da..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_mi_NZ.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_mi_NZ__
-#define __gnu_java_locale_LocaleInformation_mi_NZ__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_mi_NZ;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_mi_NZ : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_mi_NZ();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_mi_NZ__
diff --git a/libjava/gnu/java/locale/LocaleInformation_mi_NZ.java b/libjava/gnu/java/locale/LocaleInformation_mi_NZ.java
deleted file mode 100644
index 99125bc2055..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_mi_NZ.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_mi_NZ.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_mi_NZ extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_NZ.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_NZ.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_NZ.numberFormat;
- static final String percentFormat = LocaleInformation_en_NZ.percentFormat;
- static final String[] weekdays = { null, "R\u0101tapu", "Mane", "T\u016Brei", "Wenerei", "T\u0101ite", "Paraire", "H\u0101tarei" };
-
- static final String[] shortWeekdays = { null, "Ta", "Ma", "T\u016B", "We", "T\u0101i", "Pa", "H\u0101" };
-
- static final String[] shortMonths = { "Kohi", "Hui", "Pou", "Pae", "Hara", "Pipi", "H\u014Dngoi", "Here", "Mahu", "Whi-nu", "Whi-ra", "Haki", null };
-
- static final String[] months = { "Kohi-t\u0101tea", "Hui-tanguru", "Pout\u016B-te-rangi", "Paenga-wh\u0101wh\u0101", "Haratua", "Pipiri", "H\u014Dngoingoi", "Here-turi-k\u014Dk\u0101", "Mahuru", "Whiringa-\u0101-nuku", "Whiringa-\u0101-rangi", "Hakihea", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_en_NZ.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_en_NZ.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_en_NZ.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_mk_MK.h b/libjava/gnu/java/locale/LocaleInformation_mk_MK.h
deleted file mode 100644
index 9afa2f27a22..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_mk_MK.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_mk_MK__
-#define __gnu_java_locale_LocaleInformation_mk_MK__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_mk_MK;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_mk_MK : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_mk_MK();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_mk_MK__
diff --git a/libjava/gnu/java/locale/LocaleInformation_mk_MK.java b/libjava/gnu/java/locale/LocaleInformation_mk_MK.java
deleted file mode 100644
index 3c109dfd172..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_mk_MK.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_mk_MK.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_mk_MK extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = " ";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u043D\u0435\u0434\u0435\u043B\u0430", "\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u043D\u0438\u043A", "\u0432\u0442\u043E\u0440\u043D\u0438\u043A", "\u0441\u0440\u0435\u0434\u0430", "\u0447\u0435\u0442\u0432\u0440\u0442\u043E\u043A", "\u043F\u0435\u0442\u043E\u043A", "\u0441\u0430\u0431\u043E\u0442\u0430" };
-
- static final String[] shortWeekdays = { null, "\u043D\u0435\u0434", "\u043F\u043E\u043D", "\u0432\u0442\u043E", "\u0441\u0440\u0435", "\u0447\u0435\u0442", "\u043F\u0435\u0442", "\u0441\u0430\u0431" };
-
- static final String[] shortMonths = { "\u0458\u0430\u043D", "\u0444\u0435\u0432", "\u043C\u0430\u0440", "\u0430\u043F\u0440", "\u043C\u0430\u0458", "\u0458\u0443\u043D", "\u0458\u0443\u043B", "\u0430\u0432\u0433", "\u0441\u0435\u043F", "\u043E\u043A\u0442", "\u043D\u043E\u0435", "\u0434\u0435\u043A", null };
-
- static final String[] months = { "\u0458\u0430\u043D\u0443\u0430\u0440\u0438", "\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438", "\u043C\u0430\u0440\u0442", "\u0430\u043F\u0440\u0438\u043B", "\u043C\u0430\u0458", "\u0458\u0443\u043D\u0438", "\u0458\u0443\u043B\u0438", "\u0430\u0432\u0433\u0443\u0441\u0442", "\u0441\u0435\u043F\u0442\u0435\u043C\u0432\u0440\u0438", "\u043E\u043A\u0442\u043E\u043C\u0432\u0440\u0438", "\u043D\u043E\u0435\u043C\u0432\u0440\u0438", "\u0434\u0435\u043A\u0435\u043C\u0432\u0440\u0438", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u0434\u0435\u043D";
- static final String intlCurrencySymbol = "MKD";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_mr_IN.h b/libjava/gnu/java/locale/LocaleInformation_mr_IN.h
deleted file mode 100644
index 2334d894204..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_mr_IN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_mr_IN__
-#define __gnu_java_locale_LocaleInformation_mr_IN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_mr_IN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_mr_IN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_mr_IN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_mr_IN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_mr_IN.java b/libjava/gnu/java/locale/LocaleInformation_mr_IN.java
deleted file mode 100644
index 7a844b28c43..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_mr_IN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_mr_IN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_mr_IN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u0930\u0935\u093F\u0935\u093E\u0930", "\u0938\u094B\u092E\u0935\u093E\u0930", "\u092E\u0902\u0917\u0933\u0935\u093E\u0930", "\u092E\u0902\u0917\u0933\u0935\u093E\u0930", "\u0917\u0941\u0930\u0941\u0935\u093E\u0930", "\u0936\u0941\u0915\u094D\u0930\u0935\u093E\u0930", "\u0936\u0928\u093F\u0935\u093E\u0930" };
-
- static final String[] shortWeekdays = { null, "\u0930\u0935\u093F", "\u0938\u094B\u092E", "\u092E\u0902\u0917\u0933", "\u092C\u0941\u0927", "\u0917\u0941\u0930\u0941", "\u0936\u0941\u0915\u094D\u0930", "\u0936\u0928\u093F" };
-
- static final String[] shortMonths = { "\u091C\u093E\u0928\u0947\u0935\u093E\u0930\u0940", "\u092B\u0947\u092C\u0943\u0935\u093E\u0930\u0940", "\u092E\u093E\u0930\u094D\u091A", "\u090F\u092A\u094D\u0930\u093F\u0932", "\u092E\u0947", "\u091C\u0942\u0928", "\u091C\u0941\u0932\u0948", "\u0913\u0917\u0938\u094D\u091F", "\u0938\u0947\u092A\u094D\u091F\u0947\u0902\u092C\u0930", "\u0913\u0915\u094D\u091F\u094B\u092C\u0930", "\u0928\u094B\u0935\u094D\u0939\u0947\u0902\u092C\u0930", "\u0921\u093F\u0938\u0947\u0902\u092C\u0930", null };
-
- static final String[] months = { "\u091C\u093E\u0928\u0947\u0935\u093E\u0930\u0940", "\u092B\u0947\u092C\u0943\u0935\u093E\u0930\u0940", "\u092E\u093E\u0930\u094D\u091A", "\u090F\u092A\u094D\u0930\u093F\u0932", "\u092E\u0947", "\u091C\u0942\u0928", "\u091C\u0941\u0932\u0948", "\u0913\u0917\u0938\u094D\u091F", "\u0938\u0947\u092A\u094D\u091F\u0947\u0902\u092C\u0930", "\u0913\u0915\u094D\u091F\u094B\u092C\u0930", "\u0928\u094B\u0935\u094D\u0939\u0947\u0902\u092C\u0930", "\u0921\u093F\u0938\u0947\u0902\u092C\u0930", null };
-
- static final String[] ampms = { "\u092E.\u092A\u0942.", "\u092E.\u0928\u0902." };
-
- static final String shortDateFormat = "EEEE dd MMM yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "\u0930\u0941";
- static final String intlCurrencySymbol = "INR";
- static final String currencyFormat = "$ #,##0.00;-$ #,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_mt_MT.h b/libjava/gnu/java/locale/LocaleInformation_mt_MT.h
deleted file mode 100644
index b0fd5420573..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_mt_MT.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_mt_MT__
-#define __gnu_java_locale_LocaleInformation_mt_MT__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_mt_MT;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_mt_MT : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_mt_MT();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_mt_MT__
diff --git a/libjava/gnu/java/locale/LocaleInformation_mt_MT.java b/libjava/gnu/java/locale/LocaleInformation_mt_MT.java
deleted file mode 100644
index 5d867e6c5a2..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_mt_MT.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_mt_MT.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_mt_MT extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "il-\u0126add", "it-Tnejn", "it-Tlieta", "l-Erbg\u0127a", "il-\u0126amis", "il-\u0120img\u0127a", "is-Sibt" };
-
- static final String[] shortWeekdays = { null, "\u0126ad", "Tne", "Tli", "Erb", "\u0126am", "\u0120im", "Sib" };
-
- static final String[] shortMonths = { "Jan", "Fra", "Mar", "Apr", "Mej", "\u0120un", "Lul", "Awi", "Set", "Ott", "Nov", "Di\u010B", null };
-
- static final String[] months = { "Jannar", "Frar", "Marzu", "April", "Mejju", "\u0120unju", "Lulju", "Awissu", "Settembru", "Ottubru", "Novembru", "Di\u010Bembru ", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "EEEE, dd ta MMM, yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "Lm";
- static final String intlCurrencySymbol = "MTL";
- static final String currencyFormat = "$#,##0.00;($#,##0.00)";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_nl.h b/libjava/gnu/java/locale/LocaleInformation_nl.h
deleted file mode 100644
index 3fa73ca0510..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_nl.h
+++ /dev/null
@@ -1,71 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_nl__
-#define __gnu_java_locale_LocaleInformation_nl__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_nl;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_nl : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_nl();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-private:
- static ::java::lang::String * collation_rules;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * ampms;
- static JArray< ::java::lang::String * > * eras;
- static JArray< JArray< ::java::lang::String * > * > * zoneStrings;
- static ::java::lang::String * localPatternChars;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * mediumDateFormat;
- static ::java::lang::String * longDateFormat;
- static ::java::lang::String * fullDateFormat;
- static ::java::lang::String * defaultDateFormat;
- static ::java::lang::String * shortTimeFormat;
- static ::java::lang::String * mediumTimeFormat;
- static ::java::lang::String * longTimeFormat;
- static ::java::lang::String * fullTimeFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * exponential;
- static ::java::lang::String * digit;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * infinity;
- static ::java::lang::String * NaN;
- static ::java::lang::String * minusSign;
- static ::java::lang::String * monetarySeparator;
- static ::java::lang::String * patternSeparator;
- static ::java::lang::String * percent;
- static ::java::lang::String * perMill;
- static ::java::lang::String * zeroDigit;
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_nl__
diff --git a/libjava/gnu/java/locale/LocaleInformation_nl.java b/libjava/gnu/java/locale/LocaleInformation_nl.java
deleted file mode 100644
index 27a4d2b2b2a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_nl.java
+++ /dev/null
@@ -1,313 +0,0 @@
-/* LocaleInformation_nl.java -- Dutch locale data
- Copyright (C) 1999, 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-/**
- * This class contains locale data for the Dutch locale
- */
-
-public class LocaleInformation_nl extends ListResourceBundle
-{
-
-/*
- * This area is used for defining object values
- */
-
-/**
- * This is the set of collation rules used by java.text.RuleBasedCollator
- * to sort strings properly. See the documentation of that class for the
- * proper format.
- * <p>
- * This is the same rule as used in the English locale.
- */
-private static final String collation_rules =
- "<0<1<2<3<4<5<6<7<8<9<A,a<b,B<c,C<d,D<e,E<f,F<g,G<h,H<i,I<j,J<k,K" +
- "<l,L<m,M<n,N<o,O<p,P<q,Q<r,R<s,S<t,T<u,U<v,V<w,W<x,X<y,Y<z,Z";
-
-/**
- * This is the list of months, fully spelled out
- */
-private static final String[] months = { "januari", "februari", "maart",
- "april", "mei", "juni", "juli", "augustus", "september", "october",
- "november", "december", null };
-
-/**
- * This is the list of abbreviated month names
- */
-private static final String[] shortMonths = { "jan", "feb", "mrt", "apr", "mei",
- "jun", "jul", "aug", "sep", "oct", "nov", "dec", null };
-
-/**
- * This is the list of weekdays, fully spelled out
- */
-private static final String[] weekdays = { null, "zondag", "maandag", "dinsdag",
- "woensdag", "donderdag", "vrijdag", "zaterdag" };
-
-/**
- * This is the list of abbreviated weekdays
- */
-private static final String[] shortWeekdays = { null, "zo", "ma", "di", "wo",
- "do", "vr", "za" };
-
-/**
- * This is the list of AM/PM strings
- * <p>
- * Is there a real equivalent in Dutch? "Voormiddag"/"Namiddag"?
- * Just using the Latin names for now.
- */
-private static final String[] ampms = { "AM", "PM" };
-
-/**
- * This is the list of era identifiers
- * <p>
- * Is there a real equivalent in Dutch? "voor Christus"/"na Christus"?
- * Just use the Latin/English names for now.
- */
-private static final String[] eras = { "BC", "AD" };
-
-/**
- * This is the list of timezone strings. The JDK appears to include a
- * city name as the sixth element.
- * XXX - TODO - FIXME - Which timezones should be included here and how are
- * they called?
- */
-private static final String[][] zoneStrings =
-{
- // European time zones. The city names are a little bit random.
- { "WET", "West Europese Tijd", "WET", "West Europese Zomertijd", "WEST", "London" },
- { "CET", "Centraal Europese Tijd", "CET", "Centraal Europese Zomertijd", "CEST", "Amsterdam" },
- { "EET", "Oost Europese Tijd", "EET", "Oost Europese Zomertijd", "EEST", "Istanbul" },
-};
-
-/**
- * This is the list of pattern characters for formatting dates
- * <p>
- * This is the same as the English locale uses: era (G), year (y), month (M),
- * month (d), hour from 1-12 (h), hour 0-23 (H), minute (m), second (s),
- * millisecond (S), date of week (E), date of year (D),
- * day of week in month (F), week in year (w), week in month (W), am/pm (a),
- * hour from 1-24 (k), hour from 0-11 (K), time zone (z).
- * Why would you use others?
- */
-private static final String localPatternChars = "GyMdhHmsSEDFwWakKz"; // Not a mistake!
-
-/**
- * This is the DateFormat.SHORT date format
- */
-private static final String shortDateFormat = "dd-MM-yy";
-
-/**
- * This is the DateFormat.MEDIUM format
- */
-private static final String mediumDateFormat = "dd-MMM-yy";
-
-/**
- * This is the DateFormat.LONG format
- */
-private static final String longDateFormat = "dd MMMM yyyy";
-
-/**
- * This is the DateFormat.FULL format
- */
-private static final String fullDateFormat = "EEEE dd MMMM yyyy";
-
-/**
- * This is the DateFormat.DEFAULT format
- */
-private static final String defaultDateFormat = mediumDateFormat;
-
-/**
- * This is the TimeFormat.SHORT format
- */
-private static final String shortTimeFormat = "HH:mm";
-
-/**
- * This is the TimeFormat.MEDIUM format
- */
-private static final String mediumTimeFormat = "HH:mm:ss";
-
-/**
- * This is the TimeFormat.LONG format
- */
-private static final String longTimeFormat = "HH:mm:ss";
-
-/**
- * This is the TimeFormat.FULL format
- */
-private static final String fullTimeFormat = "HH:mm:ss z";
-
-/**
- * This is the TimeFormat.DEFAULT format
- */
-private static final String defaultTimeFormat = shortTimeFormat;
-
-/**
- * This is the currency symbol
- */
-private static final String currencySymbol = "fl";
-
-/**
- * This is the international currency symbol.
- */
-private static final String intlCurrencySymbol = "NLG";
-
-/**
- * This is the decimal point.
- */
-private static final String decimalSeparator = ",";
-
-/**
- * This is the exponential symbol
- */
-private static final String exponential = "E";
-
-/**
- * This is the char used for digits in format strings
- */
-private static final String digit = "#";
-
-/**
- * This is the grouping separator symbols
- */
-private static final String groupingSeparator = ",";
-
-/**
- * This is the symbols for infinity
- */
-private static final String infinity = "\u221e";
-
-/**
- * This is the symbol for the not a number value
- */
-private static final String NaN = "\ufffd";
-
-/**
- * This is the minus sign symbol.
- */
-private static final String minusSign = "-";
-
-/**
- * This is the decimal separator in monetary values.
- */
-private static final String monetarySeparator = ",";
-
-/**
- * This is the separator between positive and negative subpatterns.
- */
-private static final String patternSeparator = ";";
-
-/**
- * This is the percent sign
- */
-private static final String percent = "%";
-
-/**
- * This is the per mille sign
- */
-private static final String perMill = "\u2030";
-
-/**
- * This is the character for zero.
- */
-private static final String zeroDigit = "0";
-
-/*************************************************************************/
-
-/**
- * This is the object array used to hold the keys and values
- * for this bundle
- */
-
-private static final Object[][] contents =
-{
- // For RuleBasedCollator
- { "collation_rules", collation_rules },
- // For SimpleDateFormat/DateFormatSymbols
- { "months", months },
- { "shortMonths", shortMonths },
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "ampms", ampms },
- { "eras", eras },
- { "zoneStrings", zoneStrings },
- { "localPatternChars", localPatternChars },
- { "shortDateFormat", shortDateFormat },
- { "mediumDateFormat", mediumDateFormat },
- { "longDateFormat", longDateFormat },
- { "fullDateFormat", fullDateFormat },
- { "defaultDateFormat", defaultDateFormat },
- { "shortTimeFormat", shortTimeFormat },
- { "mediumTimeFormat", mediumTimeFormat },
- { "longTimeFormat", longTimeFormat },
- { "fullTimeFormat", fullTimeFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- // For DecimalFormat/DecimalFormatSymbols
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "decimalSeparator", decimalSeparator },
- { "digit", digit },
- { "exponential", exponential },
- { "groupingSeparator", groupingSeparator },
- { "infinity", infinity },
- { "NaN", NaN },
- { "minusSign", minusSign },
- { "monetarySeparator", monetarySeparator },
- { "patternSeparator", patternSeparator },
- { "percent", percent },
- { "perMill", perMill },
- { "zeroDigit", zeroDigit },
-};
-
-/*************************************************************************/
-
-/**
- * This method returns the object array of key, value pairs containing
- * the data for this bundle.
- *
- * @return The key, value information.
- */
-public Object[][]
-getContents()
-{
- return(contents);
-}
-
-} // class LocaleInformation_nl
diff --git a/libjava/gnu/java/locale/LocaleInformation_nl_BE.h b/libjava/gnu/java/locale/LocaleInformation_nl_BE.h
deleted file mode 100644
index 1fa50cb5eeb..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_nl_BE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_nl_BE__
-#define __gnu_java_locale_LocaleInformation_nl_BE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_nl_BE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_nl_BE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_nl_BE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_nl_BE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_nl_BE.java b/libjava/gnu/java/locale/LocaleInformation_nl_BE.java
deleted file mode 100644
index c6ad6811e4e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_nl_BE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_nl_BE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_nl_BE extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_fr_BE.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_fr_BE.groupingSeparator;
- static final String numberFormat = LocaleInformation_fr_BE.numberFormat;
- static final String percentFormat = LocaleInformation_fr_BE.percentFormat;
- static final String[] weekdays = { null, "zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag" };
-
- static final String[] shortWeekdays = { null, "zo", "ma", "di", "wo", "do", "vr", "za" };
-
- static final String[] shortMonths = { "jan", "feb", "mrt", "apr", "mei", "jun", "jul", "aug", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd-MM-yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_fr_BE.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_fr_BE.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_fr_BE.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_nl_NL.h b/libjava/gnu/java/locale/LocaleInformation_nl_NL.h
deleted file mode 100644
index 370855a9a78..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_nl_NL.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_nl_NL__
-#define __gnu_java_locale_LocaleInformation_nl_NL__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_nl_NL;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_nl_NL : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_nl_NL();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_nl_NL__
diff --git a/libjava/gnu/java/locale/LocaleInformation_nl_NL.java b/libjava/gnu/java/locale/LocaleInformation_nl_NL.java
deleted file mode 100644
index 2dfcaa2ccdd..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_nl_NL.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_nl_NL.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_nl_NL extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag" };
-
- static final String[] shortWeekdays = { null, "zo", "ma", "di", "wo", "do", "vr", "za" };
-
- static final String[] shortMonths = { "jan", "feb", "mrt", "apr", "mei", "jun", "jul", "aug", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd-MM-yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "fl";
- static final String intlCurrencySymbol = "NLG";
- static final String currencyFormat = "$ #,###,##0.00;$ #,###,##0.00-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_nn_NO.h b/libjava/gnu/java/locale/LocaleInformation_nn_NO.h
deleted file mode 100644
index 752fec2eb36..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_nn_NO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_nn_NO__
-#define __gnu_java_locale_LocaleInformation_nn_NO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_nn_NO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_nn_NO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_nn_NO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_nn_NO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_nn_NO.java b/libjava/gnu/java/locale/LocaleInformation_nn_NO.java
deleted file mode 100644
index aa79e5c42e9..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_nn_NO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_nn_NO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_nn_NO extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "\u00A0";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "sundag ", "m\u00E5ndag ", "tysdag ", "onsdag ", "torsdag ", "fredag ", "laurdag " };
-
- static final String[] shortWeekdays = { null, "su ", "m\u00E5 ", "ty ", "on ", "to ", "fr ", "lau " };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "mai", "jun", "jul", "aug", "sep", "okt", "nov", "des", null };
-
- static final String[] months = { "januar", "februar", "mars", "april", "mai", "juni", "juli", "august", "september", "oktober", "november", "desember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd. MMM yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "kr";
- static final String intlCurrencySymbol = "NOK";
- static final String currencyFormat = "$ #,##0.00;-$#,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_no_NO.h b/libjava/gnu/java/locale/LocaleInformation_no_NO.h
deleted file mode 100644
index 5d3443d0b66..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_no_NO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_no_NO__
-#define __gnu_java_locale_LocaleInformation_no_NO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_no_NO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_no_NO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_no_NO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_no_NO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_no_NO.java b/libjava/gnu/java/locale/LocaleInformation_no_NO.java
deleted file mode 100644
index 44c812171ce..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_no_NO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_no_NO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_no_NO extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "s\u00F8ndag", "mandag", "tirsdag", "onsdag", "torsdag", "fredag", "l\u00F8rdag" };
-
- static final String[] shortWeekdays = { null, "s\u00F8n", "man", "tir", "ons", "tor", "fre", "l\u00F8r" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "mai", "jun", "jul", "aug", "sep", "okt", "nov", "des", null };
-
- static final String[] months = { "januar", "februar", "mars", "april", "mai", "juni", "juli", "august", "september", "oktober", "november", "desember", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd-MM-yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "kr";
- static final String intlCurrencySymbol = "NOK";
- static final String currencyFormat = "$#,###,##0.00;$-#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_oc_FR.h b/libjava/gnu/java/locale/LocaleInformation_oc_FR.h
deleted file mode 100644
index 62730255ed0..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_oc_FR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_oc_FR__
-#define __gnu_java_locale_LocaleInformation_oc_FR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_oc_FR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_oc_FR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_oc_FR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_oc_FR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_oc_FR.java b/libjava/gnu/java/locale/LocaleInformation_oc_FR.java
deleted file mode 100644
index b7a14a98710..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_oc_FR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_oc_FR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_oc_FR extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_fr_FR.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_fr_FR.groupingSeparator;
- static final String numberFormat = LocaleInformation_fr_FR.numberFormat;
- static final String percentFormat = LocaleInformation_fr_FR.percentFormat;
- static final String[] weekdays = { null, "dimenge", "diluns", "dimars", "dimecres", "dij\u00F3us", "divendres", "disabte" };
-
- static final String[] shortWeekdays = { null, "dim", "lun", "mar", "mec", "j\u00F3u", "ven", "sab" };
-
- static final String[] shortMonths = { "gen", "feb", "mar", "abr", "mai", "jun", "jul", "ag\u00F3", "set", "oct", "nov", "dec", null };
-
- static final String[] months = { "geni\u00E8r", "febri\u00E8r", "mar\u00E7", "abrial", "mai", "junh", "julhet", "ag\u00F3st", "setembre", "octobre", "novembre", "decembre", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_fr_FR.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_fr_FR.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_fr_FR.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_pl_PL.h b/libjava/gnu/java/locale/LocaleInformation_pl_PL.h
deleted file mode 100644
index 39e32732284..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_pl_PL.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_pl_PL__
-#define __gnu_java_locale_LocaleInformation_pl_PL__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_pl_PL;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_pl_PL : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_pl_PL();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_pl_PL__
diff --git a/libjava/gnu/java/locale/LocaleInformation_pl_PL.java b/libjava/gnu/java/locale/LocaleInformation_pl_PL.java
deleted file mode 100644
index 6dc22702b79..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_pl_PL.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_pl_PL.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_pl_PL extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "niedziela", "poniedzia\u0142ek", "wtorek", "\u015Broda", "czwartek", "pi\u0105tek", "sobota" };
-
- static final String[] shortWeekdays = { null, "nie", "pon", "wto", "\u015Bro", "czw", "pi\u0105", "sob" };
-
- static final String[] shortMonths = { "sty", "lut", "mar", "kwi", "maj", "cze", "lip", "sie", "wrz", "pa\u017A", "lis", "gru", null };
-
- static final String[] months = { "stycze\u0144", "luty", "marzec", "kwiecie\u0144", "maj", "czerwiec", "lipiec", "sierpie\u0144", "wrzesie\u0144", "pa\u017Adziernik", "listopad", "grudzie\u0144", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Z\u0142";
- static final String intlCurrencySymbol = "PLZ";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_pt_BR.h b/libjava/gnu/java/locale/LocaleInformation_pt_BR.h
deleted file mode 100644
index 974796c0149..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_pt_BR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_pt_BR__
-#define __gnu_java_locale_LocaleInformation_pt_BR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_pt_BR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_pt_BR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_pt_BR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_pt_BR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_pt_BR.java b/libjava/gnu/java/locale/LocaleInformation_pt_BR.java
deleted file mode 100644
index 4f3d858e93b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_pt_BR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_pt_BR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_pt_BR extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "domingo", "segunda", "ter\u00E7a", "quarta", "quinta", "sexta", "s\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "S\u00E1b" };
-
- static final String[] shortMonths = { "Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez", null };
-
- static final String[] months = { "janeiro", "fevereiro", "mar\u00E7o", "abril", "maio", "junho", "julho", "agosto", "setembro", "outubro", "novembro", "dezembro", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd-MM-yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "R$";
- static final String intlCurrencySymbol = "BRL";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_pt_PT.h b/libjava/gnu/java/locale/LocaleInformation_pt_PT.h
deleted file mode 100644
index 891207418c0..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_pt_PT.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_pt_PT__
-#define __gnu_java_locale_LocaleInformation_pt_PT__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_pt_PT;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_pt_PT : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_pt_PT();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_pt_PT__
diff --git a/libjava/gnu/java/locale/LocaleInformation_pt_PT.java b/libjava/gnu/java/locale/LocaleInformation_pt_PT.java
deleted file mode 100644
index 38e5e0ef958..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_pt_PT.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_pt_PT.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_pt_PT extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "Domingo", "Segunda", "Ter\u00E7a", "Quarta", "Quinta", "Sexta", "S\u00E1bado" };
-
- static final String[] shortWeekdays = { null, "Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "S\u00E1b" };
-
- static final String[] shortMonths = { "Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez", null };
-
- static final String[] months = { "Janeiro", "Fevereiro", "Mar\u00E7o", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd-MM-yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Esc";
- static final String intlCurrencySymbol = "PTE";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ro_RO.h b/libjava/gnu/java/locale/LocaleInformation_ro_RO.h
deleted file mode 100644
index 854a9fa30dc..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ro_RO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ro_RO__
-#define __gnu_java_locale_LocaleInformation_ro_RO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ro_RO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ro_RO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ro_RO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ro_RO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ro_RO.java b/libjava/gnu/java/locale/LocaleInformation_ro_RO.java
deleted file mode 100644
index 11e64bfda74..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ro_RO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ro_RO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ro_RO extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "Duminic\u0102", "Luni", "Mar\u0163i", "Miercuri", "Joi", "Vineri", "S\u00EEmb\u0102t\u0102" };
-
- static final String[] shortWeekdays = { null, "Du", "Lu", "Ma", "Mi", "Jo", "Vi", "S\u00EE" };
-
- static final String[] shortMonths = { "ian", "feb", "mar", "apr", "mai", "iun", "iul", "aug", "sep", "oct", "nov", "dec", null };
-
- static final String[] months = { "Ianuarie", "Februarie", "Martie", "Aprilie", "Mai", "Iunie", "Iulie", "August", "Septembrie", "Octombrie", "Noiembrie", "Decembrie", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "Lei";
- static final String intlCurrencySymbol = "ROL";
- static final String currencyFormat = "$ #,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ru_RU.h b/libjava/gnu/java/locale/LocaleInformation_ru_RU.h
deleted file mode 100644
index c57be36e44e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ru_RU.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ru_RU__
-#define __gnu_java_locale_LocaleInformation_ru_RU__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ru_RU;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ru_RU : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ru_RU();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ru_RU__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ru_RU.java b/libjava/gnu/java/locale/LocaleInformation_ru_RU.java
deleted file mode 100644
index 8cf830c28ef..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ru_RU.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ru_RU.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ru_RU extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u0412\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435", "\u041F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A", "\u0412\u0442\u043E\u0440\u043D\u0438\u043A", "\u0421\u0440\u0435\u0434\u0430", "\u0427\u0435\u0442\u0432\u0435\u0440\u0433", "\u041F\u044F\u0442\u043D\u0438\u0446\u0430", "\u0421\u0443\u0431\u0431\u043E\u0442\u0430" };
-
- static final String[] shortWeekdays = { null, "\u0412\u0441\u043A", "\u041F\u043D\u0434", "\u0412\u0442\u0440", "\u0421\u0440\u0434", "\u0427\u0442\u0432", "\u041F\u0442\u043D", "\u0421\u0431\u0442" };
-
- static final String[] shortMonths = { "\u042F\u043D\u0432", "\u0424\u0435\u0432", "\u041C\u0430\u0440", "\u0410\u043F\u0440", "\u041C\u0430\u0439", "\u0418\u044E\u043D", "\u0418\u044E\u043B", "\u0410\u0432\u0433", "\u0421\u0435\u043D", "\u041E\u043A\u0442", "\u041D\u043E\u044F", "\u0414\u0435\u043A", null };
-
- static final String[] months = { "\u042F\u043D\u0432\u0430\u0440\u044F", "\u0424\u0435\u0432\u0440\u0430\u043B\u044F", "\u041C\u0430\u0440\u0442\u0430", "\u0410\u043F\u0440\u0435\u043B\u044F", "\u041C\u0430\u044F", "\u0418\u044E\u043D\u044F", "\u0418\u044E\u043B\u044F", "\u0410\u0432\u0433\u0443\u0441\u0442\u0430", "\u0421\u0435\u043D\u0442\u044F\u0431\u0440\u044F", "\u041E\u043A\u0442\u044F\u0431\u0440\u044F", "\u041D\u043E\u044F\u0431\u0440\u044F", "\u0414\u0435\u043A\u0430\u0431\u0440\u044F", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u0440\u0443\u0431";
- static final String intlCurrencySymbol = "RUR";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ru_UA.h b/libjava/gnu/java/locale/LocaleInformation_ru_UA.h
deleted file mode 100644
index a4d8c03845c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ru_UA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ru_UA__
-#define __gnu_java_locale_LocaleInformation_ru_UA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ru_UA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ru_UA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ru_UA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ru_UA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ru_UA.java b/libjava/gnu/java/locale/LocaleInformation_ru_UA.java
deleted file mode 100644
index ae6050179e4..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ru_UA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ru_UA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ru_UA extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u0412\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435", "\u041F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A", "\u0412\u0442\u043E\u0440\u043D\u0438\u043A", "\u0421\u0440\u0435\u0434\u0430", "\u0427\u0435\u0442\u0432\u0435\u0440\u0433", "\u041F\u044F\u0442\u043D\u0438\u0446\u0430", "\u0421\u0443\u0431\u0431\u043E\u0442\u0430" };
-
- static final String[] shortWeekdays = { null, "\u0412\u0441\u043A", "\u041F\u043D\u0434", "\u0412\u0442\u043E", "\u0421\u0440\u0434", "\u0427\u0442\u0432", "\u041F\u0442\u043D", "\u0421\u0443\u0431" };
-
- static final String[] shortMonths = { "\u042F\u043D\u0432", "\u0424\u0435\u0432", "\u041C\u0430\u0440", "\u0410\u043F\u0440", "\u041C\u0430\u0439", "\u0418\u044E\u043D", "\u0418\u044E\u043B", "\u0410\u0432\u0433", "\u0421\u0435\u043D", "\u041E\u043A\u0442", "\u041D\u043E\u044F", "\u0414\u0435\u043A", null };
-
- static final String[] months = { "\u042F\u043D\u0432\u0430\u0440\u044C", "\u0424\u0435\u0432\u0440\u0430\u043B\u044C", "\u041C\u0430\u0440\u0442", "\u0410\u043F\u0440\u0435\u043B\u044C", "\u041C\u0430\u0439", "\u0418\u044E\u043D\u044C", "\u0418\u044E\u043B\u044C", "\u0410\u0432\u0433\u0443\u0441\u0442", "\u0421\u0435\u043D\u0442\u044F\u0431\u0440\u044C", "\u041E\u043A\u0442\u044F\u0431\u0440\u044C", "\u041D\u043E\u044F\u0431\u0440\u044C", "\u0414\u0435\u043A\u0430\u0431\u0440\u044C", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u0433\u0440";
- static final String intlCurrencySymbol = "UAH";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_se_NO.h b/libjava/gnu/java/locale/LocaleInformation_se_NO.h
deleted file mode 100644
index 4ca87729e63..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_se_NO.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_se_NO__
-#define __gnu_java_locale_LocaleInformation_se_NO__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_se_NO;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_se_NO : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_se_NO();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_se_NO__
diff --git a/libjava/gnu/java/locale/LocaleInformation_se_NO.java b/libjava/gnu/java/locale/LocaleInformation_se_NO.java
deleted file mode 100644
index 4348d70667c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_se_NO.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_se_NO.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_se_NO extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "sotnabeaivi", "vuoss\u00E1rga", "ma\u014B\u014Bebarga", "gaskavahkku", "duorasdat", "bearjadat", "l\u00E1vvardat" };
-
- static final String[] shortWeekdays = { null, "sotn", "vuos", "ma\u014B", "gask", "duor", "bear", "l\u00E1v" };
-
- static final String[] shortMonths = { "o\u0111\u0111j", "guov", "njuk", "cuo\u014B", "mies", "geas", "suoi", "borg", "\u010Dak\u010D", "golg", "sk\u00E1b", "juov", null };
-
- static final String[] months = { "o\u0111\u0111ajagem\u00E1nu", "guovvam\u00E1nu", "njuk\u010Dam\u00E1nu", "cuo\u014Bom\u00E1nu", "miessem\u00E1nu", "geassem\u00E1nu", "suoidnem\u00E1nu", "borgem\u00E1nu", "\u010Dak\u010Dam\u00E1nu", "golggotm\u00E1nu", "sk\u00E1bmam\u00E1nu", "juovlam\u00E1nu", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = " ru";
- static final String intlCurrencySymbol = "NOK";
- static final String currencyFormat = "$#,###,##0.00;$-#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_sk_SK.h b/libjava/gnu/java/locale/LocaleInformation_sk_SK.h
deleted file mode 100644
index c1142289e57..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sk_SK.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_sk_SK__
-#define __gnu_java_locale_LocaleInformation_sk_SK__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_sk_SK;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_sk_SK : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_sk_SK();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_sk_SK__
diff --git a/libjava/gnu/java/locale/LocaleInformation_sk_SK.java b/libjava/gnu/java/locale/LocaleInformation_sk_SK.java
deleted file mode 100644
index 6390e0570f8..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sk_SK.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_sk_SK.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_sk_SK extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "\u00A0";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "Nede\u013Ea", "Pondelok", "Utorok", "Streda", "\u0160tvrtok", "Piatok", "Sobota" };
-
- static final String[] shortWeekdays = { null, "Ne", "Po", "Ut", "St", "\u0160t", "Pi", "So" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "m\u00E1j", "j\u00FAn", "j\u00FAl", "aug", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "janu\u00E1r", "febru\u00E1r", "marec", "apr\u00EDl", "m\u00E1j", "j\u00FAn", "j\u00FAl", "august", "september", "okt\u00F3ber", "november", "december", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "hh:m:s";
- static final String currencySymbol = "Sk";
- static final String intlCurrencySymbol = "SKK";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_sl_SI.h b/libjava/gnu/java/locale/LocaleInformation_sl_SI.h
deleted file mode 100644
index 51aa0403dc5..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sl_SI.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_sl_SI__
-#define __gnu_java_locale_LocaleInformation_sl_SI__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_sl_SI;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_sl_SI : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_sl_SI();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_sl_SI__
diff --git a/libjava/gnu/java/locale/LocaleInformation_sl_SI.java b/libjava/gnu/java/locale/LocaleInformation_sl_SI.java
deleted file mode 100644
index d79f0d00ca0..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sl_SI.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_sl_SI.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_sl_SI extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = " ";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "nedelja", "ponedeljek", "torek", "sreda", "\u010Detrtek", "petek", "sobota" };
-
- static final String[] shortWeekdays = { null, "ned", "pon", "tor", "sre", "\u010Det", "pet", "sob" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "maj", "jun", "jul", "avg", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "januar", "februar", "marec", "april", "maj", "junij", "julij", "avgust", "september", "oktober", "november", "december", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "SIT";
- static final String intlCurrencySymbol = "SIT";
- static final String currencyFormat = "#,###,##0.00 $;#,###,##0.00 $-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_sq_AL.h b/libjava/gnu/java/locale/LocaleInformation_sq_AL.h
deleted file mode 100644
index 493cca5518e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sq_AL.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_sq_AL__
-#define __gnu_java_locale_LocaleInformation_sq_AL__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_sq_AL;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_sq_AL : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_sq_AL();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_sq_AL__
diff --git a/libjava/gnu/java/locale/LocaleInformation_sq_AL.java b/libjava/gnu/java/locale/LocaleInformation_sq_AL.java
deleted file mode 100644
index 64b7b6521ff..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sq_AL.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_sq_AL.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_sq_AL extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "e diel ", "e h\u00EBn\u00EB ", "e mart\u00EB ", "e m\u00EBrkur\u00EB ", "e enjte ", "e premte ", "e shtun\u00EB " };
-
- static final String[] shortWeekdays = { null, "Die ", "H\u00EBn ", "Mar ", "M\u00EBr ", "Enj ", "Pre ", "Sht " };
-
- static final String[] shortMonths = { "Jan", "Shk", "Mar", "Pri", "Maj", "Qer", "Kor", "Gsh", "Sht", "Tet", "N\u00EBn", "Dhj", null };
-
- static final String[] months = { "janar", "shkurt", "mars", "prill", "maj", "qershor", "korrik", "gusht", "shtator", "tetor", "n\u00EBntor", "dhjetor", null };
-
- static final String[] ampms = { "PD", "MD" };
-
- static final String shortDateFormat = "yyyy-MMM-dd";
- static final String defaultTimeFormat = "hh.m.s.a z";
- static final String currencySymbol = "Lek";
- static final String intlCurrencySymbol = "ALL";
- static final String currencyFormat = "$#,##0.000;-$#,##0.000";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_sr_YU.h b/libjava/gnu/java/locale/LocaleInformation_sr_YU.h
deleted file mode 100644
index 42349ca2dab..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sr_YU.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_sr_YU__
-#define __gnu_java_locale_LocaleInformation_sr_YU__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_sr_YU;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_sr_YU : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_sr_YU();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_sr_YU__
diff --git a/libjava/gnu/java/locale/LocaleInformation_sr_YU.java b/libjava/gnu/java/locale/LocaleInformation_sr_YU.java
deleted file mode 100644
index 86e156fb41c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sr_YU.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_sr_YU.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_sr_YU extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = "";
- static final String numberFormat = "#.###";
- static final String percentFormat = "#%";
- static final String[] weekdays = { null, "nedelja", "ponedeljak", "utorak", "sreda", "\u010Detvrtak", "petak", "subota" };
-
- static final String[] shortWeekdays = { null, "ned", "pon", "uto", "sre", "\u010Det", "pet", "sub" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "maj", "jun", "jul", "avg", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "januar", "februar", "mart", "april", "maj", "jun", "jul", "avgust", "septembar", "oktobar", "novembar", "decembar", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd-MM-yyyy.";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "din";
- static final String intlCurrencySymbol = "YUN";
- static final String currencyFormat = "$ #,###,##0.;-$ #,###,##0.";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_sv_FI.h b/libjava/gnu/java/locale/LocaleInformation_sv_FI.h
deleted file mode 100644
index f5df7dcba91..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sv_FI.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_sv_FI__
-#define __gnu_java_locale_LocaleInformation_sv_FI__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_sv_FI;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_sv_FI : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_sv_FI();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_sv_FI__
diff --git a/libjava/gnu/java/locale/LocaleInformation_sv_FI.java b/libjava/gnu/java/locale/LocaleInformation_sv_FI.java
deleted file mode 100644
index 36c80811239..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sv_FI.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_sv_FI.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_sv_FI extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_fi_FI.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_fi_FI.groupingSeparator;
- static final String numberFormat = LocaleInformation_fi_FI.numberFormat;
- static final String percentFormat = LocaleInformation_fi_FI.percentFormat;
- static final String[] weekdays = { null, "s\u00F6ndag", "m\u00E5ndag", "tisdag", "onsdag", "torsdag", "fredag", "l\u00F6rdag" };
-
- static final String[] shortWeekdays = { null, "s\u00F6n", "m\u00E5n", "tis", "ons", "tor", "fre", "l\u00F6r" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "maj", "jun", "jul", "aug", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "januari", "februari", "mars", "april", "maj", "juni", "juli", "augusti", "september", "oktober", "november", "december", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = LocaleInformation_fi_FI.currencySymbol;
- static final String intlCurrencySymbol = LocaleInformation_fi_FI.intlCurrencySymbol;
- static final String currencyFormat = LocaleInformation_fi_FI.currencyFormat;
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_sv_SE.h b/libjava/gnu/java/locale/LocaleInformation_sv_SE.h
deleted file mode 100644
index 0a9e89c1db5..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sv_SE.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_sv_SE__
-#define __gnu_java_locale_LocaleInformation_sv_SE__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_sv_SE;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_sv_SE : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_sv_SE();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_sv_SE__
diff --git a/libjava/gnu/java/locale/LocaleInformation_sv_SE.java b/libjava/gnu/java/locale/LocaleInformation_sv_SE.java
deleted file mode 100644
index d9d94a4a878..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_sv_SE.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_sv_SE.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_sv_SE extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = " ";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "s\u00F6ndag", "m\u00E5ndag", "tisdag", "onsdag", "torsdag", "fredag", "l\u00F6rdag" };
-
- static final String[] shortWeekdays = { null, "s\u00F6n", "m\u00E5n", "tis", "ons", "tor", "fre", "l\u00F6r" };
-
- static final String[] shortMonths = { "jan", "feb", "mar", "apr", "maj", "jun", "jul", "aug", "sep", "okt", "nov", "dec", null };
-
- static final String[] months = { "januari", "februari", "mars", "april", "maj", "juni", "juli", "augusti", "september", "oktober", "november", "december", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "yyyy-MM-dd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "kr";
- static final String intlCurrencySymbol = "SEK";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ta_IN.h b/libjava/gnu/java/locale/LocaleInformation_ta_IN.h
deleted file mode 100644
index 8ec6e611dbc..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ta_IN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ta_IN__
-#define __gnu_java_locale_LocaleInformation_ta_IN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ta_IN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ta_IN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ta_IN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ta_IN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ta_IN.java b/libjava/gnu/java/locale/LocaleInformation_ta_IN.java
deleted file mode 100644
index 6943d6a7d23..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ta_IN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ta_IN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ta_IN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##,##0.###";
- static final String percentFormat = "#,##,##0%";
- static final String[] weekdays = { null, "\u0B9E\u0BBE\u0BAF\u0BBF\u0BB1\u0BC1", "\u0BA4\u0BBF\u0B99\u0BCD\u0B95\u0BB3\u0BCD", "\u0B9A\u0BC6\u0BB5\u0BCD\u0BB5\u0BBE\u0BAF\u0BCD", "\u0BAA\u0BC1\u0BA4\u0BA9\u0BCD", "\u0BB5\u0BBF\u0BAF\u0BBE\u0BB4\u0BA9\u0BCD", "\u0BB5\u0BC6\u0BB3\u0BCD\u0BB3\u0BBF", "\u0B9A\u0BA9\u0BBF" };
-
- static final String[] shortWeekdays = { null, "\u0B9E", "\u0BA4", "\u0B9A", "\u0BAA", "\u0BB5", "\u0BB5", "\u0B9A" };
-
- static final String[] shortMonths = { "\u0B9C\u0BA9\u0BB5\u0BB0\u0BBF", "\u0BAA\u0BC6\u0BAA\u0BCD\u0BB0\u0BB5\u0BB0\u0BBF", "\u0BAE\u0BBE\u0BB0\u0BCD\u0B9A\u0BCD", "\u0B8F\u0BAA\u0BCD\u0BB0\u0BB2\u0BCD", "\u0BAE\u0BC7", "\u0B9C\u0BC2\u0BA9\u0BCD", "\u0B9C\u0BC2\u0BB2\u0BC8", "\u0B86\u0B95\u0BB8\u0BCD\u0B9F\u0BCD", "\u0B9A\u0BC6\u0BAA\u0BCD\u0B9F\u0BAE\u0BCD\u0BAA\u0BB0\u0BCD", "\u0B85\u0B95\u0BCD\u0B9F\u0BCB\u0BAA\u0BB0\u0BCD", "\u0BA8\u0BB5\u0BAE\u0BCD\u0BAA\u0BB0\u0BCD", "\u0B9F\u0BBF\u0B9A\u0BAE\u0BCD\u0BAA\u0BB0\u0BCDr", null };
-
- static final String[] months = { "\u0B9C\u0BA9\u0BB5\u0BB0\u0BBF", "\u0BAA\u0BC6\u0BAA\u0BCD\u0BB0\u0BB5\u0BB0\u0BBF", "\u0BAE\u0BBE\u0BB0\u0BCD\u0B9A\u0BCD", "\u0B8F\u0BAA\u0BCD\u0BB0\u0BB2\u0BCD", "\u0BAE\u0BC7", "\u0B9C\u0BC2\u0BA9\u0BCD", "\u0B9C\u0BC2\u0BB2\u0BC8", "\u0B86\u0B95\u0BB8\u0BCD\u0B9F\u0BCD", "\u0B9A\u0BC6\u0BAA\u0BCD\u0B9F\u0BAE\u0BCD\u0BAA\u0BB0\u0BCD", "\u0B85\u0B95\u0BCD\u0B9F\u0BCB\u0BAA\u0BB0\u0BCD", "\u0BA8\u0BB5\u0BAE\u0BCD\u0BAA\u0BB0\u0BCD", "\u0B9F\u0BBF\u0B9A\u0BAE\u0BCD\u0BAA\u0BB0\u0BCDr", null };
-
- static final String[] ampms = { "\u0B95\u0BBE\u0BB2\u0BC8", "\u0BAE\u0BBE\u0BB2\u0BC8" };
-
- static final String shortDateFormat = "EEEE dd MMMM yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "\u20A8";
- static final String intlCurrencySymbol = "INR";
- static final String currencyFormat = "$ #,##,##0.00;-$ #,##,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_te_IN.h b/libjava/gnu/java/locale/LocaleInformation_te_IN.h
deleted file mode 100644
index 4942cb7cd4c..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_te_IN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_te_IN__
-#define __gnu_java_locale_LocaleInformation_te_IN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_te_IN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_te_IN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_te_IN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_te_IN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_te_IN.java b/libjava/gnu/java/locale/LocaleInformation_te_IN.java
deleted file mode 100644
index 00d8e25c03b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_te_IN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_te_IN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_te_IN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,#0.###";
- static final String percentFormat = "#,###,#0%";
- static final String[] weekdays = { null, "\u0C06\u0C26\u0C3F\u0C35\u0C3E\u0C30\u0C02", "\u0C38\u0C4B\u0C2E\u0C35\u0C3E\u0C30\u0C02", "\u0C2E\u0C02\u0C17\u0C33\u0C35\u0C3E\u0C30\u0C02", "\u0C2C\u0C41\u0C27\u0C35\u0C3E\u0C30\u0C02", "\u0C17\u0C41\u0C30\u0C41\u0C35\u0C3E\u0C30\u0C02", "\u0C36\u0C41\u0C15\u0C4D\u0C30\u0C35\u0C3E\u0C30\u0C02", "\u0C36\u0C28\u0C3F\u0C35\u0C3E\u0C30\u0C02" };
-
- static final String[] shortWeekdays = { null, "\u0C06\u0C26\u0C3F", "\u0C38\u0C4B\u0C2E", "\u0C2E\u0C02\u0C17\u0C33", "\u0C2C\u0C41\u0C27", "\u0C17\u0C41\u0C30\u0C41", "\u0C36\u0C41\u0C15\u0C4D\u0C30", "\u0C36\u0C28\u0C3F" };
-
- static final String[] shortMonths = { "\u0C1C\u0C28\u0C35\u0C30\u0C3F", "\u0C2B\u0C3F\u0C2C\u0C4D\u0C30\u0C35\u0C30\u0C3F", "\u0C2E\u0C3E\u0C30\u0C4D\u0C1A\u0C3F", "\u0C0F\u0C2A\u0C4D\u0C30\u0C3F\u0C32\u0C4D", "\u0C2E\u0C47", "\u0C1C\u0C42\u0C28\u0C4D", "\u0C1C\u0C42\u0C32\u0C48", "\u0C06\u0C17\u0C38\u0C4D\u0C1F\u0C41", "\u0C38\u0C46\u0C2A\u0C4D\u0C1F\u0C46\u0C02\u0C2C\u0C30\u0C4D", "\u0C05\u0C15\u0C4D\u0C1F\u0C4B\u0C2C\u0C30\u0C4D", "\u0C28\u0C35\u0C02\u0C2C\u0C30\u0C4D", "\u0C21\u0C3F\u0C38\u0C46\u0C02\u0C2C\u0C30\u0C4D", null };
-
- static final String[] months = { "\u0C1C\u0C28\u0C35\u0C30\u0C3F", "\u0C2B\u0C3F\u0C2C\u0C4D\u0C30\u0C35\u0C30\u0C3F", "\u0C2E\u0C3E\u0C30\u0C4D\u0C1A\u0C3F", "\u0C0F\u0C2A\u0C4D\u0C30\u0C3F\u0C32\u0C4D", "\u0C2E\u0C47", "\u0C1C\u0C42\u0C28\u0C4D", "\u0C1C\u0C42\u0C32\u0C48", "\u0C06\u0C17\u0C38\u0C4D\u0C1F\u0C41", "\u0C38\u0C46\u0C2A\u0C4D\u0C1F\u0C46\u0C02\u0C2C\u0C30\u0C4D", "\u0C05\u0C15\u0C4D\u0C1F\u0C4B\u0C2C\u0C30\u0C4D", "\u0C28\u0C35\u0C02\u0C2C\u0C30\u0C4D", "\u0C21\u0C3F\u0C38\u0C46\u0C02\u0C2C\u0C30\u0C4D", null };
-
- static final String[] ampms = { "\u0C2A\u0C42\u0C30\u0C4D\u0C35\u0C3E\u0C39\u0C4D\u0C28", "\u0C05\u0C2A\u0C30\u0C3E\u0C39\u0C4D\u0C28" };
-
- static final String shortDateFormat = "EEEE dd MMM yyyy";
- static final String defaultTimeFormat = "hh:m:s a z";
- static final String currencySymbol = "\u0930\u0942";
- static final String intlCurrencySymbol = "INR";
- static final String currencyFormat = "$ #,###,#0.00;-$ #,###,#0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_tg_TJ.h b/libjava/gnu/java/locale/LocaleInformation_tg_TJ.h
deleted file mode 100644
index ff642afcb55..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_tg_TJ.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_tg_TJ__
-#define __gnu_java_locale_LocaleInformation_tg_TJ__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_tg_TJ;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_tg_TJ : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_tg_TJ();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_tg_TJ__
diff --git a/libjava/gnu/java/locale/LocaleInformation_tg_TJ.java b/libjava/gnu/java/locale/LocaleInformation_tg_TJ.java
deleted file mode 100644
index 39ab30a3969..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_tg_TJ.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_tg_TJ.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_tg_TJ extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u0412\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435", "\u041F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A", "\u0412\u0442\u043E\u0440\u043D\u0438\u043A", "\u0421\u0440\u0435\u0434\u0430", "\u0427\u0435\u0442\u0432\u0435\u0440\u0433", "\u041F\u044F\u0442\u043D\u0438\u0446\u0430", "\u0421\u0443\u0431\u0431\u043E\u0442\u0430" };
-
- static final String[] shortWeekdays = { null, "\u0412\u0441\u043A", "\u041F\u043D\u0434", "\u0412\u0442\u0440", "\u0421\u0440\u0434", "\u0427\u0442\u0432", "\u041F\u0442\u043D", "\u0421\u0431\u0442" };
-
- static final String[] shortMonths = { "\u042F\u043D\u0432", "\u0424\u0435\u0432", "\u041C\u0430\u0440", "\u0410\u043F\u0440", "\u041C\u0430\u0439", "\u0418\u044E\u043D", "\u0418\u044E\u043B", "\u0410\u0432\u0433", "\u0421\u0435\u043D", "\u041E\u043A\u0442", "\u041D\u043E\u044F", "\u0414\u0435\u043A", null };
-
- static final String[] months = { "\u042F\u043D\u0432\u0430\u0440\u044F", "\u0424\u0435\u0432\u0440\u0430\u043B\u044F", "\u041C\u0430\u0440\u0442\u0430", "\u0410\u043F\u0440\u0435\u043B\u044F", "\u041C\u0430\u044F", "\u0418\u044E\u043D\u044F", "\u0418\u044E\u043B\u044F", "\u0410\u0432\u0433\u0443\u0441\u0442\u0430", "\u0421\u0435\u043D\u0442\u044F\u0431\u0440\u044F", "\u041E\u043A\u0442\u044F\u0431\u0440\u044F", "\u041D\u043E\u044F\u0431\u0440\u044F", "\u0414\u0435\u043A\u0430\u0431\u0440\u044F", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u0440\u0443\u0431";
- static final String intlCurrencySymbol = "RUR";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_tl_PH.h b/libjava/gnu/java/locale/LocaleInformation_tl_PH.h
deleted file mode 100644
index e8475692964..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_tl_PH.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_tl_PH__
-#define __gnu_java_locale_LocaleInformation_tl_PH__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_tl_PH;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_tl_PH : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_tl_PH();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_tl_PH__
diff --git a/libjava/gnu/java/locale/LocaleInformation_tl_PH.java b/libjava/gnu/java/locale/LocaleInformation_tl_PH.java
deleted file mode 100644
index a4945904240..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_tl_PH.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_tl_PH.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_tl_PH extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_US.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_US.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_US.numberFormat;
- static final String percentFormat = LocaleInformation_en_US.percentFormat;
- static final String[] weekdays = { null, "Linggo", "Lunes", "Martes", "Miyerkoles", "Huwebes", "Biyernes", "Sabado" };
-
- static final String[] shortWeekdays = { null, "Lin", "Lun", "Mar", "Miy", "Huw", "Biy", "Sab" };
-
- static final String[] shortMonths = { "Ene", "Peb", "Mar", "Abr", "May", "Hun", "Hul", "Ago", "Sep", "Okt", "Nob", "Dis", null };
-
- static final String[] months = { "Enero", "Pebrero", "Marso", "Abril", "Mayo", "Hunyo", "Hulyo", "Agosto", "Septiyembre", "Oktubre", "Nobiyembre", "Disyembre", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "MM/dd/yy";
- static final String defaultTimeFormat = "hh:m:s a";
- static final String currencySymbol = "PhP";
- static final String intlCurrencySymbol = "PHP";
- static final String currencyFormat = "$#,###,##0.00;-$ #,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_tr_TR.h b/libjava/gnu/java/locale/LocaleInformation_tr_TR.h
deleted file mode 100644
index 19edf48cb38..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_tr_TR.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_tr_TR__
-#define __gnu_java_locale_LocaleInformation_tr_TR__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_tr_TR;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_tr_TR : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_tr_TR();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_tr_TR__
diff --git a/libjava/gnu/java/locale/LocaleInformation_tr_TR.java b/libjava/gnu/java/locale/LocaleInformation_tr_TR.java
deleted file mode 100644
index b02f38ed062..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_tr_TR.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_tr_TR.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_tr_TR extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = "";
- static final String numberFormat = "#,##############################################################################################################################0.###";
- static final String percentFormat = "#,##############################################################################################################################0%";
- static final String[] weekdays = { null, "Pazar", "Pazartesi", "Sal\u0131", "\u00C7ar\u015Famba", "Per\u015Fembe", "Cuma", "Cumartesi" };
-
- static final String[] shortWeekdays = { null, "Paz", "Pzt", "Sal", "\u00C7r\u015F", "Pr\u015F", "Cum", "Cts" };
-
- static final String[] shortMonths = { "Oca", "\u015Eub", "Mar", "Nis", "May", "Haz", "Tem", "A\u011Fu", "Eyl", "Eki", "Kas", "Ara", null };
-
- static final String[] months = { "Ocak", "\u015Eubat", "Mart", "Nisan", "May\u0131s", "Haziran", "Temmuz", "A\u011Fustos", "Eyl\u00FCl", "Ekim", "Kas\u0131m", "Aral\u0131k", null };
-
- static final String[] ampms = { "\u00D6\u00D6", "\u00D6S" };
-
- static final String shortDateFormat = "dd-MM-yyyy";
- static final String defaultTimeFormat = "hh:m:s a";
- static final String currencySymbol = "TL";
- static final String intlCurrencySymbol = "TRL";
- static final String currencyFormat = "#,##0.00 $;-#,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_uk_UA.h b/libjava/gnu/java/locale/LocaleInformation_uk_UA.h
deleted file mode 100644
index ace1c31b655..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_uk_UA.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_uk_UA__
-#define __gnu_java_locale_LocaleInformation_uk_UA__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_uk_UA;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_uk_UA : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_uk_UA();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_uk_UA__
diff --git a/libjava/gnu/java/locale/LocaleInformation_uk_UA.java b/libjava/gnu/java/locale/LocaleInformation_uk_UA.java
deleted file mode 100644
index 0eb71f36b69..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_uk_UA.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_uk_UA.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_uk_UA extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u041D\u0435\u0434\u0456\u043B\u044F", "\u041F\u043E\u043D\u0435\u0434\u0456\u043B\u043E\u043A", "\u0412\u0456\u0432\u0442\u043E\u0440\u043E\u043A", "\u0421\u0435\u0440\u0435\u0434\u0430", "\u0427\u0435\u0442\u0432\u0435\u0440", "\u041F'\u044F\u0442\u043D\u0438\u0446\u044F", "\u0421\u0443\u0431\u043E\u0442\u0430" };
-
- static final String[] shortWeekdays = { null, "\u041D\u0434\u043B", "\u041F\u043D\u0434", "\u0412\u0442\u0440", "\u0421\u0440\u0434", "\u0427\u0442\u0432", "\u041F\u0442\u043D", "\u0421\u0431\u0442" };
-
- static final String[] shortMonths = { "\u0421\u0456\u0447", "\u041B\u044E\u0442", "\u0411\u0435\u0440", "\u041A\u0432\u0456", "\u0422\u0440\u0430", "\u0427\u0435\u0440", "\u041B\u0438\u043F", "\u0421\u0435\u0440", "\u0412\u0435\u0440", "\u0416\u043E\u0432", "\u041B\u0438\u0441", "\u0413\u0440\u0443", null };
-
- static final String[] months = { "\u0421\u0456\u0447\u0435\u043D\u044C", "\u041B\u044E\u0442\u0438\u0439", "\u0411\u0435\u0440\u0435\u0437\u0435\u043D\u044C", "\u041A\u0432\u0456\u0442\u0435\u043D\u044C", "\u0422\u0440\u0430\u0432\u0435\u043D\u044C", "\u0427\u0435\u0440\u0432\u0435\u043D\u044C", "\u041B\u0438\u043F\u0435\u043D\u044C", "\u0421\u0435\u0440\u043F\u0435\u043D\u044C", "\u0412\u0435\u0440\u0435\u0441\u0435\u043D\u044C", "\u0416\u043E\u0432\u0442\u0435\u043D\u044C", "\u041B\u0438\u0441\u0442\u043E\u043F\u0430\u0434", "\u0413\u0440\u0443\u0434\u0435\u043D\u044C", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd.MM.yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u0433\u0440";
- static final String intlCurrencySymbol = "UAH";
- static final String currencyFormat = "#,###,##0.00 $;-#,###,##0.00 $";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_ur_PK.h b/libjava/gnu/java/locale/LocaleInformation_ur_PK.h
deleted file mode 100644
index dc7a5ccf316..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ur_PK.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_ur_PK__
-#define __gnu_java_locale_LocaleInformation_ur_PK__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_ur_PK;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_ur_PK : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_ur_PK();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_ur_PK__
diff --git a/libjava/gnu/java/locale/LocaleInformation_ur_PK.java b/libjava/gnu/java/locale/LocaleInformation_ur_PK.java
deleted file mode 100644
index a74eb6d9c1e..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_ur_PK.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_ur_PK.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_ur_PK extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "\u0627\u062A\u0648\u0627\u0631", "\u067E\u064A\u0631", "\u0645\u0646\u06AF\u0644", "\u0628\u062F\u06BE", "\u062C\u0645\u0639\u0631\u0627\u062A", "\u062C\u0645\u0639\u0647", "\u0647\u0641\u062A\u0647" };
-
- static final String[] shortWeekdays = { null, "\u0627\u062A\u0648\u0627\u0631", "\u067E\u064A\u0631", "\u0645\u0646\u06AF\u0644", "\u0628\u062F\u06BE", "\u062C\u0645\u0639\u0631\u0627\u062A", "\u062C\u0645\u0639\u0647", "\u0647\u0641\u062A\u0647" };
-
- static final String[] shortMonths = { "\u062C\u0646\u0648\u0631\u064A", "\u0641\u0631\u0648\u0631\u064A", "\u0645\u0627\u0631\u0686", "\u0627\u067E\u0631\u064A\u0644", "\u0645\u0653\u06CC", "\u062C\u0648\u0646", "\u062C\u0648\u0644\u0627\u064A", "\u0627\u06AF\u0633\u062A", "\u0633\u062A\u0645\u0628\u0631", "\u0627\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0645\u0628\u0631", "\u062F\u0633\u0645\u0628\u0631", null };
-
- static final String[] months = { "\u062C\u0646\u0648\u0631\u064A", "\u0641\u0631\u0648\u0631\u064A", "\u0645\u0627\u0631\u0686", "\u0627\u067E\u0631\u064A\u0644", "\u0645\u0653\u06CC", "\u062C\u0648\u0646", "\u062C\u0648\u0644\u0627\u064A", "\u0627\u06AF\u0633\u062A", "\u0633\u062A\u0645\u0628\u0631", "\u0627\u0643\u062A\u0648\u0628\u0631", "\u0646\u0648\u0645\u0628\u0631", "\u062F\u0633\u0645\u0628\u0631", null };
-
- static final String[] ampms = { "\u0635", "\u0634" };
-
- static final String shortDateFormat = "dd/MM/yyyy";
- static final String defaultTimeFormat = "a hh:m:s";
- static final String currencySymbol = "Rs";
- static final String intlCurrencySymbol = "PKR";
- static final String currencyFormat = "$ #,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_uz_UZ.h b/libjava/gnu/java/locale/LocaleInformation_uz_UZ.h
deleted file mode 100644
index ec8d3fb492f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_uz_UZ.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_uz_UZ__
-#define __gnu_java_locale_LocaleInformation_uz_UZ__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_uz_UZ;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_uz_UZ : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_uz_UZ();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_uz_UZ__
diff --git a/libjava/gnu/java/locale/LocaleInformation_uz_UZ.java b/libjava/gnu/java/locale/LocaleInformation_uz_UZ.java
deleted file mode 100644
index 29a765c1c33..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_uz_UZ.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_uz_UZ.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_uz_UZ extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,###,##0.###";
- static final String percentFormat = "#,###,##0%";
- static final String[] weekdays = { null, "yakshanba", "dushanba", "seshanba", "chorshanba", "payshanba", "juma", "shanba" };
-
- static final String[] shortWeekdays = { null, "Yak", "Du", "Se", "Cho", "Pay", "Ju", "Sha" };
-
- static final String[] shortMonths = { "Yav", "Fev", "Mar", "Apr", "May", "Iyn", "Iyl", "Avg", "Sen", "Okt", "Noy", "Dek", null };
-
- static final String[] months = { "yanvar", "fevral", "mart", "aprel", "may", "iyun", "iyul", "avgust", "senyabr", "oktyabr", "noyabr", "dekabr", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "so'm";
- static final String intlCurrencySymbol = "UZS";
- static final String currencyFormat = "$#,###,##0.00;-$#,###,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_vi_VN.h b/libjava/gnu/java/locale/LocaleInformation_vi_VN.h
deleted file mode 100644
index 293c03b8179..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_vi_VN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_vi_VN__
-#define __gnu_java_locale_LocaleInformation_vi_VN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_vi_VN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_vi_VN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_vi_VN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_vi_VN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_vi_VN.java b/libjava/gnu/java/locale/LocaleInformation_vi_VN.java
deleted file mode 100644
index 87d1faeccfa..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_vi_VN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_vi_VN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_vi_VN extends ListResourceBundle
-{
- static final String decimalSeparator = ",";
- static final String groupingSeparator = ".";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "Th\u01B0\u0301 hai ", "Th\u01B0\u0301 ba ", "Th\u01B0\u0301 t\u01B0 ", "Th\u01B0\u0301 n\u0103m ", "Th\u01B0\u0301 s\u00E1u ", "Th\u01B0\u0301 ba\u0309y ", "Chu\u0309 nh\u00E2\u0323t " };
-
- static final String[] shortWeekdays = { null, "Th 2 ", "Th 3 ", "Th 4 ", "Th 5 ", "Th 6 ", "Th 7 ", "CN " };
-
- static final String[] shortMonths = { "Thg 1", "Thg 2", "Thg 3", "Thg 4", "Thg 5", "Thg 6", "Thg 7", "Thg 8", "Thg 9", "Thg 10", "Thg 11", "Thg 12", null };
-
- static final String[] months = { "Th\u00E1ng m\u00F4\u0323t", "Th\u00E1ng hai", "Th\u00E1ng ba", "Th\u00E1ng t\u01B0", "Th\u00E1ng n\u0103m", "Th\u00E1ng s\u00E1u", "Th\u00E1ng ba\u0309y", "Th\u00E1ng t\u00E1m", "Th\u00E1ng ch\u00EDn", "Th\u00E1ng m\u01B0\u01A1\u0300i", "Th\u00E1ng m\u01B0\u01A1\u0300i m\u00F4\u0323t", "Th\u00E1ng m\u01B0\u01A1\u0300i hai", null };
-
- static final String[] ampms = { "", "" };
-
- static final String shortDateFormat = "EEEE dd MMM yyyy";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "\u20AB";
- static final String intlCurrencySymbol = "VND";
- static final String currencyFormat = "#,##0.0000$;-$#,##0.0000";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_yi_US.h b/libjava/gnu/java/locale/LocaleInformation_yi_US.h
deleted file mode 100644
index 613e0b2fa23..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_yi_US.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_yi_US__
-#define __gnu_java_locale_LocaleInformation_yi_US__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_yi_US;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_yi_US : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_yi_US();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_yi_US__
diff --git a/libjava/gnu/java/locale/LocaleInformation_yi_US.java b/libjava/gnu/java/locale/LocaleInformation_yi_US.java
deleted file mode 100644
index 0d01ac406f9..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_yi_US.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_yi_US.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_yi_US extends ListResourceBundle
-{
- static final String decimalSeparator = LocaleInformation_en_US.decimalSeparator;
- static final String groupingSeparator = LocaleInformation_en_US.groupingSeparator;
- static final String numberFormat = LocaleInformation_en_US.numberFormat;
- static final String percentFormat = LocaleInformation_en_US.percentFormat;
- static final String[] weekdays = { null, "\u05D6\u05D5\u05E0\u05D8\u05D9\u05E7", "\u05DE\u05D0\u05B8\u05E0\u05D8\u05D9\u05E7", "\u05D3\u05D9\u05E0\u05E1\u05D8\u05D9\u05E7", "\u05DE\u05D9\u05D8\u05F0\u05D0\u05B8\u05DA", "\u05D3\u05D0\u05B8\u05E0\u05E2\u05E8\u05E9\u05D8\u05D9\u05E7", "\u05E4\u05BF\u05E8\u05F2\u05B7\u05D8\u05D9\u05E7", "\u05E9\u05D1\u05EA" };
-
- static final String[] shortWeekdays = { null, "\u05D6\u05D5\u05E0'", "\u05DE\u05D0\u05B8\u05E0'", "\u05D3\u05D9\u05E0'", "\u05DE\u05D9\u05D8'", "\u05D3\u05D0\u05B8\u05E0'", "\u05E4\u05BF\u05E8\u05F2\u05B7'", "\u05E9\u05D1\u05EA" };
-
- static final String[] shortMonths = { "\u05D9\u05D0\u05B7\u05E0'", "\u05E4\u05BF\u05E2\u05D1'", "\u05DE\u05D0\u05B7\u05E8'", "\u05D0\u05B7\u05E4\u05BC\u05E8'", "\u05DE\u05F2\u05B7", "\u05D9\u05D5\u05E0'", "\u05D9\u05D5\u05DC'", "\u05D0\u05F1\u05D2'", "\u05E1\u05E2\u05E4\u05BC'", "\u05D0\u05B8\u05E7\u05D8'", "\u05E0\u05D0\u05B8\u05F0'", "\u05D3\u05E2\u05E6'", null };
-
- static final String[] months = { "\u05D9\u05D0\u05B7\u05E0\u05D5\u05D0\u05B7\u05E8", "\u05E4\u05BF\u05E2\u05D1\u05E8\u05D5\u05D0\u05B7\u05E8", "\u05DE\u05D0\u05B7\u05E8\u05E5", "\u05D0\u05B7\u05E4\u05BC\u05E8\u05D9\u05DC", "\u05DE\u05F2\u05B7", "\u05D9\u05D5\u05E0\u05D9", "\u05D9\u05D5\u05DC\u05D9", "\u05D0\u05F1\u05D2\u05E1\u05D8", "\u05E1\u05E2\u05E4\u05BC\u05D8\u05E2\u05DE\u05D1\u05E2\u05E8", "\u05D0\u05B8\u05E7\u05D8\u05D0\u05B8\u05D1\u05E2\u05E8", "\u05E0A\u05B8\u05F0\u05E2\u05DE\u05D1\u05E2\u05E8", "\u05D3\u05E6\u05DE\u05D1\u05E8", null };
-
- static final String[] ampms = { "AM", "PM" };
-
- static final String shortDateFormat = "dd/MM/yy";
- static final String defaultTimeFormat = "hh:m:s a";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "USD";
- static final String currencyFormat = "$ #,###,##0.00;$ #,###,##0.00-";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_zh_CN.h b/libjava/gnu/java/locale/LocaleInformation_zh_CN.h
deleted file mode 100644
index cefd2446a5a..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_zh_CN.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_zh_CN__
-#define __gnu_java_locale_LocaleInformation_zh_CN__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_zh_CN;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_zh_CN : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_zh_CN();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_zh_CN__
diff --git a/libjava/gnu/java/locale/LocaleInformation_zh_CN.java b/libjava/gnu/java/locale/LocaleInformation_zh_CN.java
deleted file mode 100644
index 98e148de530..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_zh_CN.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_zh_CN.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_zh_CN extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u661F\u671F\u65E5", "\u661F\u671F\u4E00", "\u661F\u671F\u4E8C", "\u661F\u671F\u4E09", "\u661F\u671F\u56DB", "\u661F\u671F\u4E94", "\u661F\u671F\u516D" };
-
- static final String[] shortWeekdays = { null, "\u65E5", "\u4E00", "\u4E8C", "\u4E09", "\u56DB", "\u4E94", "\u516D" };
-
- static final String[] shortMonths = { " 1\u6708", " 2\u6708", " 3\u6708", " 4\u6708", " 5\u6708", " 6\u6708", " 7\u6708", " 8\u6708", " 9\u6708", "10\u6708", "11\u6708", "12\u6708", null };
-
- static final String[] months = { "\u4E00\u6708", "\u4E8C\u6708", "\u4E09\u6708", "\u56DB\u6708", "\u4E94\u6708", "\u516D\u6708", "\u4E03\u6708", "\u516B\u6708", "\u4E5D\u6708", "\u5341\u6708", "\u5341\u4E00\u6708", "\u5341\u4E8C\u6708", null };
-
- static final String[] ampms = { "\u4E0A\u5348", "\u4E0B\u5348" };
-
- static final String shortDateFormat = "yyyyMMdd";
- static final String defaultTimeFormat = "a hhms";
- static final String currencySymbol = "\uFFE5";
- static final String intlCurrencySymbol = "CNY";
- static final String currencyFormat = "$#,##0.00;$-#,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_zh_HK.h b/libjava/gnu/java/locale/LocaleInformation_zh_HK.h
deleted file mode 100644
index f0e0c18a71b..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_zh_HK.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_zh_HK__
-#define __gnu_java_locale_LocaleInformation_zh_HK__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_zh_HK;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_zh_HK : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_zh_HK();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_zh_HK__
diff --git a/libjava/gnu/java/locale/LocaleInformation_zh_HK.java b/libjava/gnu/java/locale/LocaleInformation_zh_HK.java
deleted file mode 100644
index d2a7e8a7fd1..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_zh_HK.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_zh_HK.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_zh_HK extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u661F\u671F\u65E5 ", "\u661F\u671F\u4E00 ", "\u661F\u671F\u4E8C ", "\u661F\u671F\u4E09 ", "\u661F\u671F\u56DB ", "\u661F\u671F\u4E94 ", "\u661F\u671F\u516D " };
-
- static final String[] shortWeekdays = { null, "\u65E5 ", "\u4E00 ", "\u4E8C ", "\u4E09 ", "\u56DB ", "\u4E94 ", "\u516D " };
-
- static final String[] shortMonths = { "1\u6708", "2\u6708", "3\u6708", "4\u6708", "5\u6708", "6\u6708", "7\u6708", "8\u6708", "9\u6708", "10\u6708", "11\u6708", "12\u6708", null };
-
- static final String[] months = { "\u4E00\u6708", "\u4E8C\u6708", "\u4E09\u6708", "\u56DB\u6708", "\u4E94\u6708", "\u516D\u6708", "\u4E03\u6708", "\u516B\u6708", "\u4E5D\u6708", "\u5341\u6708", "\u5341\u4E00\u6708", "\u5341\u4E8C\u6708", null };
-
- static final String[] ampms = { "\u4E0A\u5348", "\u4E0B\u5348" };
-
- static final String shortDateFormat = "yyyyMMMdd EEEE";
- static final String defaultTimeFormat = "a hh:m:s";
- static final String currencySymbol = "HK$";
- static final String intlCurrencySymbol = "HKD";
- static final String currencyFormat = "$#,##0.00;($#,##0.00)";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_zh_SG.h b/libjava/gnu/java/locale/LocaleInformation_zh_SG.h
deleted file mode 100644
index 39f28d1a823..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_zh_SG.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_zh_SG__
-#define __gnu_java_locale_LocaleInformation_zh_SG__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_zh_SG;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_zh_SG : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_zh_SG();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_zh_SG__
diff --git a/libjava/gnu/java/locale/LocaleInformation_zh_SG.java b/libjava/gnu/java/locale/LocaleInformation_zh_SG.java
deleted file mode 100644
index f818d1d2b1f..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_zh_SG.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_zh_SG.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_zh_SG extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u661F\u671F\u65E5", "\u661F\u671F\u4E00", "\u661F\u671F\u4E8C", "\u661F\u671F\u4E09", "\u661F\u671F\u56DB", "\u661F\u671F\u4E94", "\u661F\u671F\u516D" };
-
- static final String[] shortWeekdays = { null, "\u661F\u671F\u65E5", "\u661F\u671F\u4E00", "\u661F\u671F\u4E8C", "\u661F\u671F\u4E09", "\u661F\u671F\u56DB", "\u661F\u671F\u4E94", "\u661F\u671F\u516D" };
-
- static final String[] shortMonths = { "\u4E00\u6708", "\u4E8C\u6708", "\u4E09\u6708", "\u56DB\u6708", "\u4E94\u6708", "\u516D\u6708", "\u4E03\u6708", "\u516B\u6708", "\u4E5D\u6708", "\u5341\u6708", "\u5341\u4E00\u6708", "\u5341\u4E8C\u6708", null };
-
- static final String[] months = { "\u4E00\u6708", "\u4E8C\u6708", "\u4E09\u6708", "\u56DB\u6708", "\u4E94\u6708", "\u516D\u6708", "\u4E03\u6708", "\u516B\u6708", "\u4E5D\u6708", "\u5341\u6708", "\u5341\u4E00\u6708", "\u5341\u4E8C\u6708", null };
-
- static final String[] ampms = { "\u4E0A\u5348", "\u4E0B\u5348" };
-
- static final String shortDateFormat = "yyyyMMdd";
- static final String defaultTimeFormat = "";
- static final String currencySymbol = "$";
- static final String intlCurrencySymbol = "SGD";
- static final String currencyFormat = "$#,##0.00;($#,##0.00)";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/gnu/java/locale/LocaleInformation_zh_TW.h b/libjava/gnu/java/locale/LocaleInformation_zh_TW.h
deleted file mode 100644
index 32cf3db4eaf..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_zh_TW.h
+++ /dev/null
@@ -1,53 +0,0 @@
-
-// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
-
-#ifndef __gnu_java_locale_LocaleInformation_zh_TW__
-#define __gnu_java_locale_LocaleInformation_zh_TW__
-
-#pragma interface
-
-#include <java/util/ListResourceBundle.h>
-#include <gcj/array.h>
-
-extern "Java"
-{
- namespace gnu
- {
- namespace java
- {
- namespace locale
- {
- class LocaleInformation_zh_TW;
- }
- }
- }
-}
-
-class gnu::java::locale::LocaleInformation_zh_TW : public ::java::util::ListResourceBundle
-{
-
-public:
- LocaleInformation_zh_TW();
- virtual JArray< JArray< ::java::lang::Object * > * > * getContents();
-public: // actually package-private
- static ::java::lang::String * decimalSeparator;
- static ::java::lang::String * groupingSeparator;
- static ::java::lang::String * numberFormat;
- static ::java::lang::String * percentFormat;
- static JArray< ::java::lang::String * > * weekdays;
- static JArray< ::java::lang::String * > * shortWeekdays;
- static JArray< ::java::lang::String * > * shortMonths;
- static JArray< ::java::lang::String * > * months;
- static JArray< ::java::lang::String * > * ampms;
- static ::java::lang::String * shortDateFormat;
- static ::java::lang::String * defaultTimeFormat;
- static ::java::lang::String * currencySymbol;
- static ::java::lang::String * intlCurrencySymbol;
- static ::java::lang::String * currencyFormat;
-private:
- static JArray< JArray< ::java::lang::Object * > * > * contents;
-public:
- static ::java::lang::Class class$;
-};
-
-#endif // __gnu_java_locale_LocaleInformation_zh_TW__
diff --git a/libjava/gnu/java/locale/LocaleInformation_zh_TW.java b/libjava/gnu/java/locale/LocaleInformation_zh_TW.java
deleted file mode 100644
index 132c6240f18..00000000000
--- a/libjava/gnu/java/locale/LocaleInformation_zh_TW.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/* LocaleInformation_zh_TW.java
- Copyright (C) 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-// This file was automatically generated by localedef.
-
-package gnu.java.locale;
-
-import java.util.ListResourceBundle;
-
-public class LocaleInformation_zh_TW extends ListResourceBundle
-{
- static final String decimalSeparator = ".";
- static final String groupingSeparator = ",";
- static final String numberFormat = "#,##0.###";
- static final String percentFormat = "#,##0%";
- static final String[] weekdays = { null, "\u661F\u671F\u65E5", "\u661F\u671F\u4E00", "\u661F\u671F\u4E8C", "\u661F\u671F\u4E09", "\u661F\u671F\u56DB", "\u661F\u671F\u4E94", "\u661F\u671F\u516D" };
-
- static final String[] shortWeekdays = { null, "\u9031\u65E5", "\u9031\u4E00", "\u9031\u4E8C", "\u9031\u4E09", "\u9031\u56DB", "\u9031\u4E94", "\u9031\u516D" };
-
- static final String[] shortMonths = { " 1\u6708", " 2\u6708", " 3\u6708", " 4\u6708", " 5\u6708", " 6\u6708", " 7\u6708", " 8\u6708", " 9\u6708", "10\u6708", "11\u6708", "12\u6708", null };
-
- static final String[] months = { "\u4E00\u6708", "\u4E8C\u6708", "\u4E09\u6708", "\u56DB\u6708", "\u4E94\u6708", "\u516D\u6708", "\u4E03\u6708", "\u516B\u6708", "\u4E5D\u6708", "\u5341\u6708", "\u5341\u4E00\u6708", "\u5341\u4E8C\u6708", null };
-
- static final String[] ampms = { "\u4E0A\u5348", "\u4E0B\u5348" };
-
- static final String shortDateFormat = "yyyyMMdd";
- static final String defaultTimeFormat = "a hhms";
- static final String currencySymbol = "NT$";
- static final String intlCurrencySymbol = "TWD";
- static final String currencyFormat = "$#,##0.00;-$#,##0.00";
-
- private static final Object[][] contents =
- {
- { "weekdays", weekdays },
- { "shortWeekdays", shortWeekdays },
- { "shortMonths", shortMonths },
- { "months", months },
- { "ampms", ampms },
- { "shortDateFormat", shortDateFormat },
- { "defaultTimeFormat", defaultTimeFormat },
- { "currencySymbol", currencySymbol },
- { "intlCurrencySymbol", intlCurrencySymbol },
- { "currencyFormat", currencyFormat },
- { "decimalSeparator", decimalSeparator },
- { "groupingSeparator", groupingSeparator },
- { "numberFormat", numberFormat },
- { "percentFormat", percentFormat },
- };
-
- public Object[][] getContents () { return contents; }
-}
diff --git a/libjava/java/text/Collator.java b/libjava/java/text/Collator.java
index 3e64172632d..e493182b167 100644
--- a/libjava/java/text/Collator.java
+++ b/libjava/java/text/Collator.java
@@ -1,5 +1,6 @@
/* Collator.java -- Perform locale dependent String comparisons.
- Copyright (C) 1998, 1999, 2000, 2001, 2004, 2005, 2007 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2004, 2005, 2007,
+ 2008 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,6 +39,8 @@ exception statement from your version. */
package java.text;
+import gnu.java.locale.LocaleHelper;
+
import java.text.spi.CollatorProvider;
import java.util.Comparator;
@@ -243,10 +246,7 @@ public abstract class Collator implements Comparator<Object>, Cloneable
*/
public static synchronized Locale[] getAvailableLocales ()
{
- // FIXME
- Locale[] l = new Locale[1];
- l[0] = Locale.US;
- return l;
+ return LocaleHelper.getCollatorLocales();
}
/**
@@ -342,8 +342,7 @@ public abstract class Collator implements Comparator<Object>, Cloneable
throw (InternalError)new InternalError().initCause(x);
}
}
- // FIXME
- return getInstance(Locale.US);
+ return getInstance(LocaleHelper.getFallbackLocale(loc));
}
/**
diff --git a/libjava/java/text/DateFormatSymbols.h b/libjava/java/text/DateFormatSymbols.h
index 9836ea51273..d1f25b37eb6 100644
--- a/libjava/java/text/DateFormatSymbols.h
+++ b/libjava/java/text/DateFormatSymbols.h
@@ -23,6 +23,8 @@ extern "Java"
class java::text::DateFormatSymbols : public ::java::lang::Object
{
+ static JArray< ::java::lang::String * > * getStringArray(::java::util::ResourceBundle *, ::java::lang::String *);
+ JArray< JArray< ::java::lang::String * > * > * getZoneStrings(::java::util::ResourceBundle *, ::java::util::Locale *);
JArray< ::java::lang::String * > * formatsForKey(::java::util::ResourceBundle *, ::java::lang::String *);
public:
DateFormatSymbols(::java::util::Locale *);
diff --git a/libjava/java/text/DateFormatSymbols.java b/libjava/java/text/DateFormatSymbols.java
deleted file mode 100644
index 2ca513e6d0a..00000000000
--- a/libjava/java/text/DateFormatSymbols.java
+++ /dev/null
@@ -1,597 +0,0 @@
-/* DateFormatSymbols.java -- Format over a range of numbers
- Copyright (C) 1998, 1999, 2000, 2001, 2003, 2005, 2006 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package java.text;
-
-import gnu.java.locale.LocaleHelper;
-
-import java.text.spi.DateFormatSymbolsProvider;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Locale;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-import java.util.ServiceLoader;
-import java.util.TimeZone;
-
-import java.util.spi.TimeZoneNameProvider;
-
-/**
- * This class acts as container for locale specific date/time formatting
- * information such as the days of the week and the months of the year.
- * @author Per Bothner (bothner@cygnus.com)
- *
- * @date October 24, 1998.
- */
-/* Written using "Java Class Libraries", 2nd edition, ISBN 0-201-31002-3.
- * Status: Believed complete and correct.
- */
-public class DateFormatSymbols implements java.io.Serializable, Cloneable
-{
- String[] ampms;
- String[] eras;
- private String localPatternChars;
- String[] months;
- String[] shortMonths;
- String[] shortWeekdays;
- String[] weekdays;
-
- /**
- * The timezone strings supplied by the runtime.
- */
- private String[][] runtimeZoneStrings;
-
- /**
- * Custom timezone strings supplied by {@link #setZoneStrings()}.
- */
- private String[][] zoneStrings;
-
- private static final long serialVersionUID = -5987973545549424702L;
-
- // The order of these prefixes must be the same as in DateFormat
- private static final String[] formatPrefixes =
- {
- "full", "long", "medium", "short"
- };
-
- // These are each arrays with a value for SHORT, MEDIUM, LONG, FULL,
- // and DEFAULT (constants defined in java.text.DateFormat). While
- // not part of the official spec, we need a way to get at locale-specific
- // default formatting patterns. They are declared package scope so
- // as to be easily accessible where needed (DateFormat, SimpleDateFormat).
- transient String[] dateFormats;
- transient String[] timeFormats;
-
- private String[] formatsForKey(ResourceBundle res, String key)
- {
- String[] values = new String [formatPrefixes.length];
- for (int i = 0; i < formatPrefixes.length; i++)
- {
- values[i] = res.getString(formatPrefixes[i]+key);
- }
- return values;
- }
-
- /**
- * This method initializes a new instance of <code>DateFormatSymbols</code>
- * by loading the date format information for the specified locale.
- * This constructor only obtains instances using the runtime's resources;
- * to also include {@link java.text.spi.DateFormatSymbolsProvider} instances,
- * call {@link #getInstance(java.util.Locale)} instead.
- *
- * @param locale The locale for which date formatting symbols should
- * be loaded.
- * @throws MissingResourceException if the resources for the specified
- * locale could not be found or loaded.
- * @see #getInstance(java.util.Locale)
- */
- public DateFormatSymbols (Locale locale)
- throws MissingResourceException
- {
- ResourceBundle res
- = ResourceBundle.getBundle("gnu.java.locale.LocaleInformation", locale,
- ClassLoader.getSystemClassLoader());
-
- ampms = res.getStringArray ("ampms");
- eras = res.getStringArray ("eras");
- localPatternChars = res.getString ("localPatternChars");
- months = res.getStringArray ("months");
- shortMonths = res.getStringArray ("shortMonths");
- shortWeekdays = res.getStringArray ("shortWeekdays");
- weekdays = res.getStringArray ("weekdays");
- zoneStrings = (String[][]) res.getObject ("zoneStrings");
-
- dateFormats = formatsForKey(res, "DateFormat");
- timeFormats = formatsForKey(res, "TimeFormat");
- }
-
- /**
- * This method loads the format symbol information for the default
- * locale. This constructor only obtains instances using the runtime's resources;
- * to also include {@link java.text.spi.DateFormatSymbolsProvider} instances,
- * call {@link #getInstance()} instead.
- *
- * @throws MissingResourceException if the resources for the default
- * locale could not be found or loaded.
- * @see #getInstance()
- */
- public DateFormatSymbols()
- throws MissingResourceException
- {
- this (Locale.getDefault());
- }
-
- /**
- * This method returns the list of strings used for displaying AM or PM.
- * This is a two element <code>String</code> array indexed by
- * <code>Calendar.AM</code> and <code>Calendar.PM</code>
- *
- * @return The list of AM/PM display strings.
- */
- public String[] getAmPmStrings()
- {
- return ampms;
- }
-
- /**
- * This method returns the list of strings used for displaying eras
- * (e.g., "BC" and "AD"). This is a two element <code>String</code>
- * array indexed by <code>Calendar.BC</code> and <code>Calendar.AD</code>.
- *
- * @return The list of era disply strings.
- */
- public String[] getEras()
- {
- return eras;
- }
-
- /**
- * This method returns the pattern character information for this
- * object. This is an 18 character string that contains the characters
- * that are used in creating the date formatting strings in
- * <code>SimpleDateFormat</code>. The following are the character
- * positions in the string and which format character they correspond
- * to (the character in parentheses is the default value in the US English
- * locale):
- * <p>
- * <ul>
- * <li>0 - era (G)</li>
- * <li>1 - year (y)</li>
- * <li>2 - month (M)</li>
- * <li>3 - day of month (d)</li>
- * <li>4 - hour out of 12, from 1-12 (h)</li>
- * <li>5 - hour out of 24, from 0-23 (H)</li>
- * <li>6 - minute (m)</li>
- * <li>7 - second (s)</li>
- * <li>8 - millisecond (S)</li>
- * <li>9 - date of week (E)</li>
- * <li>10 - date of year (D)</li>
- * <li>11 - day of week in month, eg. "4th Thur in Nov" (F)</li>
- * <li>12 - week in year (w)</li>
- * <li>13 - week in month (W)</li>
- * <li>14 - am/pm (a)</li>
- * <li>15 - hour out of 24, from 1-24 (k)</li>
- * <li>16 - hour out of 12, from 0-11 (K)</li>
- * <li>17 - time zone (z)</li>
- * </ul>
- *
- * @return The format patter characters
- */
- public String getLocalPatternChars()
- {
- return localPatternChars;
- }
-
- /**
- * This method returns the list of strings used for displaying month
- * names (e.g., "January" and "February"). This is a thirteen element
- * string array indexed by <code>Calendar.JANUARY</code> through
- * <code>Calendar.UNDECEMBER</code>. Note that there are thirteen
- * elements because some calendars have thriteen months.
- *
- * @return The list of month display strings.
- */
- public String[] getMonths ()
- {
- return months;
- }
-
- /**
- * This method returns the list of strings used for displaying abbreviated
- * month names (e.g., "Jan" and "Feb"). This is a thirteen element
- * <code>String</code> array indexed by <code>Calendar.JANUARY</code>
- * through <code>Calendar.UNDECEMBER</code>. Note that there are thirteen
- * elements because some calendars have thirteen months.
- *
- * @return The list of abbreviated month display strings.
- */
- public String[] getShortMonths ()
- {
- return shortMonths;
- }
-
- /**
- * This method returns the list of strings used for displaying abbreviated
- * weekday names (e.g., "Sun" and "Mon"). This is an eight element
- * <code>String</code> array indexed by <code>Calendar.SUNDAY</code>
- * through <code>Calendar.SATURDAY</code>. Note that the first element
- * of this array is ignored.
- *
- * @return This list of abbreviated weekday display strings.
- */
- public String[] getShortWeekdays ()
- {
- return shortWeekdays;
- }
-
- /**
- * This method returns the list of strings used for displaying weekday
- * names (e.g., "Sunday" and "Monday"). This is an eight element
- * <code>String</code> array indexed by <code>Calendar.SUNDAY</code>
- * through <code>Calendar.SATURDAY</code>. Note that the first element
- * of this array is ignored.
- *
- * @return This list of weekday display strings.
- */
- public String[] getWeekdays ()
- {
- return weekdays;
- }
-
- /**
- * This method returns this list of localized timezone display strings.
- * This is a two dimensional <code>String</code> array where each row in
- * the array contains five values:
- * <P>
- * <ul>
- * <li>0 - The non-localized time zone id string.</li>
- * <li>1 - The long name of the time zone (standard time).</li>
- * <li>2 - The short name of the time zone (standard time).</li>
- * <li>3 - The long name of the time zone (daylight savings time).</li>
- * <li>4 - the short name of the time zone (daylight savings time).</li>
- * </ul>
- *
- * @return The list of time zone display strings.
- */
- public String[] [] getZoneStrings ()
- {
- return zoneStrings;
- }
-
- /**
- * This method sets the list of strings used to display AM/PM values to
- * the specified list.
- * This is a two element <code>String</code> array indexed by
- * <code>Calendar.AM</code> and <code>Calendar.PM</code>
- *
- * @param value The new list of AM/PM display strings.
- */
- public void setAmPmStrings (String[] value)
- {
- ampms = value;
- }
-
- /**
- * This method sets the list of strings used to display time eras to
- * to the specified list.
- * This is a two element <code>String</code>
- * array indexed by <code>Calendar.BC</code> and <code>Calendar.AD</code>.
- *
- * @param labels The new list of era display strings.
- */
- public void setEras (String[] labels)
- {
- eras = labels;
- }
-
- /**
- * This method sets the list of characters used to specific date/time
- * formatting strings.
- * This is an 18 character string that contains the characters
- * that are used in creating the date formatting strings in
- * <code>SimpleDateFormat</code>. The following are the character
- * positions in the string and which format character they correspond
- * to (the character in parentheses is the default value in the US English
- * locale):
- * <p>
- * <ul>
- * <li>0 - era (G)</li>
- * <li>1 - year (y)</li>
- * <li>2 - month (M)</li>
- * <li>3 - day of month (d)</li>
- * <li>4 - hour out of 12, from 1-12 (h)</li>
- * <li>5 - hour out of 24, from 0-23 (H)</li>
- * <li>6 - minute (m)</li>
- * <li>7 - second (s)</li>
- * <li>8 - millisecond (S)</li>
- * <li>9 - date of week (E)</li>
- * <li>10 - date of year (D)</li>
- * <li>11 - day of week in month, eg. "4th Thur in Nov" (F)</li>
- * <li>12 - week in year (w)</li>
- * <li>13 - week in month (W)</li>
- * <li>14 - am/pm (a)</li>
- * <li>15 - hour out of 24, from 1-24 (k)</li>
- * <li>16 - hour out of 12, from 0-11 (K)</li>
- * <li>17 - time zone (z)</li>
- * </ul>
- *
- * @param chars The new format pattern characters
- */
- public void setLocalPatternChars (String chars)
- {
- localPatternChars = chars;
- }
-
- /**
- * This method sets the list of strings used to display month names.
- * This is a thirteen element
- * string array indexed by <code>Calendar.JANUARY</code> through
- * <code>Calendar.UNDECEMBER</code>. Note that there are thirteen
- * elements because some calendars have thriteen months.
- *
- * @param labels The list of month display strings.
- */
- public void setMonths (String[] labels)
- {
- months = labels;
- }
-
- /**
- * This method sets the list of strings used to display abbreviated month
- * names.
- * This is a thirteen element
- * <code>String</code> array indexed by <code>Calendar.JANUARY</code>
- * through <code>Calendar.UNDECEMBER</code>. Note that there are thirteen
- * elements because some calendars have thirteen months.
- *
- * @param labels The new list of abbreviated month display strings.
- */
- public void setShortMonths (String[] labels)
- {
- shortMonths = labels;
- }
-
- /**
- * This method sets the list of strings used to display abbreviated
- * weekday names.
- * This is an eight element
- * <code>String</code> array indexed by <code>Calendar.SUNDAY</code>
- * through <code>Calendar.SATURDAY</code>. Note that the first element
- * of this array is ignored.
- *
- * @param labels This list of abbreviated weekday display strings.
- */
- public void setShortWeekdays (String[] labels)
- {
- shortWeekdays = labels;
- }
-
- /**
- * This method sets the list of strings used to display weekday names.
- * This is an eight element
- * <code>String</code> array indexed by <code>Calendar.SUNDAY</code>
- * through <code>Calendar.SATURDAY</code>. Note that the first element
- * of this array is ignored.
- *
- * @param labels This list of weekday display strings.
- */
- public void setWeekdays (String[] labels)
- {
- weekdays = labels;
- }
-
- /**
- * This method sets the list of display strings for time zones.
- * This is a two dimensional <code>String</code> array where each row in
- * the array contains five values:
- * <P>
- * <ul>
- * <li>0 - The non-localized time zone id string.</li>
- * <li>1 - The long name of the time zone (standard time).</li>
- * <li>2 - The short name of the time zone (standard time).</li>
- * <li>3 - The long name of the time zone (daylight savings time).</li>
- * <li>4 - the short name of the time zone (daylight savings time).</li>
- * </ul>
- *
- * @params zones The list of time zone display strings.
- */
- public void setZoneStrings (String[][] zones)
- {
- zoneStrings = zones;
- }
-
- /* Does a "deep" equality test - recurses into arrays. */
- private static boolean equals (Object x, Object y)
- {
- if (x == y)
- return true;
- if (x == null || y == null)
- return false;
- if (! (x instanceof Object[]) || ! (y instanceof Object[]))
- return x.equals(y);
- Object[] xa = (Object[]) x;
- Object[] ya = (Object[]) y;
- if (xa.length != ya.length)
- return false;
- for (int i = xa.length; --i >= 0; )
- {
- if (! equals(xa[i], ya[i]))
- return false;
- }
- return true;
- }
-
- private static int hashCode (Object x)
- {
- if (x == null)
- return 0;
- if (! (x instanceof Object[]))
- return x.hashCode();
- Object[] xa = (Object[]) x;
- int hash = 0;
- for (int i = 0; i < xa.length; i++)
- hash = 37 * hashCode(xa[i]);
- return hash;
- }
-
- /**
- * This method tests a specified object for equality against this object.
- * This will be true if and only if the specified object:
- * <p>
- * <ul>
- * <li> Is not <code>null</code>.</li>
- * <li> Is an instance of <code>DateFormatSymbols</code>.</li>
- * <li> Contains identical formatting symbols to this object.</li>
- * </ul>
- *
- * @param obj The <code>Object</code> to test for equality against.
- *
- * @return <code>true</code> if the specified object is equal to this one,
- * <code>false</code> otherwise.
- */
- public boolean equals (Object obj)
- {
- if (! (obj instanceof DateFormatSymbols))
- return false;
- DateFormatSymbols other = (DateFormatSymbols) obj;
- return (equals(ampms, other.ampms)
- && equals(eras, other.eras)
- && equals(localPatternChars, other.localPatternChars)
- && equals(months, other.months)
- && equals(shortMonths, other.shortMonths)
- && equals(shortWeekdays, other.shortWeekdays)
- && equals(weekdays, other.weekdays)
- && equals(zoneStrings, other.zoneStrings));
- }
-
- /**
- * Returns a new copy of this object.
- *
- * @return A copy of this object
- */
- public Object clone ()
- {
- try
- {
- return super.clone ();
- }
- catch (CloneNotSupportedException e)
- {
- return null;
- }
- }
-
- /**
- * This method returns a hash value for this object.
- *
- * @return A hash value for this object.
- */
- public int hashCode ()
- {
- return (hashCode(ampms)
- ^ hashCode(eras)
- ^ hashCode(localPatternChars)
- ^ hashCode(months)
- ^ hashCode(shortMonths)
- ^ hashCode(shortWeekdays)
- ^ hashCode(weekdays)
- ^ hashCode(zoneStrings));
- }
-
- /**
- * Returns a {@link DateFormatSymbols} instance for the
- * default locale obtained from either the runtime itself
- * or one of the installed
- * {@link java.text.spi.DateFormatSymbolsProvider} instances.
- * This is equivalent to calling
- * <code>getInstance(Locale.getDefault())</code>.
- *
- * @return a {@link DateFormatSymbols} instance for the default
- * locale.
- * @since 1.6
- */
- public static final DateFormatSymbols getInstance()
- {
- return getInstance(Locale.getDefault());
- }
-
- /**
- * Returns a {@link DateFormatSymbols} instance for the
- * specified locale obtained from either the runtime itself
- * or one of the installed
- * {@link java.text.spi.DateFormatSymbolsProvider} instances.
- *
- * @param locale the locale for which an instance should be
- * returned.
- * @return a {@link DateFormatSymbols} instance for the specified
- * locale.
- * @throws NullPointerException if <code>locale</code> is
- * <code>null</code>.
- * @since 1.6
- */
- public static final DateFormatSymbols getInstance(Locale locale)
- {
- try
- {
- DateFormatSymbols syms = new DateFormatSymbols(locale);
- return syms;
- }
- catch (MissingResourceException e)
- {
- /* This means runtime support for the locale
- * is not available, so we check providers. */
- }
- for (DateFormatSymbolsProvider p :
- ServiceLoader.load(DateFormatSymbolsProvider.class))
- {
- for (Locale loc : p.getAvailableLocales())
- {
- if (loc.equals(locale))
- {
- DateFormatSymbols syms = p.getInstance(locale);
- if (syms != null)
- return syms;
- break;
- }
- }
- }
- return getInstance(LocaleHelper.getFallbackLocale(locale));
- }
-
-}
diff --git a/libjava/java/text/DecimalFormatSymbols.h b/libjava/java/text/DecimalFormatSymbols.h
index 8967572f19a..8d293775712 100644
--- a/libjava/java/text/DecimalFormatSymbols.h
+++ b/libjava/java/text/DecimalFormatSymbols.h
@@ -22,49 +22,49 @@ class java::text::DecimalFormatSymbols : public ::java::lang::Object
{
public:
- ::java::lang::Object * clone();
+ virtual ::java::lang::Object * clone();
DecimalFormatSymbols();
private:
::java::lang::String * safeGetString(::java::util::ResourceBundle *, ::java::lang::String *, ::java::lang::String *);
jchar safeGetChar(::java::util::ResourceBundle *, ::java::lang::String *, jchar);
public:
DecimalFormatSymbols(::java::util::Locale *);
- jboolean equals(::java::lang::Object *);
- ::java::util::Currency * getCurrency();
- ::java::lang::String * getCurrencySymbol();
- jchar getDecimalSeparator();
- jchar getDigit();
+ virtual jboolean equals(::java::lang::Object *);
+ virtual ::java::util::Currency * getCurrency();
+ virtual ::java::lang::String * getCurrencySymbol();
+ virtual jchar getDecimalSeparator();
+ virtual jchar getDigit();
public: // actually package-private
- jchar getExponential();
+ virtual jchar getExponential();
public:
- jchar getGroupingSeparator();
- ::java::lang::String * getInfinity();
- ::java::lang::String * getInternationalCurrencySymbol();
- jchar getMinusSign();
- jchar getMonetaryDecimalSeparator();
- ::java::lang::String * getNaN();
- jchar getPatternSeparator();
- jchar getPercent();
- jchar getPerMill();
- jchar getZeroDigit();
- jint hashCode();
- void setCurrency(::java::util::Currency *);
- void setCurrencySymbol(::java::lang::String *);
- void setDecimalSeparator(jchar);
- void setDigit(jchar);
+ virtual jchar getGroupingSeparator();
+ virtual ::java::lang::String * getInfinity();
+ virtual ::java::lang::String * getInternationalCurrencySymbol();
+ virtual jchar getMinusSign();
+ virtual jchar getMonetaryDecimalSeparator();
+ virtual ::java::lang::String * getNaN();
+ virtual jchar getPatternSeparator();
+ virtual jchar getPercent();
+ virtual jchar getPerMill();
+ virtual jchar getZeroDigit();
+ virtual jint hashCode();
+ virtual void setCurrency(::java::util::Currency *);
+ virtual void setCurrencySymbol(::java::lang::String *);
+ virtual void setDecimalSeparator(jchar);
+ virtual void setDigit(jchar);
public: // actually package-private
- void setExponential(jchar);
+ virtual void setExponential(jchar);
public:
- void setGroupingSeparator(jchar);
- void setInfinity(::java::lang::String *);
- void setInternationalCurrencySymbol(::java::lang::String *);
- void setMinusSign(jchar);
- void setMonetaryDecimalSeparator(jchar);
- void setNaN(::java::lang::String *);
- void setPatternSeparator(jchar);
- void setPercent(jchar);
- void setPerMill(jchar);
- void setZeroDigit(jchar);
+ virtual void setGroupingSeparator(jchar);
+ virtual void setInfinity(::java::lang::String *);
+ virtual void setInternationalCurrencySymbol(::java::lang::String *);
+ virtual void setMinusSign(jchar);
+ virtual void setMonetaryDecimalSeparator(jchar);
+ virtual void setNaN(::java::lang::String *);
+ virtual void setPatternSeparator(jchar);
+ virtual void setPercent(jchar);
+ virtual void setPerMill(jchar);
+ virtual void setZeroDigit(jchar);
private:
void readObject(::java::io::ObjectInputStream *);
public:
diff --git a/libjava/java/text/DecimalFormatSymbols.java b/libjava/java/text/DecimalFormatSymbols.java
deleted file mode 100644
index b72f144546b..00000000000
--- a/libjava/java/text/DecimalFormatSymbols.java
+++ /dev/null
@@ -1,742 +0,0 @@
-/* DecimalFormatSymbols.java -- Format symbols used by DecimalFormat
- Copyright (C) 1999, 2000, 2001, 2004, 2007 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package java.text;
-
-import gnu.java.locale.LocaleHelper;
-
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.io.Serializable;
-
-import java.text.spi.DecimalFormatSymbolsProvider;
-
-import java.util.Currency;
-import java.util.Locale;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-import java.util.ServiceLoader;
-
-/**
- * This class is a container for the symbols used by
- * <code>DecimalFormat</code> to format numbers and currency. These are
- * normally handled automatically, but an application can override
- * values as desired using this class.
- *
- * @author Tom Tromey (tromey@cygnus.com)
- * @author Aaron M. Renn (arenn@urbanophile.com)
- * @date February 24, 1999
- */
-/* Written using "Java Class Libraries", 2nd edition, plus online
- * API docs for JDK 1.2 from http://www.javasoft.com.
- * Status: Believed complete and correct to 1.2.
- */
-public final class DecimalFormatSymbols implements Cloneable, Serializable
-{
- public Object clone ()
- {
- try
- {
- return super.clone ();
- }
- catch(CloneNotSupportedException e)
- {
- return null;
- }
- }
-
- /**
- * This method initializes a new instance of
- * <code>DecimalFormatSymbols</code> for the default locale.
- * This constructor only obtains instances using the runtime's resources;
- * to also include {@link java.text.spi.DateFormatSymbolsProvider} instances,
- * call {@link #getInstance()} instead.
- *
- * @see #getInstance()
- */
- public DecimalFormatSymbols ()
- {
- this (Locale.getDefault());
- }
-
- private String safeGetString(ResourceBundle bundle,
- String name, String def)
- {
- if (bundle != null)
- {
- try
- {
- return bundle.getString(name);
- }
- catch (MissingResourceException x)
- {
- }
- }
- return def;
- }
-
- private char safeGetChar(ResourceBundle bundle,
- String name, char def)
- {
- String r = null;
- if (bundle != null)
- {
- try
- {
- r = bundle.getString(name);
- }
- catch (MissingResourceException x)
- {
- }
- }
- if (r == null || r.length() < 1)
- return def;
- return r.charAt(0);
- }
-
- /**
- * This method initializes a new instance of
- * <code>DecimalFormatSymbols</code> for the specified locale.
- * <strong>Note</strong>: if the locale does not have an associated
- * <code>Currency</code> instance, the currency symbol and
- * international currency symbol will be set to the strings "?"
- * and "XXX" respectively. This generally happens with language
- * locales (those with no specified country), such as
- * <code>Locale.ENGLISH</code>. This constructor only obtains
- * instances using the runtime's resources; to also include
- * {@link java.text.spi.DecimalFormatSymbolsProvider} instances,
- * call {@link #getInstance(java.util.Locale)} instead.
- *
- * @param loc The local to load symbols for.
- * @throws NullPointerException if the locale is null.
- * @see #getInstance(java.util.Locale)
- */
- public DecimalFormatSymbols (Locale loc)
- {
- ResourceBundle res;
- try
- {
- res = ResourceBundle.getBundle("gnu.java.locale.LocaleInformation",
- loc, ClassLoader.getSystemClassLoader());
- }
- catch (MissingResourceException x)
- {
- res = null;
- }
- currency = Currency.getInstance("XXX");
- currencySymbol = "?";
- intlCurrencySymbol = "XXX";
- try
- {
- Currency localeCurrency = Currency.getInstance(loc);
- if (localeCurrency != null)
- {
- setCurrency(localeCurrency);
- }
- }
- catch(IllegalArgumentException exception)
- {
- /* Locale has an invalid currency */
- }
- decimalSeparator = safeGetChar (res, "decimalSeparator", '.');
- digit = safeGetChar (res, "digit", '#');
- exponential = safeGetChar (res, "exponential", 'E');
- groupingSeparator = safeGetChar (res, "groupingSeparator", ',');
- infinity = safeGetString (res, "infinity", "\u221e");
- try
- {
- monetarySeparator = safeGetChar (res, "monetarySeparator", '.');
- }
- catch (MissingResourceException x)
- {
- monetarySeparator = decimalSeparator;
- }
- minusSign = safeGetChar (res, "minusSign", '-');
- NaN = safeGetString (res, "NaN", "\ufffd");
- patternSeparator = safeGetChar (res, "patternSeparator", ';');
- percent = safeGetChar (res, "percent", '%');
- perMill = safeGetChar (res, "perMill", '\u2030');
- zeroDigit = safeGetChar (res, "zeroDigit", '0');
- locale = loc;
- }
-
- /**
- * This method this this object for equality against the specified object.
- * This will be true if and only if the following criteria are met with
- * regard to the specified object:
- * <p>
- * <ul>
- * <li>It is not <code>null</code>.</li>
- * <li>It is an instance of <code>DecimalFormatSymbols</code>.</li>
- * <li>All of its symbols are identical to the symbols in this object.</li>
- * </ul>
- *
- * @return <code>true</code> if the specified object is equal to this
- * object, <code>false</code> otherwise.
- */
- public boolean equals (Object obj)
- {
- if (! (obj instanceof DecimalFormatSymbols))
- return false;
- DecimalFormatSymbols dfs = (DecimalFormatSymbols) obj;
- return (currencySymbol.equals(dfs.currencySymbol)
- && decimalSeparator == dfs.decimalSeparator
- && digit == dfs.digit
- && exponential == dfs.exponential
- && groupingSeparator == dfs.groupingSeparator
- && infinity.equals(dfs.infinity)
- && intlCurrencySymbol.equals(dfs.intlCurrencySymbol)
- && minusSign == dfs.minusSign
- && monetarySeparator == dfs.monetarySeparator
- && NaN.equals(dfs.NaN)
- && patternSeparator == dfs.patternSeparator
- && percent == dfs.percent
- && perMill == dfs.perMill
- && zeroDigit == dfs.zeroDigit);
- }
-
- /**
- * Returns the currency corresponding to the currency symbol stored
- * in the instance of <code>DecimalFormatSymbols</code>.
- *
- * @return An instance of <code>Currency</code> which matches
- * the currency used, or null if there is no corresponding
- * instance.
- */
- public Currency getCurrency ()
- {
- return currency;
- }
-
- /**
- * This method returns the currency symbol in local format. For example,
- * "$" for Canadian dollars.
- *
- * @return The currency symbol in local format.
- */
- public String getCurrencySymbol ()
- {
- return currencySymbol;
- }
-
- /**
- * This method returns the character used as the decimal point.
- *
- * @return The character used as the decimal point.
- */
- public char getDecimalSeparator ()
- {
- return decimalSeparator;
- }
-
- /**
- * This method returns the character used to represent a digit in a
- * format pattern string.
- *
- * @return The character used to represent a digit in a format
- * pattern string.
- */
- public char getDigit ()
- {
- return digit;
- }
-
- // This is our own extension.
- char getExponential ()
- {
- return exponential;
- }
-
- /**
- * This method sets the character used to separate groups of digits. For
- * example, the United States uses a comma (,) to separate thousands in
- * a number.
- *
- * @return The character used to separate groups of digits.
- */
- public char getGroupingSeparator ()
- {
- return groupingSeparator;
- }
-
- /**
- * This method returns the character used to represent infinity.
- *
- * @return The character used to represent infinity.
- */
- public String getInfinity ()
- {
- return infinity;
- }
-
- /**
- * This method returns the currency symbol in international format. For
- * example, "C$" for Canadian dollars.
- *
- * @return The currency symbol in international format.
- */
- public String getInternationalCurrencySymbol ()
- {
- return intlCurrencySymbol;
- }
-
- /**
- * This method returns the character used to represent the minus sign.
- *
- * @return The character used to represent the minus sign.
- */
- public char getMinusSign ()
- {
- return minusSign;
- }
-
- /**
- * This method returns the character used to represent the decimal
- * point for currency values.
- *
- * @return The decimal point character used in currency values.
- */
- public char getMonetaryDecimalSeparator ()
- {
- return monetarySeparator;
- }
-
- /**
- * This method returns the string used to represent the NaN (not a number)
- * value.
- *
- * @return The string used to represent NaN
- */
- public String getNaN ()
- {
- return NaN;
- }
-
- /**
- * This method returns the character used to separate positive and negative
- * subpatterns in a format pattern.
- *
- * @return The character used to separate positive and negative subpatterns
- * in a format pattern.
- */
- public char getPatternSeparator ()
- {
- return patternSeparator;
- }
-
- /**
- * This method returns the character used as the percent sign.
- *
- * @return The character used as the percent sign.
- */
- public char getPercent ()
- {
- return percent;
- }
-
- /**
- * This method returns the character used as the per mille character.
- *
- * @return The per mille character.
- */
- public char getPerMill ()
- {
- return perMill;
- }
-
- /**
- * This method returns the character used to represent the digit zero.
- *
- * @return The character used to represent the digit zero.
- */
- public char getZeroDigit ()
- {
- return zeroDigit;
- }
-
- /**
- * This method returns a hash value for this object.
- *
- * @return A hash value for this object.
- */
- public int hashCode ()
- {
- // Compute based on zero digit, grouping separator, and decimal
- // separator -- JCL book. This probably isn't a very good hash
- // code.
- return zeroDigit << 16 + groupingSeparator << 8 + decimalSeparator;
- }
-
- /**
- * This method sets the currency symbol and ISO 4217 currency
- * code to the values obtained from the supplied currency.
- *
- * @param currency the currency from which to obtain the values.
- * @throws NullPointerException if the currency is null.
- */
- public void setCurrency (Currency currency)
- {
- setCurrencySymbol (currency.getSymbol());
- this.currency = currency;
- }
-
- /**
- * This method sets the currency symbol to the specified value.
- *
- * @param currency The new currency symbol
- */
- public void setCurrencySymbol (String currency)
- {
- currencySymbol = currency;
- }
-
- /**
- * This method sets the decimal point character to the specified value.
- *
- * @param decimalSep The new decimal point character
- */
- public void setDecimalSeparator (char decimalSep)
- {
- decimalSeparator = decimalSep;
- }
-
- /**
- * This method sets the character used to represents a digit in a format
- * string to the specified value.
- *
- * @param digit The character used to represent a digit in a format pattern.
- */
- public void setDigit (char digit)
- {
- this.digit = digit;
- }
-
- // This is our own extension.
- void setExponential (char exp)
- {
- exponential = exp;
- }
-
- /**
- * This method sets the character used to separate groups of digits.
- *
- * @param groupSep The character used to separate groups of digits.
- */
- public void setGroupingSeparator (char groupSep)
- {
- groupingSeparator = groupSep;
- }
-
- /**
- * This method sets the string used to represents infinity.
- *
- * @param infinity The string used to represent infinity.
- */
- public void setInfinity (String infinity)
- {
- this.infinity = infinity;
- }
-
- /**
- * This method sets the international currency symbol to the
- * specified value. If a valid <code>Currency</code> instance
- * exists for the international currency code, then this is
- * used for the currency attribute, and the currency symbol
- * is set to the corresponding value from this instance.
- * Otherwise, the currency attribute is set to null and the
- * symbol is left unmodified.
- *
- * @param currencyCode The new international currency symbol.
- */
- public void setInternationalCurrencySymbol (String currencyCode)
- {
- intlCurrencySymbol = currencyCode;
- try
- {
- currency = Currency.getInstance(currencyCode);
- }
- catch (IllegalArgumentException exception)
- {
- currency = null;
- }
- if (currency != null)
- {
- setCurrencySymbol(currency.getSymbol(locale));
- }
- }
-
- /**
- * This method sets the character used to represent the minus sign.
- *
- * @param minusSign The character used to represent the minus sign.
- */
- public void setMinusSign (char minusSign)
- {
- this.minusSign = minusSign;
- }
-
- /**
- * This method sets the character used for the decimal point in currency
- * values.
- *
- * @param decimalSep The decimal point character used in currency values.
- */
- public void setMonetaryDecimalSeparator (char decimalSep)
- {
- monetarySeparator = decimalSep;
- }
-
- /**
- * This method sets the string used to represent the NaN (not a
- * number) value.
- *
- * @param nan The string used to represent NaN
- */
- public void setNaN (String nan)
- {
- NaN = nan;
- }
-
- /**
- * This method sets the character used to separate positive and negative
- * subpatterns in a format pattern.
- *
- * @param patternSep The character used to separate positive and
- * negative subpatterns in a format pattern.
- */
- public void setPatternSeparator (char patternSep)
- {
- patternSeparator = patternSep;
- }
-
- /**
- * This method sets the character used as the percent sign.
- *
- * @param percent The character used as the percent sign.
- */
- public void setPercent (char percent)
- {
- this.percent = percent;
- }
-
- /**
- * This method sets the character used as the per mille character.
- *
- * @param perMill The per mille character.
- */
- public void setPerMill (char perMill)
- {
- this.perMill = perMill;
- }
-
- /**
- * This method sets the character used to represent the digit zero.
- *
- * @param zeroDigit The character used to represent the digit zero.
- */
- public void setZeroDigit (char zeroDigit)
- {
- this.zeroDigit = zeroDigit;
- }
-
- /**
- * @serial A string used for the local currency
- */
- private String currencySymbol;
- /**
- * @serial The <code>char</code> used to separate decimals in a number.
- */
- private char decimalSeparator;
- /**
- * @serial This is the <code>char</code> used to represent a digit in
- * a format specification.
- */
- private char digit;
- /**
- * @serial This is the <code>char</code> used to represent the exponent
- * separator in exponential notation.
- */
- private char exponential;
- /**
- * @serial This separates groups of thousands in numbers.
- */
- private char groupingSeparator;
- /**
- * @serial This string represents infinity.
- */
- private String infinity;
- /**
- * @serial This string represents the local currency in an international
- * context, eg, "C$" for Canadian dollars.
- */
- private String intlCurrencySymbol;
- /**
- * @serial This is the character used to represent the minus sign.
- */
- private char minusSign;
- /**
- * @serial This character is used to separate decimals when formatting
- * currency values.
- */
- private char monetarySeparator;
- /**
- * @serial This string is used the represent the Java NaN value for
- * "not a number".
- */
- private String NaN;
- /**
- * @serial This is the character used to separate positive and negative
- * subpatterns in a format pattern.
- */
- private char patternSeparator;
- /**
- * @serial This is the percent symbols
- */
- private char percent;
- /**
- * @serial This character is used for the mille percent sign.
- */
- private char perMill;
- /**
- * @serial This value represents the type of object being de-serialized.
- * 0 indicates a pre-Java 1.1.6 version, 1 indicates 1.1.6 or later.
- * 0 indicates a pre-Java 1.1.6 version, 1 indicates 1.1.6 or later,
- * 2 indicates 1.4 or later
- */
- private int serialVersionOnStream = 2;
- /**
- * @serial This is the character used to represent 0.
- */
- private char zeroDigit;
-
- /**
- * @serial The locale of these currency symbols.
- */
- private Locale locale;
-
- /**
- * The currency used for the symbols in this instance.
- * This is stored temporarily for efficiency reasons,
- * as well as to ensure that the correct instance
- * is restored from the currency code.
- *
- * @serial Ignored.
- */
- private transient Currency currency;
-
- private static final long serialVersionUID = 5772796243397350300L;
-
- private void readObject(ObjectInputStream stream)
- throws IOException, ClassNotFoundException
- {
- stream.defaultReadObject();
- if (serialVersionOnStream < 1)
- {
- monetarySeparator = decimalSeparator;
- exponential = 'E';
- }
- if (serialVersionOnStream < 2)
- locale = Locale.getDefault();
-
- serialVersionOnStream = 2;
- }
-
- /**
- * Returns a {@link DecimalFormatSymbols} instance for the
- * default locale obtained from either the runtime itself
- * or one of the installed
- * {@link java.text.spi.DecimalFormatSymbolsProvider} instances.
- * This is equivalent to calling
- * <code>getInstance(Locale.getDefault())</code>.
- *
- * @return a {@link DecimalFormatSymbols} instance for the default
- * locale.
- * @since 1.6
- */
- public static final DecimalFormatSymbols getInstance()
- {
- return getInstance(Locale.getDefault());
- }
-
- /**
- * Returns a {@link DecimalFormatSymbols} instance for the
- * specified locale obtained from either the runtime itself
- * or one of the installed
- * {@link java.text.spi.DecimalFormatSymbolsProvider} instances.
- *
- * @param locale the locale for which an instance should be
- * returned.
- * @return a {@link DecimalFormatSymbols} instance for the specified
- * locale.
- * @throws NullPointerException if <code>locale</code> is
- * <code>null</code>.
- * @since 1.6
- */
- public static final DecimalFormatSymbols getInstance(Locale locale)
- {
- try
- {
- if (!locale.equals(Locale.ROOT))
- ResourceBundle.getBundle("gnu.java.locale.LocaleInformation",
- locale,
- ClassLoader.getSystemClassLoader());
- return new DecimalFormatSymbols(locale);
- }
- catch (MissingResourceException x)
- {
- /* This means runtime support for the locale
- * is not available, so we check providers. */
- }
- for (DecimalFormatSymbolsProvider p :
- ServiceLoader.load(DecimalFormatSymbolsProvider.class))
- {
- for (Locale loc : p.getAvailableLocales())
- {
- if (loc.equals(locale))
- {
- DecimalFormatSymbols syms = p.getInstance(locale);
- if (syms != null)
- return syms;
- break;
- }
- }
- }
- return getInstance(LocaleHelper.getFallbackLocale(locale));
- }
-
-}
diff --git a/libjava/java/util/Calendar.h b/libjava/java/util/Calendar.h
index 5d9fb75e938..b3878714807 100644
--- a/libjava/java/util/Calendar.h
+++ b/libjava/java/util/Calendar.h
@@ -128,6 +128,7 @@ public: // actually protected
jboolean areFieldsSet;
private:
::java::util::TimeZone * zone;
+ static ::java::lang::String * calendarClassName;
jboolean lenient;
jint firstDayOfWeek;
jint minimalDaysInFirstWeek;
diff --git a/libjava/java/util/Calendar.java b/libjava/java/util/Calendar.java
deleted file mode 100644
index 7eab6122a39..00000000000
--- a/libjava/java/util/Calendar.java
+++ /dev/null
@@ -1,1575 +0,0 @@
-/* Calendar.java --
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007
- Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package java.util;
-
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
-import java.io.Serializable;
-
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-
-import java.text.DateFormatSymbols;
-
-/**
- * This class is an abstract base class for Calendars, which can be
- * used to convert between <code>Date</code> objects and a set of
- * integer fields which represent <code>YEAR</code>,
- * <code>MONTH</code>, <code>DAY</code>, etc. The <code>Date</code>
- * object represents a time in milliseconds since the Epoch. <br>
- *
- * This class is locale sensitive. To get the Object matching the
- * current locale you can use <code>getInstance</code>. You can even provide
- * a locale or a timezone. <code>getInstance</code> returns currently
- * a <code>GregorianCalendar</code> for the current date. <br>
- *
- * If you want to convert a date from the Year, Month, Day, DayOfWeek,
- * etc. Representation to a <code>Date</code>-Object, you can create
- * a new Calendar with <code>getInstance()</code>,
- * <code>clear()</code> all fields, <code>set(int,int)</code> the
- * fields you need and convert it with <code>getTime()</code>. <br>
- *
- * If you want to convert a <code>Date</code>-object to the Calendar
- * representation, create a new Calendar, assign the
- * <code>Date</code>-Object with <code>setTime()</code>, and read the
- * fields with <code>get(int)</code>. <br>
- *
- * When computing the date from time fields, it may happen, that there
- * are either two few fields set, or some fields are inconsistent. This
- * cases will handled in a calendar specific way. Missing fields are
- * replaced by the fields of the epoch: 1970 January 1 00:00. <br>
- *
- * To understand, how the day of year is computed out of the fields
- * look at the following table. It is traversed from top to bottom,
- * and for the first line all fields are set, that line is used to
- * compute the day. <br>
- *
- *
-<pre>month + day_of_month
-month + week_of_month + day_of_week
-month + day_of_week_of_month + day_of_week
-day_of_year
-day_of_week + week_of_year</pre>
- *
- * The hour_of_day-field takes precedence over the ampm and
- * hour_of_ampm fields. <br>
- *
- * <STRONG>Note:</STRONG> This can differ for non-Gregorian calendar. <br>
- *
- * To convert a calendar to a human readable form and vice versa, use
- * the <code>java.text.DateFormat</code> class. <br>
- *
- * Other useful things you can do with an calendar, is
- * <code>roll</code>ing fields (that means increase/decrease a
- * specific field by one, propagating overflows), or
- * <code>add</code>ing/substracting a fixed amount to a field.
- *
- * @author Aaron M. Renn (arenn@urbanophile.com)
- * @author Jochen Hoenicke (Jochen.Hoenicke@Informatik.Uni-Oldenburg.de)
- * @author Warren Levy (warrenl@cygnus.com)
- * @author Jeff Sturm (jsturm@one-point.com)
- * @author Tom Tromey (tromey@redhat.com)
- * @author Bryce McKinlay (mckinlay@redhat.com)
- * @author Ingo Proetel (proetel@aicas.com)
- * @author Jerry Quinn (jlquinn@optonline.net)
- * @author Jeroen Frijters (jeroen@frijters.net)
- * @author Noa Resare (noa@resare.com)
- * @author Sven de Marothy (sven@physto.se)
- * @author David Gilbert (david.gilbert@object-refinery.com)
- * @author Olivier Jolly (olivier.jolly@pcedev.com)
- * @author Andrew John Hughes (gnu_andrew@member.fsf.org)
- * @see Date
- * @see GregorianCalendar
- * @see TimeZone
- * @see java.text.DateFormat
- */
-public abstract class Calendar
- implements Serializable, Cloneable, Comparable<Calendar>
-{
- /**
- * Constant representing the era time field.
- */
- public static final int ERA = 0;
-
- /**
- * Constant representing the year time field.
- */
- public static final int YEAR = 1;
-
- /**
- * Constant representing the month time field. This field
- * should contain one of the JANUARY,...,DECEMBER constants below.
- */
- public static final int MONTH = 2;
-
- /**
- * Constant representing the week of the year field.
- * @see #setFirstDayOfWeek(int)
- */
- public static final int WEEK_OF_YEAR = 3;
-
- /**
- * Constant representing the week of the month time field.
- * @see #setFirstDayOfWeek(int)
- */
- public static final int WEEK_OF_MONTH = 4;
-
- /**
- * Constant representing the day time field, synonym for DAY_OF_MONTH.
- */
- public static final int DATE = 5;
-
- /**
- * Constant representing the day time field.
- */
- public static final int DAY_OF_MONTH = 5;
-
- /**
- * Constant representing the day of year time field. This is
- * 1 for the first day in month.
- */
- public static final int DAY_OF_YEAR = 6;
-
- /**
- * Constant representing the day of week time field. This field
- * should contain one of the SUNDAY,...,SATURDAY constants below.
- */
- public static final int DAY_OF_WEEK = 7;
-
- /**
- * Constant representing the day-of-week-in-month field. For
- * instance this field contains 2 for the second thursday in a
- * month. If you give a negative number here, the day will count
- * from the end of the month.
- */
- public static final int DAY_OF_WEEK_IN_MONTH = 8;
-
- /**
- * Constant representing the part of the day for 12-hour clock. This
- * should be one of AM or PM.
- */
- public static final int AM_PM = 9;
-
- /**
- * Constant representing the hour time field for 12-hour clock.
- */
- public static final int HOUR = 10;
-
- /**
- * Constant representing the hour of day time field for 24-hour clock.
- */
- public static final int HOUR_OF_DAY = 11;
-
- /**
- * Constant representing the minute of hour time field.
- */
- public static final int MINUTE = 12;
-
- /**
- * Constant representing the second time field.
- */
- public static final int SECOND = 13;
-
- /**
- * Constant representing the millisecond time field.
- */
- public static final int MILLISECOND = 14;
-
- /**
- * Constant representing the time zone offset time field for the
- * time given in the other fields. It is measured in
- * milliseconds. The default is the offset of the time zone.
- */
- public static final int ZONE_OFFSET = 15;
-
- /**
- * Constant representing the daylight saving time offset in
- * milliseconds. The default is the value given by the time zone.
- */
- public static final int DST_OFFSET = 16;
-
- /**
- * Number of time fields.
- */
- public static final int FIELD_COUNT = 17;
-
- /**
- * Constant representing Sunday.
- */
- public static final int SUNDAY = 1;
-
- /**
- * Constant representing Monday.
- */
- public static final int MONDAY = 2;
-
- /**
- * Constant representing Tuesday.
- */
- public static final int TUESDAY = 3;
-
- /**
- * Constant representing Wednesday.
- */
- public static final int WEDNESDAY = 4;
-
- /**
- * Constant representing Thursday.
- */
- public static final int THURSDAY = 5;
-
- /**
- * Constant representing Friday.
- */
- public static final int FRIDAY = 6;
-
- /**
- * Constant representing Saturday.
- */
- public static final int SATURDAY = 7;
-
- /**
- * Constant representing January.
- */
- public static final int JANUARY = 0;
-
- /**
- * Constant representing February.
- */
- public static final int FEBRUARY = 1;
-
- /**
- * Constant representing March.
- */
- public static final int MARCH = 2;
-
- /**
- * Constant representing April.
- */
- public static final int APRIL = 3;
-
- /**
- * Constant representing May.
- */
- public static final int MAY = 4;
-
- /**
- * Constant representing June.
- */
- public static final int JUNE = 5;
-
- /**
- * Constant representing July.
- */
- public static final int JULY = 6;
-
- /**
- * Constant representing August.
- */
- public static final int AUGUST = 7;
-
- /**
- * Constant representing September.
- */
- public static final int SEPTEMBER = 8;
-
- /**
- * Constant representing October.
- */
- public static final int OCTOBER = 9;
-
- /**
- * Constant representing November.
- */
- public static final int NOVEMBER = 10;
-
- /**
- * Constant representing December.
- */
- public static final int DECEMBER = 11;
-
- /**
- * Constant representing Undecimber. This is an artificial name useful
- * for lunar calendars.
- */
- public static final int UNDECIMBER = 12;
-
- /**
- * Useful constant for 12-hour clock.
- */
- public static final int AM = 0;
-
- /**
- * Useful constant for 12-hour clock.
- */
- public static final int PM = 1;
-
- /**
- * A style specifier for {@link #getDisplayNames(int,int,Locale)}
- * stating that names should be returned in both long and short variants.
- *
- * @since 1.6
- * @see #SHORT
- * @see #LONG
- */
- public static final int ALL_STYLES = 0;
-
- /**
- * A style specifier for {@link #getDisplayName(int,int,Locale)}
- * and {@link #getDisplayNames(int,int,Locale)} stating that names
- * should be returned in their short variant if applicable.
- *
- * @since 1.6
- */
- public static final int SHORT = 1;
-
- /**
- * A style specifier for {@link #getDisplayName(int,int,Locale)}
- * and {@link #getDisplayNames(int,int,Locale)} stating that names
- * should be returned in their long variant if applicable.
- *
- * @since 1.6
- */
- public static final int LONG = 2;
-
- /**
- * The time fields. The array is indexed by the constants YEAR to
- * DST_OFFSET.
- * @serial
- */
- protected int[] fields = new int[FIELD_COUNT];
-
- /**
- * The flags which tell if the fields above have a value.
- * @serial
- */
- protected boolean[] isSet = new boolean[FIELD_COUNT];
-
- /**
- * The time in milliseconds since the epoch.
- * @serial
- */
- protected long time;
-
- /**
- * Tells if the above field has a valid value.
- * @serial
- */
- protected boolean isTimeSet;
-
- /**
- * Tells if the fields have a valid value. This superseeds the isSet
- * array.
- * @serial
- */
- protected boolean areFieldsSet;
-
- /**
- * The time zone of this calendar. Used by sub classes to do UTC / local
- * time conversion. Sub classes can access this field with getTimeZone().
- * @serial
- */
- private TimeZone zone;
-
- /**
- * Specifies if the date/time interpretation should be lenient.
- * If the flag is set, a date such as "February 30, 1996" will be
- * treated as the 29th day after the February 1. If this flag
- * is false, such dates will cause an exception.
- * @serial
- */
- private boolean lenient;
-
- /**
- * Sets what the first day of week is. This is used for
- * WEEK_OF_MONTH and WEEK_OF_YEAR fields.
- * @serial
- */
- private int firstDayOfWeek;
-
- /**
- * Sets how many days are required in the first week of the year.
- * If the first day of the year should be the first week you should
- * set this value to 1. If the first week must be a full week, set
- * it to 7.
- * @serial
- */
- private int minimalDaysInFirstWeek;
-
- /**
- * Is set to true if DST_OFFSET is explicitly set. In that case
- * it's value overrides the value computed from the current
- * time and the timezone.
- */
- private boolean explicitDSTOffset = false;
-
- /**
- * The version of the serialized data on the stream.
- * <dl><dt>0 or not present</dt>
- * <dd> JDK 1.1.5 or later.</dd>
- * <dt>1</dt>
- * <dd>JDK 1.1.6 or later. This always writes a correct `time' value
- * on the stream, as well as the other fields, to be compatible with
- * earlier versions</dd></dl>
- * @since JDK1.1.6
- * @serial
- */
- private int serialVersionOnStream = 1;
-
- /**
- * XXX - I have not checked the compatibility. The documentation of
- * the serialized-form is quite hairy...
- */
- static final long serialVersionUID = -1807547505821590642L;
-
- /**
- * The name of the resource bundle. Used only by getBundle()
- */
- private static final String bundleName = "gnu.java.locale.Calendar";
-
- /**
- * get resource bundle:
- * The resources should be loaded via this method only. Iff an application
- * uses this method, the resourcebundle is required.
- */
- private static ResourceBundle getBundle(Locale locale)
- {
- return ResourceBundle.getBundle(bundleName, locale,
- ClassLoader.getSystemClassLoader());
- }
-
- /**
- * Constructs a new Calendar with the default time zone and the default
- * locale.
- */
- protected Calendar()
- {
- this(TimeZone.getDefault(), Locale.getDefault());
- }
-
- /**
- * Constructs a new Calendar with the given time zone and the given
- * locale.
- * @param zone a time zone.
- * @param locale a locale.
- */
- protected Calendar(TimeZone zone, Locale locale)
- {
- this.zone = zone;
- lenient = true;
-
- ResourceBundle rb = getBundle(locale);
-
- firstDayOfWeek = ((Integer) rb.getObject("firstDayOfWeek")).intValue();
- minimalDaysInFirstWeek = ((Integer) rb.getObject("minimalDaysInFirstWeek"))
- .intValue();
- clear();
- }
-
- /**
- * Creates a calendar representing the actual time, using the default
- * time zone and locale.
- *
- * @return The new calendar.
- */
- public static synchronized Calendar getInstance()
- {
- return getInstance(TimeZone.getDefault(), Locale.getDefault());
- }
-
- /**
- * Creates a calendar representing the actual time, using the given
- * time zone and the default locale.
- *
- * @param zone a time zone (<code>null</code> not permitted).
- *
- * @return The new calendar.
- *
- * @throws NullPointerException if <code>zone</code> is <code>null</code>.
- */
- public static synchronized Calendar getInstance(TimeZone zone)
- {
- return getInstance(zone, Locale.getDefault());
- }
-
- /**
- * Creates a calendar representing the actual time, using the default
- * time zone and the given locale.
- *
- * @param locale a locale (<code>null</code> not permitted).
- *
- * @return The new calendar.
- *
- * @throws NullPointerException if <code>locale</code> is <code>null</code>.
- */
- public static synchronized Calendar getInstance(Locale locale)
- {
- return getInstance(TimeZone.getDefault(), locale);
- }
-
- /**
- * Cache of locale->calendar-class mappings. This avoids having to do a ResourceBundle
- * lookup for every getInstance call.
- */
- private static HashMap<Locale,Class> cache = new HashMap<Locale,Class>();
-
- /** Preset argument types for calendar-class constructor lookup. */
- private static Class[] ctorArgTypes = new Class[]
- {
- TimeZone.class, Locale.class
- };
-
- /**
- * Creates a calendar representing the actual time, using the given
- * time zone and locale.
- *
- * @param zone a time zone (<code>null</code> not permitted).
- * @param locale a locale (<code>null</code> not permitted).
- *
- * @return The new calendar.
- *
- * @throws NullPointerException if <code>zone</code> or <code>locale</code>
- * is <code>null</code>.
- */
- public static synchronized Calendar getInstance(TimeZone zone, Locale locale)
- {
- Class calendarClass = cache.get(locale);
- Throwable exception = null;
-
- try
- {
- if (calendarClass == null)
- {
- ResourceBundle rb = getBundle(locale);
- String calendarClassName = rb.getString("calendarClass");
-
- if (calendarClassName != null)
- {
- calendarClass = Class.forName(calendarClassName);
- if (Calendar.class.isAssignableFrom(calendarClass))
- cache.put(locale, calendarClass);
- }
- }
-
- // GregorianCalendar is by far the most common case. Optimize by
- // avoiding reflection.
- if (calendarClass == GregorianCalendar.class)
- return new GregorianCalendar(zone, locale);
-
- if (Calendar.class.isAssignableFrom(calendarClass))
- {
- Constructor ctor = calendarClass.getConstructor(ctorArgTypes);
- return (Calendar) ctor.newInstance(new Object[] { zone, locale });
- }
- }
- catch (ClassNotFoundException ex)
- {
- exception = ex;
- }
- catch (IllegalAccessException ex)
- {
- exception = ex;
- }
- catch (NoSuchMethodException ex)
- {
- exception = ex;
- }
- catch (InstantiationException ex)
- {
- exception = ex;
- }
- catch (InvocationTargetException ex)
- {
- exception = ex;
- }
-
- throw new RuntimeException("Error instantiating calendar for locale "
- + locale, exception);
- }
-
- /**
- * Gets the set of locales for which a Calendar is available.
- * @exception MissingResourceException if locale data couldn't be found.
- * @return the set of locales.
- */
- public static synchronized Locale[] getAvailableLocales()
- {
- ResourceBundle rb = getBundle(new Locale("", ""));
- return (Locale[]) rb.getObject("availableLocales");
- }
-
- /**
- * Converts the time field values (<code>fields</code>) to
- * milliseconds since the epoch UTC (<code>time</code>). Override
- * this method if you write your own Calendar. */
- protected abstract void computeTime();
-
- /**
- * Converts the milliseconds since the epoch UTC
- * (<code>time</code>) to time fields
- * (<code>fields</code>). Override this method if you write your
- * own Calendar.
- */
- protected abstract void computeFields();
-
- /**
- * Converts the time represented by this object to a
- * <code>Date</code>-Object.
- * @return the Date.
- */
- public final Date getTime()
- {
- if (! isTimeSet)
- computeTime();
- return new Date(time);
- }
-
- /**
- * Sets this Calendar's time to the given Date. All time fields
- * are invalidated by this method.
- *
- * @param date the date (<code>null</code> not permitted).
- *
- * @throws NullPointerException if <code>date</code> is <code>null</code>.
- */
- public final void setTime(Date date)
- {
- setTimeInMillis(date.getTime());
- }
-
- /**
- * Returns the time represented by this Calendar.
- * @return the time in milliseconds since the epoch.
- * @specnote This was made public in 1.4.
- */
- public long getTimeInMillis()
- {
- if (! isTimeSet)
- computeTime();
- return time;
- }
-
- /**
- * Sets this Calendar's time to the given Time. All time fields
- * are invalidated by this method.
- * @param time the time in milliseconds since the epoch
- * @specnote This was made public in 1.4.
- */
- public void setTimeInMillis(long time)
- {
- clear();
- this.time = time;
- isTimeSet = true;
- computeFields();
- }
-
- /**
- * Gets the value of the specified field. They are recomputed
- * if they are invalid.
- * @param field the time field. One of the time field constants.
- * @return the value of the specified field
- * @throws ArrayIndexOutOfBoundsException if the field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- * @specnote Not final since JDK 1.4
- */
- public int get(int field)
- {
- // If the requested field is invalid, force all fields to be recomputed.
- if (! isSet[field])
- areFieldsSet = false;
- complete();
- return fields[field];
- }
-
- /**
- * Gets the value of the specified field. This method doesn't
- * recompute the fields, if they are invalid.
- * @param field the time field. One of the time field constants.
- * @return the value of the specified field, undefined if
- * <code>areFieldsSet</code> or <code>isSet[field]</code> is false.
- * @throws ArrayIndexOutOfBoundsException if the field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- */
- protected final int internalGet(int field)
- {
- return fields[field];
- }
-
- /**
- * Sets the time field with the given value. This does invalidate
- * the time in milliseconds.
- * @param field the time field. One of the time field constants
- * @param value the value to be set.
- * @throws ArrayIndexOutOfBoundsException if field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- * @specnote Not final since JDK 1.4
- */
- public void set(int field, int value)
- {
- if (isTimeSet)
- for (int i = 0; i < FIELD_COUNT; i++)
- isSet[i] = false;
- isTimeSet = false;
- fields[field] = value;
- isSet[field] = true;
-
- // The five valid date patterns, in order of priority
- // 1 YEAR + MONTH + DAY_OF_MONTH
- // 2 YEAR + MONTH + WEEK_OF_MONTH + DAY_OF_WEEK
- // 3 YEAR + MONTH + DAY_OF_WEEK_IN_MONTH + DAY_OF_WEEK
- // 4 YEAR + DAY_OF_YEAR
- // 5 YEAR + DAY_OF_WEEK + WEEK_OF_YEAR
- switch (field)
- {
- case MONTH: // pattern 1,2 or 3
- isSet[DAY_OF_YEAR] = false;
- isSet[WEEK_OF_YEAR] = false;
- break;
- case DAY_OF_MONTH: // pattern 1
- isSet[YEAR] = true;
- isSet[MONTH] = true;
- isSet[WEEK_OF_MONTH] = true;
- isSet[DAY_OF_WEEK] = false;
- isSet[DAY_OF_WEEK_IN_MONTH] = false;
- isSet[DAY_OF_YEAR] = false;
- isSet[WEEK_OF_YEAR] = false;
- break;
- case WEEK_OF_MONTH: // pattern 2
- if (! isSet[DAY_OF_WEEK])
- fields[DAY_OF_WEEK] = getFirstDayOfWeek();
- isSet[YEAR] = true;
- isSet[MONTH] = true;
- isSet[DAY_OF_WEEK] = true;
- isSet[DAY_OF_MONTH] = false;
- isSet[DAY_OF_WEEK_IN_MONTH] = false;
- isSet[DAY_OF_YEAR] = false;
- isSet[WEEK_OF_YEAR] = false;
- break;
- case DAY_OF_WEEK_IN_MONTH: // pattern 3
- if (! isSet[DAY_OF_WEEK])
- fields[DAY_OF_WEEK] = getFirstDayOfWeek();
- isSet[YEAR] = true;
- isSet[MONTH] = true;
- isSet[DAY_OF_WEEK] = true;
- isSet[DAY_OF_YEAR] = false;
- isSet[DAY_OF_MONTH] = false;
- isSet[WEEK_OF_MONTH] = false;
- isSet[WEEK_OF_YEAR] = false;
- break;
- case DAY_OF_YEAR: // pattern 4
- isSet[YEAR] = true;
- isSet[MONTH] = false;
- isSet[WEEK_OF_MONTH] = false;
- isSet[DAY_OF_MONTH] = false;
- isSet[DAY_OF_WEEK] = false;
- isSet[WEEK_OF_YEAR] = false;
- isSet[DAY_OF_WEEK_IN_MONTH] = false;
- break;
- case WEEK_OF_YEAR: // pattern 5
- if (! isSet[DAY_OF_WEEK])
- fields[DAY_OF_WEEK] = getFirstDayOfWeek();
- isSet[YEAR] = true;
- isSet[DAY_OF_WEEK] = true;
- isSet[MONTH] = false;
- isSet[DAY_OF_MONTH] = false;
- isSet[WEEK_OF_MONTH] = false;
- isSet[DAY_OF_YEAR] = false;
- isSet[DAY_OF_WEEK_IN_MONTH] = false;
- break;
- case AM_PM:
- isSet[HOUR] = true;
- isSet[HOUR_OF_DAY] = false;
- break;
- case HOUR_OF_DAY:
- isSet[AM_PM] = false;
- isSet[HOUR] = false;
- break;
- case HOUR:
- isSet[AM_PM] = true;
- isSet[HOUR_OF_DAY] = false;
- break;
- case DST_OFFSET:
- explicitDSTOffset = true;
- }
-
- // May have crossed over a DST boundary.
- if (! explicitDSTOffset && (field != DST_OFFSET && field != ZONE_OFFSET))
- isSet[DST_OFFSET] = false;
- }
-
- /**
- * Sets the fields for year, month, and date
- * @param year the year.
- * @param month the month, one of the constants JANUARY..UNDICEMBER.
- * @param date the day of the month
- */
- public final void set(int year, int month, int date)
- {
- isTimeSet = false;
- fields[YEAR] = year;
- fields[MONTH] = month;
- fields[DATE] = date;
- isSet[YEAR] = isSet[MONTH] = isSet[DATE] = true;
- isSet[WEEK_OF_YEAR] = false;
- isSet[DAY_OF_YEAR] = false;
- isSet[WEEK_OF_MONTH] = false;
- isSet[DAY_OF_WEEK] = false;
- isSet[DAY_OF_WEEK_IN_MONTH] = false;
- isSet[ERA] = false;
-
- if (! explicitDSTOffset)
- isSet[DST_OFFSET] = false; // May have crossed a DST boundary.
- }
-
- /**
- * Sets the fields for year, month, date, hour, and minute
- * @param year the year.
- * @param month the month, one of the constants JANUARY..UNDICEMBER.
- * @param date the day of the month
- * @param hour the hour of day.
- * @param minute the minute.
- */
- public final void set(int year, int month, int date, int hour, int minute)
- {
- set(year, month, date);
- fields[HOUR_OF_DAY] = hour;
- fields[MINUTE] = minute;
- isSet[HOUR_OF_DAY] = isSet[MINUTE] = true;
- isSet[AM_PM] = false;
- isSet[HOUR] = false;
- }
-
- /**
- * Sets the fields for year, month, date, hour, and minute
- * @param year the year.
- * @param month the month, one of the constants JANUARY..UNDICEMBER.
- * @param date the day of the month
- * @param hour the hour of day.
- * @param minute the minute.
- * @param second the second.
- */
- public final void set(int year, int month, int date, int hour, int minute,
- int second)
- {
- set(year, month, date, hour, minute);
- fields[SECOND] = second;
- isSet[SECOND] = true;
- }
-
- /**
- * Clears the values of all the time fields.
- */
- public final void clear()
- {
- isTimeSet = false;
- areFieldsSet = false;
- int zoneOffs = zone.getRawOffset();
- int[] tempFields =
- {
- 1, 1970, JANUARY, 1, 1, 1, 1, THURSDAY, 1, AM, 0, 0, 0,
- 0, 0, zoneOffs, 0
- };
- fields = tempFields;
- for (int i = 0; i < FIELD_COUNT; i++)
- isSet[i] = false;
- }
-
- /**
- * Clears the values of the specified time field.
- * @param field the time field. One of the time field constants.
- * @throws ArrayIndexOutOfBoundsException if field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- */
- public final void clear(int field)
- {
- int[] tempFields =
- {
- 1, 1970, JANUARY, 1, 1, 1, 1, THURSDAY, 1, AM, 0, 0, 0,
- 0, 0, zone.getRawOffset(), 0
- };
- complete();
- isTimeSet = false;
- areFieldsSet = false;
- isSet[field] = false;
- fields[field] = tempFields[field];
- }
-
- /**
- * Determines if the specified field has a valid value.
- * @return true if the specified field has a value.
- * @throws ArrayIndexOutOfBoundsException if the field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- */
- public final boolean isSet(int field)
- {
- return isSet[field];
- }
-
- /**
- * Fills any unset fields in the time field list
- */
- protected void complete()
- {
- if (! isTimeSet)
- computeTime();
- if (! areFieldsSet)
- computeFields();
- }
-
- /**
- * Compares the given calendar with this.
- * @param o the object to that we should compare.
- * @return true, if the given object is a calendar, that represents
- * the same time (but doesn't necessary have the same fields).
- */
- public boolean equals(Object o)
- {
- if (! (o instanceof Calendar))
- return false;
- Calendar cal = (Calendar) o;
- if (getTimeInMillis() == ((Calendar) o).getTimeInMillis()
- && cal.getFirstDayOfWeek() == getFirstDayOfWeek()
- && cal.isLenient() == isLenient()
- && cal.getMinimalDaysInFirstWeek() == getMinimalDaysInFirstWeek())
- {
- TimeZone self = getTimeZone();
- TimeZone oth = cal.getTimeZone();
- return self == null ? oth == null : self.equals(oth);
- }
- return false;
- }
-
- /**
- * Returns a hash code for this calendar.
- * @return a hash code, which fullfits the general contract of
- * <code>hashCode()</code>
- */
- public int hashCode()
- {
- long time = getTimeInMillis();
- int val = (int) ((time & 0xffffffffL) ^ (time >> 32));
- val += (getFirstDayOfWeek() + (isLenient() ? 1230 : 1237)
- + getMinimalDaysInFirstWeek());
- TimeZone self = getTimeZone();
- if (self != null)
- val ^= self.hashCode();
- return val;
- }
-
- /**
- * Compares the given calendar with this.
- * @param o the object to that we should compare.
- * @return true, if the given object is a calendar, and this calendar
- * represents a smaller time than the calendar o.
- * @exception ClassCastException if o is not an calendar.
- * @since JDK1.2 you don't need to override this method
- */
- public boolean before(Object o)
- {
- return getTimeInMillis() < ((Calendar) o).getTimeInMillis();
- }
-
- /**
- * Compares the given calendar with this.
- * @param o the object to that we should compare.
- * @return true, if the given object is a calendar, and this calendar
- * represents a bigger time than the calendar o.
- * @exception ClassCastException if o is not an calendar.
- * @since JDK1.2 you don't need to override this method
- */
- public boolean after(Object o)
- {
- return getTimeInMillis() > ((Calendar) o).getTimeInMillis();
- }
-
- /**
- * Adds the specified amount of time to the given time field. The
- * amount may be negative to subtract the time. If the field overflows
- * it does what you expect: Jan, 25 + 10 Days is Feb, 4.
- * @param field the time field. One of the time field constants.
- * @param amount the amount of time.
- * @throws ArrayIndexOutOfBoundsException if the field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- */
- public abstract void add(int field, int amount);
-
- /**
- * Rolls the specified time field up or down. This means add one
- * to the specified field, but don't change the other fields. If
- * the maximum for this field is reached, start over with the
- * minimum value. <br>
- *
- * <strong>Note:</strong> There may be situation, where the other
- * fields must be changed, e.g rolling the month on May, 31.
- * The date June, 31 is automatically converted to July, 1.
- * @param field the time field. One of the time field constants.
- * @param up the direction, true for up, false for down.
- * @throws ArrayIndexOutOfBoundsException if the field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- */
- public abstract void roll(int field, boolean up);
-
- /**
- * Rolls up or down the specified time field by the given amount.
- * A negative amount rolls down. The default implementation is
- * call <code>roll(int, boolean)</code> for the specified amount.
- *
- * Subclasses should override this method to do more intuitiv things.
- *
- * @param field the time field. One of the time field constants.
- * @param amount the amount to roll by, positive for rolling up,
- * negative for rolling down.
- * @throws ArrayIndexOutOfBoundsException if the field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- * @since JDK1.2
- */
- public void roll(int field, int amount)
- {
- while (amount > 0)
- {
- roll(field, true);
- amount--;
- }
- while (amount < 0)
- {
- roll(field, false);
- amount++;
- }
- }
-
- /**
- * Sets the time zone to the specified value.
- * @param zone the new time zone
- */
- public void setTimeZone(TimeZone zone)
- {
- this.zone = zone;
- computeTime();
- computeFields();
- }
-
- /**
- * Gets the time zone of this calendar
- * @return the current time zone.
- */
- public TimeZone getTimeZone()
- {
- return zone;
- }
-
- /**
- * Specifies if the date/time interpretation should be lenient.
- * If the flag is set, a date such as "February 30, 1996" will be
- * treated as the 29th day after the February 1. If this flag
- * is false, such dates will cause an exception.
- * @param lenient true, if the date should be interpreted linient,
- * false if it should be interpreted strict.
- */
- public void setLenient(boolean lenient)
- {
- this.lenient = lenient;
- }
-
- /**
- * Tells if the date/time interpretation is lenient.
- * @return true, if the date should be interpreted linient,
- * false if it should be interpreted strict.
- */
- public boolean isLenient()
- {
- return lenient;
- }
-
- /**
- * Sets what the first day of week is. This is used for
- * WEEK_OF_MONTH and WEEK_OF_YEAR fields.
- * @param value the first day of week. One of SUNDAY to SATURDAY.
- */
- public void setFirstDayOfWeek(int value)
- {
- firstDayOfWeek = value;
- }
-
- /**
- * Gets what the first day of week is. This is used for
- * WEEK_OF_MONTH and WEEK_OF_YEAR fields.
- * @return the first day of week. One of SUNDAY to SATURDAY.
- */
- public int getFirstDayOfWeek()
- {
- return firstDayOfWeek;
- }
-
- /**
- * Sets how many days are required in the first week of the year.
- * If the first day of the year should be the first week you should
- * set this value to 1. If the first week must be a full week, set
- * it to 7.
- * @param value the minimal days required in the first week.
- */
- public void setMinimalDaysInFirstWeek(int value)
- {
- minimalDaysInFirstWeek = value;
- }
-
- /**
- * Gets how many days are required in the first week of the year.
- * @return the minimal days required in the first week.
- * @see #setMinimalDaysInFirstWeek
- */
- public int getMinimalDaysInFirstWeek()
- {
- return minimalDaysInFirstWeek;
- }
-
- /**
- * Gets the smallest value that is allowed for the specified field.
- * @param field the time field. One of the time field constants.
- * @return the smallest value.
- */
- public abstract int getMinimum(int field);
-
- /**
- * Gets the biggest value that is allowed for the specified field.
- * @param field the time field. One of the time field constants.
- * @return the biggest value.
- */
- public abstract int getMaximum(int field);
-
- /**
- * Gets the greatest minimum value that is allowed for the specified field.
- * @param field the time field. One of the time field constants.
- * @return the greatest minimum value.
- */
- public abstract int getGreatestMinimum(int field);
-
- /**
- * Gets the smallest maximum value that is allowed for the
- * specified field. For example this is 28 for DAY_OF_MONTH.
- * @param field the time field. One of the time field constants.
- * @return the least maximum value.
- */
- public abstract int getLeastMaximum(int field);
-
- /**
- * Gets the actual minimum value that is allowed for the specified field.
- * This value is dependent on the values of the other fields.
- * @param field the time field. One of the time field constants.
- * @return the actual minimum value.
- * @throws ArrayIndexOutOfBoundsException if the field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- * @since jdk1.2
- */
- public int getActualMinimum(int field)
- {
- Calendar tmp = (Calendar) clone(); // To avoid restoring state
- int min = tmp.getGreatestMinimum(field);
- int end = tmp.getMinimum(field);
- tmp.set(field, min);
- for (; min > end; min--)
- {
- tmp.add(field, -1); // Try to get smaller
- if (tmp.get(field) != min - 1)
- break; // Done if not successful
- }
- return min;
- }
-
- /**
- * Gets the actual maximum value that is allowed for the specified field.
- * This value is dependent on the values of the other fields.
- * @param field the time field. One of the time field constants.
- * @return the actual maximum value.
- * @throws ArrayIndexOutOfBoundsException if the field is outside
- * the valid range. The value of field must be >= 0 and
- * <= <code>FIELD_COUNT</code>.
- * @since jdk1.2
- */
- public int getActualMaximum(int field)
- {
- Calendar tmp = (Calendar) clone(); // To avoid restoring state
- int max = tmp.getLeastMaximum(field);
- int end = tmp.getMaximum(field);
- tmp.set(field, max);
- for (; max < end; max++)
- {
- tmp.add(field, 1);
- if (tmp.get(field) != max + 1)
- break;
- }
- return max;
- }
-
- /**
- * Compares the time of two calendar instances.
- * @param calendar the calendar to which the time should be compared.
- * @return 0 if the two calendars are set to the same time,
- * less than 0 if the time of this calendar is before that of
- * <code>cal</code>, or more than 0 if the time of this calendar is after
- * that of <code>cal</code>.
- *
- * @param cal the calendar to compare this instance with.
- * @throws NullPointerException if <code>cal</code> is null.
- * @throws IllegalArgumentException if either calendar has fields set to
- * invalid values.
- * @since 1.5
- */
- public int compareTo(Calendar cal)
- {
- long t1 = getTimeInMillis();
- long t2 = cal.getTimeInMillis();
- if(t1 == t2)
- return 0;
- if(t1 > t2)
- return 1;
- return -1;
- }
-
- /**
- * Return a clone of this object.
- */
- public Object clone()
- {
- try
- {
- Calendar cal = (Calendar) super.clone();
- cal.fields = (int[]) fields.clone();
- cal.isSet = (boolean[]) isSet.clone();
- return cal;
- }
- catch (CloneNotSupportedException ex)
- {
- return null;
- }
- }
-
- private static final String[] fieldNames =
- {
- ",ERA=", ",YEAR=", ",MONTH=",
- ",WEEK_OF_YEAR=",
- ",WEEK_OF_MONTH=",
- ",DAY_OF_MONTH=",
- ",DAY_OF_YEAR=", ",DAY_OF_WEEK=",
- ",DAY_OF_WEEK_IN_MONTH=",
- ",AM_PM=", ",HOUR=",
- ",HOUR_OF_DAY=", ",MINUTE=",
- ",SECOND=", ",MILLISECOND=",
- ",ZONE_OFFSET=", ",DST_OFFSET="
- };
-
- /**
- * Returns a string representation of this object. It is mainly
- * for debugging purposes and its content is implementation
- * specific.
- */
- public String toString()
- {
- StringBuffer sb = new StringBuffer();
- sb.append(getClass().getName()).append('[');
- sb.append("time=");
- if (isTimeSet)
- sb.append(time);
- else
- sb.append("?");
- sb.append(",zone=" + zone);
- sb.append(",areFieldsSet=" + areFieldsSet);
- for (int i = 0; i < FIELD_COUNT; i++)
- {
- sb.append(fieldNames[i]);
- if (isSet[i])
- sb.append(fields[i]);
- else
- sb.append("?");
- }
- sb.append(",lenient=").append(lenient);
- sb.append(",firstDayOfWeek=").append(firstDayOfWeek);
- sb.append(",minimalDaysInFirstWeek=").append(minimalDaysInFirstWeek);
- sb.append("]");
- return sb.toString();
- }
-
- /**
- * Saves the state of the object to the stream. Ideally we would
- * only write the time field, but we need to be compatible with
- * earlier versions. <br>
- *
- * This doesn't write the JDK1.1 field nextStamp to the stream, as
- * I don't know what it is good for, and because the documentation
- * says, that it could be omitted. */
- private void writeObject(ObjectOutputStream stream) throws IOException
- {
- if (! isTimeSet)
- computeTime();
- stream.defaultWriteObject();
- }
-
- /**
- * Reads the object back from stream (deserialization).
- */
- private void readObject(ObjectInputStream stream)
- throws IOException, ClassNotFoundException
- {
- stream.defaultReadObject();
- if (! isTimeSet)
- computeTime();
-
- if (serialVersionOnStream > 1)
- {
- // This is my interpretation of the serial number:
- // Sun wants to remove all fields from the stream someday
- // and will then increase the serialVersion number again.
- // We prepare to be compatible.
- fields = new int[FIELD_COUNT];
- isSet = new boolean[FIELD_COUNT];
- areFieldsSet = false;
- }
- }
-
- /**
- * Returns a localised textual representation of the current value
- * of the given field using the specified style. If there is no
- * applicable textual representation (e.g. the field has a numeric
- * value), then <code>null</code> is returned. If one does exist,
- * then the value is obtained from {@link #get(int)} and converted
- * appropriately. For example, if the <code>MONTH</code> field is
- * requested, then <code>get(MONTH)</code> is called. This is then
- * converted to a textual representation based on its value and
- * the style requested; if the <code>LONG</code> style is requested
- * and the returned value is <code>11</code> from a
- * {@link GregorianCalendar} implementation, then <code>"December"</code>
- * is returned. By default, a textual representation is available
- * for all fields which have an applicable value obtainable from
- * {@link java.text.DateFormatSymbols}.
- *
- * @param field the calendar field whose textual representation should
- * be obtained.
- * @param style the style to use; either {@link #LONG} or {@link #SHORT}.
- * @param locale the locale to use for translation.
- * @return the textual representation of the given field in the specified
- * style, or <code>null</code> if none is applicable.
- * @throws IllegalArgumentException if <code>field</code> or <code>style</code>
- * or invalid, or the calendar is non-lenient
- * and has invalid values.
- * @throws NullPointerException if <code>locale</code> is <code>null</code>.
- * @since 1.6
- */
- public String getDisplayName(int field, int style, Locale locale)
- {
- if (field < 0 || field >= FIELD_COUNT)
- throw new IllegalArgumentException("The field value, " + field +
- ", is invalid.");
- if (style != SHORT && style != LONG)
- throw new IllegalArgumentException("The style must be either " +
- "short or long.");
- if (field == YEAR || field == WEEK_OF_YEAR ||
- field == WEEK_OF_MONTH || field == DAY_OF_MONTH ||
- field == DAY_OF_YEAR || field == DAY_OF_WEEK_IN_MONTH ||
- field == HOUR || field == HOUR_OF_DAY || field == MINUTE ||
- field == SECOND || field == MILLISECOND)
- return null;
-
- int value = get(field);
- DateFormatSymbols syms = DateFormatSymbols.getInstance(locale);
- if (field == ERA)
- return syms.getEras()[value];
- if (field == MONTH)
- if (style == LONG)
- return syms.getMonths()[value];
- else
- return syms.getShortMonths()[value];
- if (field == DAY_OF_WEEK)
- if (style == LONG)
- return syms.getWeekdays()[value];
- else
- return syms.getShortWeekdays()[value];
- if (field == AM_PM)
- return syms.getAmPmStrings()[value];
- if (field == ZONE_OFFSET)
- if (style == LONG)
- return syms.getZoneStrings()[value][1];
- else
- return syms.getZoneStrings()[value][2];
- if (field == DST_OFFSET)
- if (style == LONG)
- return syms.getZoneStrings()[value][3];
- else
- return syms.getZoneStrings()[value][4];
-
- throw new InternalError("Failed to resolve field " + field +
- " with style " + style + " for locale " +
- locale);
- }
-
- /**
- * Returns a map linking all specified textual representations
- * of the given field to their numerical values. The textual
- * representations included are determined by the specified
- * style and locale. For example, if the style <code>LONG</code>
- * is specified and the German locale, then the map will
- * contain "Montag" to {@link #MONDAY}, "Dienstag" to
- * {@link #TUESDAY}, "Mittwoch" to {@link #WEDNESDAY} and
- * so on. The default implementation uses the values returned
- * by {@link DateFormatSymbols} so, for example, the style
- * {@link #ALL_STYLES} and the field {@link #MONTH} will return
- * a map filled with the values returned from
- * {@link DateFormatSymbols#getMonths()} and
- * {@link DateFormatSymbols#getShortMonths()}. If there are
- * no textual representations for a given field (usually because
- * it is purely numeric, such as the year in the
- * {@link GregorianCalendar}), <code>null</code> is returned.
- *
- * @param field the calendar field whose textual representation should
- * be obtained.
- * @param style the style to use; either {@link #LONG}, {@link #SHORT}
- * or {@link ALL_STYLES}.
- * @param locale the locale to use for translation.
- * @return a map of the textual representations of the given field in the
- * specified style to their numeric values, or <code>null</code>
- * if none is applicable.
- * @throws IllegalArgumentException if <code>field</code> or <code>style</code>
- * or invalid, or the calendar is non-lenient
- * and has invalid values.
- * @throws NullPointerException if <code>locale</code> is <code>null</code>.
- * @since 1.6
- */
- public Map<String,Integer> getDisplayNames(int field, int style, Locale locale)
- {
- if (field < 0 || field >= FIELD_COUNT)
- throw new IllegalArgumentException("The field value, " + field +
- ", is invalid.");
- if (style != SHORT && style != LONG && style != ALL_STYLES)
- throw new IllegalArgumentException("The style must be either " +
- "short, long or all styles.");
- if (field == YEAR || field == WEEK_OF_YEAR ||
- field == WEEK_OF_MONTH || field == DAY_OF_MONTH ||
- field == DAY_OF_YEAR || field == DAY_OF_WEEK_IN_MONTH ||
- field == HOUR || field == HOUR_OF_DAY || field == MINUTE ||
- field == SECOND || field == MILLISECOND)
- return null;
-
- DateFormatSymbols syms = DateFormatSymbols.getInstance(locale);
- Map<String,Integer> map = new HashMap<String,Integer>();
- if (field == ERA)
- {
- String[] eras = syms.getEras();
- for (int a = 0; a < eras.length; ++a)
- map.put(eras[a], a);
- return map;
- }
- if (field == MONTH)
- {
- if (style == LONG || style == ALL_STYLES)
- {
- String[] months = syms.getMonths();
- for (int a = 0; a < months.length; ++a)
- map.put(months[a], a);
- }
- if (style == SHORT || style == ALL_STYLES)
- {
- String[] months = syms.getShortMonths();
- for (int a = 0; a < months.length; ++a)
- map.put(months[a], a);
- }
- return map;
- }
- if (field == DAY_OF_WEEK)
- {
- if (style == LONG || style == ALL_STYLES)
- {
- String[] weekdays = syms.getWeekdays();
- for (int a = SUNDAY; a < weekdays.length; ++a)
- map.put(weekdays[a], a);
- }
- if (style == SHORT || style == ALL_STYLES)
- {
- String[] weekdays = syms.getShortWeekdays();
- for (int a = SUNDAY; a < weekdays.length; ++a)
- map.put(weekdays[a], a);
- }
- return map;
- }
- if (field == AM_PM)
- {
- String[] ampms = syms.getAmPmStrings();
- for (int a = 0; a < ampms.length; ++a)
- map.put(ampms[a], a);
- return map;
- }
- if (field == ZONE_OFFSET)
- {
- String[][] zones = syms.getZoneStrings();
- for (int a = 0; a < zones.length; ++a)
- {
- if (style == LONG || style == ALL_STYLES)
- map.put(zones[a][1], a);
- if (style == SHORT || style == ALL_STYLES)
- map.put(zones[a][2], a);
- }
- return map;
- }
- if (field == DST_OFFSET)
- {
- String[][] zones = syms.getZoneStrings();
- for (int a = 0; a < zones.length; ++a)
- {
- if (style == LONG || style == ALL_STYLES)
- map.put(zones[a][3], a);
- if (style == SHORT || style == ALL_STYLES)
- map.put(zones[a][4], a);
- }
- return map;
- }
-
- throw new InternalError("Failed to resolve field " + field +
- " with style " + style + " for locale " +
- locale);
- }
-
-}
diff --git a/libjava/java/util/Currency.h b/libjava/java/util/Currency.h
index ac8878c7e2b..2697c97add5 100644
--- a/libjava/java/util/Currency.h
+++ b/libjava/java/util/Currency.h
@@ -27,11 +27,10 @@ private:
public: // actually package-private
static const jlong serialVersionUID = -158308464356906721LL;
private:
- ::java::util::Locale * __attribute__((aligned(__alignof__( ::java::lang::Object)))) locale;
- ::java::util::ResourceBundle * res;
static ::java::util::Properties * properties;
- ::java::lang::String * currencyCode;
+ ::java::lang::String * __attribute__((aligned(__alignof__( ::java::lang::Object)))) currencyCode;
jint fractionDigits;
+ static ::java::util::Map * countryMap;
static ::java::util::Map * cache;
public:
static ::java::lang::Class class$;
diff --git a/libjava/java/util/Currency.java b/libjava/java/util/Currency.java
deleted file mode 100644
index 66888fa666b..00000000000
--- a/libjava/java/util/Currency.java
+++ /dev/null
@@ -1,422 +0,0 @@
-/* Currency.java -- Representation of a currency
- Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-package java.util;
-
-import java.io.IOException;
-import java.io.ObjectStreamException;
-import java.io.Serializable;
-import java.text.NumberFormat;
-
-/**
- * Representation of a currency for a particular locale. Each currency
- * is identified by its ISO 4217 code, and only one instance of this
- * class exists per currency. As a result, instances are created
- * via the <code>getInstance()</code> methods rather than by using
- * a constructor.
- *
- * @see java.util.Locale
- * @author Guilhem Lavaux (guilhem.lavaux@free.fr)
- * @author Dalibor Topic (robilad@kaffe.org)
- * @author Bryce McKinlay (mckinlay@redhat.com)
- * @author Andrew John Hughes (gnu_andrew@member.fsf.org)
- * @since 1.4
- */
-public final class Currency
- implements Serializable
-{
- /**
- * For compatability with Sun's JDK
- */
- static final long serialVersionUID = -158308464356906721L;
-
- /**
- * The locale associated with this currency.
- *
- * @see #Currency(java.util.Locale)
- * @see #getInstance(java.util.Locale)
- * @see #getSymbol(java.util.Locale)
- * @serial ignored.
- */
- private transient Locale locale;
-
- /**
- * The resource bundle which maps the currency to
- * a ISO 4217 currency code.
- *
- * @see #getCurrencyCode()
- * @serial ignored.
- */
- private transient ResourceBundle res;
-
- /**
- * The set of properties which map a currency to
- * the currency information such as the ISO 4217
- * currency code and the number of decimal points.
- *
- * @see #getCurrencyCode()
- * @serial ignored.
- */
- private static transient Properties properties;
-
- /**
- * The ISO 4217 currency code associated with this
- * particular instance.
- *
- * @see #getCurrencyCode()
- * @serial the ISO 4217 currency code
- */
- private String currencyCode;
-
- /**
- * The number of fraction digits associated with this
- * particular instance.
- *
- * @see #getDefaultFractionDigits()
- * @serial the number of fraction digits
- */
- private transient int fractionDigits;
-
- /**
- * A cache of <code>Currency</code> instances to
- * ensure the singleton nature of this class. The key
- * is the locale of the currency.
- *
- * @see #getInstance(java.util.Locale)
- * @see #readResolve()
- * @serial ignored.
- */
- private static transient Map cache;
-
- /**
- * Instantiates the cache.
- */
- static
- {
- cache = new HashMap();
- /* Create the properties object */
- properties = new Properties();
- /* Try and load the properties from our iso4217.properties resource */
- try
- {
- properties.load(Currency.class.getResourceAsStream("iso4217.properties"));
- }
- catch (IOException exception)
- {
- System.out.println("Failed to load currency resource: " + exception);
- }
- }
-
- /**
- * Default constructor for deserialization
- */
- private Currency ()
- {
- }
-
- /**
- * Constructor to create a <code>Currency</code> object
- * for a particular <code>Locale</code>.
- * All components of the given locale, other than the
- * country code, are ignored. The results of calling this
- * method may vary over time, as the currency associated with
- * a particular country changes. For countries without
- * a given currency (e.g. Antarctica), the result is null.
- *
- * @param loc the locale for the new currency.
- */
- private Currency (Locale loc)
- {
- String countryCode;
- String fractionDigitsKey;
-
- /* Retrieve the country code from the locale */
- countryCode = loc.getCountry();
-
- /* If there is no country code, return */
- if (countryCode.equals(""))
- {
- throw new
- IllegalArgumentException("Invalid (empty) country code for locale:"
- + loc);
- }
-
- this.locale = loc;
- this.res = ResourceBundle.getBundle ("gnu.java.locale.LocaleInformation",
- locale, ClassLoader.getSystemClassLoader());
-
- /* Retrieve the ISO4217 currency code */
- try
- {
- currencyCode = res.getString ("intlCurrencySymbol");
- }
- catch (Exception _)
- {
- currencyCode = null;
- }
-
- /* Construct the key for the fraction digits */
- fractionDigitsKey = countryCode + ".fractionDigits";
-
- /* Retrieve the fraction digits */
- fractionDigits = Integer.parseInt(properties.getProperty(fractionDigitsKey));
- }
-
- /**
- * Constructor for the "XXX" special case. This allows
- * a Currency to be constructed from an assumed good
- * currency code.
- *
- * @param code the code to use.
- */
- private Currency(String code)
- {
- currencyCode = code;
- fractionDigits = -1; /* Pseudo currency */
- }
-
- /**
- * Returns the ISO4217 currency code of this currency.
- *
- * @return a <code>String</code> containing currency code.
- */
- public String getCurrencyCode ()
- {
- return currencyCode;
- }
-
- /**
- * Returns the number of digits which occur after the decimal point
- * for this particular currency. For example, currencies such
- * as the U.S. dollar, the Euro and the Great British pound have two
- * digits following the decimal point to indicate the value which exists
- * in the associated lower-valued coinage (cents in the case of the first
- * two, pennies in the latter). Some currencies such as the Japanese
- * Yen have no digits after the decimal point. In the case of pseudo
- * currencies, such as IMF Special Drawing Rights, -1 is returned.
- *
- * @return the number of digits after the decimal separator for this currency.
- */
- public int getDefaultFractionDigits ()
- {
- return fractionDigits;
- }
-
- /**
- * Builds a new currency instance for this locale.
- * All components of the given locale, other than the
- * country code, are ignored. The results of calling this
- * method may vary over time, as the currency associated with
- * a particular country changes. For countries without
- * a given currency (e.g. Antarctica), the result is null.
- *
- * @param locale a <code>Locale</code> instance.
- * @return a new <code>Currency</code> instance.
- * @throws NullPointerException if the locale or its
- * country code is null.
- * @throws IllegalArgumentException if the country of
- * the given locale is not a supported ISO3166 code.
- */
- public static Currency getInstance (Locale locale)
- {
- /**
- * The new instance must be the only available instance
- * for the currency it supports. We ensure this happens,
- * while maintaining a suitable performance level, by
- * creating the appropriate object on the first call to
- * this method, and returning the cached instance on
- * later calls.
- */
- Currency newCurrency;
-
- /* Attempt to get the currency from the cache */
- newCurrency = (Currency) cache.get(locale);
- if (newCurrency == null)
- {
- /* Create the currency for this locale */
- newCurrency = new Currency (locale);
- /* Cache it */
- cache.put(locale, newCurrency);
- }
- /* Return the instance */
- return newCurrency;
- }
-
- /**
- * Builds the currency corresponding to the specified currency code.
- *
- * @param currencyCode a string representing a currency code.
- * @return a new <code>Currency</code> instance.
- * @throws NullPointerException if currencyCode is null.
- * @throws IllegalArgumentException if the supplied currency code
- * is not a supported ISO 4217 code.
- */
- public static Currency getInstance (String currencyCode)
- {
- Locale[] allLocales = Locale.getAvailableLocales ();
-
- /* Nasty special case to allow an erroneous currency... blame Sun */
- if (currencyCode.equals("XXX"))
- return new Currency("XXX");
-
- for (int i = 0;i < allLocales.length; i++)
- {
- Currency testCurrency = getInstance (allLocales[i]);
-
- if (testCurrency.getCurrencyCode() != null &&
- testCurrency.getCurrencyCode().equals(currencyCode))
- return testCurrency;
- }
- /*
- * If we get this far, the code is not supported by any of
- * our locales.
- */
- throw new IllegalArgumentException("The currency code, " + currencyCode +
- ", is not supported.");
- }
-
- /**
- * This method returns the symbol which precedes or follows a
- * value in this particular currency. In cases where there is no
- * such symbol for the currency, the ISO 4217 currency
- * code is returned.
- *
- * @return the currency symbol, or the ISO 4217 currency code if
- * one doesn't exist.
- */
- public String getSymbol()
- {
- try
- {
- /* What does this return if there is no mapping? */
- return res.getString ("currencySymbol");
- }
- catch (Exception _)
- {
- return null;
- }
- }
-
- /**
- * <p>
- * This method returns the symbol which precedes or follows a
- * value in this particular currency. The returned value is
- * the symbol used to denote the currency in the specified locale.
- * </p>
- * <p>
- * For example, a supplied locale may specify a different symbol
- * for the currency, due to conflicts with its own currency.
- * This would be the case with the American currency, the dollar.
- * Locales that also use a dollar-based currency (e.g. Canada, Australia)
- * need to differentiate the American dollar using 'US$' rather than '$'.
- * So, supplying one of these locales to <code>getSymbol()</code> would
- * return this value, rather than the standard '$'.
- * </p>
- * <p>
- * In cases where there is no such symbol for a particular currency,
- * the ISO 4217 currency code is returned.
- * </p>
- *
- * @param locale the locale to express the symbol in.
- * @return the currency symbol, or the ISO 4217 currency code if
- * one doesn't exist.
- * @throws NullPointerException if the locale is null.
- */
- public String getSymbol(Locale locale)
- {
- // TODO. The behaviour is unclear if locale != this.locale.
- // First we need to implement fully LocaleInformation*.java
-
- /*
- * FIXME: My reading of how this method works has this implementation
- * as wrong. It should return a value relating to how the specified
- * locale handles the symbol for this currency. This implementation
- * seems to just do a variation of getInstance(locale).
- */
- try
- {
- ResourceBundle localeResource =
- ResourceBundle.getBundle ("gnu.java.locale.LocaleInformation",
- locale, Currency.class.getClassLoader());
-
- if (localeResource.equals(res))
- return localeResource.getString ("currencySymbol");
- else
- return localeResource.getString ("intlCurrencySymbol");
- }
- catch (Exception e1)
- {
- try
- {
- return res.getString ("intlCurrencySymbol");
- }
- catch (Exception e2)
- {
- return null;
- }
- }
- }
-
- /**
- * Returns the international ISO4217 currency code of this currency.
- *
- * @return a <code>String</code> containing the ISO4217 currency code.
- */
- public String toString()
- {
- return getCurrencyCode();
- }
-
- /**
- * Resolves the deserialized object to the singleton instance for its
- * particular currency. The currency code of the deserialized instance
- * is used to return the correct instance.
- *
- * @return the singleton instance for the currency specified by the
- * currency code of the deserialized object. This replaces
- * the deserialized object as the returned object from
- * deserialization.
- * @throws ObjectStreamException if a problem occurs with deserializing
- * the object.
- */
- private Object readResolve()
- throws ObjectStreamException
- {
- return getInstance(currencyCode);
- }
-
-}
diff --git a/libjava/scripts/makemake.tcl b/libjava/scripts/makemake.tcl
index 080265821f7..49ce006c743 100755
--- a/libjava/scripts/makemake.tcl
+++ b/libjava/scripts/makemake.tcl
@@ -139,8 +139,6 @@ makearray properties_map
# logging.properties is installed and is editable.
set properties_map(java/util/logging) _
-# We haven't merged locale resources yet.
-set properties_map(gnu/java/locale) _
# We want to be able to load xerces if it is on the class path. So,
# we have to avoid compiling in the XML-related service files.
diff --git a/libjava/sources.am b/libjava/sources.am
index 5361bdf5554..ba84ccc4a6c 100644
--- a/libjava/sources.am
+++ b/libjava/sources.am
@@ -1191,147 +1191,8 @@ gnu/java/lang/reflect.list: $(gnu_java_lang_reflect_source_files)
gnu_java_locale_source_files = \
-gnu/java/locale/Calendar.java \
-gnu/java/locale/Calendar_de.java \
-gnu/java/locale/Calendar_en.java \
-gnu/java/locale/Calendar_nl.java \
classpath/gnu/java/locale/LocaleData.java \
-classpath/gnu/java/locale/LocaleHelper.java \
-gnu/java/locale/LocaleInformation.java \
-gnu/java/locale/LocaleInformation_af_ZA.java \
-gnu/java/locale/LocaleInformation_ar_AE.java \
-gnu/java/locale/LocaleInformation_ar_BH.java \
-gnu/java/locale/LocaleInformation_ar_DZ.java \
-gnu/java/locale/LocaleInformation_ar_EG.java \
-gnu/java/locale/LocaleInformation_ar_IN.java \
-gnu/java/locale/LocaleInformation_ar_IQ.java \
-gnu/java/locale/LocaleInformation_ar_JO.java \
-gnu/java/locale/LocaleInformation_ar_KW.java \
-gnu/java/locale/LocaleInformation_ar_LB.java \
-gnu/java/locale/LocaleInformation_ar_LY.java \
-gnu/java/locale/LocaleInformation_ar_MA.java \
-gnu/java/locale/LocaleInformation_ar_OM.java \
-gnu/java/locale/LocaleInformation_ar_QA.java \
-gnu/java/locale/LocaleInformation_ar_SD.java \
-gnu/java/locale/LocaleInformation_ar_SY.java \
-gnu/java/locale/LocaleInformation_ar_TN.java \
-gnu/java/locale/LocaleInformation_ar_YE.java \
-gnu/java/locale/LocaleInformation_be_BY.java \
-gnu/java/locale/LocaleInformation_bn_IN.java \
-gnu/java/locale/LocaleInformation_br_FR.java \
-gnu/java/locale/LocaleInformation_bs_BA.java \
-gnu/java/locale/LocaleInformation_ca_ES.java \
-gnu/java/locale/LocaleInformation_cs_CZ.java \
-gnu/java/locale/LocaleInformation_cy_GB.java \
-gnu/java/locale/LocaleInformation_da_DK.java \
-gnu/java/locale/LocaleInformation_de.java \
-gnu/java/locale/LocaleInformation_de_AT.java \
-gnu/java/locale/LocaleInformation_de_BE.java \
-gnu/java/locale/LocaleInformation_de_CH.java \
-gnu/java/locale/LocaleInformation_de_DE.java \
-gnu/java/locale/LocaleInformation_de_LU.java \
-gnu/java/locale/LocaleInformation_el_GR.java \
-gnu/java/locale/LocaleInformation_en.java \
-gnu/java/locale/LocaleInformation_en_AU.java \
-gnu/java/locale/LocaleInformation_en_BW.java \
-gnu/java/locale/LocaleInformation_en_CA.java \
-gnu/java/locale/LocaleInformation_en_DK.java \
-gnu/java/locale/LocaleInformation_en_GB.java \
-gnu/java/locale/LocaleInformation_en_HK.java \
-gnu/java/locale/LocaleInformation_en_IE.java \
-gnu/java/locale/LocaleInformation_en_IN.java \
-gnu/java/locale/LocaleInformation_en_NZ.java \
-gnu/java/locale/LocaleInformation_en_PH.java \
-gnu/java/locale/LocaleInformation_en_SG.java \
-gnu/java/locale/LocaleInformation_en_US.java \
-gnu/java/locale/LocaleInformation_en_ZA.java \
-gnu/java/locale/LocaleInformation_en_ZW.java \
-gnu/java/locale/LocaleInformation_es_AR.java \
-gnu/java/locale/LocaleInformation_es_BO.java \
-gnu/java/locale/LocaleInformation_es_CL.java \
-gnu/java/locale/LocaleInformation_es_CO.java \
-gnu/java/locale/LocaleInformation_es_CR.java \
-gnu/java/locale/LocaleInformation_es_DO.java \
-gnu/java/locale/LocaleInformation_es_EC.java \
-gnu/java/locale/LocaleInformation_es_ES.java \
-gnu/java/locale/LocaleInformation_es_GT.java \
-gnu/java/locale/LocaleInformation_es_HN.java \
-gnu/java/locale/LocaleInformation_es_MX.java \
-gnu/java/locale/LocaleInformation_es_NI.java \
-gnu/java/locale/LocaleInformation_es_PA.java \
-gnu/java/locale/LocaleInformation_es_PE.java \
-gnu/java/locale/LocaleInformation_es_PR.java \
-gnu/java/locale/LocaleInformation_es_PY.java \
-gnu/java/locale/LocaleInformation_es_SV.java \
-gnu/java/locale/LocaleInformation_es_US.java \
-gnu/java/locale/LocaleInformation_es_UY.java \
-gnu/java/locale/LocaleInformation_es_VE.java \
-gnu/java/locale/LocaleInformation_et_EE.java \
-gnu/java/locale/LocaleInformation_eu_ES.java \
-gnu/java/locale/LocaleInformation_fa_IR.java \
-gnu/java/locale/LocaleInformation_fi_FI.java \
-gnu/java/locale/LocaleInformation_fo_FO.java \
-gnu/java/locale/LocaleInformation_fr_BE.java \
-gnu/java/locale/LocaleInformation_fr_CA.java \
-gnu/java/locale/LocaleInformation_fr_CH.java \
-gnu/java/locale/LocaleInformation_fr_FR.java \
-gnu/java/locale/LocaleInformation_fr_LU.java \
-gnu/java/locale/LocaleInformation_ga_IE.java \
-gnu/java/locale/LocaleInformation_gd_GB.java \
-gnu/java/locale/LocaleInformation_gl_ES.java \
-gnu/java/locale/LocaleInformation_gv_GB.java \
-gnu/java/locale/LocaleInformation_he_IL.java \
-gnu/java/locale/LocaleInformation_hi_IN.java \
-gnu/java/locale/LocaleInformation_hr_HR.java \
-gnu/java/locale/LocaleInformation_hu_HU.java \
-gnu/java/locale/LocaleInformation_id_ID.java \
-gnu/java/locale/LocaleInformation_it_CH.java \
-gnu/java/locale/LocaleInformation_it_IT.java \
-gnu/java/locale/LocaleInformation_iw_IL.java \
-gnu/java/locale/LocaleInformation_ja_JP.java \
-gnu/java/locale/LocaleInformation_ka_GE.java \
-gnu/java/locale/LocaleInformation_kl_GL.java \
-gnu/java/locale/LocaleInformation_ko_KR.java \
-gnu/java/locale/LocaleInformation_kw_GB.java \
-gnu/java/locale/LocaleInformation_lt_LT.java \
-gnu/java/locale/LocaleInformation_lv_LV.java \
-gnu/java/locale/LocaleInformation_mi_NZ.java \
-gnu/java/locale/LocaleInformation_mk_MK.java \
-gnu/java/locale/LocaleInformation_mr_IN.java \
-gnu/java/locale/LocaleInformation_mt_MT.java \
-gnu/java/locale/LocaleInformation_nl.java \
-gnu/java/locale/LocaleInformation_nl_BE.java \
-gnu/java/locale/LocaleInformation_nl_NL.java \
-gnu/java/locale/LocaleInformation_nn_NO.java \
-gnu/java/locale/LocaleInformation_no_NO.java \
-gnu/java/locale/LocaleInformation_oc_FR.java \
-gnu/java/locale/LocaleInformation_pl_PL.java \
-gnu/java/locale/LocaleInformation_pt_BR.java \
-gnu/java/locale/LocaleInformation_pt_PT.java \
-gnu/java/locale/LocaleInformation_ro_RO.java \
-gnu/java/locale/LocaleInformation_ru_RU.java \
-gnu/java/locale/LocaleInformation_ru_UA.java \
-gnu/java/locale/LocaleInformation_se_NO.java \
-gnu/java/locale/LocaleInformation_sk_SK.java \
-gnu/java/locale/LocaleInformation_sl_SI.java \
-gnu/java/locale/LocaleInformation_sq_AL.java \
-gnu/java/locale/LocaleInformation_sr_YU.java \
-gnu/java/locale/LocaleInformation_sv_FI.java \
-gnu/java/locale/LocaleInformation_sv_SE.java \
-gnu/java/locale/LocaleInformation_ta_IN.java \
-gnu/java/locale/LocaleInformation_te_IN.java \
-gnu/java/locale/LocaleInformation_tg_TJ.java \
-gnu/java/locale/LocaleInformation_tl_PH.java \
-gnu/java/locale/LocaleInformation_tr_TR.java \
-gnu/java/locale/LocaleInformation_uk_UA.java \
-gnu/java/locale/LocaleInformation_ur_PK.java \
-gnu/java/locale/LocaleInformation_uz_UZ.java \
-gnu/java/locale/LocaleInformation_vi_VN.java \
-gnu/java/locale/LocaleInformation_yi_US.java \
-gnu/java/locale/LocaleInformation_zh_CN.java \
-gnu/java/locale/LocaleInformation_zh_HK.java \
-gnu/java/locale/LocaleInformation_zh_SG.java \
-gnu/java/locale/LocaleInformation_zh_TW.java
+classpath/gnu/java/locale/LocaleHelper.java
gnu_java_locale_header_files = $(patsubst classpath/%,%,$(patsubst %.java,%.h,$(gnu_java_locale_source_files)))
@@ -5537,9 +5398,9 @@ classpath/java/text/CollationElementIterator.java \
classpath/java/text/CollationKey.java \
java/text/Collator.java \
classpath/java/text/DateFormat.java \
-java/text/DateFormatSymbols.java \
+classpath/java/text/DateFormatSymbols.java \
classpath/java/text/DecimalFormat.java \
-java/text/DecimalFormatSymbols.java \
+classpath/java/text/DecimalFormatSymbols.java \
classpath/java/text/FieldPosition.java \
classpath/java/text/Format.java \
classpath/java/text/MessageFormat.java \
@@ -5587,12 +5448,12 @@ classpath/external/jsr166/java/util/ArrayDeque.java \
classpath/java/util/ArrayList.java \
classpath/java/util/Arrays.java \
classpath/java/util/BitSet.java \
-java/util/Calendar.java \
+classpath/java/util/Calendar.java \
classpath/java/util/Collection.java \
classpath/java/util/Collections.java \
classpath/java/util/Comparator.java \
classpath/java/util/ConcurrentModificationException.java \
-java/util/Currency.java \
+classpath/java/util/Currency.java \
classpath/java/util/Date.java \
classpath/external/jsr166/java/util/Deque.java \
classpath/java/util/Dictionary.java \
@@ -9134,6 +8995,276 @@ property_files = \
classpath/resource/gnu/classpath/tools/tnameserv/messages.properties \
classpath/resource/gnu/java/awt/peer/gtk/font.properties \
classpath/resource/gnu/java/awt/peer/x/fonts.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa_DJ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa_ER_SAAHO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_aa_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_af.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_af_ZA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_am.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_am_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_DZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_JO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_LB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_MA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_QA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_SA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_SY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_TN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ar_YE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_as.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_as_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_az.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_az_Cyrl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_be.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_be_BY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bg.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bg_BG.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bn_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_bs.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_byn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_byn_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ca.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ca_ES.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_cs.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_cs_CZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_cy.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_cy_GB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_da.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_da_DK.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_AT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_BE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_CH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_DE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_LI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_de_LU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_dv.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_dv_MV.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_dz.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_dz_BT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_el.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_el_CY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_el_GR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_AS.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_AU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_BE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_BW.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_BZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_CA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_GB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_GU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_HK.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_IE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_MH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_MP.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_MT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_NZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_PH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_PK.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_SG.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_UM.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_US.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_US_POSIX.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_VI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_ZA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_en_ZW.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_eo.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_AR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_BO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_CL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_CO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_CR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_DO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_EC.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_ES.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_GT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_HN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_MX.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_NI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_PA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_PE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_PR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_PY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_SV.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_US.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_UY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_es_VE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_et.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_et_EE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_eu.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_eu_ES.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fa.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fa_AF.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fa_IR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fi.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fi_FI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fo.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fo_FO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr_BE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr_CA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr_CH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_fr_LU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ga.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ga_IE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gez.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gez_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gez_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gl_ES.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gu.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gu_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gv.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_gv_GB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_haw.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_haw_US.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_he.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_he_IL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hi.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hi_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hu.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hu_HU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hy.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hy_AM.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_hy_AM_REVISED.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_id.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_id_ID.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_is.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_is_IS.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_it.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_it_CH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_it_IT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_iu.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ja.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ja_JP.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ka.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kk.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kk_KZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kl_GL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_km.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_km_KH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kn_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ko.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ko_KR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kok.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kok_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kw.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_kw_GB.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ky.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lo.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lo_LA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lt.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lt_LT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lv.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_lv_LV.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mk.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ml.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ml_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mr_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ms.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ms_BN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ms_MY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mt.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_mt_MT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nb.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nb_NO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nl_BE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nl_NL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_nn_NO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_om.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_om_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_om_KE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_or.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_or_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pa.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pa_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pl_PL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ps.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ps_AF.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pt.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pt_BR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_pt_PT.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ro.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ro_RO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ru.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ru_RU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ru_UA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sa.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sa_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sid.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sid_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sk.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sk_SK.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sl_SI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so_DJ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so_KE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_so_SO.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sq.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sq_AL.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr_BA_Cyrl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr_BA_Latn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr_Cyrl.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sr_Latn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sv.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sv_FI.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sv_SE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sw.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sw_KE.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_sw_TZ.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_syr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_syr_SY.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ta.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ta_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_te.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_te_IN.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_th.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_th_TH.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ti.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ti_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ti_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tig.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tig_ER.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tr.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tr_TR.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tt.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_tt_RU.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uk.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uk_UA.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_ur.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uz.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uz_AF_Arab.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uz_Arab.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_uz_Latn.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_vi.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_wal.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_wal_ET.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_CN_Hans.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_HK_Hant.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_Hant.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_MO_Hant.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_SG_Hans.properties \
+ classpath/resource/gnu/java/locale/LocaleInformation_zh_TW_Hant.properties \
classpath/resource/gnu/java/util/regex/MessagesBundle.properties \
classpath/resource/gnu/java/util/regex/MessagesBundle_fr.properties \
classpath/resource/gnu/java/util/regex/MessagesBundle_it.properties \
diff --git a/libjava/testsuite/lib/libjava.exp b/libjava/testsuite/lib/libjava.exp
index 2cec1566965..523c69cacd0 100644
--- a/libjava/testsuite/lib/libjava.exp
+++ b/libjava/testsuite/lib/libjava.exp
@@ -380,7 +380,7 @@ proc libjava_arguments {{mode compile}} {
global wrapper_file wrap_compile_flags
lappend args "additional_flags=$wrap_compile_flags"
- if { [string match "linux" $target_triplet] } {
+ if { [regexp "linux" $target_triplet] } {
lappend args "additional_flags=-specs=libgcj-test.spec"
}
diff --git a/libmudflap/ChangeLog b/libmudflap/ChangeLog
index 4882eaf7ac1..21102617597 100644
--- a/libmudflap/ChangeLog
+++ b/libmudflap/ChangeLog
@@ -1,3 +1,7 @@
+2008-03-02 Jakub Jelinek <jakub@redhat.com>
+
+ * mf-runtime.c (__mf_usage): Update copyright notice dates.
+
2008-02-21 Uros Bizjak <ubizjak@gmail.com>
* testsuite/libmudflap.c/fail8-frag.c: Adjust scan pattern for
diff --git a/libmudflap/mf-runtime.c b/libmudflap/mf-runtime.c
index 93765ab4220..79fdb323dbe 100644
--- a/libmudflap/mf-runtime.c
+++ b/libmudflap/mf-runtime.c
@@ -1,5 +1,6 @@
/* Mudflap: narrow-pointer bounds-checking by tree rewriting.
- Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2008
+ Free Software Foundation, Inc.
Contributed by Frank Ch. Eigler <fche@redhat.com>
and Graydon Hoare <graydon@redhat.com>
Splay Tree code originally by Mark Mitchell <mark@markmitchell.com>,
@@ -444,7 +445,7 @@ __mf_usage ()
fprintf (stderr,
"This is a %s%sGCC \"mudflap\" memory-checked binary.\n"
- "Mudflap is Copyright (C) 2002-2004 Free Software Foundation, Inc.\n"
+ "Mudflap is Copyright (C) 2002-2008 Free Software Foundation, Inc.\n"
"\n"
"The mudflap code can be controlled by an environment variable:\n"
"\n"
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 00f61e4f5fe..8753df301cf 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,25 @@
+2008-03-07 Jakub Jelinek <jakub@redhat.com>
+
+ * config/abi/pre/gnu.ver: Move <system_error> related
+ symbols to GLIBCXX_3.4.11 symbol version.
+ * testsuite/util/testsuite_abi.cc (check_version): Allow
+ GLIBCXX_3.4.11.
+
+2008-03-06 Chris Jefferson <chris@bubblescope.net>
+ Paolo Carlini <pcarlini@suse.de>
+
+ PR libstdc++/35480
+ * include/tr1/tuple (operator==, operator<): Fix.
+ * include/std/tuple (operator==, operator<): Likewise.
+ * testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc: New.
+ * testsuite/20_util/tuple/comparison_operators/35480.cc: Likewise.
+
+2008-03-04 Joseph Myers <joseph@codesourcery.com>
+
+ * crossconfig.m4 (*-mingw32*): Define HAVE_STRTOF and
+ HAVE_STRTOLD.
+ * configure: Regenerate.
+
2008-03-02 Hans-Peter Nilsson <hp@axis.com>
* testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc,
diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver
index 3bcbde317c8..0b093a6ce9c 100644
--- a/libstdc++-v3/config/abi/pre/gnu.ver
+++ b/libstdc++-v3/config/abi/pre/gnu.ver
@@ -753,19 +753,6 @@ GLIBCXX_3.4.10 {
_ZNK11__gnu_debug16_Error_formatter17_M_get_max_lengthEv;
- # system_error
- _ZSt15system_category;
-
- _ZTISt14error_category;
- _ZTSSt14error_category;
- _ZTVSt14error_category;
-
- _ZTSSt12system_error;
- _ZTISt12system_error;
- _ZTVSt12system_error;
- _ZNSt12system_errorD*Ev;
- _ZNSt12system_errorC*;
-
_ZNKSt3tr14hashIRKSbIwSt11char_traitsIwESaIwEEEclES6_;
_ZNKSt3tr14hashIRKSsEclES2_;
_ZNKSt3tr14hashISbIwSt11char_traitsIwESaIwEEEclES4_;
@@ -776,7 +763,6 @@ GLIBCXX_3.4.10 {
_ZNKSt4hashIRKSsEclES1_;
_ZNKSt4hashISbIwSt11char_traitsIwESaIwEEEclES3_;
_ZNKSt4hashISsEclESs;
- _ZNKSt4hashISt10error_codeEclES0_;
_ZNKSt4hashIeEclEe;
_ZSt17__verify_grouping*;
@@ -802,6 +788,24 @@ GLIBCXX_3.4.10 {
} GLIBCXX_3.4.9;
+GLIBCXX_3.4.11 {
+ # system_error
+ _ZSt15system_category;
+
+ _ZTISt14error_category;
+ _ZTSSt14error_category;
+ _ZTVSt14error_category;
+
+ _ZTSSt12system_error;
+ _ZTISt12system_error;
+ _ZTVSt12system_error;
+ _ZNSt12system_errorD*Ev;
+ _ZNSt12system_errorC*;
+
+ _ZNKSt4hashISt10error_codeEclES0_;
+
+} GLIBCXX_3.4.10;
+
# Symbols in the support library (libsupc++) have their own tag.
CXXABI_1.3 {
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index e23e3df06f1..62733348942 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -17848,7 +17848,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
# Fake what AC_TRY_COMPILE does. XXX Look at redoing this new-style.
cat > conftest.$ac_ext << EOF
-#line 17851 "configure"
+#line 17979 "configure"
int main()
{
// NB: _Atomic_word not necessarily int.
@@ -109891,6 +109891,14 @@ fi
done
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_STRTOF 1
+_ACEOF
+
+ cat >>confdefs.h <<\_ACEOF
+#define HAVE_STRTOLD 1
+_ACEOF
+
# If we're not using GNU ld, then there's no point in even trying these
# tests. Check for that first. We should have already tested for gld
diff --git a/libstdc++-v3/crossconfig.m4 b/libstdc++-v3/crossconfig.m4
index 6d0c226f794..2eb67568a6a 100644
--- a/libstdc++-v3/crossconfig.m4
+++ b/libstdc++-v3/crossconfig.m4
@@ -234,6 +234,8 @@ case "${host}" in
;;
*-mingw32*)
AC_CHECK_HEADERS([sys/types.h locale.h float.h])
+ AC_DEFINE(HAVE_STRTOF)
+ AC_DEFINE(HAVE_STRTOLD)
GLIBCXX_CHECK_LINKER_FEATURES
GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT
;;
diff --git a/libstdc++-v3/include/std/tuple b/libstdc++-v3/include/std/tuple
index b870234c129..78f69deee13 100644
--- a/libstdc++-v3/include/std/tuple
+++ b/libstdc++-v3/include/std/tuple
@@ -468,7 +468,7 @@ namespace std
{
typedef tuple<_TElements...> _Tp;
typedef tuple<_UElements...> _Up;
- return (__tuple_compare<tuple_size<_Tp>::value - tuple_size<_Tp>::value,
+ return (__tuple_compare<tuple_size<_Tp>::value - tuple_size<_Up>::value,
0, tuple_size<_Tp>::value, _Tp, _Up>::__eq(__t, __u));
}
@@ -479,7 +479,7 @@ namespace std
{
typedef tuple<_TElements...> _Tp;
typedef tuple<_UElements...> _Up;
- return (__tuple_compare<tuple_size<_Tp>::value - tuple_size<_Tp>::value,
+ return (__tuple_compare<tuple_size<_Tp>::value - tuple_size<_Up>::value,
0, tuple_size<_Tp>::value, _Tp, _Up>::__less(__t, __u));
}
diff --git a/libstdc++-v3/include/tr1/tuple b/libstdc++-v3/include/tr1/tuple
index ae6a36cd066..e4185e26555 100644
--- a/libstdc++-v3/include/tr1/tuple
+++ b/libstdc++-v3/include/tr1/tuple
@@ -329,7 +329,7 @@ namespace tr1
{
typedef tuple<_TElements...> _Tp;
typedef tuple<_UElements...> _Up;
- return (__tuple_compare<tuple_size<_Tp>::value - tuple_size<_Tp>::value,
+ return (__tuple_compare<tuple_size<_Tp>::value - tuple_size<_Up>::value,
0, tuple_size<_Tp>::value, _Tp, _Up>::__eq(__t, __u));
}
@@ -340,7 +340,7 @@ namespace tr1
{
typedef tuple<_TElements...> _Tp;
typedef tuple<_UElements...> _Up;
- return (__tuple_compare<tuple_size<_Tp>::value - tuple_size<_Tp>::value,
+ return (__tuple_compare<tuple_size<_Tp>::value - tuple_size<_Up>::value,
0, tuple_size<_Tp>::value, _Tp, _Up>::__less(__t, __u));
}
diff --git a/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/35480.cc b/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/35480.cc
new file mode 100644
index 00000000000..969fc650095
--- /dev/null
+++ b/libstdc++-v3/testsuite/20_util/tuple/comparison_operators/35480.cc
@@ -0,0 +1,34 @@
+// { dg-options "-std=gnu++0x" }
+// { dg-do compile }
+
+// Copyright (C) 2008 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+// USA.
+
+// Tuple
+
+#include <tuple>
+
+// libstdc++/35480
+void test01()
+{
+ std::tuple<int> t1( 1 );
+ std::tuple<int, int> t2( 1, 2 );
+ if ( t1 < t2 ) {} // { dg-error "here" }
+ if ( t1 == t2 ) {} // { dg-error "here" }
+}
+// { dg-excess-errors "incomplete type" }
diff --git a/libstdc++-v3/testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc b/libstdc++-v3/testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc
new file mode 100644
index 00000000000..effa3da6326
--- /dev/null
+++ b/libstdc++-v3/testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc
@@ -0,0 +1,33 @@
+// { dg-do compile }
+
+// Copyright (C) 2008 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+// USA.
+
+// Tuple
+
+#include <tr1/tuple>
+
+// libstdc++/35480
+void test01()
+{
+ std::tr1::tuple<int> t1( 1 );
+ std::tr1::tuple<int, int> t2( 1, 2 );
+ if ( t1 < t2 ) {} // { dg-error "here" }
+ if ( t1 == t2 ) {} // { dg-error "here" }
+}
+// { dg-excess-errors "incomplete type" }
diff --git a/libstdc++-v3/testsuite/util/testsuite_abi.cc b/libstdc++-v3/testsuite/util/testsuite_abi.cc
index 67c1e5294e9..93205b8cc67 100644
--- a/libstdc++-v3/testsuite/util/testsuite_abi.cc
+++ b/libstdc++-v3/testsuite/util/testsuite_abi.cc
@@ -192,6 +192,7 @@ check_version(symbol& test, bool added)
known_versions.push_back("GLIBCXX_3.4.8");
known_versions.push_back("GLIBCXX_3.4.9");
known_versions.push_back("GLIBCXX_3.4.10");
+ known_versions.push_back("GLIBCXX_3.4.11");
known_versions.push_back("GLIBCXX_LDBL_3.4");
known_versions.push_back("GLIBCXX_LDBL_3.4.7");
known_versions.push_back("GLIBCXX_LDBL_3.4.10");