Michael Koch [Tue, 30 Dec 2003 19:56:49 +0000 (19:56 +0000)]
[multiple changes]
2003-12-30 Guilhem Lavaux <guilhem@kaffe.org>
* java/util/GregorianCalendar.java
(computeFields): Reported by Ito Kazumitsu <kaz@maczuka.gcd.org>.
Fixed the computation of DAY_OF_WEEK_IN_MONTH.
(computeTime): 12:00 midnight is AM and 12:00 noon is PM.
2003-12-30 Michael Koch <konqueror@gmx.de>
* testsuite/libjava.mauve/xfails: Removed the following testcase
because it passes now:
FAIL: gnu.testlet.java.text.SimpleDateFormat.Test: parse() strict
(number 1)
Roger Sayle [Tue, 30 Dec 2003 17:21:54 +0000 (17:21 +0000)]
fold-const.c (fold): Don't require strict type equality...
* fold-const.c (fold) <COND_EXPR>: Don't require strict type
equality, instead just prevent replacing a COND_EXPR of non-void
type by one of its operands of void type.
Michael Koch [Tue, 30 Dec 2003 13:43:24 +0000 (13:43 +0000)]
2003-12-30 Michael Koch <konqueror@gmx.de>
* gnu/java/net/protocol/http/Connection.java
(outputStream): New field.
(bufferedOutputStream): New field.
(connect): Initialize outputStream and bufferedOutputStream.
(sendRequest): Create PrintWriter object from outputStream,
support HTTP 1.1, send missing HTTP headers and buffered output data
for POST method.
(getOutputStream): Set request method to POST if output stream is
used, return bufferedOutputStream.
(setRequestMethod): Allow HEAD and POST methods.
This fixes libgcj PR/6302 and libgcj PR/7752.
Michael Koch [Tue, 30 Dec 2003 12:02:47 +0000 (12:02 +0000)]
2003-12-30 Michael Koch <konqueror@gmx.de>
* gnu/java/net/protocol/http/Connection.java
(requestProperties): New field.
(addRequestProperty): New method.
(getRequestProperty): New method.
(setRequestProperty): New method.
(getRequestProperties): New method.
Nathan Sidwell [Tue, 30 Dec 2003 10:07:13 +0000 (10:07 +0000)]
re PR c++/13494 (ICE on bidimensional array subscription in template function.)
cp:
PR c++/13494
* tree.c (build_cplus_array_type_1): Only build a minimal array
type for dependent types or domains.
testsuite:
PR c++/13494
* g++.dg/template/array2-1.C: New test.
* g++.dg/template/array2-2.C: New test.
Andrew Pinski [Tue, 30 Dec 2003 01:53:50 +0000 (17:53 -0800)]
re PR target/13456 (ICE in extract_insn: , at recog.c:2061)
2003-12-30 Jan Hubicka <jh@suse.cz>
PR target/13456
* i386.md (allocate_stack_worker): Use different pattern for pre and
post reload expansion.
(allocate_stack_worker_1, allocate_stack_worker_rex64): Use
match_scratch.
(allocate_stack_worder_1_postreload,
allocate_stack_worker_rex64_postreload): New.
Jan Hubicka [Tue, 30 Dec 2003 01:21:50 +0000 (02:21 +0100)]
i386.md (allocate_stack_worker): Use different pattern for pre and post reload expansion.
* i386.md (allocate_stack_worker): Use different pattern for pre and
post reload expansion.
(allocate_stack_worker_1, allocate_stack_worker_rex64): Use
match_scratch.
(allocate_stack_worder_1_postreload,
allocate_stack_worker_rex64_postreload): New.
Roger Sayle [Mon, 29 Dec 2003 16:16:39 +0000 (16:16 +0000)]
re PR fortran/12632 ([g77 only] -fbounds-check ICE)
PR fortran/12632
* fold-const.c (fold) <COND_EXPR>: Don't fold a constant condition,
if the type of the selected branch doesn't match its' parent.
* com.c (ffecom_subscript_check_): Take as an extra argument the
(possibly NULL) decl of the array. Don't create unnecessary tree
nodes if the array index is known to be safe at compile-time.
If the array index is unsafe, force the array decl into memory to
avoid RTL expansion problems.
(ffecom_array_ref_): Update calls to ffecom_subscript_check_.
(ffecom_char_args_x_): Likewise.
* coverage.c (read_counts_file): Better error messages; cause corrupted
profiles to produce hard errors, not just warnings
(get_coverage_counts): Similarly.
Michael Koch [Sun, 28 Dec 2003 21:30:45 +0000 (21:30 +0000)]
2003-12-28 Michael Koch <konqueror@gmx.de>
* gnu/java/net/protocol/http/Connection.java
(inputStream): Made it a DataInputStream.
(requestProperties): Removed.
(hdrHash): Removed.
(hdrVec): Removed.
(headers): New field to store headers.
(connect): Initialize inputStream.
(receiveReply): Merged from classpath. The new algorithm is line based
instead of character based.
(getHeaderField): Use headers.
(getHeaderFields): Use headers.
(getKey): Removed.
(getField): Removed.
* gnu/java/net/HeaderFieldHelper.java: New file.
* Makefile.am (ordinary_java_source_files):
Added gnu/java/net/HeaderFieldHelper.java.
* Makefile.in: Regenerated.
* sbitmap.c (sbitmap_union_of_diff_cg, sbitmap_a_and_b_cg,
sbitmap_a_xor_b_cg): Accumulate "changed" properly.
(sbitmap_not): Zero all bits past n_bit.
Guilhem Lavaux [Sun, 28 Dec 2003 11:54:17 +0000 (11:54 +0000)]
2003-12-28 Guilhem Lavaux <guilhem@kaffe.org>
* java/io/LineNumberReader.java
(mark): Improved error checking.
(read): Likewise.
(skip): Likewise. Skip is now really eating the specified number of
characters.
* java/io/CharArrayReader.java (read): It should throw
IndexOutOfBoundsException and not ArrayIndexOutOfBoundsException (see
mauve).
* java/io/BufferedReader.java (readLine): Make readLine() really block
until either EOF is reached or a true error happens.
Michael Koch [Sat, 27 Dec 2003 17:24:51 +0000 (17:24 +0000)]
2003-12-27 Michael Koch <konqueror@gmx.de>
* gnu/java/net/protocol/http/Connection.java
(connect): Call receiveReply().
(receiveReply): Renamed from getHttpHeaders().
(getOutputStream): Moved check on doOutput before check for connection
state.
Guilhem Lavaux [Fri, 26 Dec 2003 23:23:55 +0000 (23:23 +0000)]
Naming.java (lookup): Check if the first character of the filename returned by URL.getFile() is a '/'...
2003-12-27 Guilhem Lavaux <guilhem@kaffe.org>
* java/rmi/Naming.java (lookup): Check if the first character of the
filename returned by URL.getFile() is a '/', only if it is the case
we cut this first character and call the registry with the good name.
(bind): Likewise.
(rebind): Likewise.
Guilhem Lavaux [Fri, 26 Dec 2003 22:10:19 +0000 (22:10 +0000)]
BufferedReader.java (BufferedReader): Throw IllegalArgumentException when size <= 0.
2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
Mark Wielaard <mark@klomp.org>
* java/io/BufferedReader.java (BufferedReader):
Throw IllegalArgumentException when size <= 0.
(mark): Document and better exception message for negative
readLimit IllegalArgumentException.
(read(char[],int,int)): Throw IndexOutOfBoundsException
if offset and count are not valid regarding buf.
(skip): Throw IllegalArgumentException when count is negative.
Co-Authored-By: Mark Wielaard <mark@klomp.org>
From-SVN: r75041
rs6000.c (legitimate_offset_address_p): Do not restrict DFmode and TFmode to word alignment.
2003-12-26 Fariborz Jahanian <fjahanian@apple.com>
Geoffrey Keating <geoffk@apple.com>
David Edelsohn <edelsohn@gnu.org>
* config/rs6000/rs6000.c (legitimate_offset_address_p): Do not
restrict DFmode and TFmode to word alignment.
* config/rs6000/rs6000.md (movdf_hardfloat64): Use 'o' constraint
for ld/std and order before mr.
Co-Authored-By: David Edelsohn <edelsohn@gnu.org> Co-Authored-By: Geoffrey Keating <geoffk@apple.com>
From-SVN: r75040
Guilhem Lavaux [Fri, 26 Dec 2003 21:11:03 +0000 (21:11 +0000)]
2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
* java/io/FileInputStream.java
(FileInputStream(String)): Call FileInputStream(File).
(FileInputStream(File)): Check whether the argument is a directory.
Guilhem Lavaux [Fri, 26 Dec 2003 16:13:01 +0000 (16:13 +0000)]
2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
Mark Wielaard <mark@klomp.org>
* gnu/java/rmi/server/UnicastConnectionManager.java
(startScavenger): Set the client connection manager to daemon
state because it may block clients until TIMEOUT is reached
when they are exiting.
* gnu/java/rmi/RMIVoidValue.java: New file for a class representing
a void return.
* gnu/java/rmi/server/UnicastRemoteCall.java
(DummyOutputStream): Add a boolean before each written field to
know whether it is a primitive.
(releaseOutputStream): Flush parameters at write time.
* gnu/java/rmi/server/UnicastServerRef.java
(incomingMessageCall): Return a RMIVoidValue if no value is to be
returned.
* gnu/java/rmi/server/UnicastServer.java
(incomingMessageCall): Do not write a returned object if it is
a RMIVoidValue.
Co-Authored-By: Mark Wielaard <mark@klomp.org>
From-SVN: r75033
Andrew Pinski [Thu, 25 Dec 2003 16:28:50 +0000 (16:28 +0000)]
PR c++/13268, c++/13339
PR c++/13268, c++/13339
* class.c (add_method): Return early when method is error_mark_node.
* pt.c (tsubst_friend_function): Return early when new_friend is
error_mark_node.
Mark Mitchell [Wed, 24 Dec 2003 06:52:27 +0000 (06:52 +0000)]
calls.c (expand_call): Recognize calls to "sqrt" and create corresponding notes.
* calls.c (expand_call): Recognize calls to "sqrt" and create
corresponding notes.
* g++.dg/bprob/bprob.exp: Load target-supports.exp
* g77.dg/bprob/bprob.exp: Likewise.
* gcc.misc-tests/bprob.exp: Likewise.
* gcc.dg/builtins-18.c: Use builtins-config.h. Do not test float
variants on systems where the library does not provide that
functionality.
* gcc.dg/builtins-20.c: Use builtins-config.h.
* gcc.dg/builtins-config.h: New file.
Guilhem Lavaux [Tue, 23 Dec 2003 22:06:01 +0000 (22:06 +0000)]
2003-12-23 Guilhem Lavaux <guilhem@kaffe.org>
* java/io/ObjectInputStream.java
(getField): Handle transient and non persistent fields.
(readClassDescriptor): Better error handling, use the right
class loader.
(readFields): Fields marked as not present in the stream
or not to be set are not read and set.
* java/io/ObjectInputStream.java
(readFields): Changed implementation of GetField.
(readClassDescriptor): Documented.
* java/io/ObjectOutputStream.java
(writeClassDescriptor): Added condition when to write class super
class information.
* gcc.c-torture/compile/20020604-1.c: XFAIL on H8 if -mn is
given.
* gcc.c-torture/compile/961203-1.c: Likewise.
* gcc.c-torture/compile/980506-1.c: Likewise.
Zack Weinberg [Tue, 23 Dec 2003 20:25:49 +0000 (20:25 +0000)]
ia64.c (ia64_va_arg): Pass pointer for variable-sized type through convert_memory_address.
gcc:
* config/ia64/ia64.c (ia64_va_arg): Pass pointer for
variable-sized type through convert_memory_address.
(ia64_in_small_data_p): Always return false for FUNCTION_DECLs.
gcc/testsuite:
* lib/gcc-dg.exp (dg-prune-output): New annotation.
(additional_prunes): New global.
(gcc-dg-prune): Handle additional per-test pruning.
(dg-test): Clear additional_prunes between tests.
* gcc.c-torture/compile/920625-1.c: Remove xfail. Use
dg-prune-output to avoid spurious failures from assembler
complaining about nonexistent WAW violations.
* gcc.c-torture/compile/981223-1.c: Remove dg-options line.
Use dg-prune-output to avoid spurious failures from assembler
warning about Itanium B-step errata.
Fernando Nasser [Tue, 23 Dec 2003 19:24:00 +0000 (19:24 +0000)]
GtkChoicePeer.java (postItemEvent): Rename to...
2003-12-22 Fernando Nasser <fnasser@redhat.com>
* gnu/java/awt/peer/gtk/GtkChoicePeer.java (postItemEvent): Rename to... (choicePostItemEvent): Change signature to more specific String object.
* java/awt/Choice.java (add): Generate ItemEvent for the first item
added.
(insert): Generate ItemEvent if insertion caused
selection to change.
(remove): Generate ItemEvent if removal cause selection to change.
(removeAll): Change algorithm to prevent generation of ItemEvents.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c
(connect_choice_item_selectable_hook): Change argument type.
Fix argument value.
Make sure resources are feed by registering callback.
(Java_gnu_java_awt_peer_gtk_GtkChoicePeer_append): Adjust call to the
above function.
(Java_gnu_java_awt_peer_gtk_GtkChoicePeer_add): Ditto.
(item_activate): Ditto.
(Java_gnu_java_awt_peer_gtk_GtkChoicePeer_remove): Destroy removed
menuitem.
(item_removed): New function. Free resources.
* jni/gtk-peer/gtkpeer.h (item_event_hook_info): Change member type and
name.
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
(Java_gnu_java_awt_peer_gtk_GtkMainThread_gtkInit): Obtain MethodID for
choicePostItemEvent.
Geoffrey Keating [Tue, 23 Dec 2003 08:12:41 +0000 (08:12 +0000)]
rs6000.md: Change many instances of '!
* config/rs6000/rs6000.md: Change many instances of '!
TARGET_POWERPC64' to 'TARGET_32BIT' when the pattern being guarded
was guarded only because it changed CR0 or the carry bit in XER.
* include/ext/new_allocator.h (new_allocator): Proper allocator class.
(__new_alloc): Delete.
* include/ext/malloc_allocator.h (malloc_allocator): Same.
(__malloc_alloc): Delete.
* include/ext/mt_allocator.h: Same, but weakly.
* include/ext/debug_allocator.h: Convert to the new style.
* include/ext/pool_allocator.h: Use global new and delete directly.
* include/backward/alloc.h: Don't inject malloc_allocator, or
debug_allocator.
* testsuite/ext/allocators.cc: Minimal fixups for usage of new
classes. Comment out tests with __pool_alloc for now.
* testsuite/performance/allocator.cc: Same.