12001-12-29 Andreas Tobler <a.tobler@schweiz.ch> 2 3 * libjava/java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN for 4 Darwin. 5 62001-12-21 Tom Tromey <tromey@redhat.com> 7 8 * java/io/ObjectInputStream.java (enableResolveObject): Use 9 correct security check. 10 * java/io/ObjectOutputStream.java (enableReplaceObject): Use 11 correct security check. 12 13 Fix for PR java/5165: 14 * java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): 15 Convert any constant string field to a String; not just final 16 fields. 17 18 Fix for PR libgcj/2428: 19 * java/lang/natClass.cc: Include RuntimePermission.h. 20 (getClassLoader): Define. 21 * java/lang/Class.h (Class.getClassLoader): Only declare. 22 232001-12-19 Tom Tromey <tromey@redhat.com> 24 25 * java/awt/FlowLayout.java (FlowLayout(), FlowLayout(int)): Set 26 gaps to 5. 27 (FlowLayout(int,int,int)): Use methods to set fields. 28 (getSize): Skip invisible components. 29 (layoutContainer): Skip invisible components. 30 312001-12-19 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 32 33 * include/jvm.h (_Jv_BuildGCDescr): Declare unconditionally. 34 * nogc.cc (_Jv_BuildGCDescr): Define unconditionally. 35 * boehm.cc (_Jv_BuildGCDescr): Likewise. 36 372001-12-18 Tom Tromey <tromey@redhat.com> 38 39 * java/text/CollationElementIterator.java (secondaryOrder): Cast 40 result to `short'. 41 (tertiaryOrder): Likewise. 42 432001-12-16 Tom Tromey <tromey@redhat.com> 44 45 For PR libgcj/5103: 46 * include/jvm.h (__GCJ_JNI_IMPL__): Define. 47 * include/config.h.in: Rebuilt. 48 * configure: Rebuilt. 49 * configure.in: Define JV_HAVE_INTTYPES_H if inttypes.h found. 50 Added comment for HAVE_DLOPEN to avoid autoheader error. 51 * gcj/libgcj-config.h.in (JV_HAVE_INTTYPES_H): Added. 52 * include/jni.h: Include <gcj/libgcj-config.h>. Don't include 53 CNI-specific headers if we are compiling ordinary JNI code with a 54 C++ compiler. Include <inttypes.h> and JNIWeakRef.h when 55 appropriate. 56 * jni.cc: Don't include JNIWeakRef.h. 57 (__GCJ_JNI_IMPL__): Don't define. 58 59 For PR java/5088: 60 * java/lang/natClassLoader.cc (_Jv_InitNewClassFields): New 61 function. 62 (_Jv_NewClass): Use it. 63 (defineClass0): Use it. 64 * prims.cc (_Jv_InitPrimClass): Adjust vtable here. 65 (_Jv_InitPrimClass): Use _Jv_InitNewClassFields. 66 (_Jv_NewArray): Don't abort; just throw exception. 67 Include InternalError.h. 68 * java/lang/Class.h (Class::Class): Declare, don't define. 69 (Class): Declare _Jv_InitNewClassFields as a friend. 70 (union _Jv_Self): Removed. 71 72 * Makefile.in: Rebuilt. 73 * Makefile.am (ordinary_java_source_files): Removed old file; 74 added new file. 75 * gnu/java/math/MPN.java: New file. 76 * gnu/gcj/math/MPN.java: Removed. 77 * java/math/BigInteger.java: Merged with Classpath. 78 792001-12-16 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 80 81 * java/io/DataOutputStream (write (byte[], int, int)): Update 82 "written" correctly. Fix from the ORP team. 83 842001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 85 86 * include/jvm.h (_Jv_VTable::idx_to_offset): New method. 87 * java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Call 88 _Jv_MakeVTable and _Jv_LinkOffsetTable if needed. 89 * java/lang/Class.h (_Jv_Method): Add "index" field. 90 (_Jv_MethodSymbol): New struct type. 91 (_Jv_LinkOffsetTable, _Jv_LayoutVTableMethods, _Jv_SetVTableEntries, 92 _Jv_MakeVTable): Friends. 93 (otable, otable_syms): New Class fields. 94 * java/lang/natClass.cc (_Jv_LinkOffsetTable): New function. 95 (isVirtualMethod): New static function. 96 (_Jv_LayoutVTableMethods): New function. 97 (_Jv_SetVTableEntries): New function. 98 (_Jv_MakeVTable): New function. 99 1002001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 101 102 * java/util/BitSet.java (and): Fix off-by-one bug, don't skip part of 103 the bitset. 104 (andNot): Likewise. 105 (xor): Likewise. 106 1072001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 108 109 * java/util/LinkedList.java (LinkedListItr.add): Don't skip the next 110 entry. 111 1122001-12-15 Eric Blake <ebb9@email.byu.edu> 113 114 * java/util/TreeMap.java (removeNode): Fix bug in node removal. 115 1162001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 117 118 * java/util/AbstractCollection.java (containsAll): Use size of the 119 correct collection for loop bound. 120 * java/util/AbstractList.java (iterator.next): Increment pos after 121 calling get on backing list. 122 (listIterator.next): Likewise. 123 * java/util/LinkedList.java (addLastEntry): Don't increment size before 124 checking for size == 0. 125 (addFirstEntry): Rearrange to match addLastEntry. 126 (add): Do not increment size before inserting the new entry. 127 128 * java/util/AbstractCollection.java (addAll): Use size of the 129 correct collection for loop bound. 130 1312001-12-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 132 133 * java/util/AbstractSet.java (removeAll): Fix scoping thinko. 134 * java/util/HashMap.java (putAllInternal): Set size here. 135 * java/util/Hashtable.java (putAllInternal): New method. Copy contents 136 of a map efficiently without calling put() or putAll(). 137 (Hashtable (map)): Use putAllInternal. 138 (clone): Likewise. 139 1402001-12-15 Eric Blake <ebb9@email.byu.edu> 141 142 * java/util/Collections.java: 143 * java/util/Vector.java: 144 * java/util/WeakHashMap.java: Fix spelling errors. 145 1462001-12-15 Eric Blake <ebb9@email.byu.edu> 147 148 * java/util/AbstractCollection.java (removeAllInternal), 149 (retainAllInternal): Add hooks for use by ArrayList. 150 * java/util/AbstractList.java: Minor code updates. Fix some 151 scoping. 152 * java/util/AbstractMap.java: ditto 153 * java/util/ArrayList.java (readObject, writeObject): ditto 154 (removeAllInternal, retainAllInternal): Optimize. 155 * java/util/Arrays.java: ditto 156 * java/util/Collections.java: ditto. Change order of parameters 157 to equals(Object, Object) to match specs. 158 * java/util/Dictionary.java: Improve javadoc. 159 (Dictionary): Add explicit constructor. 160 * java/util/HashMap.java: Improve javadoc. Rearrange methods to 161 follow order in JDK. Cleanups related to recent code migration to 162 AbstractMap. Fix some scoping. 163 (entrySet): Cache the result. 164 (modCount): Ensure that this is updated correctly. 165 * java/util/HashSet.java: Improve javadoc. Fix some scoping. 166 (init): Add hooks for LinkedHashSet. 167 (map): Use "" instead of Boolean.TRUE in backing map. Use 168 package-private API where possible for less overhead. 169 (readObject, writeObject): Fix serialization. 170 * java/util/Hashtable.java: Improve javadoc. Fix some scoping. 171 (entrySet, keySet, values): Cache the result. 172 (modCount): Ensure that this is updated correctly. 173 (contains, remove): Fix NullPointer checking to match specs. 174 (class Enumeration): Make more like HashIterator. 175 * java/util/IdentityHashMap.java: Minor code updates. 176 (modCount): Ensure that this is updated correctly. 177 (readObject, writeObject): Fix serialization. 178 * java/util/LinkedHashMap.java: Minor code updates. Cleanups 179 related to recent code migration to AbstractMap. 180 * java/util/LinkedHashSet.java: New file. 181 * java/util/LinkedList.java: 182 (readObject, writeObject): Fix serialization. 183 * java/util/Makefile.am: List recently added files. 184 * java/util/Stack.java: Minor code updates. 185 * java/util/TreeMap.java: Improve javadoc. Overhaul the class to 186 be more efficient. Fix some scoping. Rearrange the methods. 187 (nil): Ensure that this can be thread-safe, and make it a static 188 final. Initialize it to be more useful as a sentinal node. 189 (Node): Specify color in constructor. 190 (deleteFixup, insertFixup): Improve comments and algorithm. 191 (fabricateTree): Redesign with less overhead. 192 (lowestGreaterThan): Add parameter first to make SubMap easier. 193 (removeNode): Patch hole where nil was being modified. Choose 194 predecessor instead of successor so in-place swap works. 195 (class VerifyResult, verifyTree, verifySub, verifyError): Remove 196 this dead code after verifying the class works. 197 (class SubMap): Rewrite several algorithms to avoid problems with 198 comparing nil. 199 * java/util/TreeSet.java: Improve javadoc. Fix some scoping. 200 (clone): Fix ClassCastException when cloning subSet(). 201 (readObject, writeObject): Fix serialization. 202 * java/util/WeakHashMap.java: Improve javadoc. Fix some scoping. 203 (NULL_KEY): Make it compare as null, for ease elsewhere. 204 (Class WeakEntry): Rename from Entry, to avoid shadowing 205 Map.Entry. Add missing toString. 206 (modCount): Ensure that this is updated correctly. 207 (clear, containsValue, keySet, putAll, values, WeakHashMap(Map)): 208 Add missing methods and constructor. 209 2102001-12-15 Eric Blake <ebb9@email.byu.edu> 211 212 * java/util/ArrayList.java (checkBoundExclusive), 213 (checkBoundInclusive): Rename from range??clusive, to match 214 AbstractList. 215 * java/util/LinkedList.java (checkBoundsExclusive), 216 (checkBoundsInclusive): ditto 217 * java/util/Vector.java (checkBoundExclusive), 218 (checkBoundInclusive): Move bounds checking into common methods. 219 2202001-12-15 Eric Blake <ebb9@email.byu.edu> 221 222 * java/util/AbstractList.java: 223 (modCount): Make sure it is updated in all needed places. 224 * java/util/ArrayList.java: Improve javadoc. Implements 225 RandomAccess. Add serialVersionUID. Reorder methods. 226 (modCount): Make sure it is updated in all needed places. 227 (rangeExclusive, rangeInclusive): Add common methods for bounds 228 check. 229 (isEmpty): Add missing method. 230 * java/util/Collections.java: (class SynchronizedList): Make 231 package visible. 232 * java/util/ConcurrentModificationException.java: Improve 233 javadoc. 234 * java/util/EmptyStackException.java: Improve javadoc. 235 * java/util/LinkedList.java: Improve javadoc. 236 (modCount): Make sure it is updated in all needed places. 237 (rangeExclusive, rangeInclusive): Add common methods for bounds 238 check. 239 * java/util/NoSuchElementException.java: Improve javadoc. 240 * java/util/Stack.java: Improve javadoc. Fix synchronization 241 issues. 242 (modCount): Make sure it is updated in all needed places. 243 * java/util/Vector.java: Improve javadoc. Fix synchronization 244 issues. Implements RandomAccess. Reorder methods. 245 (modCount): Make sure it is updated in all needed places. 246 (setSize): Fix according to specifications: this does not dictate 247 the backing array size. 248 (removeAll, retainAll): Faster implementations. 249 2502001-12-15 Eric Blake <ebb9@email.byu.edu> 251 252 * java/util/BitSet.java: Improve javadoc. 253 (cardinality(), clear(), clear(int, int), flip(int)), 254 (flip(int, int), get(int, int), intersects(BitSet), isEmpty()), 255 (nextClearBit(int), nextSetBit(int), set(int, boolean)), 256 (set(int, int), set(int, int, boolean)): Add new JDK 1.4 methods. 257 (clone): Fix so subclasses clone correctly. 258 2592001-12-15 Eric Blake <ebb9@email.byu.edu> 260 261 * java/util/AbstractCollection.java: Improve javadoc. 262 (AbstractCollection()): Make constructor protected. 263 (equals(Object, Object), hashCode(Object)): Add utility methods. 264 * java/util/AbstractList.java: Improve javadoc. 265 (AbstractList()): Make constructor protected. 266 (indexOf(Object)): Call listIterator(), not listIterator(int). 267 (iterator()): Follow Sun's requirement to not use listIterator(0). 268 (listIterator(int)): Make AbstractListItr anonymous. 269 (subList(int, int)): Add support for RandomAccess. 270 (SubList.add(int, Object), SubList.remove(Object)): Fix bug with 271 modCount tracking. 272 (SubList.addAll(Collection)): Add missing method. 273 (SubList.listIterator(int)): Fix bugs in indexing, modCount 274 tracking. 275 (class RandomAccessSubList): Add new class. 276 * java/util/AbstractMap.java: Improve javadoc. 277 (keys, values, KEYS, VALUES, ENTRIES): Consolidate common map 278 fields. 279 (AbstractMap()): Make constructor protected. 280 (equals(Object, Object), hashCode(Object)): Add utility methods. 281 (equals(Object)): Change algorithm to 282 entrySet().equals(m.entrySet()), as documented by Sun. 283 (keySet(), values()): Cache the collections. 284 * java/util/AbstractSequentialList.java: Improve javadoc. 285 (AbstractSequentialList()): Make constructor protected. 286 * java/util/AbstractSet.java: Improve javadoc. 287 (AbstractSet()): Make constructor protected. 288 (removeAll(Collection)): Add missing method. 289 * java/util/Arrays.java: Improve javadoc, rearrange method orders. 290 (defaultComparator): Remove, in favor of 291 Collections.compare(Object, Object, Comparator). 292 (binarySearch, equals, sort): Fix natural order comparison of 293 floats and doubles. Also improve Object comparison - when 294 comparator is null, use natural order. 295 (fill, sort): Add missing checks for IllegalArgumentException. 296 (sort, qsort): Fix sorting bugs, rework the code for more 297 legibility. 298 (mergeSort): Inline into sort(Object[], int, int, Comparator). 299 (class ArrayList): Rename from ListImpl, and make compatible with 300 JDK serialization. Add methods which more efficiently override 301 those of AbstractList. 302 * java/util/Collections: Improve javadoc. 303 (isSequential(List)): Add and use a method for deciding between 304 RandomAccess and sequential algorithms on lists. 305 (class Empty*, class Synchronized*, class Unmodifiable*): Make 306 compliant with JDK serializability. 307 (class Singleton*, class CopiesList, class RevereseComparator), 308 (class UnmodifiableMap.UnmodifiableEntrySet), 309 (class *RandomAccessList): New classes for serial compatibility. 310 (class Empty*, class Singleton*, class CopiesList): Add methods 311 which more efficiently override those of Abstract*. 312 (search): Inline into binarySearch(List, Object, Comparator). 313 (binarySearch): Make sequential search only do log(n) comparisons, 314 instead of n. 315 (copy(List, List)): Do bounds checking before starting. 316 (indexOfSubList, lastIndexOfSubList, list, replaceAll, rotate), 317 (swap): Add new JDK 1.4 methods. 318 (binarySearch, max, min, sort): Allow null comparator to represent 319 natural ordering. 320 (reverse(List)): Avoid unnecessary swap. 321 (shuffle(List, Random)): Do shuffle in-place for RandomAccess 322 lists. 323 (SingletonList.get): Fix logic bug. 324 (SingletonMap.entrySet): Make the entry immutable, and cache the 325 returned set. 326 (SynchronizedCollection, SynchronizedMap, UnmodifiableCollection), 327 (UnmodifiableMap): Detect null pointer in construction. 328 (SynchronizedMap, UnmodifiableMap): Cache collection views. 329 * java/util/BasicMapEntry: Improve javadoc. 330 3312001-12-14 Hans Boehm <Hans_Boehm@hp.com> 332 333 * libjava/prims.cc: Some old cleanups. The collector now 334 handles test for out of memory. 335 336 * libjava/prims.cc, libjava/gcj/javaprims.h: 337 (_Jv_AllocObjectNoInitNoFinalizer, _Jv_AllocObjectNoFinalizer): 338 New functions for finalizer-free allocation. 339 (jvmpi_notify_alloc): Became separate function. 340 341 * libjava/java/lang/Object.h, libjava/include/jvm.h: Adjust for 342 revised vtable layout on IA64. With TARGET_VTABLE_USES_DESCRIPTORS, 343 there is only one extra descriptor. 344 3452001-12-12 Tom Tromey <tromey@redhat.com> 346 347 * prims.cc (_Jv_RunMain): Use `using' to simplify code. Set 348 _Jv_Jar_Class_Path early. 349 350 * jni.cc (call): Synchronize if required. 351 352 * gij.cc (main): Clarify --help output. 353 354 * gnu/gcj/runtime/StringBuffer.java 355 (ensureCapacity_unsynchronized): Ensure we always get at least 356 `minimumCapacity' characters in new buffer. 357 3582001-12-11 Tom Tromey <tromey@redhat.com> 359 360 * java/lang/String.java (String): New constructor. 361 * gnu/gcj/runtime/natStringBuffer.cc: New file. 362 * gnu/gcj/runtime/StringBuffer.java: New file. 363 * Makefile.in: Rebuilt. 364 * Makefile.am (ordinary_java_source_files): Added 365 gnu/gcj/runtime/StringBuffer.java. 366 (nat_source_files): Added gnu/gcj/runtime/natStringBuffer.cc. 367 3682001-12-10 Tom Tromey <tromey@redhat.com> 369 370 For PR libgcj/1147: 371 * prims.cc (JvConvertArgv): Convert using current locale's 372 encoding. 373 3742001-12-10 Tom Tromey <tromey@redhat.com> 375 376 Fix for PR libgcj/5064. 377 * java/lang/natClassLoader.cc: Don't include stdio.h. 378 (_Jv_RegisterClassHookDefault): Don't use snprintf. 379 3802001-12-09 Per Bothner <per@bothner.com> 381 382 * gnu/gcj/xlib/XImage.java (toString): Add missing initialization. 383 3842001-12-09 Tom Tromey <tromey@redhat.com> 385 386 * resolve.cc (_Jv_PrepareClass): Verify method here... 387 * defineclass.cc (handleMethodsEnd): ... not here. 388 * verify.cc (_Jv_BytecodeVerifier::initialize_stack): New method. 389 (_Jv_BytecodeVerifier::verify_instructions_0) [op_return]: Ensure 390 there are no uninitialized objects. 391 (_Jv_BytecodeVerifier::state::this_type): New field. 392 (_Jv_BytecodeVerifier::state::state): Initialize this_type. 393 (_Jv_BytecodeVerifier::state::copy): Copy this_type. 394 (_Jv_BytecodeVerifier::state::merge): Merge this_type. 395 (_Jv_BytecodeVerifier::state::check_no_uninitialized_objects): 396 Handle this_type. 397 (_Jv_BytecodeVerifier::state::check_this_initialized): New 398 method. 399 (_Jv_BytecodeVerifier::state::set_initialized): Handle this_type. 400 (_Jv_BytecodeVerifier::state::set_this_type): New method. 401 (_Jv_BytecodeVerifier::verify_instructions_0) [op_putfield]: Allow 402 assignment to fields of `this' before another initializer is run. 403 404 * Makefile.in: Rebuilt. 405 * Makefile.am (gnu/gcj/runtime/VMClassLoader.h): Use `::java'. 406 4072001-12-08 Tom Tromey <tromey@redhat.com> 408 409 * Makefile.in: Rebuilt. 410 * Makefile.am (java/lang/reflect/Method.h): ObjectInputStream now 411 a friend. 412 * java/lang/natClass.cc (getSignature): Only look at elements of 413 non-null parameters. 414 (getPrivateMethod): Removed old FIXME comment. 415 * java/io/natObjectInputStream.cc (allocateObject): Removed old 416 FIXME comment. 417 (callConstructor): Simply use `NULL' for value of parameters. 418 (ObjectClass): Removed. 419 (ClassClass): Likewise. 420 * java/io/ObjectInputStream.java (readObject): Fixed typo. 421 422 * verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): 423 Handle case of array whose component type is not prepared. 424 4252001-12-07 Tom Tromey <tromey@redhat.com> 426 427 * java/lang/ClassLoader.java (defineClass): Rethrow any 428 LinkageError. 429 430 * java/lang/ThreadGroup.java (uncaughtException): Print message to 431 System.err. Required by spec. 432 433 * verify.cc (_Jv_BytecodeVerifier::branch_prepass): Set start_PC 434 earlier, for error handling. 435 (_Jv_BytecodeVerifier::note_branch_target): Fixed branch target 436 check. 437 4382001-12-06 Tom Tromey <tromey@redhat.com> 439 440 * verify.cc (_Jv_BytecodeVerifier::FLAG_JSR_TARGET): Removed. 441 (_Jv_BytecodeVerifier::note_branch_target): Likewise. 442 443 * verify.cc (_Jv_BytecodeVerifier::type_val): Added 444 unused_by_subroutine_type. 445 (_Jv_BytecodeVerifier::type::merge): Handle 446 unused_by_subroutine_type. 447 (_Jv_BytecodeVerifier::state::state): Added `ret_semantics' 448 argument. 449 (_Jv_BytecodeVerifier::state::copy): Likewise. 450 (_Jv_BytecodeVerifier::push_jump_merge): Pass `ret_semantics' to 451 state constructor. 452 (_Jv_BytecodeVerifier::state::is_unmerged_ret_state): New method. 453 (_Jv_BytecodeVerifier::pop_jump): Don't accept a jump which is 454 from an unmerged ret. 455 (_Jv_BytecodeVerifier::verify_instructions_0): Don't let an 456 unmerged ret state skip verification in the fall-through case. 457 (debug_print): New function. 458 (_Jv_BytecodeVerifier::type::print): New method. 459 (_Jv_BytecodeVerifier::state::print): New method. 460 (_Jv_BytecodeVerifier::push_jump_merge): Print state. 461 (_Jv_BytecodeVerifier::verify_instructions_0): Likewise. 462 (_Jv_BytecodeVerifier::get_variable): Don't call note_variable. 463 (_Jv_BytecodeVerifier::_Jv_BytecodeVerifier): Print debug 464 information. 465 4662001-12-05 Tom Tromey <tromey@redhat.com> 467 468 * defineclass.cc (character): Removed. 469 (prepare_character): Removed. 470 (is_identifier_start): Use Character, not character. 471 (is_identifier_part): Likewise. 472 4732001-12-04 Tom Tromey <tromey@redhat.com> 474 475 * verify.cc (_Jv_BytecodeVerifier::linked_utf8): New structure. 476 (_Jv_BytecodeVerifier::utf8_list): New field. 477 (_Jv_BytecodeVerifier::_Jv_BytecodeVerifier): Initialize it. 478 (_Jv_BytecodeVerifier::~_Jv_BytecodeVerifier): Free it. 479 (_Jv_BytecodeVerifier::make_utf8_const): New method. 480 (_Jv_BytecodeVerifier::get_one_type): Use it. 481 (_Jv_BytecodeVerifier::type::merge): When using local semantics, 482 if the destination type is already unsuitable then we didn't 483 change. 484 485 * defineclass.cc (read_one_method_attribute): `end_pc' for an 486 exception can be equal to code length. 487 * verify.cc (_Jv_BytecodeVerifier::verify_instructions_0): Removed 488 `start_PC' from error invocation where it didn't make sense, and 489 updated error message. Use `copy' to copy a state. Only try to 490 merge current state with saved state when we've fallen through 491 from the previous instruction. 492 (_Jv_BytecodeVerifier::pop_ref_or_return): New method. 493 (_Jv_BytecodeVerifier::verify_instructions_0) [op_astore_0]: Use 494 pop_ref_or_return. 495 (_Jv_BytecodeVerifier::verify_instructions_0) [op_astore]: 496 Likewise. 497 (_Jv_BytecodeVerifier::push_jump_merge): Pass max_locals, not 498 max_stack, to merge. 499 (_Jv_BytecodeVerifier::verify_instructions_0): Likewise. 500 (_Jv_BytecodeVerifier::push_jump_merge): Merge from new state into 501 state at branch target, not vice versa. 502 (_Jv_BytecodeVerifier::branch_prepass): Allow end of exception to 503 be equal to code length. Removed redundant test to see if 504 exception start is after exception end. 505 (_Jv_BytecodeVerifier::verify_instructions_0): Type of argument to 506 `finally' is Throwable. 507 5082001-12-04 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 509 510 * Makefile.in: Rebuilt with automake-gcj. 511 5122001-12-03 Tom Tromey <tromey@redhat.com> 513 514 * defineclass.cc (handleMethodsEnd): Invoke verifier here... 515 (handleCodeAttribute): ... not here. 516 * verify.cc (_Jv_BytecodeVerifier::state::state): Use `copy', not 517 structure assignment. 518 5192001-12-02 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 520 521 * Makefile.am (nat_files, x_nat_files): Make sure the dependencies 522 don't get deleted if compilation fails. 523 * Makefile.in: Rebuilt. 524 5252001-11-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 526 527 * Makefile.am (nat_headers, x_nat_headers): Depend on .class files, not 528 libgcj.jar. 529 (nat_files, x_nat_files): Build native files in subdirectories using 530 the same dependency options as the java files. 531 (gnu/gcj/runtime/FirstThread.h): Remove explicit rule and friend 532 declarations. 533 * configure.in: Put dependencies for .cc files in deps.mak. 534 * Makefile.in: Rebuilt. 535 * configure: Rebuilt. 536 5372001-11-25 Tom Tromey <tromey@redhat.com> 538 539 Fix for PR libgcj/2024, plus other class name cleanups: 540 * include/jvm.h (_Jv_VerifyFieldSignature, 541 _Jv_VerifyMethodSignature, _Jv_VerifyClassName, 542 _Jv_VerifyIdentifier, _Jv_ClassNameSamePackage): Moved from ... 543 * include/java-interp.h: ... here. 544 * defineclass.cc (UTF8_PEEK): No longer conditional on 545 interpreter. 546 (_Jv_VerifyOne): Likewise. 547 (_Jv_VerifyFieldSignature): Likewise. 548 (_Jv_VerifyMethodSignature): Likewise. 549 (is_identifier_start): Likewise. 550 (is_identifier_part): Likewise. 551 (_Jv_VerifyIdentifier): Likewise. 552 (_Jv_VerifyClassName): Likewise. 553 (_Jv_VerifyClassName): Likewise. 554 (_Jv_ClassNameSamePackage): Likewise. 555 (_Jv_VerifyClassName): Fail if class name is too long. 556 * java/lang/natClassLoader.cc (_Jv_NewArrayClass): Disallow array 557 of void. 558 * java/lang/natClass.cc (forName): Check syntax of class name. 559 Include IllegalArgumentException.h. 560 5612001-11-22 Tom Tromey <tromey@redhat.com> 562 563 * verify.cc (_Jv_BytecodeVerifier::branch_prepass): Use 564 java_opcode as type for switch. 565 [op_wide]: Likewise. 566 (_Jv_BytecodeVerifier::verify_instructions_0): Likewise. 567 [op_invokevirtual]: Likewise. 568 * include/java-insns.h (java_opcode): Give enum a name. 569 5702001-11-25 Tom Tromey <tromey@redhat.com> 571 572 Fix for PR libgcj/4583: 573 * java/math/BigDecimal.java (BigDecimal(double)): Rewrote. 574 (BigDecimal(String)): Likewise. 575 5762001-11-19 Tom Tromey <tromey@redhat.com> 577 578 * verify.cc (_Jv_BytecodeVerifier::branch_prepass) [op_iinc]: 579 Uses two operand bytes, not one. 580 [op_arraylength]: Has no operands in bytecode. 581 (_Jv_BytecodeVerifier::push_jump): Fixed call to 582 check_no_uninitialized_objects. 583 (_Jv_BytecodeVerifier::push_exception_jump): Likewise. 584 (_Jv_BytecodeVerifier::handle_ret_insn): Likewise. 585 (_Jv_BytecodeVerifier::handle_jsr_insn): Likewise. 586 587 * verify.cc (_Jv_BytecodeVerifier::require_array_type): Special 588 case for boolean arrays. 589 590 * verify.cc (_Jv_BytecodeVerifier::compute_jump): Put PC into 591 error message. 592 593 * verify.cc (_Jv_BytecodeVerifier::verify_instructions_0) 594 [op_lshl, op_lshr, op_lushr]: Shift argument is an int, not a 595 long. 596 5972001-11-18 Tom Tromey <tromey@redhat.com> 598 599 * verify.cc (type::to_array): New method. 600 (_Jv_BytecodeVerifier::verify_instructions_0) [op_anewarray]: 601 Construct new array type. 602 603 * verify.cc (_Jv_BytecodeVerifier::branch_prepass) [op_sipush]: 604 Skip a short, not a byte. 605 [op_newarray]: Skip a byte, not a short. 606 607 * verify.cc (_Jv_BytecodeVerifier::get_type_val_for_signature): 608 Added `B' case. 609 610 * verify.cc (_Jv_BytecodeVerifier::get_ushort): Use `jint' for 611 temporary values. 612 (_Jv_BytecodeVerifier::get_short): Likewise. 613 (_Jv_BytecodeVerifier::get_int): Likewise. 614 (_Jv_BytecodeVerifier::check_return_type): Reverse ordering of 615 `compatible' call. 616 617 * verify.cc (_Jv_BytecodeVerifier::pop_type): Put PC into error 618 message. 619 (_Jv_BytecodeVerifier::pop64): Likewise. 620 (_Jv_BytecodeVerifier::pop32): Likewise. 621 (_Jv_BytecodeVerifier::pop_raw): Likewise. 622 (_Jv_BytecodeVerifier::pop_type): Promote the match type. 623 (type::set_initialized): Only modify uninitialized types. 624 (type::set_uninitialized): Fix shadowing bug. Simplify code. 625 626 * verify.cc: Include StringBuffer.h. 627 (verify_fail): Added pc argument. Use StringBuffer to construct 628 exception message. 629 (_Jv_BytecodeVerifier::verify_instructions_0): Put PC into error 630 message. 631 (_Jv_BytecodeVerifier::check_return_type): Likewise. 632 (_Jv_BytecodeVerifier::handle_field_or_method): Likewise. 633 (_Jv_BytecodeVerifier::check_constant): Likewise. 634 (_Jv_BytecodeVerifier::check_class_constant): Likewise. 635 (_Jv_BytecodeVerifier::check_pool_index): Likewise. 636 (_Jv_BytecodeVerifier::get_variable): Likewise. 637 (_Jv_BytecodeVerifier::branch_prepass): Likewise. Also, correctly 638 check exception handler endpoint. 639 (_Jv_BytecodeVerifier::verify_instructions_0): Correctly handle 640 wide arguments to current method. 641 (_Jv_BytecodeVerifier::check_wide_constant): New method. 642 (_Jv_BytecodeVerifier::verify_instructions_0) [op_ldc2_w]: Use 643 it. 644 6452001-11-17 Anthony Green <green@redhat.com> 646 647 * jni.cc (unwrap): Fix test for wrapped objects. 648 6492001-11-16 Tom Tromey <tromey@redhat.com> 650 651 * verify.cc (_Jv_BytecodeVerifier::check_field_constant): Handle 652 case where field has primitive type. 653 654 * verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): New 655 method. 656 (type::compatible): Use it. 657 (type::merge): Likewise. 658 (type::promote): Return a `type&'. 659 (get_one_type): Promote return value. 660 661 Re-merge with Classpath, from Brian Jones: 662 * java/lang/Integer.java (getInteger): Attempt to decode the value 663 of the system property instead of the name of the system property. 664 (parseInt): Throw NumberFormatException explicitly in the case of 665 a null argument in keeping with JDK 1.3. 666 6672001-11-16 Mark Wielaard <mark@klomp.org> 668 669 * java/util/Timer.java (TaskQueue.isStopped): Remove method. 670 (Scheduler.run): Try to re-schedule task and ignore exception if 671 queue has been stopped. 672 6732001-11-15 Tom Tromey <tromey@redhat.com> 674 675 * verify.cc (type::compatible): Use _Jv_IsAssignableFrom. 676 (type::merge): Likewise. 677 6782001-11-14 Hans Boehm <Hans_Boehm@hp.com> 679 680 * java/lang/natString.cc: correct argument order for 681 _Jv_AllocPtrFreeObj 682 6832001-11-14 Tom Tromey <tromey@redhat.com> 684 685 * verify.cc (class _Jv_BytecodeVerifier) [op_dup2]: Fixed logic. 686 [op_dup_x2]: Likewise. 687 [op_dup2_x1]: Likewise. 688 [op_dup2_x2]: Likewise. 689 (branch_prepass): Added `op_newarray' case. Updated unrecognized 690 instruction error. 691 (verify_instructions_0): Updated unrecognized instruction error. 692 693 * java/lang/reflect/Constructor.java (toString): Use more 694 efficient form of Modifier.toString(). 695 696 Re-merges with Classpath, from various people: 697 * java/lang/reflect/Modifier.java: Reindented. 698 (toString): Only trim trailing space if text was added to 699 StringBuffer. 700 * java/lang/reflect/ReflectPermission: Reindented. 701 702 Re-merges with Classpath, from various people: 703 * java/lang/Double.java (parseDouble): Fixed ordering of 704 modifiers. 705 * java/lang/reflect/AccessibleObject.java: Javadoc, reindented. 706 * java/lang/reflect/Member.java: Reindented. 707 * java/util/ConcurrentModificationException.java: Javadoc 708 updates. 709 * java/util/EmptyStackException.java: Likewise. 710 * java/util/NoSuchElementException.java: Likewise. 711 7122001-11-13 Tom Tromey <tromey@redhat.com> 713 714 Fix for PR libgcj/4859: 715 * java/util/Timer.java (TaskQueue.isStopped): New method. 716 (Scheduler.run): Don't re-schedule task if queue has been 717 stopped. 718 7192001-11-07 Tom Tromey <tromey@redhat.com> 720 721 * Makefile.in: Rebuilt. 722 * Makefile.am (ordinary_java_source_files): Added JNIWeakRef.java. 723 * jni.cc: Include JNIWeakRef.h. 724 (unwrap): New function. 725 (_Jv_JNI_DefineClass): Use it. 726 (_Jv_JNI_GetSuperclass): Likewise. 727 (_Jv_JNI_IsAssignableFrom): Likewise. 728 (_Jv_JNI_Throw): Likewise. 729 (_Jv_JNI_ThrowNew): Likewise. 730 (_Jv_JNI_IsSameObject): Likewise. 731 (_Jv_JNI_AllocObject): Likewise. 732 (_Jv_JNI_GetObjectClass): Likewise. 733 (_Jv_JNI_IsInstanceOf): Likewise. 734 (_Jv_JNI_GetAnyMethodID): Likewise. 735 (array_from_valist): Likewise. 736 (_Jv_JNI_CallAnyMethodV): Likewise. 737 (_Jv_JNI_CallAnyMethodA): Likewise. 738 (_Jv_JNI_CallAnyVoidMethodV): Likewise. 739 (_Jv_JNI_CallAnyVoidMethodA): Likewise. 740 (_Jv_JNI_CallStaticMethodV): Likewise. 741 (_Jv_JNI_CallStaticMethod): Likewise. 742 (_Jv_JNI_CallStaticMethodA): Likewise. 743 (_Jv_JNI_NewObjectV): Likewise. 744 (_Jv_JNI_NewObject): Likewise. 745 (_Jv_JNI_NewObjectA): Likewise. 746 (_Jv_JNI_GetField): Likewise. 747 (_Jv_JNI_SetField): Likewise. 748 (_Jv_JNI_GetAnyFieldID): Likewise. 749 (_Jv_JNI_SetStaticField): Likewise. 750 (_Jv_JNI_GetStringLength): Likewise. 751 (_Jv_JNI_GetStringChars): Likewise. 752 (_Jv_JNI_ReleaseStringChars): Likewise. 753 (_Jv_JNI_GetStringUTFLength): Likewise 754 (_Jv_JNI_GetStringUTFChars): Likewise. 755 (_Jv_JNI_GetStringRegion): Likewise. 756 (_Jv_JNI_GetStringUTFRegion): Likewise. 757 (_Jv_JNI_GetStringCritical): Likewise. 758 (_Jv_JNI_GetArrayLength): Likewise. 759 (_Jv_JNI_NewObjectArray): Likewise. 760 (_Jv_JNI_GetObjectArrayElement): Likewise. 761 (_Jv_JNI_SetObjectArrayElement): Likewise. 762 (_Jv_JNI_GetPrimitiveArrayElements): Likewise. 763 (_Jv_JNI_ReleasePrimitiveArrayElements): Likewise. 764 (_Jv_JNI_GetPrimitiveArrayRegion): Likewise. 765 (_Jv_JNI_SetPrimitiveArrayRegion): Likewise. 766 (_Jv_JNI_MonitorEnter): Likewise. 767 (_Jv_JNI_MonitorExit): Likewise. 768 (_Jv_JNI_ToReflectedField): Likewise. 769 (_Jv_JNI_FromReflectedField): Likewise. 770 (_Jv_JNI_ToReflectedMethod): Likewise. 771 (_Jv_JNI_FromReflectedMethod): Likewise. 772 (_Jv_JNI_NewGlobalRef): Likewise. 773 (_Jv_JNI_DeleteGlobalRef): Likewise. 774 (_Jv_JNI_DeleteLocalRef): Likewise. 775 (_Jv_JNI_NewLocalRef): Likewise. 776 (_Jv_JNI_NewWeakGlobalRef): New function. 777 (_Jv_JNI_DeleteWeakGlobalRef): Likewise. 778 (_Jv_JNIFunctions): Updated for new methods. 779 (NOT_IMPL): Removed. 780 * gnu/gcj/runtime/JNIWeakRef.java: New file. 781 7822001-11-12 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 783 784 * boehm.cc (_Jv_GCCanReclaimSoftReference): Fix warning. 785 7862001-11-09 Jeff Sturm <jsturm@one-point.com> 787 788 * verify.cc: Wrap in #ifdef INTERPRETER...#endif. 789 7902001-11-07 Tom Tromey <tromey@redhat.com> 791 792 * verify.cc (skip_padding): Fail if padding byte is nonzero. 793 7942001-11-06 Tom Tromey <tromey@redhat.com> 795 796 * HACKING: Make people commit their own patches. 797 7982001-11-05 Tom Tromey <tromey@redhat.com> 799 800 * java/lang/Class.h (Class): Made _Jv_BytecodeVerifier a friend. 801 * Makefile.in: Rebuilt. 802 * Makefile.am (libgcj_la_SOURCES): Added verify.cc. 803 * verify.cc: New file. 804 * include/java-interp.h (_Jv_count_arguments): Declare. 805 (_Jv_VerifyMethod): Likewise. 806 (class _Jv_InterpMethod): Made _Jv_BytecodeVerifier a friend. 807 (class _Jv_InterpException): Likewise. 808 * resolve.cc (_Jv_count_arguments): Renamed from count_arguments. 809 No longer static. Updated callers. 810 * defineclass.cc (int_bits_to_float): Removed. 811 (long_bits_to_double): Likewise. 812 (prepare_pool_entry): Updated. 813 (handleCodeAttribute): Verify method (commented out for now). 814 8152001-11-05 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 816 817 * java/util/ResourceBundle.java (class Security): Now static. 818 8192001-11-04 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 820 821 * java/util/ResourceBundle.java (getClassContext): Removed. 822 (Security): New class, extends SecurityManger. 823 (getBundle): Use Security.getCallingClassLoader instead of 824 getClassContext. 825 * java/util/natResourceBundle.cc: Removed. 826 8272001-11-03 Tom Tromey <tromey@redhat.com> 828 829 * defineclass.cc (handleClassBegin): Use Object::class$, not 830 Class::class$, when initializing interface superclass. 831 8322001-11-02 Hans Boehm <Hans_Boehm@hp.com> 833 834 * java/util/natResourceBundle.cc:getClassContext: return 835 array of Class instead of array of ClassLoader. 836 8372001-10-31 Joseph S. Myers <jsm28@cam.ac.uk> 838 839 * HACKING, gnu/gcj/xlib/Pixmap.java, gnu/gcj/xlib/XException.java, 840 gnu/java/rmi/rmic/RMIC.java, java/awt/Window.java, 841 java/awt/AWTEvent.java, java/io/ByteArrayOutputStream.java, 842 java/io/CharConversionException.java, 843 java/io/PipedInputStream.java, java/io/PipedReader.java, 844 java/io/PrintWriter.java, java/io/WriteAbortedException.java, 845 java/io/natFileWin32.cc, java/lang/Class.h, 846 java/lang/natClassLoader.cc, java/lang/natObject.cc, 847 java/lang/Package.java, java/net/BindException.java, 848 java/net/ConnectException.java, java/net/ProtocolException.java, 849 java/net/SocketException.java, 850 java/net/UnknownServiceException.java, 851 java/security/cert/X509Certificate.java, 852 java/security/interfaces/DSAKey.java, 853 java/security/SecureRandom.java, java/security/SignedObject.java, 854 java/sql/DatabaseMetaData.java, 855 java/text/DecimalFormatSymbols.java, 856 java/util/jar/Attributes.java, java/util/jar/JarEntry.java, 857 java/util/jar/JarInputStream.java, 858 java/util/jar/JarOutputStream.java, java/util/Calendar.java, 859 java/util/Collections.java, java/util/GregorianCalendar.java, 860 java/util/HashMap.java, java/util/List.java, 861 java/util/Properties.java, java/util/Timer.java, 862 java/util/Vector.java, java/util/WeakHashMap.java, 863 javax/naming/NamingException.java, 864 testsuite/libjava.lang/Thread_Wait.java, 865 org/xml/sax/helpers/DefaultHandler.java, 866 org/xml/sax/HandlerBase.java, org/xml/sax/SAXParseException.java, 867 ChangeLog, acinclude.m4, aclocal.m4, posix-threads.cc: Fix 868 spelling errors. 869 * configure: Regenerate. 870 8712001-10-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 872 873 * jni.cc (JNI_CreateJavaVM): Call _Jv_CreateJavaVM. Don't call 874 _Jv_JNI_Init. 875 8762001-10-29 Tom Tromey <tromey@redhat.com> 877 878 * java/util/zip/GZIPOutputStream.java (write(int)): New method. 879 Fixes PR libgcj/4728. 880 8812001-10-27 Tom Tromey <tromey@redhat.com> 882 883 * include/jni.h (struct JNINativeInterface) [GetStringLength]: 884 Returns jsize, not jint. 885 8862001-10-26 Tom Tromey <tromey@redhat.com> 887 888 * java/util/zip/Adler32.java: Use correct class name. (Re-merge 889 from Classpath.) 890 8912001-10-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 892 893 * java/lang/VMClassLoader.java (getPrimitiveClass): Now native. Now 894 takes a jchar type-code argument, not a string. 895 * java/lang/natClassLoader.cc (VMClassLoader::getPrimitiveClass): 896 New method. Just call _Jv_FindClassFromSignature. 897 * java/lang/Boolean.java (TYPE): Initialize from 898 VMClassLoader.getPrimitiveClass using type-code. 899 * java/lang/Character.java (TYPE): Likewise. 900 * java/lang/Double.java (TYPE): Likewise. 901 * java/lang/Float.java (TYPE): Likewise. 902 * java/lang/Integer.java (TYPE): Likewise. 903 * java/lang/Long.java (TYPE): Likewise. 904 * java/lang/Short.java (TYPE): Likewise. 905 * java/lang/Void.java (TYPE): Likewise. 906 9072001-10-25 Hans Boehm <Hans_Boehm@hp.com> 908 909 * include/boehm-gc.h: Call thread local allocation functions 910 if THREAD_LOCAL_ALLOC is defined. 911 9122001-10-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 913 914 * java/lang/natClassLoader.cc (_Jv_RegisterClassHookDefault): Use 915 snprintf, not asprintf. 916 9172001-10-24 Loren J. Rittle <ljrittle@acm.org> 918 919 * configure.in (case $THREADS): Add *-*-freebsd* configuration. 920 (HAVE_GETHOSTBYADDR_R): Create a valid, non-optimal 921 configuration when gethostbyaddr_r exists yet no prototype 922 exists in netdb.h. 923 * configure: Rebuilt. 924 * posix-threads.cc (INTR): Reuse path for LINUX_THREADS 925 with FREEBSD_THREADS. However, comment different reason. 926 9272001-10-24 Tom Tromey <tromey@redhat.com> 928 Warren Levy <warrenl@redhat.com> 929 930 * Makefile.in: Rebuilt. 931 * Makefile.am (javax_source_files): New macro. 932 (ordinary_java_source_files): Added javax_source_files. 933 (libgcj.jar): Search javax for class files. 934 * javax/naming/LinkException.java (toString): Wrote. 935 (toString(boolean)): Likewise. 936 * javax/naming/ldap/InitialLdapContext.java: New file. 937 * javax/naming/directory/InitialDirContext.java: Wrote. 938 * javax/naming/spi/NamingManager.java (getPlusPath): Now has 939 package-private protection. 940 (getURLContext): Likewise. 941 (NamingManager): Likewise. 942 * javax/naming/spi/DirectoryManager.java: New file. 943 * javax/naming/directory/BasicAttributes.java: New file. 944 * javax/naming/directory/BasicAttribute.java: New file. 945 * javax/naming/spi/ResolveResult.java 946 (ResolveResult(Object,String)): Wrote. 947 (appendRemainingName): Uncommented body. 948 (appendRemainingComponent): Likewise. 949 * javax/naming/ldap/ControlFactory.java: New file. 950 * javax/naming/directory/AttributeModificationException.java 951 (toString): Wrote. 952 * javax/naming/spi/NamingManager.java (NamingManager): New 953 constructor. 954 (setInitialContextFactoryBuilder): Wrote. 955 (getInitialContext): Look in system properties for class name as 956 well. Use Class.forName(). 957 (getURLContext): Wrote. 958 (ofb): New field. 959 (setObjectFactoryBuilder): Wrote. 960 (getObjectInstance): Wrote. 961 (getContinuationContext): Wrote. 962 (getPlusPath): New private method. 963 (getStateToBind): Wrote. 964 * javax/naming/CannotProceedException.java: Added missing methods & 965 fields. 966 * javax/naming/LinkException.java: Added missing methods & fields. 967 * javax/naming/ReferralException.java (ReferralException): Made 968 constructor protected per spec. 969 Added missing abstract methods. 970 * javax/naming/directory/Attribute.java: Updated copyright. 971 * javax/naming/directory/AttributeModificationException.java: Ditto. 972 * javax/naming/directory/Attributes.java: Ditto. 973 * javax/naming/directory/DirContext.java: Ditto. 974 * javax/naming/spi/NamingManager.java: Ditto. 975 * javax/naming/spi/ResolveResult.java: Added comment. 976 * javax/naming/directory/Attribute.java: Added missing interface 977 methods. 978 * javax/naming/directory/AttributeModificationException.java: 979 Added missing methods & fields. 980 * javax/naming/directory/directory/Attributes.java: Added missing 981 interface methods. 982 * javax/naming/directory/SearchControls.java: Maded serialized fields 983 private. 984 * javax/naming/event/NamingEvent.java: Added comment. 985 * javax/naming/event/NamingExceptionEvent.java: Maded serialized field 986 private. 987 * javax/naming/ldap/UnsolicitedNotificationEvent.java: Maded 988 serialized field private. 989 * javax/naming/spi/NamingManager.java: Added missing field and stubbed 990 missing methods. 991 * javax/naming/directory/DirContext.java: Added missing interface 992 fields & methods. 993 * javax/naming/directory/InitialDirContext.java: Stubbed missing 994 methods. 995 * javax/naming/directory/ModificationItem.java: New class. 996 * javax/naming/directory/SearchResult.java: New class. 997 * javax/naming/directory/SearchControls.java: New class. 998 * javax/naming/event/EventContext.java: New class. 999 * javax/naming/event/EventDirContext.java: New class. 1000 * javax/naming/event/NamespaceChangeListener.java: New class. 1001 * javax/naming/event/NamingEvent.java: New class. 1002 * javax/naming/event/NamingExceptionEvent.java: New class. 1003 * javax/naming/event/NamingListener.java: New class. 1004 * javax/naming/event/ObjectChangeListener.java: New class. 1005 * javax/naming/ldap/Control.java: New class. 1006 * javax/naming/ldap/ExtendedRequest.java: New class. 1007 * javax/naming/ldap/ExtendedResponse.java: New class. 1008 * javax/naming/ldap/HasControls.java: New class. 1009 * javax/naming/ldap/LdapContext.java: New class. 1010 * javax/naming/ldap/LdapReferralException.java: New class. 1011 * javax/naming/ldap/UnsolicitedNotification.java: New class. 1012 * javax/naming/ldap/UnsolicitedNotificationEvent.java: New class. 1013 * javax/naming/ldap/UnsolicitedNotificationListener.java: New class. 1014 * javax/naming/spi/DirObjectFactory.java: New class. 1015 * javax/naming/spi/DirStateFactory.java: New class. 1016 * javax/naming/spi/ObjectFactoryBuilder.java: New class. 1017 * javax/naming/spi/ResolveResult.java: New class. 1018 * javax/naming/spi/Resolver.java: New class. 1019 * javax/naming/spi/StateFactory.java: New class. 1020 * javax/naming/spi/ObjectFactory.java: Made an interface per spec. 1021 * java/rmi/RemoteException.java: New class. 1022 * javax/transaction/HeuristicCommitException.java: New class. 1023 * javax/transaction/HeuristicMixedException.java: New class. 1024 * javax/transaction/HeuristicRollbackException.java: New class. 1025 * javax/transaction/NotSupportedException.java: New class. 1026 * javax/transaction/RollbackException.java: New class. 1027 * javax/transaction/Status.java: New class. 1028 * javax/transaction/Synchronization.java: New class. 1029 * javax/transaction/SystemException.java: New class. 1030 * javax/transaction/Transaction.java: New class. 1031 * javax/transaction/TransactionManager.java: New class. 1032 * javax/transaction/UserTransaction.java: New class. 1033 * javax/transaction/xa/XAException.java: Added public static fields. 1034 * javax/transaction/xa/XAResource.java: New class. 1035 * javax/transaction/xa/Xid.java: New class. 1036 * javax/naming/CompoundName.java (CompoundName(String)): Reverse 1037 elements if required. Handle case where quote is at end of 1038 string. 1039 * javax/naming/CompoundName.java (CompoundName(String)): Handle 1040 text left at end of parsing. 1041 (toString): Handle empty element at beginning. 1042 * javax/naming/CompositeName.java (toString): Handle empty element 1043 at beginning. 1044 (CompositeName(String)): Handle text left at end of parsing. 1045 Correctly compute boundary condition for quoting. 1046 * javax/naming/CompoundName.java: New file. 1047 * javax/naming/CompositeName.java: New file. 1048 * javax/naming/Binding.java: New file. 1049 * javax/naming/LinkRef.java: New file. 1050 * javax/naming/NameClassPair.java: New file. 1051 * javax/naming/Reference.java (addrs, classFactory, 1052 classFactoryLocation): New fields. 1053 (className): Now protected. 1054 (Reference): New constructors. 1055 (add): Now public. Implemented. 1056 (get(String)): Likewise. 1057 (add(int,RefAddr)): New method. 1058 (clear): Likewise. 1059 (clone): Likewise. 1060 (equals): Likewise. 1061 (get(int)): Likewise. 1062 (getAll): Likewise. 1063 (getFactoryClassLocation): Likewise. 1064 (getFactoryClassName): Likewise. 1065 (hashCode): Likewise. 1066 (remove): Likewise. 1067 (size): Likewise. 1068 (toString): Likewise. 1069 * javax/transaction/xa/XAException.java: New file. 1070 * javax/transaction/TransactionRolledbackException.java: New file. 1071 * javax/transaction/TransactionRequiredException.java: New file. 1072 * javax/transaction/InvalidTransactionException.java: New file. 1073 * javax/naming/directory/SchemaViolationException.java: Use 1074 correct package. Import NamingException. 1075 * javax/naming/directory/NoSuchAttributeException.java, 1076 javax/naming/directory/InvalidSearchFilterException.java, 1077 javax/naming/directory/InvalidSearchControlsException.java, 1078 javax/naming/directory/InvalidAttributesException.java, 1079 javax/naming/directory/InvalidAttributeValueException.java, 1080 javax/naming/directory/InvalidAttributeIdentifierException.java, 1081 javax/naming/directory/AttributeModificationException.java, 1082 javax/naming/directory/AttributeInUseException.java: Likewise. 1083 * javax/naming/directory/InitialDirContext.java (getAttributes): 1084 Stub implementation. 1085 * javax/naming/RefAddr.java (RefAddr): Reindented. 1086 (equals): Renamed and reindented. 1087 * javax/naming/BinaryRefAddr.java (equals): Renamed and 1088 reindented. 1089 10902001-10-24 Tom Tromey <tromey@redhat.com> 1091 1092 * java/lang/reflect/Field.java: Made many methods private. 1093 1094 * java/sql/Types.java (Types): New constructor. 1095 1096Tue Oct 23 23:52:18 2001 Anthony Green <green@redhat.com> 1097 1098 * gnu/gcj/runtime/natSharedLibLoader.cc: Only include dlfcn.h when 1099 HAVE_DLOPEN. 1100 11012001-10-23 Tom Tromey <tromey@redhat.com> 1102 1103 * java/lang/reflect/Field.java (Field): New constructor. 1104 * java/lang/ClassLoader.java (defineClass(String,byte[],int,int)): 1105 Throw ClassFormatError. 1106 11072001-10-23 Tom Tromey <tromey@redhat.com> 1108 1109 * java/util/PropertyResourceBundle.java (handleGetObject): Now 1110 public. 1111 * java/util/ListResourceBundle.java (handleGetObject): Now public 1112 and final, per spec. 1113 1114 * java/io/BufferedWriter.java (localFlush): Don't synchronize. 1115 11162001-10-23 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1117 1118 * prims.cc (_Jv_Abort): Always print error message using fprintf, 1119 don't try to allocate. 1120 (_Jv_CreateJavaVM): Set gcj::runtimeInitialized. 1121 * include/jvm.h (gcj::runtimeInitialized): New variable declaration. 1122 * java/lang/natClassLoader.cc (_Jv_RegisterClassHookDefault): Handle 1123 duplicate class registration with JvFail if the runtime hasn't been 1124 initialized yet. 1125 1126 * java/io/BufferedWriter (write (String, int, int)): Remove redundant 1127 bounds checks. 1128 (write (char[], int, int)): Likewise. 1129 11302001-10-22 Tom Tromey <tromey@redhat.com> 1131 1132 * java/util/GregorianCalendar.java (getGregorianChange): Removed 1133 `date' argument. 1134 11352001-10-22 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1136 1137 * gnu/gcj/convert/JIS0208_to_Unicode.cc: Declare java_exceptions pragma. 1138 * gnu/gcj/convert/JIS0212_to_Unicode.cc: Likewise. 1139 * gnu/gcj/convert/Unicode_to_JIS.cc: Likewise. 1140 * gnu/gcj/convert/gen-from-JIS.c: Put java_exceptions pragma in output 1141 file. 1142 11432001-10-19 Mark Wielaard <mark@klomp.org> 1144 1145 * java/lang/Double.java: More Classpath merging 1146 (isInfinite): Don't use doubleToLongBits 1147 (isNaN (Object)): return v != v 1148 (initIDs): make native 1149 * java/lang/Float.java: Ditto 1150 (isInfinite): Don't use floatToIntBits 1151 (isNaN (Object)): return v != v 1152 * java/lang/natDouble.cc: add empty initIDs() 1153 11542001-10-19 Mark Wielaard <mark@klomp.org> 1155 1156 * javax/naming/BinaryRefAddr.java: New file 1157 * javax/naming/InitialContext.java: Compile fix 1158 * javax/naming/InvalidNameException.java: Add comments 1159 * javax/naming/Name.java: Ditto 1160 * javax/naming/NamingException.java: Implement 1161 * javax/naming/OperationNotSupportedException.java: Compile fix 1162 * javax/naming/RefAddr.java: Implement 1163 * javax/naming/StringRefAddr.java: Add comments and implement 1164 * javax/naming/directory/InitialDirContext.java: Compile fix 1165 11662001-10-18 Tom Tromey <tromey@redhat.com> 1167 1168 * java/io/BufferedWriter.java (write(String,int,int)): Correctly 1169 check bounds. 1170 1171 * java/security/Security.java (loadProviders): Removed unused 1172 `pname' variable. Don't create `File' object. Don't update 1173 `providerCount'. 1174 (providerCount): Removed. 1175 (insertProviderAt): Don't use `providerCount'. 1176 (addProvider(Provider,int)): Likewise. 1177 (removeProvider): Likewise. 1178 (addProvider(Provider)): Rewrote. 1179 (getProviders): Rewrote. 1180 (getProvider): Don't use `providerCount'. 1181 11822001-10-17 Tom Tromey <tromey@redhat.com> 1183 1184 * gnu/java/security/provider/SHA1PRNG.java (engineNextBytes): 1185 Rewrote. 1186 * java/security/SecureRandom.java (setSeed(long)): Don't set seed 1187 if secureRandomSpi is not initialized. 1188 1189 * Makefile.in: Rebuilt. 1190 * Makefile.am (secdir): New macro. 1191 (install-data-local): Install new data files. 1192 * java/security/classpath.security: New file. 1193 * java/security/libgcj.security: New file. 1194 1195 * java/security/Security.java (loadProviders): Added `vendor' 1196 argument. 1197 Load both `classpath' and `java.vm.name' providers. 1198 11992001-10-17 Anthony Green <green@redhat.com> 1200 1201 * java/security/Security.java (loadProviders): Fix bug in how 1202 providers are loaded. 1203 12042001-10-16 Tom Tromey <tromey@redhat.com> 1205 1206 * gcj/javaprims.h: Updated class list. 1207 * java/util/Hashtable.java: Re-merged with Classpath. 1208 12092001-10-16 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1210 1211 * name-finder.cc (_Jv_name_finder::lookup): Check for NULL dli_sname. 1212 1213 Eliminate use of C++ static constructors. 1214 * interpret.cc: Remove static Utf8Consts. Use namespace gcj. 1215 * jni.cc: Likewise. 1216 * resolve.cc: Likewise. 1217 * defineclass.cc: Likewise. 1218 (_Jv_ClassReader::handleClassBegin): Synchronize call to 1219 _Jv_RegisterClass. 1220 * include/jvm.h (void_signature, clinit_name, init_name, finit_name): 1221 Declare in namespace gcj. 1222 * java/lang/Class.h (Class): Remove initialization for primitive 1223 types. 1224 (friend void _Jv_InitPrimClass): This is in prims.cc. 1225 * prims.cc (_Jv_InitPrimClass): Do primitive type initialization 1226 here instead. 1227 (void_signature, clinit_name, init_name, finit_name): Define in 1228 namespace gcj. 1229 (_Jv_CreateJavaVM): Call _Jv_InitThreads, _Jv_InitGC, and 1230 _Jv_InitializeSyncMutex from here. Initialize Utf8 constants. 1231 Initialize primitive types. 1232 * java/lang/natClassLoader.cc (_Jv_RegisterClasses): Don't call 1233 initialization routines. Don't synchronize. 1234 * java/lang/natRuntime.cc (_load): Synchronize on java.lang.Class 1235 across dlopen call. 1236 12372001-10-15 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1238 1239 * java/util/HashMap.java (HashEntry.clone): Removed. 1240 (HashMap(Map)): Use putAllInternal. 1241 (clone): Likewise. 1242 (putAllInternal): New method. Efficient counterpart to putAll which 1243 does not call put(). 1244 * java/util/LinkedHashMap.java (rethread): Removed. 1245 (putAllInternal): New method. Clear "head" and "tail". 1246 (addEntry): New argument "callRemove". Don't call removeEldestEntry() 1247 if callRemove == false. 1248 1249 * Makefile.am: Add new classes RandomAccess and LinkedHashMap. 1250 * Makefile.in: Rebuilt. 1251 12522001-10-15 Eric Blake <ebb9@email.byu.edu> 1253 1254 * java/util/Collection.java: Updated javadoc. 1255 * java/util/Comparator.java: Updated javadoc. 1256 * java/util/Enumeration.java: Updated javadoc. 1257 * java/util/Iterator.java: Updated javadoc. 1258 * java/util/List.java: Updated javadoc. 1259 * java/util/ListIterator.java: Updated javadoc. 1260 * java/util/Map.java: Updated javadoc. 1261 * java/util/RandomAccess.java: New file. 1262 * java/util/Set.java: Updated javadoc. 1263 * java/util/SortedMap.java: Updated javadoc. 1264 * java/util/SortedSet.java: Updated javadoc. 1265 12662001-10-15 Tom Tromey <tromey@redhat.com> 1267 1268 * java/lang/reflect/AccessibleObject.java (checkPermission): 1269 Implemented. 1270 Updated copyright information. 1271 12722001-10-15 Hans Boehm <Hans_Boehm@hp.com> 1273 1274 * java/lang/natObject.cc (heavy_lock): Moved fields 1275 old_client_data, old_finalization_proc near beginning. 1276 (heavy_lock_finalization_proc): Now inline; changed type of 1277 argument. 1278 (JV_SYNC_TABLE_SZ): Now 2048. 1279 (mp): New global. 1280 (spin): `mp' now global. 1281 (heavy_lock_obj_finalization_proc): Updated to correctly handle 1282 heavy lock finalization. 1283 (remove_all_heavy): New function. 1284 (maybe_remove_all_heavy): Likewise. 1285 (_Jv_MonitorEnter): Throw exception if object is NULL. 1286 (_Jv_MonitorExit): Likewise. Also, clear long lists of unlocked 1287 heavy locks. 1288 * include/jvm.h (_Jv_AllocTraceTwo): Declare. 1289 * nogc.cc (_Jv_AllocTraceTwo): New function. 1290 * boehm.cc (trace_two_vtable): New global. 1291 (_Jv_AllocTraceTwo): New function. 1292 12932001-10-15 Tom Tromey <tromey@redhat.com> 1294 1295 * Makefile.in: Rebuilt. 1296 * Makefile.am (awt_java_source_files): Added new file. 1297 * java/beans/AppletInitializer.java: New file. 1298 1299 * java/net/SocketPermission.java (hostport, actions): Now 1300 private. 1301 13022001-10-14 Mark Wielaard <mark@klomp.org> 1303 1304 * java/lang/Double.java: Partial merge with Classpath 1305 (TYPE): initialized through VMClassLoader.getPrimitiveClass() 1306 (value): made final 1307 (static): new static block to load native libary (not used in libgcj) 1308 (Double (String)): call parseDouble() 1309 (byteValue): removed, already defined in superclass Number 1310 (shortValue): likewise 1311 (valueOf (String)): call new Double(String) directly 1312 (compare (double,double)): new 1.4 method 1313 (compareTo (Double)): call new compare(double,double) method 1314 (initIDs): new private method (not used in libgcj) 1315 * java/lang/Float.java: Partial merge with Classpath 1316 (TYPE): initialized through VMClassLoader.getPrimitiveClass() 1317 (value): made final 1318 (static): new static block to load native libary (not used in libgcj) 1319 (Float (String)): call parseFloat() 1320 (byteValue): removed, already defined in superclass Number 1321 (shortValue): likewise 1322 (valueOf (String)): call new Float(String) directly 1323 (compare (float,float)): new 1.4 method 1324 (compareTo (Float)): call new compare(double,double) method 1325 13262001-10-13 Tom Tromey <tromey@redhat.com> 1327 1328 * java/lang/SecurityManager.java (SecurityManager): Now public. 1329 1330 * java/security/AccessController.java (checkPermission): Now 1331 throws AccessControlException. 1332 * java/security/AllPermission.java: Class now final. 1333 * java/security/Permission.java (getName): Now final. 1334 (name): Now private. 1335 (equals): New abstract method. 1336 * java/security/PermissionCollection.java (linesep): Now private. 1337 * java/security/Permissions.java: Class now final. 1338 * java/security/Security.java (Security): New private 1339 constructor. 1340 * java/security/UnresolvedPermission.java: Import 1341 java.security.cert.Certificate. Class now final. 1342 * java/security/acl/Group.java: Now extends Principal. 1343 (isMember): Added Principal argument. 1344 * java/security/spec/X509EncodedKeySpec.java (getFormat): Now 1345 final. 1346 * java/security/spec/PKCS8EncodedKeySpec.java (getFormat): Now 1347 final. 1348 13492001-10-12 Tom Tromey <tromey@redhat.com> 1350 1351 * Makefile.in: Rebuilt. 1352 * Makefile.am (rmi_java_source_files): Added new files. 1353 * gnu/java/rmi/rmic/RMIC.java (compile): Uncommented; fixed to use 1354 new Compiler class. 1355 * gnu/java/rmi/rmic/Makefile.am (EXTRA_DIST): Updated. 1356 * gnu/java/rmi/rmic/Compile_gcj.java: New file. 1357 * gnu/java/rmi/rmic/CompilerProcess.java: New file. 1358 * gnu/java/rmi/rmic/Compiler.java: New file. 1359 13602001-10-11 Tom Tromey <tromey@redhat.com> 1361 1362 * configure: Rebuilt. 1363 * configure.in: Recognize --disable-java-awt. 1364 13652001-10-10 Tom Tromey <tromey@redhat.com> 1366 1367 * gnu/gcj/runtime/natFinalizerThread.cc: New file. 1368 * java/lang/natRuntime.cc: Include FinalizerThread.h. 1369 (runFinalization): Call finalizerReady. 1370 * nogc.cc (_Jv_GCInitializeFinalizers): New function. 1371 * prims.cc: Include VirtualMachineError.h, FinalizerThread.h. 1372 (_Jv_CreateJavaVM): Start the finalizer thread. 1373 * no-threads.cc: Include InternalError.h. 1374 (_Jv_ThreadStart): Throw InternalError. 1375 (_Jv_ThreadInitData): Don't throw error if this is not the first 1376 thread. 1377 * Makefile.in: Rebuilt. 1378 * Makefile.am (ordinary_java_source_files): Added 1379 FinalizerThread.java. 1380 (nat_source_files): Added natFinalizerThread.cc. 1381 * include/jvm.h (_Jv_GCInitializeFinalizers): Declare. 1382 * boehm.cc (_Jv_GCInitializeFinalizers): New function. 1383 * gnu/gcj/runtime/FirstThread.java (run): Start finalizer thread. 1384 * gnu/gcj/runtime/FinalizerThread.java: New file. 1385 13862001-10-09 Per Bothner <per@bothner.com> 1387 1388 * strtod.c (_strtod_r): Logic to check for missing digits 1389 after exponent had 'else' attached to wrong 'if'. 1390 13912001-10-09 Mark Wielaard <mark@klomp.org> 1392 1393 * java/net/SocketImpl.java: Merge with Classpath 1394 13952001-10-08 Mark Wielaard <mark@klomp.org> 1396 1397 * java/net/DatagramSocketImpl.java: Merge with Classpath 1398 13992001-10-07 Mark Wielaard <mark@klomp.org> 1400 1401 * java/net/URLDecoder.java: Remerge with Classpath 1402 * java/net/URLEncoder.java: Merge with Classpath 1403 14042001-10-08 Tom Tromey <tromey@redhat.com> 1405 1406 Fix for PR libgcj/4481: 1407 * java/io/File.java (getParent): Handle case where path is "/". 1408 (normalizePath): Use correct string for UNC leader. 1409 14102001-10-06 Mark Wielaard <mark@klomp.org> 1411 1412 * java/io/BufferedInputStream.java: Merge with Classpath 1413 14142001-10-07 Joseph S. Myers <jsm28@cam.ac.uk> 1415 1416 * defineclass.cc, java/awt/image/ColorModel.java, 1417 java/awt/image/SampleModel.java, java/lang/Package.java, 1418 java/security/cert/X509Extension.java: Fix spelling errors of 1419 "separate" as "seperate", and corresponding spelling errors of 1420 related words. 1421 14222001-10-05 Tom Tromey <tromey@redhat.com> 1423 1424 * java/text/DecimalFormat.java (format): Use localized minus sign 1425 when generating exponent; never use `+'. Use floor to compute 1426 exponent. 1427 14282001-10-05 Mark Wielaard <mark@klomp.org> 1429 1430 * java/util/zip/Adler32.java: Merge with Classpath 1431 * java/util/zip/CRC32.java: Ditto 1432 * java/util/zip/Checksum.java: Ditto 1433 * java/util/zip/DataFormatException.java: Ditto 1434 * java/util/zip/ZipException.java: Ditto 1435 14362001-10-04 Martin Kahlert <martin.kahlert@infineon.com> 1437 1438 * jni.cc (_Jv_JNI_DeleteLocalRef): Use correct frame size 1439 14402001-10-04 Mark Wielaard <mark@klomp.org> 1441 1442 * java/lang/reflect/Modifier.java: Merge with Classpath 1443 14442001-10-03 Mark Wielaard <mark@klomp.org> 1445 1446 * java/io/SequenceInputStream.java: Merge with Classpath 1447 * java/io/StringBufferInputStream.java: Ditto 1448 * java/util/Collections.java: Remerge with Classpath 1449 14502001-10-03 Tom Tromey <tromey@redhat.com> 1451 1452 * java/lang/ref/natReference.cc (add_to_hash): Set n->next before 1453 setting *link. 1454 14552001-10-03 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1456 1457 * resolve.cc (_Jv_PrepareClass): Fix typos in vtable layout. 1458 * gij.cc (version): Use GCJVERSION. 1459 14602001-10-02 Mark Wielaard <mark@klomp.org> 1461 1462 * Makefile.am (core_java_source_files): add InheritableThreadLocal 1463 * Makefile.in: regenerate 1464 * gcj/javaprims.h: ditto 1465 * java/lang/InheritableThreadLocal.java: new class from Classpath 1466 * java/lang/Thread.java Thread (Thread, ThreadGroup, Runnable, String): 1467 call InheritableThreadLocal.newChildThread() 1468 14692001-10-01 Mark Wielaard <mark@klomp.org> 1470 1471 * Makefile.am: Add new classes 1472 (core_java_source_files): CharSequence 1473 (ordinary_java_source_files): Authenticator, PasswordAuthentication 1474 * Makefile.in: regenerate 1475 * gcj/javaprims.h: ditto 1476 * java/lang/CharSequence: new class from Classpath 1477 * java/lang/String.java: implements CharSequence 1478 (subSequence (int,int)): new method 1479 * java/lang/SubString.java: implements CharSequence 1480 (subSequence (int,int)): new method 1481 remerge comments with Classpath 1482 * java/net/Authenticator.java: new class from Classpath 1483 * java/net/PasswordAuthentication.java: ditto 1484 14852001-10-01 Tom Tromey <tromey@redhat.com> 1486 1487 * gcj/javaprims.h: Rebuilt class list. 1488 * boehm.cc (_Jv_GCRegisterDisappearingLink): New function. 1489 (_Jv_GCCanReclaimSoftReference): New function. 1490 * include/jvm.h (_Jv_GCRegisterDisappearingLink): Declare. 1491 (_Jv_GCCanReclaimSoftReference): Declare. 1492 * java/lang/ref/Reference.java (referent): Now a RawData. 1493 (create): Renamed from `created'. Added object argument. 1494 (Reference): Don't initialize `referent' here. 1495 * Makefile.in: Rebuilt. 1496 * Makefile.am (nat_source_files): Added new file. 1497 * java/lang/ref/natReference.cc: New file. 1498 1499 * prims.cc (_Jv_NewMultiArrayUnchecked): New method. 1500 (_Jv_NewMultiArray): Use it. Check each array dimension. 1501 (_Jv_NewMultiArray): Likewise. 1502 * java/lang/reflect/natMethod.cc (can_widen): Nothing promotes to 1503 `char'. 1504 * java/lang/reflect/natArray.cc (newInstance): Throw 1505 IllegalArgumentException if there are no dimensions. 1506 15072001-10-01 Mark Wielaard <mark@klomp.org> 1508 1509 * java/io/FileWriter.java: Merge with Classpath. 1510 * java/io/FilterInputStream.java: Ditto. 1511 (mark): no longer synchronized 1512 (reset): Likewise 1513 * java/io/FilterOutputStream.java: Merge with Classpath. 1514 * java/io/FilterReader.java: Ditto. 1515 (mark): no longer synchronized 1516 (reset): Likewise 1517 * java/io/FilterWriter.java: Merge with Classpath. 1518 * java/io/Writer.java: Ditto. 1519 * java/lang/Compiler.java: Ditto. 1520 * java/lang/Process.java: Ditto. 1521 * java/lang/Void.java: Ditto. 1522 * java/net/ContentHandler.java: Ditto. 1523 * java/net/DatagramPacket.java: Ditto. 1524 * java/net/MulticastSocket.java: Merge comments with Classpath. 1525 15262001-09-30 Mark Wielaard <mark@klomp.org> 1527 1528 * java/io/DataInput.java: Merge with Classpath. 1529 * java/io/DataOutput.java: Idem. 1530 * java/io/FilenameFilter.java: Idem. 1531 * java/io/Serializable.java: Idem. 1532 * java/lang/Cloneable.java: Idem. 1533 * java/lang/Comparable.java: Idem. 1534 * java/lang/Runnable.java: Idem. 1535 * java/lang/reflect/Member.java: Idem. 1536 * java/net/ContentHandlerFactory.java: Idem. 1537 * java/net/FileNameMap.java: Idem. 1538 * java/net/SocketImplFactory.java: Idem. 1539 * java/net/SocketOptions.java: Idem. 1540 * java/net/URLStreamHandlerFactory.java: Idem. 1541 15422001-09-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1543 1544 * java/lang/natClass.cc (_Jv_IsAssignableFrom): Handle the case of 1545 an uninitialized target class. 1546 1547 * gnu/gcj/protocol/file/Connection.java (connect): Throw 1548 FileNotFoundException if appropriate. 1549 * gnu/gcj/protocol/file/Handler.java (openConnection): Throw an 1550 IOException if we got a file: url with a hostname. Comment out protocol 1551 switch to ftp for now. 1552 * java/net/URL.java (URL): Include protocol name in exception message 1553 when handler can't be found. 1554 15552001-09-28 Per Bothner <per@bothner.com> 1556 1557 * gnu/gcj/runtime/SharedLibLoader.java: New class. 1558 * gnu/gcj/runtime/natSharedLibLoader.cc: Native methods. 1559 * Makefile.am: Update accordingly. 1560 * configure.in: Add AC_CHECK_LIB for dlopen. 1561 * include/config.h.in: Add HAVE_DLOPEN. 1562 15632001-09-29 Jeff Sturm <jsturm@one-point.com> 1564 1565 * Makefile.am (libgcj_la_LDFLAGS): Added $(GCLIBS), $(ZLIBS). 1566 * Makefile.in: Rebuilt. 1567 15682001-09-27 Tom Tromey <tromey@redhat.com> 1569 1570 * java/util/IdentityHashMap.java (containsKey): Use getHash. 1571 (get): Likewise. 1572 (put): Likewise. 1573 (remove): Likewise. 1574 (getHash): New method. 1575 (tombstone, emptyslot): Now static final. 1576 (put): Correctly determine when to rehash, and correctly rehash. 1577 (containsKey, remove): Test against table length with `>='. 1578 15792001-09-26 Tom Tromey <tromey@redhat.com> 1580 1581 * gnu/classpath/Configuration.java.in (INIT_LOAD_LIBRARY): New 1582 constant. 1583 * java/io/StreamTokenizer.java, java/util/ResourceBundle.java: 1584 Re-merged with Classpath. 1585 1586 * java/io/DataInputStream.java (readChar): Use readFully. 1587 (readInt): Likewise. 1588 (readLong): Likewise. 1589 (readShort): Likewise. 1590 (readUnsignedShort): Likewise. 1591 15922001-09-24 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1593 1594 * java/lang/PosixProcess.java (exitValue): Implement here. Throw 1595 IllegalThreadStateException if process hasn't exited yet. 1596 * java/lang/natPosixProcess.cc (exitValue): Removed. 1597 (waitFor): Only check thread interrupted status if waitpid() returned 1598 an error. Use WIFEXITED and WEXITSTATUS to process process's exit 1599 value. 1600 1601 * java/security/cert/X509Extension.java: Merge from classpath. 1602 16032001-09-22 Anthony Green <green@redhat.com> 1604 1605 * java/security/DummyKeyPairGenerator.java (initialize): New 1606 method (with AlgorithmParameterSpec argument). 1607 16082001-09-22 Anthony Green <green@redhat.com> 1609 1610 * java/security/spec/EncodedKeySpec.java: Implements KeySpec. 1611 1612 * gnu/java/security/provider/SHA1PRNG.java: Extend from 1613 SecureRandomSpi. 1614 (engineNextBytes): Fix order of memory copies. 1615 16162001-09-21 Richard Henderson <rth@redhat.com> 1617 1618 * include/jvm.h (_Jv_VTable): Handle function descriptors for ia64; 1619 add get_method, set_method, vtable_elt_size, new_vtable. 1620 (_Jv_ArrayVTable): Derive from _Jv_VTable. 1621 * resolve.cc (_Jv_PrepareClass): Use new _Jv_VTable methods. 1622 * interpret.cc (_Jv_InterpMethod::continue1): Likewise. 1623 * java/lang/natClassLoader.cc (_Jv_NewArrayClass): Likewise. 1624 16252001-09-21 Richard Henderson <rth@redhat.com> 1626 1627 * no-threads.cc (_Jv_ThreadStart): Remove names of unused arguments. 1628 * java/lang/mprec.c (lo0bits): Fix paren typo. 1629 16302001-09-20 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1631 1632 * posix-threads.cc (_Jv_ThreadInterrupt): Re-enable interrupt of 1633 blocking IO via pthread_kill(). 1634 * java/io/natFileDescriptorPosix.cc (write (jint)): Check for thread 1635 interrupted status flag only if ::write returned an error. 1636 (write (jbyteArray, jint, jint): Likewise. 1637 (read (jint)): Likewise. 1638 (read (jbyteArray, jint, jint): Likewise. 1639 16402001-09-19 Anthony Green <green@redhat.com> 1641 1642 * gnu/gcj/protocol/file/Handler.java: Avoid NullPointerException 1643 when host is null. 1644 16452001-09-17 Andreas Jaeger <aj@suse.de> 1646 1647 * jni.cc (array_from_valist): Use promoted types for va_arg. 1648 16492001-09-16 Anthony Green <green@redhat.com> 1650 1651 * gnu/java/locale/LocaleInformation.java: Extend 1652 LocaleInformation_en_US, not LocaleInformation_en. 1653 16542001-09-16 Anthony Green <green@redhat.com> 1655 1656 * gnu/gcj/convert/IOConverter.java: Add support for iso8859_1. 1657 16582001-09-14 Tom Tromey <tromey@redhat.com> 1659 1660 * java/util/TimeZone.java: Updated list of timezones from 1661 Classpath. 1662 1663 * java/lang/CloneNotSupportedException.java: Re-merged with 1664 Classpath. 1665 16662001-09-14 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1667 1668 * java/io/File.java (normalizePath): Use equals() not '==' for string 1669 comparison. 1670 1671 * java/util/Hashtable.java (Enumerator): Ensure that if 1672 hasMoreElements() returns true, nextElement() will always return 1673 something even if the table has been modified. 1674 16752001-09-12 Tom Tromey <tromey@redhat.com> 1676 1677 * Makefile.in: Rebuilt. 1678 * Makefile.am (class-check): New target. 1679 16802001-09-11 Tom Tromey <tromey@redhat.com> 1681 1682 * java/io/File.java (toURL): Use getAbsolutePath and `file://'. 1683 16842001-09-10 Tom Tromey <tromey@redhat.com> 1685 1686 * java/util/Properties.java (load): Correctly read \u sequences. 1687 Report from Anthony Green. 1688 16892001-09-10 Manfred Hollstein <manfredh@redhat.com> 1690 1691 * configure.in (LIBFFIINCS): Quote uses of $(top_srcdir) 1692 and $(MULTIBUILDTOP). 1693 * configure: Re-generate. 1694 16952001-09-10 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1696 1697 * include/jvm.h (_Jv_AllocRawObj): New prototype. 1698 * boehm.cc (_Jv_AllocRawObj): Implement. 1699 * nogc.cc (_Jv_AllocRawObj): Likewise. 1700 * exception.cc (_Jv_Throw): Use _Jv_AllocRawObj, not GC_malloc. 1701 17022001-09-06 Anthony Green <green@redhat.com> 1703 1704 * java/util/ResourceBundle.java (tryLocalBundle): Eliminate 1705 redundant method calls. 1706 (emptyLocale): New private member. 1707 (tryBundle): Use emptyLocale. Remove duplicate code. Only cache 1708 exact matches. 1709 17102001-09-06 Tom Tromey <tromey@redhat.com> 1711 1712 * java/text/RuleBasedCollator.java (clone): Rewrote. 1713 (RuleBasedCollator(RuleBasedCollator)): Removed. 1714 * java/text/MessageFormat.java: Re-merged from Classpath. 1715 * java/text/DecimalFormat.java: Re-merged from Classpath. 1716 17172001-09-06 Anthony Green <green@redhat.com> 1718 1719 * include/jvm.h: Declare _Jv_RegisterResource. 1720 * gnu/gcj/Core.java, gnu/gcj/natCore.cc, 1721 gnu/gcj/protocol/core/Connection.java, 1722 gnu/gcj/protocol/core/Handler.java, 1723 gnu/gcj/protocol/core/CoreInputStream.java, 1724 gnu/gcj/protocol/core/natCoreInputStream.cc: New files. 1725 * java/net/URL.java (setURLStreamHandler): Use 1726 gnu.gcj.protocol.core.Handler for the core protocol. 1727 * gnu/gcj/runtime/VMClassLoader.java (init): Add "core:/" to the 1728 end of java.class.path. 1729 * Makefile.am (ordinary_java_source_files): Add new java files. 1730 (nat_source_files): Add new native code files. 1731 * Makefile.in: Rebuilt. 1732 17332001-09-05 Tom Tromey <tromey@redhat.com> 1734 1735 * java/util/Properties.java: Re-merged from Classpath. 1736 1737 From Eric Blake, via Classpath: 1738 * java/lang/String.java (CaseInsensitiveComparator): New class. 1739 (CASE_INSENSITIVE_ORDER): Use instance of CaseInsensitiveComparator. 1740 1741 * java/util/Date.java: Re-merged with Classpath. 1742 1743 * java/text/DateFormatSymbols.java: Re-merged with Classpath. 1744 17452001-09-05 Corey Minyard <minyard@acm.org> 1746 Tom Tromey <tromey@redhat.com> 1747 1748 * java/lang/natClassLoader.cc: Include VirtualMachineError.h 1749 (_Jv_RegisterClassHookDefault): Throw error if a class is 1750 registered twice. 1751 17522001-09-05 Tom Tromey <tromey@redhat.com> 1753 1754 * java/lang/natSystem.cc (init_properties): Default locale is 1755 en_US, not just en. 1756 17572001-09-05 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 1758 1759 * java/text/MessageFormat.java (setLocale): Don't catch ParseException 1760 here, DecimalFormat.applyPattern() does not throw it. 1761 17622001-09-04 Tom Tromey <tromey@redhat.com> 1763 1764 * java/util/AbstractMap.java: Re-merged with Classpath. 1765 * java/util/IdentityHashMap.java: Re-merged with Classpath. 1766 1767 * java/text/SimpleDateFormat.java: Re-merged with Classpath. 1768 * gnu/gcj/text/LocaleData.java, gnu/gcj/text/LocaleData_en.java, 1769 gnu/gcj/text/LocaleData_en_US.java: Removed. 1770 * java/text/DateFormatSymbols.java (clone): Use Classpath 1771 implementation. 1772 (equals): Simplified. 1773 (DateFormatSymbols): Look in gnu.java.locale for information. 1774 (DateFormatSymbols(DateFormatSymbols)): Removed. 1775 (safeGetResource): Removed. 1776 (DateFormatSymbols): Throws MissingResourceException. 1777 (ampmsDefault, erasDefault, localPatternCharsDefault, 1778 monthsDefault, shortMonthsDefault, shortWeekdaysDefault, 1779 weekdaysDefault, zoneStringsDefault): Removed. 1780 * java/text/Collator.java (getAvailableLocales): Use modified 1781 Classpath implementation. 1782 (getInstance): Look in gnu.java.locale for information. 1783 (clone): Rewrote. 1784 * java/text/MessageFormat.java: Reindented. 1785 (clone): Rewrote. 1786 * java/text/FieldPosition.java: Merged with Classpath. 1787 * java/text/ParsePosition.java: Merged with Classpath. 1788 * java/text/Format.java: Merged with Classpath. 1789 * java/text/StringCharacterIterator.java 1790 (StringCharacterIterator(StringCharacterIterator,int,int)): New 1791 constructor from Classpath. 1792 * java/text/Annotation.java, 1793 java/text/AttributedCharacterIterator.java, 1794 java/text/AttributedString.java, 1795 java/text/AttributedStringIterator.java: New from Classpath. 1796 * java/text/CharacterIterator.java: Copied from Classpath. 1797 * java/text/ChoiceFormat.java: Reindented. 1798 (clone): Removed. 1799 * gnu/java/text/BaseBreakIterator.java, 1800 gnu/java/text/CharacterBreakIterator.java, 1801 gnu/java/text/LineBreakIterator.java, 1802 gnu/java/text/LocaleData_en.java, 1803 gnu/java/text/LocaleData_en_US.java, 1804 gnu/java/text/SentenceBreakIterator.java, 1805 gnu/java/text/WordBreakIterator.java: Renamed from gnu/gcj/text/*. 1806 * gnu/gcj/text/BaseBreakIterator.java (last): Advance past final 1807 character. 1808 * java/text/BreakIterator.java (getAvailableLocales): Use 1809 Classpath implementation. 1810 (getInstance): Look in gnu.java.locale for information. 1811 (getCharacterInstance, getLineInstance, getSentenceInstance, 1812 getWordInstance): Look in gnu.java.text for implementations. 1813 * java/text/DecimalFormatSymbols.java: Reindented 1814 (clone): Use Classpath implementation. 1815 (DecimalFormatSymbols(DecimalFormatSymbols)): Removed. 1816 (DecimalFormatSymbols(Locale)): Look in gnu.java.locale for 1817 information. 1818 * java/text/DateFormat.java: Merged with Classpath. 1819 (getAvailableLocales): Use Classpath implementation. 1820 (format(Object,StringBuffer,FieldPosition)): Minor cleanup. 1821 (computeInstance): Look in gnu.java.locale for information. 1822 * java/text/NumberFormat.java: Reindented. 1823 (computeInstance): Look in gnu.java.locale for information. 1824 (getAvailableLocales): Use implementation from Classpath. 1825 (setMaximumIntegerDigits): Likewise. 1826 (setMinimumIntegerDigits): Likewise. 1827 (setMaximumFractionDigits): Likewise. 1828 (clone): Removed. 1829 * java/text/DecimalFormat.java: Reindented. 1830 * gnu/java/locale/LocaleInformation_en.java: Copied from Classpath. 1831 * gnu/java/locale/LocaleInformation_en_US.java: Copied from Classpath. 1832 * Makefile.in: Rebuilt. 1833 * Makefile.am (ordinary_java_source_files): Added all new files. 1834 (ordinary_java_source_files): Renamed or removed gnu/gcj/text/*. 1835 * java/security/spec/AlgorithmParameterSpec.java, 1836 java/security/spec/KeySpec.java: Re-merged with Classpath. 1837 1838 Fix for PR libgcj/4213: 1839 * Makefile.am (ordinary_java_source_files): Added new file. 1840 * gnu/gcj/text/LocaleData.java: New file. 1841 18422001-09-03 Tom Tromey <tromey@redhat.com> 1843 1844 * java/lang/reflect/natField.cc (set): Allow for case when the 1845 value is null. Fixes PR libgcj/4208. 1846 1847 * gcj/javaprims.h: Regenerated class list. 1848 * java/lang/IllegalThreadStateException.java, 1849 java/lang/InstantiationException.java: Minor comment tweaks to 1850 satisfy libgcj `classes.pl' script. 1851 18522001-09-01 Tom Tromey <tromey@redhat.com> 1853 1854 * Makefile.in: Rebuilt. 1855 * Makefile.am (core_java_source_files): Added 1856 UnsupportedClassVersionError. 1857 * java/lang/UnsupportedClassVersionError.java: New file from 1858 Classpath. 1859 1860 * java/io/CharConversionException.java, java/io/EOFException.java, 1861 java/io/FileNotFoundException.java, java/io/IOException.java, 1862 java/io/InterruptedIOException.java, 1863 java/io/ObjectStreamException.java, 1864 java/io/OptionalDataException.java, 1865 java/io/StreamCorruptedException.java, 1866 java/io/SyncFailedException.java, 1867 java/io/UTFDataFormatException.java, 1868 java/io/UnsupportedEncodingException.java, 1869 java/lang/AbstractMethodError.java, 1870 java/lang/ArithmeticException.java, 1871 java/lang/ArrayIndexOutOfBoundsException.java, 1872 java/lang/ArrayStoreException.java, 1873 java/lang/ClassCastException.java, 1874 java/lang/ClassCircularityError.java, 1875 java/lang/ClassFormatError.java, 1876 java/lang/CloneNotSupportedException.java, java/lang/Error.java, 1877 java/lang/Exception.java, 1878 java/lang/ExceptionInInitializerError.java, 1879 java/lang/IllegalAccessError.java, 1880 java/lang/IllegalAccessException.java, 1881 java/lang/IllegalArgumentException.java, 1882 java/lang/IllegalMonitorStateException.java, 1883 java/lang/IllegalStateException.java, 1884 java/lang/IllegalThreadStateException.java, 1885 java/lang/IncompatibleClassChangeError.java, 1886 java/lang/IndexOutOfBoundsException.java, 1887 java/lang/InstantiationError.java, 1888 java/lang/InstantiationException.java, 1889 java/lang/InternalError.java, java/lang/InterruptedException.java, 1890 java/lang/LinkageError.java, 1891 java/lang/NegativeArraySizeException.java, 1892 java/lang/NoClassDefFoundError.java, 1893 java/lang/NoSuchFieldError.java, 1894 java/lang/NoSuchFieldException.java, 1895 java/lang/NoSuchMethodError.java, 1896 java/lang/NoSuchMethodException.java, 1897 java/lang/NullPointerException.java, 1898 java/lang/NumberFormatException.java, 1899 java/lang/OutOfMemoryError.java, java/lang/RuntimeException.java, 1900 java/lang/SecurityException.java, 1901 java/lang/StackOverflowError.java, 1902 java/lang/StringIndexOutOfBoundsException.java, 1903 java/lang/ThreadDeath.java, java/lang/UnknownError.java, 1904 java/lang/UnsatisfiedLinkError.java, 1905 java/lang/UnsupportedOperationException.java, 1906 java/lang/VerifyError.java, java/lang/VirtualMachineError.java, 1907 java/lang/reflect/InvocationTargetException.java, 1908 java/net/BindException.java, java/net/ConnectException.java, 1909 java/net/MalformedURLException.java, 1910 java/net/NoRouteToHostException.java, 1911 java/net/ProtocolException.java, java/net/SocketException.java, 1912 java/net/UnknownHostException.java, 1913 java/net/UnknownServiceException.java, 1914 java/text/ParseException.java: Copied from Classpath, thanks to 1915 Mark Wielaard who did the merge. 1916 1917 * java/lang/System.java (getProperty): Use single argument form of 1918 SecurityManager.checkPropertyAccess. 1919 * Makefile.in: Rebuilt. 1920 * Makefile.am (core_java_source_files): Added VMSecurityManager. 1921 * java/lang/VMSecurityManager.java: New file. 1922 * java/lang/SecurityManager.java: Merged with Classpath. 1923 19242001-08-31 Per Bothner <per@bothner.com> 1925 1926 * gcj/javaprims.h (_Jv_RegisterClassHook): New extern declaration. 1927 (_Jv_RegisterClassHookDefault): Likewise. 1928 * java/lang/Class.h (_Jv_RegisterClassHookDefault): Declare as friend. 1929 * java/lang/natClassLoader.cc (_Jv_RegisterClassHook): New variable. 1930 (_Jv_RegisterClassHookDefault): New.function. 1931 (_Jv_RegisterClasses): Call _Jv_RegisterClassHook. 1932 1933 * java/lang/ClassLoader.java (system): Remove static field. 1934 (getSystemClassLoader): Get gnu.gcj.runtime.VMClassLoader.instance 1935 directly instead of using it to set the system field. 1936 (loadClass): Use VMClassLoader.instance instead of system field. 1937 (findSystemClass): Similar. 1938 * prims.cc (_Jv_RunMain): Clear VMClassLoader::instance rather 1939 than ClassLoader::system which no longer exists. 1940 * java/lang/natClassLoader.java (_Jv_FindClass): Simplify. 1941 19422001-08-31 Tom Tromey <tromey@redhat.com> 1943 1944 * java/io/BufferedReader.java, java/io/ObjectInput.java, 1945 java/io/ObjectInputValidation.java, java/io/ObjectOutput.java: 1946 Re-merged with Classpath. 1947 1948 Re-merge with Classpath: 1949 * java/util/Comparator (equals): Added. 1950 * java/io/PipedWriter.java (write): Changed argument to `int'. 1951 1952 * java/io/FileDescriptor.java (FileDescriptor()): New 1953 constructor. 1954 * java/io/File.java (getAbsoluteFile): Doesn't throw IOException. 1955 1956 * Makefile.in: Rebuilt. 1957 * Makefile.am (ordinary_java_source_files): Removed 1958 EnumerationChain, added DoubleEnumeration. 1959 (nat_source_files): Added natResourceBundle.cc. 1960 * java/util/natResourceBundle.cc: New file. 1961 * gnu/java/util/DoubleEnumeration.java: New file. 1962 * gnu/gcj/util/EnumerationChain.java: Removed. 1963 * java/beans/VetoableChangeSupport.java: Merged with Classpath. 1964 * java/util/ResourceBundle.java: Merged with Classpath. 1965 * java/util/StringTokenizer.java: Merged with Classpath. 1966 * java/util/Locale.java: Merged with Classpath. 1967 * java/util/Random.java: Merged with Classpath. 1968 * java/util/PropertyResourceBundle.java: Merged with Classpath. 1969 * java/util/ListResourceBundle.java: Merged with Classpath. 1970 * java/util/ConcurrentModificationException.java: Re-merged with 1971 Classpath. 1972 * java/util/EmptyStackException.java: Likewise. 1973 * java/util/MissingResourceException.java: Likewise. 1974 * java/util/NoSuchElementException.java: Likewise. 1975 * java/util/TooManyListenersException.java: Likewise. 1976 1977 * java/io/ByteArrayOutputStream.java: Re-merged with Classpath. 1978 * java/io/OptionalDataException.java: Merged with Classpath. 1979 19802001-08-31 Jason Merrill <jason_merrill@redhat.com> 1981 1982 * exception.cc (PERSONALITY_FUNCTION): Simplify 1983 leb128 handling. 1984 19852001-08-31 Tom Tromey <tromey@redhat.com> 1986 1987 * java/io/ByteArrayInputStream.java: Merged with Classpath. 1988 19892001-08-30 Tom Tromey <tromey@redhat.com> 1990 1991 * java/io/BufferedReader.java: Re-merged with Classpath. 1992 19932001-08-28 Per Bothner <per@bothner.com> 1994 1995 * java/math/BigInteger.java (init(int,Random)): New method. 1996 Move body of constructor <init>(int,Random)) here. 1997 Re-write it to avoid constructing unneeded temporaries. 1998 (<init>(int,int,Random)): Use new init method to avoid constructing 1999 extra temporary BigIntegers. 2000 20012001-08-27 Tom Tromey <tromey@redhat.com> 2002 2003 * java/rmi/activation/Activatable.java, 2004 java/rmi/activation/ActivateFailedException.java, 2005 java/rmi/activation/ActivationDesc.java, 2006 java/rmi/activation/ActivationException.java, 2007 java/rmi/activation/ActivationGroup.java, 2008 java/rmi/activation/ActivationGroupDesc.java, 2009 java/rmi/activation/ActivationGroupID.java, 2010 java/rmi/activation/ActivationID.java, 2011 java/rmi/activation/ActivationInstantiator.java, 2012 java/rmi/activation/ActivationMonitor.java, 2013 java/rmi/activation/ActivationSystem.java, 2014 java/rmi/activation/Activator.java, 2015 java/rmi/activation/UnknownGroupException.java, 2016 java/rmi/activation/UnknownObjectException.java, 2017 java/rmi/AccessException.java, 2018 java/rmi/AlreadyBoundException.java, 2019 java/rmi/ConnectException.java, java/rmi/ConnectIOException.java, 2020 java/rmi/MarshalException.java, java/rmi/MarshalledObject.java, 2021 java/rmi/Naming.java, java/rmi/NoSuchObjectException.java, 2022 java/rmi/NotBoundException.java, 2023 java/rmi/RMISecurityException.java, 2024 java/rmi/RMISecurityManager.java, java/rmi/Remote.java, 2025 java/rmi/RemoteException.java, java/rmi/ServerError.java, 2026 java/rmi/ServerException.java, 2027 java/rmi/ServerRuntimeException.java, 2028 java/rmi/StubNotFoundException.java, 2029 java/rmi/UnexpectedException.java, 2030 java/rmi/UnknownHostException.java, 2031 java/rmi/UnmarshalException.java, java/rmi/dgc/DGC.java, 2032 java/rmi/dgc/Lease.java, java/rmi/dgc/VMID.java, 2033 java/rmi/registry/LocateRegistry.java, 2034 java/rmi/registry/Registry.java, 2035 java/rmi/registry/RegistryHandler.java, 2036 java/rmi/server/ExportException.java, 2037 java/rmi/server/LoaderHandler.java, 2038 java/rmi/server/LogStream.java, java/rmi/server/ObjID.java, 2039 java/rmi/server/Operation.java, 2040 java/rmi/server/RMIClassLoader.java, 2041 java/rmi/server/RMIClientSocketFactory.java, 2042 java/rmi/server/RMIFailureHandler.java, 2043 java/rmi/server/RMIServerSocketFactory.java, 2044 java/rmi/server/RMISocketFactory.java, 2045 java/rmi/server/RemoteCall.java, 2046 java/rmi/server/RemoteObject.java, java/rmi/server/RemoteRef.java, 2047 java/rmi/server/RemoteServer.java, 2048 java/rmi/server/RemoteStub.java, 2049 java/rmi/server/ServerCloneException.java, 2050 java/rmi/server/ServerNotActiveException.java, 2051 java/rmi/server/ServerRef.java, java/rmi/server/Skeleton.java, 2052 java/rmi/server/SkeletonMismatchException.java, 2053 java/rmi/server/SkeletonNotFoundException.java, 2054 java/rmi/server/SocketSecurityException.java, 2055 java/rmi/server/UID.java, 2056 java/rmi/server/UnicastRemoteObject.java, 2057 java/rmi/server/Unreferenced.java, gnu/java/rmi/dgc/DGCImpl.java, 2058 gnu/java/rmi/dgc/DGCImpl_Skel.java, 2059 gnu/java/rmi/dgc/DGCImpl_Stub.java, 2060 gnu/java/rmi/registry/RegistryImpl.java, 2061 gnu/java/rmi/registry/RegistryImpl_Skel.java, 2062 gnu/java/rmi/registry/RegistryImpl_Stub.java, 2063 gnu/java/rmi/rmic/RMIC.java, gnu/java/rmi/rmic/TabbedWriter.java, 2064 gnu/java/rmi/server/ProtocolConstants.java, 2065 gnu/java/rmi/server/RMIDefaultSocketFactory.java, 2066 gnu/java/rmi/server/RMIHashes.java, 2067 gnu/java/rmi/server/RMIObjectInputStream.java, 2068 gnu/java/rmi/server/RMIObjectOutputStream.java, 2069 gnu/java/rmi/server/UnicastConnection.java, 2070 gnu/java/rmi/server/UnicastConnectionManager.java, 2071 gnu/java/rmi/server/UnicastRef.java, 2072 gnu/java/rmi/server/UnicastRemoteCall.java, 2073 gnu/java/rmi/server/UnicastRemoteStub.java, 2074 gnu/java/rmi/server/UnicastServer.java, 2075 gnu/java/rmi/server/UnicastServerRef.java: RMI implementation from 2076 Kaffe. Relabelled classes to fit into Classpath tree. 2077 * Makefile.in: Rebuilt. 2078 * Makefile.am (rmi_java_source_files): New macro. 2079 (ordinary_java_source_files): Reference it. 2080 (bin_PROGRAMS): Added rmic and rmiregistry. 2081 (rmic_SOURCES): New macro. 2082 (EXTRA_rmic_SOURCES): Likewise. 2083 (rmic_LDFLAGS): Likewise. 2084 (rmic_LINK): Likewise. 2085 (rmic_LDADD): Likewise. 2086 (rmic_DEPENDENCIES): Likewise. 2087 (rmiregistry_SOURCES): New macro. 2088 (EXTRA_rmiregistry_SOURCES): Likewise. 2089 (rmiregistry_LDFLAGS): Likewise. 2090 (rmiregistry_LINK): Likewise. 2091 (rmiregistry_LDADD): Likewise. 2092 (rmiregistry_DEPENDENCIES): Likewise. 2093 20942001-08-26 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2095 2096 * name-finder.cc (lookup): Ignore a null dli_fname from dladdr. 2097 2098 * Makefile.am: New friends for java/lang/Thread.h. 2099 * prims.cc (runFirst): Removed. 2100 (JvRunMain): Merged into _Jv_RunMain. Now just calls that. 2101 (_Jv_RunMain): Now takes either a klass or class name parameter. 2102 Create a gnu.gcj.runtime.FirstThread and attach the native thread 2103 to that, then run it using _Jv_ThreadRun. Remove special handling of 2104 jar files, instead pass is_jar parameter through to FirstThread. 2105 * gcj/javaprims.h: Add prototypes for _Jv_ThreadRun and new variant 2106 of _Jv_AttachCurrentThread. 2107 * gnu/gcj/runtime/FirstThread.java (FirstThread): Now extends Thread. 2108 (run): New method. Take care of looking up main class manifest 2109 attribute and calling forName if necessary. Then call call_main. 2110 (call_main): New native method. 2111 * gnu/gcj/runtime/natFirstThread.cc (call_main): New function, code 2112 relocated from prims.cc. Look up and call main method. 2113 * java/lang/Thread.java (run_): Removed. 2114 * java/lang/natThread.cc (run_): Renamed to... 2115 (_Jv_ThreadRun): this. JVMPI notification code moved to ... 2116 (_Jv_NotifyThreadStart): here. New function. 2117 (countStackFrames, destroy, resume, suspend, stop): Throw 2118 UnsupportedOperationExceptions rather than JvFail'ing. 2119 (_Jv_AttachCurrentThread): New variant takes a Thread argument. 2120 Existing version wraps new variant. 2121 2122 21232001-08-23 Tom Tromey <tromey@redhat.com> 2124 2125 * java/lang/reflect/Field.java (toString): Use 2126 Method.appendClassName. 2127 * java/lang/reflect/Constructor.java (toString): Use 2128 Method.appendClassName. 2129 * java/lang/reflect/Method.java: Reindented. 2130 (appendClassName): New method. 2131 (toString): Use it. 2132 * defineclass.cc (handleMethod ): Initialize `throws' field of 2133 method. 2134 (read_one_method_attribute): Handle Exceptions attribute. 2135 * java/lang/reflect/natMethod.cc (ClassClass): Removed. 2136 (ObjectClass): Removed. 2137 (getType): Compute `exception_types'. 2138 * java/lang/Class.h (struct _Jv_Method): Added `throws' field. 2139 21402001-08-21 Anthony Green <green@redhat.com> 2141 2142 * java/lang/natClassLoader.cc (findClass): Search for 2143 lib-gnu-pkg-quux.so, not gnu-pkg-quux.so. 2144 21452001-08-21 Jeff Sturm <jsturm@one-point.com> 2146 2147 * java/util/IdentityHashMap.java (get): Fix off-by-one error. 2148 (put): Likewise. 2149 21502001-08-20 Tom Tromey <tromey@redhat.com> 2151 2152 * java/awt/GridBagConstraints.java: Removed comment. 2153 2154 * jni.cc (nathash, nathash_count, nathash_size): New globals. 2155 (DELETED_ENTRY): New define. 2156 (hash): New function. 2157 (nathash_find_slot): Likewise. 2158 (natrehash): Likewise. 2159 (nathash_add): Likewise. 2160 (_Jv_JNI_RegisterNatives): No longer interpreter-specific. Use 2161 nathash_add. 2162 (nathash_find): New function. 2163 (_Jv_LookupJNIMethod): Use it. Synchronize body. 2164 (call): Synchronize around assignment. 2165 21662001-08-17 Jeff Sturm <jsturm@one-point.com> 2167 2168 * gnu/gcj/convert/UnicodeToBytes.java (write): Write work buffer 2169 starting from zero offset. 2170 21712001-08-17 Hans-J. Boehm <Hans_Boehm@hp.com> 2172 2173 * boehm.cc: Include gc_local_alloc.h if appropriate. 2174 (GC_GENERIC_MALLOC): Don't define. 2175 (MAYBE_MARK): Redefine for GC 6.0. 2176 (_Jv_MarkObj): Mark class differently. 2177 (_Jv_AllocArray): Use GC_generic_malloc. 2178 21792001-08-17 Mark J Roberts <mjr@anarcast.net> 2180 2181 * java/math/BigInteger.java (randBytes): New method. 2182 (BigInteger(int,Random)): Use randBytes. 2183 21842001-08-17 Tom Tromey <tromey@redhat.com> 2185 2186 * gnu/gcj/convert/IOConverter.java: Add `646' alias. 2187 21882001-08-17 Hans-J. Boehm <Hans_Boehm@hp.com> 2189 2190 * BigInteger.java: fix right shifts by nonzero multiples of 32. 2191 21922001-08-15 Tom Tromey <tromey@redhat.com> 2193 2194 * jni.cc: Include IdentityHashMap.h, not Hashtable.h. 2195 (local_ref_table, global_ref_table): Now IdentityHashMap. 2196 (_Jv_JNI_Init): Updated for new types. 2197 (mark_for_gc): Likewise. 2198 (unmark_for_gc): Likewise. 2199 * gcj/javaprims.h: Rebuilt class list. 2200 * Makefile.in: Rebuilt. 2201 * Makefile.am (core_java_source_files): Added new file. 2202 * java/util/IdentityHashMap.java: New file. 2203 2204 * gnu/gcj/convert/natIconv.cc (read): Handle EINVAL and E2BIG 2205 correctly. 2206 22072001-08-09 Tom Tromey <tromey@redhat.com> 2208 2209 * java/awt/image/SampleModel.java (getPixel): Set correct array 2210 element. From Chris Meyer. 2211 22122001-08-10 Loren J. Rittle <ljrittle@acm.org> 2213 2214 * java/lang/natObject.cc (is_mp): Protect use of _SC_NPROCESSORS_ONLN. 2215 * gnu/gcj/convert/natIconv.cc (done): Use HAVE_ICONV. 2216 22172001-08-06 Tom Tromey <tromey@redhat.com> 2218 2219 * java/io/InputStreamReader.java (refill): Only call refill on 2220 BufferedInputStream when appropriate constraints are met. 2221 22222001-08-05 Tom Tromey <tromey@redhat.com> 2223 2224 * java/io/StringWriter.java: Merged with Classpath. 2225 * java/io/InputStream.java: Merged with Classpath. 2226 * java/io/OutputStream.java: Merged with Classpath. 2227 * java/io/PushbackInputStream.java: Merged with Classpath. 2228 * java/io/CharArrayReader.java: Merged with Classpath. 2229 * java/io/CharArrayWriter.java: Merged with Classpath. 2230 22312001-08-02 Tom Tromey <tromey@redhat.com> 2232 2233 * prims.cc (JNI_OnLoad): Don't declare. 2234 (_JNI_OnLoad): Don't define. 2235 (_Jv_CreateJavaVM): Don't handle JNI_OnLoad. 2236 22372001-08-02 Tom Tromey <tromey@redhat.com> 2238 2239 * java/io/RandomAccessFile.java (seek): Let seek go past end of 2240 file. 2241 (skipBytes): Don't fail if seeking past end of file. 2242 * java/io/FileInputStream.java (skip): Don't fail if seeking past 2243 end of file. 2244 * java/io/natFileDescriptorWin32.cc (seek): Handle `eof_trunc' 2245 argument. 2246 * java/io/natFileDescriptorEcos.cc (seek): Handle `eof_trunc' 2247 argument. 2248 * java/io/natFileDescriptorPosix.cc (seek): Handle `eof_trunc' 2249 argument. 2250 * java/io/FileDescriptor.java (seek): Added `eof_trunc' argument. 2251 22522001-08-02 Martin Kahlert <martin.kahlert@infineon.com> 2253 2254 * jni.cc (JNI_CreateJavaVM): Call _Jv_JNI_Init in order 2255 to initialize global_ref_table/local_ref_table. 2256 22572001-08-02 Tom Tromey <tromey@redhat.com> 2258 2259 * configure: Rebuilt. 2260 * configure.in (THREADSPEC): Don't set THREADLIBS on Cygwin. From 2261 David Billinghurst. 2262 22632001-08-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2264 2265 * include/posix.h (_POSIX_PII_SOCKET): Define. 2266 * configure.in (HAVE_SOCKLEN_T): Define. 2267 * java/net/natPlainSocketImpl.cc [!HAVE_SOCKLEN_T]: Move socklen_t 2268 definition up. 2269 (_JV_accept): New function, avoids Tru64 UNIX accept macro. 2270 (java::net::PlainSocketImpl::accept): Use it. 2271 Fixes PRs libgcj/3694, libgcj/3696. 2272 2273 * configure.in (HAVE_STRUCT_IPV6_MREQ): New test. 2274 * acconfig.h (HAVE_STRUCT_IPV6_MREQ): Provide template. 2275 * configure, include/config.h.in: Regenerate. 2276 * java/net/natPlainDatagramSocketImpl.cc (union McastReq): Use it. 2277 (mcastGrp): Likewise. 2278 (java::net::PlainDatagramSocketImpl::setOption): Guard against 2279 missing IPV6_MULTICAST_IF. 2280 Fixes PR libgcj/3694. 2281 22822001-08-01 Jeff Sturm <jsturm@one-point.com> 2283 2284 * libgcj.spec.in: Pass -fkeep-inline-functions to jc1. 2285 22862001-07-30 Christian Iseli <chris@ludwig-alpha.unil.ch> 2287 2288 * Makefile.in: Rebuilt. 2289 * Makefile.am (GCJLINK): Added --tag=GCJ. 2290 (LIBLINK): Likewise. 2291 22922001-07-30 Tom Tromey <tromey@redhat.com> 2293 2294 * java/util/Date.java: Re-merged with Classpath. 2295 22962001-07-30 Jeff Sturm <jsturm@one-point.com> 2297 2298 * java/net/natPlainDatagramSocketImpl.cc: Undefine bind if defined. 2299 (_Jv_bind): New static function. 2300 (bind): Use _Jv_bind. 2301 * java/net/natPlainSocketImpl.cc: Undefine bind, connect if defined. 2302 (_Jv_bind, _Jv_connect): New static functions. 2303 (bind): Use _Jv_bind. 2304 (connect): Use _Jv_connect. 2305 23062001-07-30 Tom Tromey <tromey@redhat.com> 2307 Corey Minyard <minyard@acm.org> 2308 2309 * gnu/gcj/convert/natIconv.cc (done): New methods. 2310 * gnu/gcj/convert/Output_iconv.java (done): New method. 2311 * gnu/gcj/convert/Input_iconv.java (done): New method. 2312 * gnu/gcj/convert/UnicodeToBytes.java (defaultEncodingClass): 2313 Removed. 2314 (getDefaultEncodingClass): Removed. 2315 (getDefaultEncoder): Use getEncoder. 2316 (done): New method. 2317 (defaultEncoding, CACHE_SIZE, encoderCache, currCachePos): New 2318 static fields. 2319 * gnu/gcj/convert/BytesToUnicode.java (defaultDecodingClass): 2320 Removed. 2321 (defaultEncoding, CACHE_SIZE, decoderCache, currCachePos): New 2322 static fields. 2323 (getDefaultDecodingClass): Removed. 2324 (getDefaultDecoder): Use getDecoder. 2325 (getDecoder): Look up decoder in cache. 2326 (done): New method. 2327 * java/lang/natString.cc (init): Call `done' on converter. 2328 (getBytes): Likewise. 2329 23302001-07-30 Tom Tromey <tromey@redhat.com> 2331 2332 * java/lang/Integer.java: Merged with Classpath. 2333 23342001-07-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2335 2336 * java/util/GregorianCalendar.java (GregorianCalendar): Call 2337 setTimeInMillis() to set the default/current time. 2338 23392001-07-29 Mark Wielaard <mark@klomp.org> 2340 2341 * HACKING: add description on updating namespace 2342 23432001-07-26 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2344 2345 * java/util/Calendar.java (set): Never recompute fields here. They 2346 will already be set if someone set time explicitly, and it can cause 2347 problems to do so. Don't invalidate AM_PM setting if HOUR is set. 2348 * java/util/GregorianCalendar.java (computeTime): Don't ignore an 2349 HOUR setting if AM_PM is set. Don't try to ensure the HOUR value is 2350 sane. 2351 * java/text/SimpleDateFormat.java (defaultCentury): New field. 2352 (readObject): Call set2DigitYearStart if appropriate so that 2353 defaultCentury is calculated. 2354 (SimpleDateFormat): Don't bother clearing calendar here. Call 2355 computeCenturyStart(). 2356 (set2DigitYearStart): Calculate and set defaultCentury. 2357 (format): Don't clone the calendar. Use "calendar" not "theCalendar" 2358 everywhere. 2359 (parse): Likewise. If the pattern is "y" or "yy" and it found exactly 2360 2 numeric digits, use the 80-20 heuristic to parse the value into a 2361 default century based on defaultCenturyStart. 2362 (computeCenturyStart): Rewritten. Call set2DigitYearStart(). 2363 23642001-07-25 Tom Tromey <tromey@redhat.com> 2365 2366 * Makefile.in: Rebuilt. 2367 * Makefile.am (libgcj.jar): Correctly fail when bytecode 2368 compilation fails. 2369 23702001-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2371 2372 * prims.cc (_JNI_OnLoad): New function. 2373 (JNI_OnLoad): Use it. 2374 (_Jv_CreateJavaVM): Check for _JNI_OnLoad, not NULL. 2375 23762001-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2377 2378 * Makefile.am (AM_MAKEFLAGS): Pass RUNTESTFLAGS. 2379 Makefile.in: Regenerate. 2380 23812001-07-24 Tom Tromey <tromey@redhat.com> 2382 2383 * java/lang/VMClassLoader.java (getPrimitiveClass): Return correct 2384 type. 2385 23862001-07-23 Tom Tromey <tromey@redhat.com> 2387 2388 * gcj/javaprims.h: Rebuilt class list. 2389 * Makefile.in: Rebuilt. 2390 * Makefile.am (core_java_source_files): Added VMClassLoader. 2391 * java/lang/VMClassLoader.java: New file. 2392 * java/lang/Boolean.java: Merged with Classpath. 2393 * java/lang/Byte.java: Merged with Classpath. 2394 * java/lang/Integer.java: Merged with Classpath. 2395 * java/lang/Long.java: Merged with Classpath. 2396 * java/lang/Number.java: Merged with Classpath. 2397 * java/lang/Short.java: Merged with Classpath. 2398 23992001-07-22 Jeff Sturm <jsturm@one-point.com> 2400 2401 * configure.host: Enable hash synchronization for alpha*-*. 2402 * include/posix-threads.h (_Jv_ThreadSelf): Added inline 2403 function for alpha. 2404 * java/lang/natObject.cc (compare_and_swap, release_set, 2405 compare_and_swap_release): Added inline functions for alpha. 2406 24072001-07-18 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 2408 2409 * java/net/natPlainDatagramSocketImpl.cc (mcastGrp): Use new RFC 2410 2533 socket options IPV6_JOIN_GROUP, IPV6_LEAVE_GROUP, falling 2411 back to old RFC 2133 variants if missing. 2412 24132001-07-18 Tom Tromey <tromey@redhat.com> 2414 2415 * java/io/natFileWin32.cc (_access): Renamed. 2416 (_stat): Likewise. 2417 * java/io/natFile.cc (_access): Renamed. 2418 (_stat): Likewise. 2419 * java/io/File.java (access, stat): Add leading `_' to name. 2420 Updated all callers. 2421 24222001-07-18 Tom Tromey <tromey@redhat.com> 2423 2424 For PR java/2812: 2425 * libgcj.spec.in (*lib): Added LIBICONV. 2426 * configure: Rebuilt. 2427 * configure.in: Call AM_ICONV. Don't check for iconv function. 2428 Add parameters to JV_HASH_SYNCHRONIZATION define. 2429 * acinclude.m4 (AM_ICONV): New macro, from Bruno Haible. 2430 24312001-07-17 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2432 2433 * java/util/LinkedList.java (clone): Clear the copy list with clear(), 2434 not by setting its size field. 2435 24362001-07-13 Alexandre Petit-Bianco <apbianco@redhat.com> 2437 2438 * include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Removed unused 2439 local `_ebp.' 2440 24412001-07-12 Tom Tromey <tromey@redhat.com> 2442 David Brownell <david-b@pacbell.net> 2443 2444 Fix for PR libgcj/3426: 2445 * gnu/gcj/convert/natIconv.cc: Include CharConversionException.h, 2446 errno.h. 2447 (read): Throw exception if character conversion fails. 2448 * java/io/BufferedInputStream.java (refill): Now package-private. 2449 * java/io/InputStreamReader.java (ready): Simplified. 2450 (refill): New method. 2451 (read): Use it. 2452 24532001-07-12 Tom Tromey <tromey@redhat.com> 2454 2455 Report from Henner Zeller: 2456 * java/io/FileOutputStream.java (FileOutputStream): Throw 2457 FileNotFoundException, not IOException. 2458 24592001-07-10 Anthony Green <green@redhat.com> 2460 2461 * Makefile.in: Rebuilt. 2462 * Makefile.am: Add new files. 2463 * org/w3c/dom/Attr.java, org/w3c/dom/CDATASection.java, 2464 org/w3c/dom/CharacterData.java, org/w3c/dom/Comment.java, 2465 org/w3c/dom/DOMException.java, org/w3c/dom/DOMImplementation.java, 2466 org/w3c/dom/Document.java, org/w3c/dom/DocumentFragment.java, 2467 org/w3c/dom/DocumentType.java, org/w3c/dom/Element.java, 2468 org/w3c/dom/Entity.java, org/w3c/dom/EntityReference.java, 2469 org/w3c/dom/NamedNodeMap.java, org/w3c/dom/Node.java, 2470 org/w3c/dom/NodeList.java, org/w3c/dom/Notation.java, 2471 org/w3c/dom/ProcessingInstruction.java, org/w3c/dom/Text.java, 2472 org/w3c/dom/ranges/DocumentRange.java, 2473 org/w3c/dom/ranges/Range.java, 2474 org/w3c/dom/ranges/RangeException.java, 2475 org/w3c/dom/traversal/DocumentTraversal.java, 2476 org/w3c/dom/traversal/NodeFilter.java, 2477 org/w3c/dom/traversal/NodeIterator.java, 2478 org/w3c/dom/traversal/TreeWalker.java, 2479 org/xml/sax/ext/DeclHandler.java, 2480 org/xml/sax/ext/LexicalHandler.java, 2481 org/xml/sax/helpers/AttributeListImpl.java, 2482 org/xml/sax/helpers/AttributesImpl.java, 2483 org/xml/sax/helpers/DefaultHandler.java, 2484 org/xml/sax/helpers/LocatorImpl.java, 2485 org/xml/sax/helpers/NamespaceSupport.java, 2486 org/xml/sax/helpers/ParserAdapter.java, 2487 org/xml/sax/helpers/ParserFactory.java, 2488 org/xml/sax/helpers/XMLFilterImpl.java, 2489 org/xml/sax/helpers/XMLReaderAdapter.java, 2490 org/xml/sax/helpers/XMLReaderFactory.java, 2491 org/xml/sax/AttributeList.java, org/xml/sax/Attributes.java, 2492 org/xml/sax/ContentHandler.java, org/xml/sax/DTDHandler.java, 2493 org/xml/sax/DocumentHandler.java, org/xml/sax/EntityResolver.java, 2494 org/xml/sax/ErrorHandler.java, org/xml/sax/HandlerBase.java, 2495 org/xml/sax/InputSource.java, org/xml/sax/Locator.java, 2496 org/xml/sax/Parser.java, org/xml/sax/SAXException.java, 2497 org/xml/sax/SAXNotRecognizedException.java, 2498 org/xml/sax/SAXNotSupportedException.java, 2499 org/xml/sax/SAXParseException.java, org/xml/sax/XMLFilter.java, 2500 org/xml/sax/XMLReader.java: New files. 2501 25022001-07-10 Alexandre Petit-Bianco <apbianco@redhat.com> 2503 2504 * Makefile.am: Added `java/lang/ThreadLocal.java'. 2505 * Makefile.in: Regenerate. 2506 * java/lang/ThreadLocal.java: Initial import. 2507 25082001-07-07 Jeff Sturm <jsturm@one-point.com> 2509 2510 * Makefile.am (libgcj.jar): Don't recursively make 2511 built_java_source_files. Avoid long command lines. 2512 Don't change to $(srcdir) to invoke javac. 2513 (libgcj.la, libgcjx.la); Avoid long command lines. 2514 ($(nat_headers),$(x_nat_headers)): Depend on libgcj.jar. 2515 * Makefile.in: Rebuilt. 2516 25172001-07-06 Andrew Haley <aph@cambridge.redhat.com> 2518 2519 * include/i386-signal.h: Don't do anything with unsigned divide 2520 overflow except throw an exception. 2521 25222001-07-05 Tom Tromey <tromey@redhat.com> 2523 2524 For PR java/3562: 2525 * java/lang/Class.h (Class(void)): Now private. Removed 2526 implementation. From dmorsberger@sensysdl.com. 2527 25282001-07-02 Tom Tromey <tromey@redhat.com> 2529 2530 Fix for PR bootstrap/3281: 2531 * aclocal.m4, configure: Rebuilt. 2532 * acinclude.m4 (LIBGCJ_CONFIGURE): Don't set libgcj_flagbasedir. 2533 Correctly compute libgcj_basedir. 2534 (mkinstalldirs): Define and subst. 2535 25362001-07-01 Jeremy Nimmer <jwnimmer@alum.mit.edu> 2537 2538 For PR libgcj/3523: 2539 * java/io/LineNumberReader.java (reset): Pass correct arguments to 2540 countLines. 2541 25422001-06-27 Tom Tromey <tromey@redhat.com> 2543 2544 * gnu/gcj/convert/IOConverter.java: Manually maintained alias now 2545 lowercase. 2546 25472001-06-25 Tom Tromey <tromey@redhat.com> 2548 2549 * scripts/encodings.pl: Generate lower-case names. Updated URL 2550 for `character-sets' file. 2551 * gnu/gcj/convert/IOConverter.java (canonicalize): Convert name to 2552 lower case. 2553 Rebuilt list of aliases. 2554 25552001-06-25 Tom Tromey <tromey@redhat.com> 2556 2557 * java/io/natFileDescriptorPosix.cc (open): Change error message 2558 formatting. From David Brownell. 2559 25602001-06-21 Tom Tromey <tromey@redhat.com> 2561 2562 * include/java-interp.h (_Jv_InterpClass): Use JV_MARKOBJ_DECL. 2563 From Corey Minyard. 2564 25652001-06-19 Mark J. Roberts <mjr@statesmean.com> 2566 2567 * java/math/BigInteger.java (byteArrayToIntArray): Don't include 2568 extraneous/malformed sign word. 2569 25702001-06-15 Tom Tromey <tromey@redhat.com> 2571 2572 * jni.cc (_Jv_JNI_NewLocalRef): Search other frames. 2573 25742001-06-15 Tom Tromey <tromey@redhat.com> 2575 2576 * java/lang/natRuntime.cc (_Jv_FindSymbolInExecutable): Return 2577 NULL if no library on the list has the symbol. 2578 (init): Call add_library on the program itself. 2579 * prims.cc (JvRunMain): Initialize Runtime before searching for 2580 `main'. 2581 (_Jv_RunMain): Likewise. 2582 25832001-06-15 Tom Tromey <tromey@redhat.com> 2584 2585 * jni.cc (ClassClass): Removed; updated all users. 2586 (ObjectClass): Likewise. 2587 (ThrowableClass): Likewise. 2588 (MethodClass): Likewise. 2589 (ThreadGroupClass): Likewise. 2590 (local_ref_table): Renamed from `ref_table'. 2591 (global_ref_table): New global. 2592 (_Jv_JNI_Init): Initialize both ref tables. 2593 (mark_for_gc): Added `ref_table' parameter. 2594 (unmark_for_gc): Likewise. Also, fail if we unreferenced too many 2595 times. 2596 (_Jv_JNI_NewGlobalRef): Updated for new mark function. 2597 (_Jv_JNI_DeleteGlobalRef): Likewise. 2598 (_Jv_JNI_DeleteLocalRef): Likewise. 2599 (_Jv_JNI_NewLocalRef): Likewise. 2600 (_Jv_JNI_PopLocalFrame): Likewise. 2601 (_Jv_JNI_GetStringChars): Likewise. 2602 (_Jv_JNI_ReleaseStringChars): Likewise. 2603 (_Jv_JNI_GetPrimitiveArrayElements): Likewise. 2604 (_Jv_JNI_ReleasePrimitiveArrayElements): Likewise. 2605 26062001-06-14 Tom Tromey <tromey@redhat.com> 2607 2608 Fix for PR libgcj/3144: 2609 * java/util/Date.java: Merged with Classpath. 2610 26112001-06-12 Tom Tromey <tromey@redhat.com> 2612 2613 * aclocal.m4, configure: Rebuilt. 2614 * acinclude.m4: Find configure.host in srcdir. 2615 26162001-06-07 Tom Tromey <tromey@redhat.com> 2617 2618 Fix for PR libgcj/3059: 2619 * java/lang/natSystem.cc (init_properties): Define `java.home'. 2620 * Makefile.in: Rebuilt. 2621 * Makefile.am (AM_CXXFLAGS): Define PREFIX. 2622 26232001-06-10 Alexandre Petit-Bianco <apbianco@redhat.com> 2624 2625 * exception.cc (cstdlib): Replaces stdlib.h. 2626 (_Jv_Throw): Use std::abort(). 2627 (PERSONALITY_FUNCTION): Likewise. 2628 26292001-06-09 Alexandre Oliva <aoliva@redhat.com>, Stephen L Moshier <moshier@mediaone.net> 2630 2631 * acinclude.m4 (AC_EXEEXT): Work around in case it expands to 2632 nothing, as in autoconf 2.50. 2633 * aclocal.m4, configure: Rebuilt. 2634 26352001-06-08 Tom Tromey <tromey@redhat.com> 2636 2637 * configure: Rebuilt. 2638 * configure.in: Compute new aux dir using `pwd'. 2639 26402001-06-07 Tom Tromey <tromey@redhat.com> 2641 2642 For PR bootstrap/3075: 2643 * configure, aclocal.m4, Makefile.am: Rebuilt. 2644 * configure.in: Pass `--with-auxdir' to subdir configure. Don't 2645 call AC_CONFIG_AUX_DIR or AC_CANONICAL_SYSTEM. Look for unwind.h 2646 relative to libgcj_basedir. 2647 * acinclude.m4 ((LIBGCJ_CONFIGURE): Call AC_CONFIG_AUX_DIR and 2648 AC_CANONICAL_SYSTEM here. 2649 * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Use srcdir, not 2650 libgcj_basedir. 2651 ($(extra_headers)): New target. 2652 26532001-06-05 Martin Kahlert <martin.kahlert@infineon.com> 2654 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2655 2656 * java/lang/natClass.cc (_Jv_IsAssignableFrom): Ensure that ancestors 2657 table index is within allowed bounds. Ensure that we don't try to access 2658 class itable at a negative offset. Avoid an ancestor table lookup if 2659 source is a primitive type class. 2660 (isInstance): Remove redundant isPrimitive() check. 2661 26622001-06-04 Tom Tromey <tromey@redhat.com> 2663 2664 * java/security/PublicKey.java: Extend Key. 2665 * java/security/PrivateKey.java: Extend Key. 2666 26672001-06-02 Anthony Green <green@redhat.com> 2668 2669 * java/lang/natRuntime.cc (_Jv_FindSymbolInExecutable): Provide an 2670 alternate when USE_LTDL not defined. 2671 26722001-06-02 Anthony Green <green@redhat.com> 2673 2674 * configure: Rebuild. 2675 * configure.in: Remove data_start hack. 2676 * libgcj.spec.in: Ditto. 2677 * Makefile.in: Rebuild. 2678 * Makefile.am: Ditto. 2679 * libgcjdata.c: Remove. 2680 26812001-06-02 Anthony Green <green@redhat.com> 2682 2683 * configure: Rebuild. 2684 * configure.in (LIBFFIINCS, LIBFFI): Introduce. Add 2685 --without-libffi option. Tweak --disable-java-net processing. 2686 * Makefile.in: Rebuild. 2687 * Makefile.am (LIBFFIINCS, LIBFFI): Use. 2688 * include/config.h.in: Rebuild. 2689 * acconfig.h (USE_LIBFFI): Define. 2690 * java/lang/reflect/natMethod.c: Use USE_LIBFFI. 2691 26922001-06-02 Anthony Green <green@redhat.com> 2693 2694 * configure: Rebuilt. 2695 * configure.in: Test for sigaction on native builds. 2696 * prims.cc: Check HAVE_SIGACTION. 2697 * include/config.h.in: Rebuilt. 2698 26992001-05-31 Jeff Sturm <jsturm@one-point.com> 2700 2701 * natFile.cc (get_entry): Removed functions. 2702 (performList): Call readdir or readdir_r if HAVE_READDIR_R defined. 2703 Allocate enough storage for d_name if using readdir_r. 2704 27052001-05-31 Tom Tromey <tromey@redhat.com> 2706 2707 * java/io/natFileDescriptorPosix.cc (open): Allocate buffer to 2708 correct size. 2709 (write): Loop until write completes. From Corey Minyard. 2710 27112001-05-29 Laurent Guerby <guerby@acm.org> 2712 2713 * java/awt/geom/Rectangle2D.java: fix doc typo. 2714 27152001-05-31 Tom Tromey <tromey@redhat.com> 2716 2717 * java/sql/DriverManager.java (getDrivers): Handle case where 2718 driver's class loader is null. From Corey Minyard. 2719 27202001-05-29 Tom Tromey <tromey@redhat.com> 2721 2722 * include/jvm.h (_Jv_ThrowNoMemory): Mark as noreturn. 2723 2724 * configure: Rebuilt. 2725 * configure.in: Only add multilib support code if we just rebuilt 2726 top-level Makefile. 2727 27282001-05-29 Andrew Haley <aph@redhat.com> 2729 2730 * include/i386-signal.h (MAKE_THROW_FRAME): Don't fix up frame 2731 pointer: the dwarf unwinder in libgcc will do everything that's 2732 needed. 2733 (HANDLE_DIVIDE_OVERFLOW): Tidy. Don't mess with stack frames any 2734 more than we absolutely need to. 2735 * configure.host (EXCEPTIONSPEC): Remove libgcj_sjlj on Alpha. 2736 * configure.in (SIGNAL_HANDLER): Use include/dwarf2-signal.h on 2737 Alpha. 2738 (SIGNAL_HANDLER): Test "$enable_sjlj_exceptions", not 2739 "$libgcj_sjlj". 2740 * configure: Rebuilt. 2741 * include/dwarf2-signal.h (MAKE_THROW_FRAME): Adjust PC 2742 for Alpha. 2743 (SIGNAL_HANDLER): Use siginfo style handler. 2744 (INIT_SEGV): Likewise. 2745 (INIT_FPE): Likewise. 2746 * include/ppc-signal.h: Delete whole file. 2747 27482001-05-24 Tom Tromey <tromey@redhat.com> 2749 2750 * java/lang/natString.cc (init): Throw 2751 ArrayIndexOutOfBoundsException. 2752 (getChars): Likewise. 2753 (getBytes): Likewise. 2754 (valueOf): Likewise. 2755 2756 * configure.in: Only allow hash synchronization when POSIX threads 2757 are enabled. 2758 * java/lang/natObject.cc (alloc_heavy): Properly find `init' field 2759 of sync info object. 2760 27612001-05-23 Tom Tromey <tromey@redhat.com> 2762 2763 * Makefile.in: Rebuilt. 2764 * Makefile.am (AM_CXXFLAGS): Remove -fvtable-thunks. 2765 2766 Revert patch of 2001-05-21: 2767 * Makefile.am (libgcj_la_DEPENDENCIES): Removed nat_files. 2768 (libgcj_la_LIBADD): Likewise. 2769 (libgcjx_la_DEPENDENCIES): Removed x_nat_files. 2770 (libgcjx_la_LIBADD): Likewise. 2771 2772 * posix-threads.cc (_Jv_self_cache): Renamed from self_cache. 2773 * gcj/Makefile.in: Rebuilt. 2774 * gcj/Makefile.am (gcj_HEADERS): Added libgcj-config.h. 2775 * gcj/javaprims.h: Include gcj/libgcj-config.h. 2776 * gcj/libgcj-config.h.in: New file. 2777 * libgcj.spec.in (*jc1): Added @HASH_SYNC_SPEC@. 2778 * configure: Rebuilt. 2779 * configure.in: Enable hash synchronization by default on some 2780 platforms. 2781 (HASH_SYNC_SPEC): New subst. 2782 (AC_CONFIG_HEADER): Added gcj/libgcj-config.h. 2783 Correctly use `test -z' instead of `test -n' in a couple places. 2784 (JV_HASH_SYNCHRONIZATION): Use AC_DEFINE; don't add to 2785 LIBGCJ_CXXFLAGS. 2786 * configure.host (enable_java_net_default): Initialize. 2787 (enable_hash_synchronization_default): New variable. 2788 27892001-05-23 Hans Boehm <Hans_Boehm@hp.com> 2790 2791 * boehm.cc (_Jv_MarkObj): Don't mark sync_info when hash 2792 synchronization in use. 2793 (_Jv_MarkArray): Likewise. 2794 (_Jv_AllocBytes): Don't check return result. 2795 (handle_out_of_memory): New function. 2796 (_Jv_InitGC): Set GC_oom_fn. 2797 (trace_one_vtable): New global. 2798 (_Jv_AllocTraceOne): New function. 2799 * configure.in: Added --enable-hash-synchronization. 2800 * defineclass.cc, prims.cc, resolve.cc, java/lang/natString.cc, 2801 java/net/natInetAddress.cc: Remove _Jv_AllocBytesChecked. 2802 * nogc.cc (_Jv_AllocObj): Throw out-of-memory. 2803 (_Jv_AllocArray): Likewise. 2804 (_Jv_AllocBytes): Likewise. 2805 (_Jv_AllocPtrFreeObject): New function. 2806 (_Jv_AllocTraceOne): Likewise. 2807 * posix-threads.cc (_Jv_ThreadRegister): Handle slow 2808 pthread_self(). 2809 (self_cache): New global. 2810 (_Jv_ThreadSelf_out_of_line): New function. 2811 * prims.cc (_Jv_AllocBytesChecked): Removed. 2812 (_Jv_ThrowNoMemory): New function. 2813 (_Jv_AllocObject): Don't check for null return from allocator. 2814 (_Jv_NewObjectArray): Likewise. 2815 (_Jv_AllocPtrFreeObject): New function. 2816 (_Jv_NewPrimArray): Allocate pointer-free object if possible. 2817 * include/javaprims.h (_Jv_AllocPtrFreeObject): Declare. 2818 (_Jv_MonitorEnter, _Jv_MonitorExit): Don't return value. 2819 * include/boehm-gc.h (_Jv_AllocObj): Define. 2820 (_Jv_AllocPtrFreeObj): Define. 2821 * include/jvm.h (_Jv_AllocPtrFreeObj): Declare. 2822 (_Jv_ThrowNoMemory): Declare. 2823 (_Jv_AllocTraceOne): Declare. 2824 (_Jv_AllocBytesChecked): Removed. 2825 * include/posix-threads.h (_Jv_MutexInit, _Jv_MutexLock, 2826 _Jv_MutexUnlock): Handle LOCK_DEBUG. 2827 (_Jv_ThreadSelf): Handle case where system pthread_self() is 2828 slow. 2829 * java/lang/Class.h (Class): Declare _Jv_AllocPtrFreeObj as 2830 friend. 2831 * java/lang/Object.h (sync_info): Conditional upon presence of 2832 hash synchronization. 2833 * java/lang/natObject.cc: Much new code to handle thin locks and 2834 hash synchronization. 2835 * java/lang/natString.cc (_Jv_AllocString): Allocate pointer-free 2836 object if possible. 2837 28382001-05-23 Joseph S. Myers <jsm28@cam.ac.uk> 2839 2840 * gij.cc (version): Update copyright year. 2841 28422001-05-22 Anthony Green <green@redhat.com> 2843 2844 * configure.in: Tweak canadian cross test, and don't redefine GCJ 2845 for cross builds. 2846 28472001-05-21 Per Bothner <per@bothner.com> 2848 2849 Implement invocation interface; don't create new thread for main. 2850 * java/lang/Thread.java (gen_name): Make native. 2851 (<init>(Thread,THreadGroup,Runnable,String)): New private 2852 constructor, used by other constructors, and _Jv_AttachCurrentThread. 2853 * java/lang/natThread.cc (gen_name): New implementation. 2854 (_Jv_AttachCurrentThread, _Jv_DetachCurrentThread): New. 2855 * prims.cc (main_init): Removed, replaced by _Jv_CreateJavaVM. 2856 (_Jv_CreateJavaVM): New runtime initialization procedure. 2857 (runFirst): New proecdure - mostly code from old FirstThread::run. 2858 (JvRunMain, _Jv_RunMain): Re-write to use new invocation code. 2859 * gcj/cni.h (JvCreateJavaVM, JvAttachCurrentThread, 2860 JvDetachCurrentThread): New inline wrappers. 2861 * gcj/javaprims.h (_Jv_CreateJavaVM, _Jv_AttachCurrentThread, 2862 _Jv_DetachCurrentThread): New declarations. 2863 * gnu/gcj/runtime/FirstThread.java: Gutted. Now contains only ... 2864 (getMain): new static method. 2865 * gnu/gcj/runtime/natFirstThread.cc: Removed; run method replaced 2866 by runFirst in prims.cc. 2867 (java/lang/Thread.h): Update for new invocation interface. 2868 * include/posix-threads.h (_Jv_ThreadRegister, 2869 _Jv_ThreadUnRegister): New declarations. 2870 * posix-threads.cc (_Jv_ThreadRegister, _Jv_ThreadUnRegister): New. 2871 (really_start): Use new _Jv_ThreadRegister. 2872 * include/no-threads.h (_Jv_ThreadInitData): No longer inline. 2873 (_Jv_ThreadRegister, _Jv_ThreadUnRegister): New empty inlines. 2874 * no-threads.cc (_Jv_ThreadInitData): Set _Jv_OnlyThread here. 2875 Complain of called when _Jv_OnlyThread already set. 2876 (_Jv_ThreadStart): Always JvFail. 2877 * include/win32-threads.h (_Jv_Thread_t): New thread_obj field. 2878 (_Jv_ThreadRegister, _Jv_ThreadUnRegister): New declarations. 2879 * win32-threads.cc (struct starter): Remove objet field - 2880 we use _Jv_Thread_t's new thread_obj field instead. 2881 (_Jv_ThreadInitData): Set _Jv_Thread_t's thread_obj field. 2882 (_Jv_ThreadRegister, _Jv_ThreadUnRegister): New. 2883 (really_start): Use new _Jv_ThreadRegister. 2884 * jni.cc (_Jv_JNI_AttachCurrentThread): Use _Jv_AttachCurrentThread. 2885 (_Jv_JNI_DetachCurrentThread): Use _Jv_DetachCurrentThread. 2886 * gnu/gcj/jni/NativeThread.java, gnu/gcj/jni/natNativeThread.cc: 2887 Removed - no longer needed with new invocation interface. 2888 * Makefile.am: Update for removed/added files. 2889 28902001-05-21 Per Bothner <per@bothner.com> 2891 2892 * Makefile.am (libgcj_la_DEPENDENCIES): Add $(nat_files). 2893 (libgcj_la_LIBADD): Likewise. 2894 (libgcjx_la_DEPENDENCIES, libgcjx_la_LIBADD): Add $(x_nat_files). 2895 28962001-05-21 Per Bothner <per@bothner.com> 2897 2898 * gcj/javaprims.h (_Jv_FormatInt): New declaration. 2899 * java/lang/natString.cc (_JvFormatInt): New primitive, with logic 2900 taken from old Integer.toString code. 2901 (Integer::valueOf): Use _Jv_FormatInt. 2902 * java/lang/Integer.java (toString): Just use call String.valueOf. 2903 * java/lang/Long.java (toString): Fix typo in comment. 2904 * java/lang/String.java (valueOf(int)): Make native. 2905 * java/lang/StringBuffer.java (append(int)): Make native. 2906 * java/lang/natStringBuffer.cc: New file, for append(jint). 2907 * Makefile.am (nat_source_files): Add java/lang/natStringBuffer.cc. 2908 29092001-05-21 Tom Tromey <tromey@redhat.com> 2910 2911 * gnu/gcj/runtime/VMClassLoader.java (VMClassLoader): Now public. 2912 29132001-05-18 Andrew Haley <aph@cambridge.redhat.com> 2914 2915 * include/dwarf2-signal.h: New file. 2916 * configure.in (SYSDEP_SOURCES): Add dwarf2-signal.h for PPC. 2917 * configure.host (EXCEPTIONSPEC): Don't use sjlj on PPC. 2918 * configure: Rebuilt. 2919 29202001-05-21 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2921 2922 * configure.in: Update boehm-gc include dir for new GC version. 2923 * configure: Rebuilt. 2924 * exception.cc: Only include <gc.h>. Remove TRUE/FALSE hacks and 2925 extern "C" wrapper. 2926 * boehm.cc: Update includes for new GC version. MAKE_PROC is now 2927 GC_MAKE_PROC. mark_proc is now GC_mark_proc. 2928 * posix-threads.cc: Only include <gc.h>. Don't need to wrap with 2929 extern "C". 2930 29312001-05-18 Alexandre Petit-Bianco <apbianco@redhat.com> 2932 2933 * include/posix-threads.h (_Jv_CondInit): `0' used in place of `NULL.' 2934 (_Jv_MutexInit): Likewise. 2935 29362001-05-18 Tom Tromey <tromey@redhat.com> 2937 2938 * Makefile.in: Rebuilt. 2939 * Makefile.am (awt_java_source_files): Added Polygon.java. 2940 29412001-05-18 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2942 2943 * include/jvm.h: Move "#pragma GCC java_exceptions" to ... 2944 * gcj/javaprims.h: ... here. 2945 * gnu/gcj/io/shs.cc: Add "#pragma GCC java_exceptions". 2946 29472001-05-17 Martin Kahlert <martin.kahlert@infineon.com> 2948 2949 * java/lang/natClass.cc (_Jv_FindIIndex): Fix an off by one error 2950 with length of ioffset table. 2951 (_Jv_IsAssignableFrom): Likewise. 2952 29532001-05-17 Per Bothner <per@bothner.com> 2954 2955 * Makefile.am (ZIP): The "fastjar" binary is now plain "jar". 2956 29572001-05-16 Tom Tromey <tromey@redhat.com> 2958 2959 * java/text/SimpleDateFormat.java (parse): Handle non-dst time 2960 zones. 2961 29622001-05-15 Tom Tromey <tromey@redhat.com> 2963 2964 * java/util/GregorianCalendar.java (computeTime): Only call 2965 getTimeZone() once. 2966 29672001-05-14 Tom Tromey <tromey@redhat.com> 2968 2969 * java/text/SimpleDateFormat.java (parse): Clear DST_OFFSET and 2970 ZONE_OFFSET just before computing the time. 2971 29722001-05-12 Zack Weinberg <zackw@stanford.edu> 2973 2974 * Makefile.am (libgcj_la_OBJECTS): Remove libsupc++convenience.la. 2975 * Makefile.in: Regenerate (by hand). 2976 * include/jvm.h: Add #pragma GCC java_exceptions at top of file. 2977 * doc/cni.sgml: Document #pragma GCC java_exceptions. 2978 29792001-05-11 Richard Henderson <rth@redhat.com> 2980 2981 * configure.in (ia64-*): Don't set SYSDEP_SOURCES. 2982 * java/lang/natThrowable.cc: Don't use __ia64_backtrace. 2983 29842001-05-11 Richard Henderson <rth@redhat.com> 2985 2986 * exception.cc: Include unwind-pe.h. Remove all pointer 2987 encoding logic. 2988 29892001-05-10 Tom Tromey <tromey@redhat.com> 2990 2991 * Makefile.in: Rebuilt. 2992 * Makefile.am (awt_java_source_files): Added Polygon.java. 2993 * java/awt/Polygon.java: New file. 2994 2995 * java/awt/geom/AffineTransform.java 2996 (setToRotation(double,double,double)): New method. 2997 (AffineTransform): Set type to TYPE_GENERAL_TRANSFORM. 2998 (setToShear): Likewise. 2999 30002001-05-10 Tom Tromey <tromey@redhat.com> 3001 3002 * java/util/GregorianCalendar.java: Imported from Classpath. 3003 * gnu/java/locale/LocaleInformation_nl.java: New file from 3004 Classpath. 3005 * gnu/java/locale/LocaleInformation_en.java: Likewise. 3006 * gnu/java/locale/LocaleInformation_de.java: Likewise. 3007 * gnu/java/locale/LocaleInformation.java: Likewise. 3008 * natGregorianCalendar.cc: Removed. 3009 * Makefile.in: Rebuilt. 3010 * Makefile.am (nat_source_files): Removed 3011 natGregorianCalendar.cc. 3012 30132001-05-10 Tom Tromey <tromey@redhat.com> 3014 3015 * java/text/SimpleDateFormat.java (computeCenturyStart): New 3016 method. 3017 (defaultCenturyStart): Use it. 3018 (readObject): Likewise. 3019 (SimpleDateFormat): Clear the calendar. Set the grouping on the 3020 number format. 3021 (parse): Copy the calendar before modifying it. Correctly handle 3022 the time zone. 3023 3024 * java/util/Calendar.java (clear): Set field value(s) to 0. 3025 30262001-05-10 Jeff Sturm <jsturm@one-point.com> 3027 3028 * Calendar.java (get): Clear areFieldsSet if requested field 3029 is not set. 3030 (set): Unset fields that depend on new value. 3031 30322001-05-06 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 3033 3034 * java/lang/Class.h (_Jv_Self): New union type. 3035 (Class): Manipulate vtable pointer via _Jv_Self union. Thanks to 3036 Jeff Sturm and Fergus Henderson. 3037 30382001-05-06 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 3039 3040 * java/lang/ClassLoader.java: Remove dead code fragment. 3041 30422001-05-03 Martin Kahlert <martin.kahlert@infineon.com> 3043 3044 * jni.cc (_Jv_JNI_GetPrimitiveArrayRegion): Fixed bounds 3045 checking. 3046 (_Jv_JNI_SetPrimitiveArrayRegion): Likewise. 3047 30482001-04-30 Andrew Haley <aph@cambridge.redhat.com> 3049 3050 * libgcj.spec.in (jc1): Add EXCEPTIONSPEC. 3051 * configure.host (EXCEPTIONSPEC): New. 3052 * configure.in (EXCEPTIONSPEC): New. 3053 * configure: Rebuilt. 3054 30552001-05-02 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 3056 3057 * doc/*.texi: Remove generated documentation. 3058 30592001-04-30 Matt Kraai <kraai@alumni.carnegiemellon.edu> 3060 3061 * java/io/natFile.cc (performSetReadOnly): Fix #ifdef test. 3062 (performDelete): Fix #endif placement. 3063 30642001-04-27 Zack Weinberg <zackw@stanford.edu> 3065 3066 * prims.cc (_Jv_ThisExecutable): Use _Jv_Malloc. 3067 * posix-threads.cc (_Jv_ThreadInitData): Use _Jv_Malloc. 3068 (_Jv_ThreadDestroyData): Use _Jv_Free. 3069 * java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader): 3070 Use _Jv_Malloc. 3071 30722001-04-27 Tom Tromey <tromey@redhat.com> 3073 3074 * jni.cc (_Jv_JNI_GetPrimitiveArrayRegion): Fixed bounds 3075 checking. 3076 (_Jv_JNI_SetPrimitiveArrayRegion): Likewise. 3077 30782001-04-27 Martin Kahlert <martin.kahlert@infineon.com> 3079 3080 * include/jni.h (struct JNINativeInterface): Fixed types in 3081 Get/Set*ArrayRegion declarations. 3082 (class _Jv_JNIEnv): Likewise. 3083 30842001-04-26 Alexandre Oliva <aoliva@redhat.com> 3085 3086 * configure.in: Obtain THREADS with `gcc -v'. 3087 * configure: Rebuilt. 3088 30892001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 3090 3091 Fix PR libgcj/2237: 3092 * java/io/ObjectStreamClass.java (setClass): Calculate 3093 serialVersionUID for local class and compare it against the UID 3094 from the Object Stream. Throw InvalidClassException upon mismatch. 3095 (setUID): Renamed to... 3096 (getClassUID): this. Return the calculated class UID rather than 3097 setting uid field directly. 3098 (getDefinedSUID): Removed. 3099 * java/io/ObjectInputStream.java (resolveClass): Use the 3100 three-argument Class.forName(). 3101 * java/io/InvalidClassException (toString): Don't include classname in 3102 result if it is null. 3103 31042001-04-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> 3105 3106 * java/net/natInetAddress.cc (java::net::InetAddress::aton): 3107 Wrap use of inet_pton in HAVE_INET6. 3108 31092001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 3110 3111 java.security merge and ClassLoader compliance fixes. 3112 3113 * java/lang/Class.h (Class): Include ProtectionDomain.h. 3114 New protectionDomain field. 3115 (forName): Add initialize parameter. Fixes declaration to comply with 3116 JDK spec. 3117 * java/lang/natClass.cc (forName): Correct declaration of the three-arg 3118 variant. Honour "initialize" flag. 3119 (getProtectionDomain0): New method. 3120 * java/lang/Class.java: Fix forName() declaration. 3121 (getPackage): New method based on Classpath implementation. 3122 (getProtectionDomain0): New native method decl. 3123 (getProtectionDomain): New method. 3124 * java/lang/ClassLoader.java (getParent): Now final. 3125 (definedPackages): New field. 3126 (getPackage): New. 3127 (defineClass): New variant with protectionDomain argument. 3128 (definePackage): New. 3129 (getPackages): New. 3130 (findSystemClass): Now final. 3131 (getSystemResourceAsStream): Remove redundant "final" modifier. 3132 (getSystemResource): Remove redundant "final" modifier. 3133 (getResources): Now final. 3134 (protectionDomainPermission): New static field. 3135 (unknownProtectionDomain): Ditto. 3136 (defaultProtectionDomain): Ditto. 3137 (getSystemClassLoader): Now non-native. 3138 * java/util/ResourceBundle.java (tryGetSomeBundle): Use the correct 3139 arguments for Class.forName(). 3140 * java/lang/Package.java: New file. 3141 * gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Removed. 3142 (instance): Static initialize singleton. 3143 (findClass): Override this, not findSystemClass. 3144 * java/lang/natClassLoader.cc (defineClass0): Set class's 3145 protectionDomain field as specified. 3146 (getSystemClassLoader): Removed. 3147 (findClass): Renamed from findSystemClass. Call the interpreter via 3148 URLClassLoader.findClass if loading class via dlopen fails. 3149 3150 * java/security/*.java: java.security import/merge with Classpath. 3151 * java/security/acl/*.java: Likewise. 3152 * java/security/interfaces/*.java: Likewise. 3153 * java/security/spec/*.java: Likewise. 3154 * java/net/NetPermission.java: Likewise. 3155 * java/net/SocketPermission.java: Likewise. 3156 * gnu/java/security/provider/DefaultPolicy.java: Likewise. 3157 3158 * Makefile.am: Add new classes. 3159 * Makefile.in: Rebuilt. 3160 * gcj/javaprims.h: CNI namespace rebuild. 3161 31622001-04-24 Alexandre Oliva <aoliva@redhat.com> 3163 3164 * configure.in (CPPFLAGS): Added builddir and srcdir to CPPFLAGS 3165 for libtool tests. Pre-create gnu/classpath/Configuration.java. 3166 * configure: Rebuilt. 3167 31682001-04-21 Tom Tromey <tromey@redhat.com> 3169 3170 * Makefile.in: Rebuilt. 3171 * Makefile.am (awt_java_source_files): Added Line2D.java. 3172 * java/awt/geom/Line2D.java: Wrote. 3173 3174 * java/awt/Menu.java (addNotify): Wrote. 3175 3176 * java/awt/PopupMenu.java (addNotify): Implemented. 3177 (show): Likewise. 3178 3179 * java/awt/Scrollbar.java (addNotify): Call super.addNotify. 3180 * java/awt/List.java (addNotify): Call super.addNotify. 3181 * java/awt/Label.java (addNotify): Call super.addNotify. 3182 * java/awt/FileDialog.java (addNotify): Call super.addNotify. 3183 * java/awt/Dialog.java (addNotify): Call super.addNotify. 3184 * java/awt/Choice.java (addNotify): Call super.addNotify. 3185 * java/awt/CheckboxMenuItem.java (addNotify): Call super.addNotify. 3186 * java/awt/Checkbox.java (addNotify): Call super.addNotify. 3187 3188 * java/awt/List.java (replaceItem): Notify peer. 3189 3190 * java/awt/geom/Rectangle2D.java 3191 (Float.setRect(float,float,float,float)): New method. 3192 3193 * java/awt/event/ContainerEvent.java (getContainer): Now returns 3194 Container. 3195 3196 * java/awt/RenderingHints.java (Key): Class now public. 3197 3198 * java/awt/Rectangle.java (Rectangle): Now implements 3199 Serializable. 3200 (getPathIterator): Removed. 3201 3202 * java/awt/GraphicsConfiguration.java (GraphicsConfiguration): New 3203 constructor. 3204 3205 * java/awt/FileDialog.java: Wrote. 3206 3207 * java/awt/EventQueue.java (isDispatchThread): Now public. 3208 (invokeLater): Likewise. 3209 3210 * java/awt/Component.java (setCursor): Update peer. 3211 (getFontMetrics): Use peer. 3212 3213 * java/awt/ComponentOrientation.java (ComponentOrientation): Class 3214 now final. 3215 32162001-04-20 Tom Tromey <tromey@redhat.com> 3217 3218 * java/awt/List.java: Wrote. 3219 * java/awt/Dialog.java: Wrote. 3220 32212001-04-20 Warren Levy <warrenl@redhat.com> 3222 3223 * java/lang/natSystem.cc (getSystemTimeZone): Adjust for DST. 3224 * java/text/SimpleDateFormat.java 3225 (indexInArray): Removed private method. 3226 (processYear): Removed private method. 3227 (parseLenient): Removed private method. 3228 (parseLeadingZeros): Removed private method. 3229 (parseStrict): Removed private method. 3230 (expect): Added new private method. 3231 (parse): Reverted to pre-Classpath merge version with minor fixes. 3232 * java/util/natGregorianCalendar.cc (computeTime): Handle strict 3233 calendars. 3234 32352001-04-12 Bryce McKinlay <bryce@albatross.co.nz> 3236 3237 * java/io/File.java (normalizePath): New private method. 3238 (File (String)): Use normalizePath(). 3239 (File (String, String)): Likewise. 3240 3241 * Makefile.am (libffi_files): Removed. 3242 (libgcj.la): Link libffi as a convenience library instead of 3243 refering to its object files directly. 3244 * Makefile.in: Rebuilt. 3245 32462001-04-08 Per Bothner <per@bothner.com> 3247 3248 * java/lang/natString.cc (_Jv_NewStringUtf8Const): Register finalizer. 3249 Recalculate hash, since Utf8Const's hash is only 16 bits. 3250 3251 * java/lang/natString.cc (_Jv_StringFindSlot, rehash): Use high-order 3252 bits of hash to calculate step for chaining. 3253 3254 * java/lang/natString.cc (intern, _Jv_NewStringUtf8Const): Rehash 3255 when 2/3 full, rather than 3/4 full. 3256 32572001-04-06 Tom Tromey <tromey@redhat.com> 3258 3259 * jni.cc (wrap_value<jobject>, wrap_value<jclass>): Removed. 3260 (wrap_value<T*>): New specialization. 3261 (_Jv_JNI_PopLocalFrame): Update env->locals. 3262 32632001-04-05 Tom Tromey <tromey@redhat.com> 3264 3265 * libtool-version: Updated current. 3266 32672001-04-04 Andreas Jaeger <aj@suse.de> 3268 3269 * gcj/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo. 3270 * gcj/Makefile.in: Rebuilt. 3271 * Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo. 3272 * Makefile.in: Rebuilt. 3273 * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo. 3274 * testsuite/Makefile.in: Rebuild. 3275 * include/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo. 3276 * include/Makefile.in: Rebuild. 3277 32782001-04-02 Zack Weinberg <zackw@stanford.edu> 3279 3280 * testsuite/lib/libjava.exp: Correct typo: 'output from source 3281 compiled test', not 'execution from source compiled test'. 3282 Use UNTESTED, not XFAIL, for tests which are not run because 3283 they depend on a previous test which failed. 3284 32852001-04-02 Richard Henderson <rth@redhat.com> 3286 3287 * configure.in (GCC_UNWIND_INCLUDE): Assume we're built within 3288 the same tree as gcc. 3289 * configure: Rebuilt. 3290 3291 * exception.cc (_Jv_Throw): Clarify commentary. 3292 32932001-04-02 Marcus G. Daniels <mgd@swarm.org> 3294 3295 * jni.cc (wrap_value<jclass>): New specialization. 3296 32972001-04-02 Tom Tromey <tromey@redhat.com> 3298 3299 * java/io/PrintStream.java (out): Removed field. Fixes PR 3300 java/2449. 3301 (write): Call flush, not out.flush, per spec. 3302 (close): Flush output stream, per spec. Handle 3303 InterruptedIOException. 3304 (checkError): Likewise. 3305 (flush, print, write): Handle InterruptedIOException per spec. 3306 (PrintStream): Don't create BufferedOutputStream. 3307 (work_bytes): New field. 3308 (writeChars): Use work_bytes. Don't assume `out' is a 3309 BufferedOutputStream. 3310 33112001-04-02 Torsten Rueger <torsten.rueger@firsthop.com> 3312 3313 * java/text/MessageFormat.java (setLocale): Added missing `else'. 3314 For PR libgcj/2429. 3315 33162001-03-30 Tom Tromey <tromey@redhat.com> 3317 3318 * jni.cc (add_char): Correctly encode non-ascii characters. 3319 (add_char): Define even when INTERPRETER not defined. 3320 (mangled_name): Likewise. 3321 (_Jv_GetJNIEnvNewFrame): Likewise. 3322 (_Jv_LookupJNIMethod): Likewise. 3323 33242001-03-23 Kevin B Hendricks <khendricks@ivey.uwo.ca> 3325 3326 * configure.host: Enable interpreter for PPC. 3327 33282001-04-02 Bryce McKinlay <bryce@albatross.co.nz> 3329 3330 * java/lang/natSystem.cc (init_properties): Revert yesterday's changes 3331 to "file.separator", "path.separator", and "java.io.tmpdir" property 3332 initialization. 3333 * java/io/File.java: Likewise. 3334 * java/io/natFile.cc (init_native): Likewise. 3335 * java/io/natFileWin32.cc (init_native): Likewise. 3336 33372001-04-01 Per Bothner <per@bothner.com> 3338 3339 * java/lang/natString.cc (intern): If string's data does not point to 3340 this String, make a fresh String that does. 3341 3342 * java/lang/natString.cc (unintern): Replace by static function. 3343 * java/lang/String.java (unintern): Remove method. 3344 33452001-04-01 Per Bothner <per@bothner.com> 3346 3347 * DeflaterOutputStream.java (deflate): Loop while def.needsInput. 3348 (finish): def.deflate needs to be called in a loop. 3349 (inbuf, inbufLength): New private fields. 3350 (write(int)): Use inbuf. 3351 (write(byte[],int,int): Check if pending output in inbuf. 3352 * ZipOutputStream.java: Don't use Deflater if stored. 3353 Use a Checksum object directly, not via a CheckedOutputStream. 3354 (uncompressed_size): New field, 3355 (closeEntry): Only write data_directory if needed. 3356 (write): If STORED, write directly. 3357 Always update crc, and uncompressed_size. 3358 (write_entry): Fix lots of protocol erors. 3359 33602001-04-01 Bryce McKinlay <bryce@albatross.co.nz> 3361 3362 1.3-Compliant Implementation of java.io.File. 3363 * java/lang/natSystem.cc (init_properties): Get "file.separator", 3364 "path.separator", and "java.io.tmpdir" from the File class, instead 3365 of setting them explicitly. 3366 * java/io/File.java: Do not canonicalize paths for security manager 3367 checks. Call init_native() from static initializer. Do not pass path 3368 argument to native methods. New native method declarations. Some 3369 security manager checks moved to checkWrite(). 3370 (equals): Check file system case sensitivity and act appropriatly. 3371 (hashCode): Likewise. 3372 (isHidden): New method implemented. 3373 (performList): Changed prototype. Now takes a class argument specifying 3374 the class of the returned array: Strings or File objects. Also added 3375 FileFilter argument. 3376 (listFiles): New variants with "File" return type implemented. 3377 (createTempFile): Use createNewFile(). Use maxPathLen. 3378 (setReadOnly): New method implemented. 3379 (listRoots): Likewise. 3380 (compareTo): Likewise. 3381 (setLastModified): Likewise. 3382 (checkWrite): New method. 3383 (setPath): Removed. 3384 * java/io/natFile.cc: Various functions no longer take canonical path 3385 argument. 3386 (stat): Handle ISHIDDEN query. 3387 (isAbsolute): Remove WIN32 cruft. 3388 (performList): New arguments. Handle returning either File[] or String[] 3389 arrays. Check with FileFilter or FilenameFilter arguments as 3390 appropriate. Use an ArrayList, not a Vector, for the temporary list. 3391 (performSetReadOnly): New method implemented. 3392 (performListRoots): Likewise. 3393 (performSetLastModified): Likewise. 3394 (performCreate): Likewise. 3395 (init_native): New initialization function. 3396 * java/io/natFileWin32.cc: Various functions no longer take canonical 3397 path argument. 3398 (stat): Add FIXME about ISHIDDEN query. 3399 (performList): New arguments. Handle returning either File[] or String[] 3400 arrays. Check with FileFilter or FilenameFilter arguments as 3401 appropriate. Use an ArrayList, not a Vector, for the temporary list. 3402 (performSetReadOnly): New. Stubbed. 3403 (performListRoots): Likewise. 3404 (performSetLastModified): Likewise. 3405 (performCreate): Likewise. 3406 (init_native) New initialization function. 3407 * configure.in: Check for utime() and chmod(). 3408 * configure: Rebuilt. 3409 * include/config.h.in: Rebuilt. 3410 3411 Resolves PR libgcj/1759. 3412 34132001-03-28 Richard Henderson <rth@redhat.com> 3414 3415 IA-64 ABI Exception Handling: 3416 * Makefile.am (GCC_UNWIND_INCLUDE): Rename from EH_COMMON_INCLUDE. 3417 (AM_CXXFLAGS): -fnon-call-exceptions not -fasynchronous-exceptions. 3418 Remove EXCEPTIONSPEC. 3419 * configure.host (libgcj_sjlj): Remove. 3420 * configure.in (EXCEPTIONSPEC): Remove. 3421 (enable-sjlj-exceptions): Detect if not specified. 3422 (GCC_UNWIND_INCLUDE): Rename from EH_COMMON_INCLUDE; change 3423 what header we're looking for. 3424 * libgcj.spec.in (jc1): Remove EXCEPTIONSPEC. 3425 * Makefile.in, configure: Regenerate. 3426 * exception.cc: Don't declare libgcc2 stuff. 3427 (java_eh_info, _Jv_type_matcher, _Jv_exception_info): Remove. 3428 (_Jv_eh_alloc, _Jv_eh_free, _Jv_setup_eh_info): Remove. 3429 (win32_get_restart_frame): Remove. 3430 (struct java_exception_header): New. 3431 (__gcj_exception_class): New. 3432 (get_exception_header_from_ue): New. 3433 (_Jv_Throw): Rewrite for IA-64 ABI unwind routines. 3434 (size_of_encoded_value, read_encoded_value): New. 3435 (read_uleb128, read_sleb128, parse_lsda_header): New. 3436 (get_ttype_entry, __gcj_personality_sj0): New. 3437 * gcj/javaprims.h (_Jv_Sjlj_Throw): Remove. 3438 34392001-03-27 Joerg Brunsmann <joerg_brunsmann@yahoo.de> 3440 3441 * javax/naming/InitialContext.java (init): Fix typo. 3442 (composeName): Remove unnecessary semicolon. 3443 (addToEnvironment): Remove unnecessary semicolon. 3444 (addToEnvironment): Use put() instead of add(). 3445 3446 * javax/naming/InitialContext.java (InitialContext): 3447 Make public. 3448 (destroySubcontext): Method doesn't return a result. 3449 * javax/naming/Context.java: Import java.util.Hashtable. 3450 * javax/naming/Name.java: Import java.util.Enumeration. 3451 34522001-03-27 Bryce McKinlay <bryce@albatross.co.nz> 3453 3454 * Makefile.am (libffi_files): Use 'find' to pick up libffi libtool 3455 objects in subdirectories. 3456 * Makefile.in: Rebuilt. 3457 34582001-03-25 Richard Henderson <rth@redhat.com> 3459 3460 * exception.cc (java_eh_info): Make value type jthrowable. 3461 (_Jv_type_matcher): Remove now unneeded cast. 3462 (_Jv_Throw): Make argument type jthrowable. Munge name 3463 for SJLJ_EXCEPTIONS here ... 3464 * gcj/cni.h: ... not here. 3465 (JvThrow): Remove. 3466 * gcj/javaprims.h (_Jv_Throw, _Jv_Sjlj_Throw): Update declarations. 3467 3468 * defineclass.cc, interpret.cc, jni.cc, posix-threads.cc, 3469 prims.cc, resolve.cc, gnu/gcj/runtime/natFirstThread.cc, 3470 gnu/gcj/xlib/natDrawable.cc, gnu/gcj/xlib/natFont.cc, 3471 gnu/gcj/xlib/natWMSizeHints.cc, gnu/gcj/xlib/natWindowAttributes.cc, 3472 gnu/gcj/xlib/natXImage.cc, java/io/natFile.cc, 3473 java/io/natFileDescriptorEcos.cc, java/io/natFileDescriptorPosix.cc, 3474 java/io/natFileDescriptorWin32.cc, java/io/natFileWin32.cc, 3475 java/lang/natClass.cc, java/lang/natClassLoader.cc, 3476 java/lang/natDouble.cc, java/lang/natObject.cc, 3477 java/lang/natPosixProcess.cc, java/lang/natRuntime.cc, 3478 java/lang/natString.cc, java/lang/natSystem.cc, 3479 java/lang/natThread.cc, java/lang/reflect/natArray.cc, 3480 java/lang/reflect/natConstructor.cc, java/lang/reflect/natField.cc, 3481 java/lang/reflect/natMethod.cc, java/util/zip/natDeflater.cc, 3482 java/util/zip/natInflater.cc: 3483 Use throw, not JvThrow or _Jv_Throw. 3484 34852001-03-24 Bryce McKinlay <bryce@albatross.co.nz> 3486 3487 * java/util/HashMap.java (HashMap): If 0 is given for initialCapacity 3488 paramater, bump it to 1. 3489 * java/util/Hashtable.java (Hashtable): Likewise. 3490 34912001-03-23 Per Bothner <per@bothner.com> 3492 3493 * java/lang/natDouble.cc (parseDouble): Cannot use errno to 3494 check for errors, since we don't want to throw exception on 3495 overflow/underflow. Instead, trim whitespace, and then check that 3496 _strtod_r uses up all the rest of the string. 3497 3498 * java/lang/natClass.cc (_Jv_IsAssignableFrom): Checking the 3499 ancestors array is invalid for interfaces, so do that *after* 3500 check that the target type is not an interface. 3501 35022001-03-23 Jeff Sturm <jsturm@one-point.com> 3503 3504 * prims.cc (_Jv_FindClassFromSignature): Check return of 3505 recursive call. Do not abort on invalid signature; return NULL 3506 instead. 3507 35082001-03-22 Tom Tromey <tromey@redhat.com> 3509 3510 * jni.cc (_Jv_JNI_GetAnyFieldID): Handle unresolved fields. 3511 * java/lang/reflect/natField.cc (getType): Use _Jv_ResolveField 3512 unconditionally. 3513 * include/jvm.h (_Jv_ResolveField): Declare. 3514 * include/java-interp.h (_Jv_ResolveField): Don't declare. 3515 * resolve.cc (_Jv_ResolveField): No longer conditional on 3516 INTERPRETER. 3517 35182001-03-23 Bryce McKinlay <bryce@albatross.co.nz> 3519 3520 Fix for PR libgcj/1736. Thanks to Robert Boehne and Alexandre Oliva 3521 for libtool hacking. 3522 * Makefile.am (libgcj.la): New explicit rule. Echo the list of objects 3523 to a temporary file, then invoke libtool with the -objectlist 3524 paramater. 3525 (libgcjx.la): Likewise. 3526 * Makefile.in: Rebuilt. 3527 35282001-03-22 Joerg Brunsmann <joerg_brunsmann@yahoo.de> 3529 3530 * javax/naming/Context.java (SECURITY_CREDENTIALS): Fix typo. 3531 35322001-03-22 Marcus G. Daniels <mgd@swarm.org> 3533 3534 * jni.cc (add_char): Handle `.' like `/'. 3535 35362001-03-22 Bryce McKinlay <bryce@albatross.co.nz> 3537 3538 * java/lang/reflect/Method.java (getExceptionTypes): Call getType() to 3539 initialize if exception_types is null. 3540 * java/lang/reflect/Constructor.java: Likewise. 3541 * java/lang/reflect/natConstructor.cc (getType): Initialize 3542 exception_types to an empty Object array. 3543 35442001-03-21 Tom Tromey <tromey@redhat.com> 3545 3546 * configure: Rebuilt. 3547 * configure.in (GCJFLAGS): Subst. 3548 * Makefile.in: Rebuilt. 3549 * Makefile.am (jv_convert_LDFLAGS): Added -shared-libgcc. 3550 (gij_LDFLAGS): Likewise. 3551 (JC1FLAGS): Added GCJFLAGS and removed -g. 3552 3553 * java/io/natFileDescriptorPosix.cc (open): Add O_CREAT in 3554 read/write case. Fixes PR libgcj/2338. 3555 35562001-03-20 Warren Levy <warrenl@redhat.com> 3557 3558 * java/util/TimeZone.java: Sync up with Classpath. Includes new 3559 and corrected SimpleTimeZone's for the timezones hash table. 3560 35612001-03-19 Per Bothner <per@bothner.com> 3562 3563 * java/net/URLStreamHandler.java (parseURL): Fix bug which would 3564 "canonicalize" "../../xxx" to "/xxx". 3565 35662001-03-19 Mark Wielaard <mark@klomp.org> 3567 3568 * java/util/ArrayList.java: Remove RCS keywords from comments 3569 * java/util/BasicMapEntry.java: idem 3570 * java/util/Dictionary.java: idem 3571 * java/util/HashSet.java: idem 3572 3573 * java/util/EventObject.java: reindent 3574 * java/util/Properties.java: idem 3575 * java/util/SortedMap.java: idem 3576 3577 * java/util/Enumeration.java: Merge with Classpath 3578 * java/util/EventListener.java: idem 3579 * java/util/Observable.java: idem 3580 * java/util/Observer.java: idem 3581 * java/util/Stack.java: idem 3582 35832001-03-17 Tom Tromey <tromey@redhat.com> 3584 3585 * java/lang/natString.cc (rehash): Don't bother with memset; 3586 _Jv_AllocBytes returns zero'd memory. Use _Jv_AllocBytesChecked. 3587 Use UNMASK_PTR. 3588 (UNMASK_PTR): New macro. 3589 (intern): Unmask pointer before returning it. Register finalizer 3590 for the string. 3591 (unintern): Handle case where 3592 (MASK_PTR): New macro. 3593 (PTR_MAKSED): Likewise. 3594 (_Jv_NewStringUtf8Const): Use UNMASK_PTR. 3595 35962001-03-01 Andrew Haley <aph@redhat.com> 3597 3598 * java/lang/natThrowable.cc (printRawStackTrace): Copy the 3599 stackTrace buffer to a correctly aligned pointer array. 3600 36012001-03-12 Bryce McKinlay <bryce@albatross.co.nz> 3602 3603 * java/lang/Runtime.java (_exit): Declare new package-private native. 3604 * java/lang/natRuntime.cc (_exit): Implemented. Same as exit() but 3605 without a security manager check. 3606 (exit): Call _exit after security check. 3607 * prims.cc (JvRunMain): Call Runtime._exit to shutdown the runtime 3608 "naturally". 3609 * java/lang/System.java (setSecurityManager): If a security manager 3610 is already in place, call checkPermission. 3611 * java/lang/ThreadGroup.java (uncaughtException): If printStackTrace() 3612 throws an exception, try to deal with it gracefully. 3613 * java/lang/ExceptionInInitializerError.java (printStackTrace): 3614 Only try to print the subordinate stack trace if "exception" is set. 3615 Print our class name first. 3616 36172001-03-08 Tom Tromey <tromey@redhat.com> 3618 3619 * java/io/ObjectStreamClass.java (setUID): Don't write interface 3620 info for array classes. 3621 Fixes PR libgcj/1971. 3622 36232001-03-06 Bryce McKinlay <bryce@albatross.co.nz> 3624 3625 * java/util/TreeSet.java (writeObject): Use a for-loop instead of 3626 Iterator.hasNext(). 3627 36282001-03-05 Jochen Hoenicke <jochen@gnu.org> 3629 3630 * java/util/TreeMap.java (writeObject): Use defaultWriteObject() 3631 instead of the new JDK1.2 API. This is simpler and makes 3632 back-porting the classes to JDK1.1 trivial. 3633 (readObject): likewise. 3634 36352001-03-01 Per Bothner <per@bothner.com> 3636 3637 Changes merged from Kawa's gnu.math. 3638 * gnu/gcj/math/MPN.java (rshift0): New method handles zero shift count. 3639 (rshift(int[],int[],int,int): Removed - not needed. 3640 (gcd): Use rshift0 rather than rshift. 3641 * java/math/BigInteger.java (setShiftRight): Likewise. 3642 (divide): Simplify by using rshift0. 3643 (divide): Zero-extend results if high-order bit set. 3644 36452001-02-27 Bryce McKinlay <bryce@albatross.co.nz> 3646 3647 * libgcj.spec.in: Insert %(libgcc) before %(liborig) to fix static 3648 linking. 3649 36502001-02-23 Per Bothner <per@bothner.com> 3651 3652 Change to sometimes include class name in ClassFormatError message. 3653 * defineclass.cc (_Jv_VerifyFieldSignature, _Jv_VerifyMethodSignature, 3654 _Jv_VerifyIdentifier, _Jv_VerifyClassName (two overlods)): Return 3655 boolean instead of throwing ClassFormatError on failure. 3656 (throw_class_format_error): Change static function to method. 3657 (_Jv_ClassReader): New inline methods verify_identifier, 3658 two overloads of verify_classname, verify_field_signature, and 3659 verify_method_signature 3660 * include/java-interp.h: Update declarations to return bool. 3661 * java/lang/natClassLoader.cc (defineClass0): Explicitly throw 3662 ClassFormatError since _Jv_VerifyClassName now returns bool. 3663 36642001-02-23 Per Bothner <per@bothner.com> 3665 3666 * java/lang/Throwable.java (CPlusPlusDemangler): Pass -s java to 3667 c++filt to select java-style output. 3668 36692001-02-22 Bryce McKinlay <bryce@albatross.co.nz> 3670 3671 Fix for PR java/2040: 3672 * java/util/HashMap.java (HashMap): Don't throw exception for 3673 loadFactor > 1. Add exception messages. 3674 * java/util/Hashtable.java (Hashtable): Likewise. 3675 36762001-02-21 Bryce McKinlay <bryce@albatross.co.nz> 3677 3678 Disable libgcjx by default. 3679 * configure.in: Add support for --enable-java-awt configure option. 3680 Use --enable-java-awt=xlib to build the xlib peers (libgcjx). 3681 * Makefile.am: Make libgcjx conditional on XLIB_AWT, instead of NO_X. 3682 * Makefile.in: Rebuilt. 3683 * configure: Rebuilt. 3684 36852001-02-20 Tom Tromey <tromey@redhat.com> 3686 3687 * java/io/PipedWriter.java (flush): Throw exception if stream 3688 closed. 3689 * java/io/OutputStreamWriter.java (write): Throw exception if 3690 stream closed. 3691 (writeChars): Don't throw exception if stream closed. 3692 * java/io/CharArrayWriter.java (closed): New field. 3693 (close): Set it. 3694 (flush): Throw exception if stream closed. 3695 (reset): Synchronize on correct lock. Allow stream to be 3696 reopened. 3697 (toCharArray, toString, writeTo): Synchronize. 3698 (write): Throwe exception if stream closed. 3699 * java/io/BufferedWriter.java (close): Clear `buffer'. 3700 (flush): Throw IOException if stream is closed. 3701 (write): Likewise. 3702 37032001-02-16 Tom Tromey <tromey@cygnus.com> 3704 3705 * java/lang/ThreadGroup.java (activeCount): Only include threads 3706 which are alive. 3707 (enumerate): Likewise. 3708 37092001-02-19 Bryce McKinlay <bryce@albatross.co.nz> 3710 3711 * java/lang/Integer.java (getInteger): Return default argument if 3712 property is not set. Don't call decode with null argument. 3713 * java/lang/Long.java (getLong): Likewise. 3714 3715 * java/io/CharArrayReader.java (CharArrayReader): Throw 3716 IllegalArgumentException if constructor arguments are illegal. 3717 (ready): Return false if no more characters can be read. 3718 * java/io/ByteArrayInputStream.java (ByteArrayInputStream): Likewise. 3719 37202001-02-17 Mark Wielaard <mark@klomp.org> 3721 3722 * java/util/TimerTask.java: New version from Classpath. 3723 37242001-02-17 Mark Wielaard <mark@klomp.org> 3725 3726 Remerge with Classpath 3727 (changes by Bryce McKinlay <bryce@albatross.co.nz>) 3728 * java/io/DataInputStream.java (readBoolean): Use convertToBoolean(). 3729 (readByte): Use convertToByte(). 3730 (readChar): Use convertToChar(). 3731 (readInt): Use convertToInt(). 3732 (readLong): Use convertToLong(). 3733 (readShort): Use convertToShort(). 3734 (readUnsignedByte): Use convertToUnsignedByte(). 3735 (readUnsignedShort): Use convertToUnsignedShort(). 3736 (readUTF): Use convertToUTF(). 3737 3738 (convertToBoolean): Resurrected. 3739 (convertToByte): Ditto. 3740 (convertToChar): Ditto. 3741 (convertToInt): Ditto. 3742 (convertToLong): Ditto. 3743 (convertToShort): Ditto. 3744 (convertToUnsignedByte): Ditto. 3745 (convertToUnsignedShort): Ditto. 3746 (convertToUTF): Ditto. 3747 37482001-02-17 Mark Wielaard <mark@klomp.org> 3749 3750 * HACKING: new file 3751 37522001-02-17 Mark Wielaard <mark@klomp.org> 3753 3754 * java/io/DataInputStream.java: update copyright notice 3755 * java/io/PrintWriter.java: idem 3756 * java/io/Reader.java: idem 3757 * java/io/StreamTokenizer.java: idem 3758 * java/io/StringReader.java: idem 3759 * java/lang/reflect/ReflectPermission.java: idem 3760 37612001-02-16 Bryce McKinlay <bryce@albatross.co.nz> 3762 3763 * java/util/TreeSet.java (clone): Made subclass safe, use 3764 super.clone(), not new. 3765 * java/util/TreeMap.java (clone): Likewise. 3766 3767 * java/util/TreeMap.java (nil): Made non-final. 3768 (clone): Create new nil node for copy. 3769 3770 * java/util/HashSet.java (clone): Made subclass safe, use 3771 super.clone(), not new. 3772 37732001-02-14 Andrew Haley <aph@redhat.com> 3774 3775 * include/i386-signal.h (INIT_SEGV): Use a direct system call to 3776 set the handler. 3777 37782001-02-15 Anthony Green <green@redhat.com> 3779 3780 * defineclass.cc: Don't include alloca.h. 3781 (prepare_pool_entry): Convert alloca to __builtin_alloca. 3782 * interpret.cc (run_normal): Ditto. 3783 (continue1): Ditto. 3784 * java/lang/natDouble.cc (parseDouble): Ditto. 3785 37862001-02-15 Bryce McKinlay <bryce@albatross.co.nz> 3787 3788 * java/util/TreeSet.java (clone): Call TreeMap.clone(), not 3789 Object.clone(). 3790 * java/util/Collections.java (ReverseComparator): New static class. 3791 (reverseOrder): Return static instance of ReverseComparator. 3792 3793 * gnu/awt/j2d/DirectRasterGraphics.java (clone): Hoist to public. 3794 * gnu/awt/j2d/IntegerGraphicsState.java (setClip): Call 3795 Rectangle.clone(), not Object.clone(). 3796 3797 * java/util/HashSet.java (clone): Remove try/catch. 3798 3799 * java/util/AbstractSequentialList.java: Synchronize with Classpath. 3800 * java/util/Collection.java: Likewise. 3801 * java/util/Comparator.java: Likewise. 3802 * java/util/Dictionary.java: Likewise. 3803 * java/util/Iterator.java: Likewise. 3804 * java/util/ListIterator.java: Likewise. 3805 * java/util/Map.java: Likewise. 3806 * java/util/Set.java: Likewise. 3807 38082001-02-14 Bryce McKinlay <bryce@albatross.co.nz> 3809 3810 * java/util/TreeMap.java: New file. 3811 * java/util/TreeSet.java: New file. 3812 * Makefile.am: Add TreeMap and TreeSet. Enable WeakHashMap. 3813 * Makefile.in: Rebuilt. 3814 * java/util/HashSet.java (clone): Use constructor instead of calling 3815 clone on itself. 3816 * java/util/SortedSet.java: Sync with classpath. 3817 * java/util/HashMap.java (hash): Use if statement instead of ternary, 3818 for clarity. 3819 3820 * java/lang/natClass.cc (getSignature): Don't try to dereference 3821 param_types if it is null. Instead, take this to mean "no parameters". 3822 * java/lang/TreeMap.java (TreeIterator.next): Throw 3823 NoSuchElementException in preference to ConcurrentModificationException. 3824 (TreeIterator.remove): Throw IllegalStateException in preference to 3825 ConcurrentModificationException. 3826 (SubMap.firstKey): Do a better check for empty SubMap, and if it is, 3827 throw a NoSuchElementException. 3828 (SubMap.lastKey): Likewise. 3829 38302001-02-13 Tom Tromey <tromey@redhat.com> 3831 3832 * java/io/PipedReader.java (ready): Throw IOException if pipe 3833 closed. 3834 * java/io/FilterReader.java (close): Don't clear `in'. 3835 * java/io/CharArrayReader.java (mark): Throw IOException if stream 3836 closed. 3837 (read, ready, reset, skip): Added exception message. 3838 * java/io/BufferedReader.java (mark, reset, ready, read, skip): 3839 Perform checkStatus check inside synchronized block. 3840 38412001-02-13 Tom Tromey <tromey@redhat.com> 3842 3843 * gnu/awt/j2d/AbstractGraphicsState.java (clone): Made public. 3844 38452001-02-13 Tom Tromey <tromey@redhat.com> 3846 3847 Fix for PR libgcj/1351: 3848 * posix.cc (_Jv_select): Throw InterruptedIOException if thread is 3849 interrupted. 3850 Include Thread.h and InterruptedIOException.h. 3851 38522001-02-13 Bryce McKinlay <bryce@albatross.co.nz> 3853 3854 * java/io/BlockDataException.java: Removed. 3855 * java/io/ObjectInputStream.java (readObject): Throw 3856 StreamCorruptedException, not BlockDataException. 3857 * Makefile.am: Remove BlockDataException. 3858 * Makefile.in: Rebuild. 3859 38602001-02-12 Jeff Sturm <jeff.sturm@commerceone.com> 3861 Tom Tromey <tromey@redhat.com> 3862 3863 * interpret.cc (continue1): [insn_invokevirtual] Do an explicit 3864 null pointer check. 3865 38662001-02-09 Tom Tromey <tromey@redhat.com> 3867 3868 * java/util/Timer.java: New version from Classpath. 3869 38702001-02-09 Bryce McKinlay <bryce@albatross.co.nz> 3871 3872 * java/lang/Double.java (doubleToRawLongBits): Now native. 3873 * java/lang/Float.java (floatToRawIntBits): Likewise. 3874 * java/lang/natDouble.cc (doubleToRawLongBits): New method. 3875 * java/lang/natFloat.cc (floatToRawIntBits): Likewise. 3876 38772001-02-09 Alexandre Petit-Bianco <apbianco@redhat.com> 3878 3879 * java/io/File.java (java.net): Imported. 3880 (getAbsoluteFile): Added. 3881 (getCanonicalPath): Likewise. 3882 (toURL): Likewise. 3883 38842001-02-08 Bryce McKinlay <bryce@albatross.co.nz> 3885 3886 * java/lang/Byte.java: Remove redundant instanceof and null checks. 3887 * java/lang/Integer.java: Likewise. 3888 * java/lang/Long.java: Likewise. 3889 * java/lang/Short.java: Likewise. 3890 * java/lang/Double.java: Likewise. 3891 (doubleToRawLongBits): New method. 3892 * java/lang/Float.java: As above. 3893 (floatToRawIntBits): New method. 3894 3895 * java/io/OutputStreamWriter.java: (flush, writeChars): Throw 3896 IOException if stream closed. 3897 38982001-02-08 Tom Tromey <tromey@redhat.com> 3899 3900 * java/lang/Float.java (parseFloat): New method. 3901 39022001-02-08 Tom Tromey <tromey@redhat.com> 3903 3904 From paul@dawa.demon.co.uk. Fix for PR libgcj/1913: 3905 * java/io/InputStreamReader.java (ready, read): Throw IOException 3906 if stream has been closed. 3907 39082001-02-08 Joseph S. Myers <jsm28@cam.ac.uk> 3909 3910 * README, gij.cc, java/lang/natClass.cc, java/lang/natSystem.cc: 3911 Change sources.redhat.com and sourceware.cygnus.com references to 3912 gcc.gnu.org. 3913 39142001-02-07 Tom Tromey <tromey@redhat.com> 3915 3916 Fix for PR libgcj/1906: 3917 * java/text/MessageFormat.java (setLocale): Use named class 3918 literals. 3919 (forName): Removed. 3920 (format(Object,StringBuffer,FieldPosition)): Special case if 3921 argument is an Object[]. 3922 39232001-02-07 Bryce McKinlay <bryce@albatross.co.nz> 3924 3925 * java/util/Arrays.java: Removed "cmp" methods. 3926 (qsort): Don't use "cmp". 3927 (med3): Likewise. 3928 39292001-02-07 Mark Benvenuto <mcb54@columbia.edu> 3930 3931 * java/util/Arrays.java (qsort): Handle N value of 7 with insertion 3932 sort. Fix for PR java/1895. 3933 39342001-02-03 Jeff Sturm <jeff.sturm@commerceone.com> 3935 3936 * configure.host: Use sjlj-exceptions for Alpha. 3937 39382001-02-03 Bryce McKinlay <bryce@albatross.co.nz> 3939 3940 * libgcj.spec.in: Don't force static libgcc into the executable. 3941 * configure.in (FORCELIBGCCSPEC): Removed. 3942 * configure: Rebuilt. 3943 39442001-01-31 Tom Tromey <tromey@redhat.com> 3945 3946 * Makefile.in: Rebuilt. 3947 * Makefile.am (LTCXXCOMPILE): New macro. 3948 39492001-01-26 Andrew Haley <aph@redhat.com> 3950 3951 (INIT_FPE): Use a direct system call to set the handler. 3952 39532001-01-27 Richard Henderson <rth@redhat.com> 3954 3955 * configure.host (alpha*-*) [libgcj_flags]: Add -mieee. 3956 39572001-01-27 Tom Tromey <tromey@redhat.com> 3958 3959 * jni.cc (_Jv_JNIFunctions): Added comment for each entry in 3960 native interface structure. 3961 39622001-01-27 Bryce McKinlay <bryce@albatross.co.nz> 3963 3964 * java/io/ObjectInputStream.java (read): AND byte with 0xff to make 3965 result unsigned. 3966 (read (byte[], int, int)): Only call readNextBlock() if the block 3967 buffer would actually be overrun. Increment blockDataPosition. 3968 (callReadMethod): Propagate exceptions from invocation target. 3969 * java/io/ObjectOutputStream.java (callWriteMethod): Propagate 3970 exceptions from invocation target. 3971 39722001-01-26 Tom Tromey <tromey@redhat.com> 3973 3974 * jni.cc (_Jv_JNI_GetAnyMethodID): Rewrite signature from external 3975 to internal representation. 3976 (_Jv_JNI_GetAnyFieldID): Likewise. Also, only use 3977 _Jv_FindClassFromSignature. 3978 39792001-01-26 Warren Levy <warrenl@redhat.com> 3980 3981 * java/lang/natSystem.cc (getSystemTimeZone): Only use tm_gmtoff 3982 and timezone if they are available on the system. 3983 39842001-01-24 Tom Tromey <tromey@redhat.com> 3985 3986 * java/lang/sf_fabs.c: Use uint32_t, not __uint32_t. 3987 39882001-01-24 Tom Tromey <tromey@redhat.com> 3989 3990 * Makefile.in: Rebuilt. 3991 * Makefile.am (c_source_files): Added sf_fabs.c. 3992 * java/lang/sf_fabs.c: New file. 3993 39942001-01-19 Warren Levy <warrenl@redhat.com> 3995 3996 * java/text/SimpleDateFormat.java (format): Compute hour for cases 3997 HOUR_OF_DAY1_FIELD (1-24), HOUR1_FIELD (1-12), and HOUR0_FIELD (0-11) 3998 correctly. Adjust properly from 0-23 clock hour. 3999 40002001-01-17 Mark Wielaard <mark@klomp.org> 4001 4002 * java/bean/Beans.java (instantiate): enable Applet code from Classpath 4003 40042001-01-17 Bryce McKinlay <bryce@albatross.co.nz> 4005 4006 * java/lang/Class.h (isInterface): Move implementation from 4007 natClass.cc. Declare inline. 4008 (Class): Add default constructor. 4009 * java/lang/Object.h: Update comments. 4010 * java/lang/natClass.cc (initializeClass): Use _Jv_InitClass to 4011 initialize superclass, saving a call if super is already initialized. 4012 40132001-01-16 Alexandre Petit-Bianco <apbianco@cygnus.com> 4014 4015 * prims.cc (init_prim_class): Deleted. 4016 (DECLARE_PRIM_TYPE): Rewritten. 4017 * java/lang/Class.h (stdio.h): Include removed. 4018 (stddef.h): Included. 4019 (java/lang/reflect/Modifier.h): Likewise. 4020 (Class): Contructor now takes arguments, initializes fields. 4021 (initializePrim): Prototype deleted. 4022 * java/lang/natClass.cc (initializePrim): Deleted. 4023 40242001-01-16 Warren Levy <warrenl@redhat.com> 4025 4026 * java/math/BigInteger.java: Update Copyright year. 4027 40282001-01-16 Hans Boehm <hans_boehm@hp.com> 4029 4030 * java/math/BigInteger.java (setShiftRight): Only do negative shift 4031 if count != 0. 4032 40332001-01-14 Mark Wielaard <mark@klomp.org> 4034 * java/net/URLDecoder.java: Thanks Edgar Villanueva (edgarvil@home.com) 4035 (decode): Merge comments with Classpath, don't throw Exception 4036 40372001-01-12 Tom Tromey <tromey@redhat.com> 4038 4039 * gnu/awt/gtk/natGtkComponentPeer.cc (getLocationOnScreen): 4040 Wrote. 4041 (setCursor): Wrote. 4042 Include Cursor.h. 4043 * gnu/awt/gtk/natGtkLabelPeer.cc: New file. 4044 * gnu/awt/gtk/natGtkButtonPeer.cc: New file. 4045 * gnu/awt/gtk/gtkcommon.h (class _Jv_GdkThreadLock): New class. 4046 * gnu/awt/gtk/GtkLabelPeer.java: New file. 4047 * gnu/awt/gtk/GtkButtonPeer.java: New file. 4048 4049 * java/lang/natSystem.cc: Include locale.h if it exists. 4050 * configure: Rebuilt. 4051 * configure.in: Check for locale.h. 4052 40532001-01-11 Tom Tromey <tromey@redhat.com> 4054 4055 * java/awt/Cursor.java (Cursor(String)): Set type to custom. 4056 (Cursor(int), getPredefinedCursor): Throw exception if argument 4057 invalid. 4058 40592001-01-03 Tom Tromey <tromey@redhat.com> 4060 4061 * gnu/awt/gtk/natGtkComponentPeer.cc (setCursor): Wrote. 4062 (getLocationOnScreen): Wrote. 4063 40642001-01-11 Bryce McKinlay <bryce@albatross.co.nz> 4065 4066 * Makefile.am: Re-enable dependencies. 4067 * Makefile.in: Rebuilt. 4068 40692001-01-10 Warren Levy <warrenl@redhat.com> 4070 4071 * java/math/BigDecimal.java (divide): Fixed comment. 4072 40732001-01-10 Warren Levy <warrenl@redhat.com> 4074 4075 Fix for PR libgcj/1596: 4076 * java/math/BigDecimal.java (divide): Check newScale for validity. 4077 Ensure that BigInteger.pow() is called with a non-negative value. 4078 (setScale (int)): New public method. 4079 (setScale (int,int)): New public method. 4080 40812001-01-09 Oskar Liljeblad <osk@hem.passagen.se> 4082 4083 Fix for PR libgcj/1338: 4084 * java/io/StreamTokenizer.java (nextToken): Handle // and /* before 4085 commentChar. Fixed typos in comments. 4086 40872001-01-08 Warren Levy <warrenl@redhat.com> 4088 4089 Fix for PR libgcj/1411: 4090 * Makefile.am: Removed java/util/natTimeZone.cc. 4091 * Makefile.in: Rebuilt. 4092 * gnu/gcj/text/LocaleData_en_US.java (zoneStringsDefault): Added 4093 missing localized timezone names. 4094 * java/lang/System.java (getDefaultTimeZoneId): New private method. 4095 * java/lang/natSystem.cc (getSystemTimeZone): New private method. 4096 (init_properties): Set user.timezone property. 4097 * java/text/DateFormatSymbols.java (zoneStringsDefault): Added 4098 default timezone names; removed non-standard ones. Use standard 4099 ID names per JCL. 4100 * java/util/Date.java (toGMTString): Removed zoneGMT variable. 4101 (UTC): Ditto. 4102 * java/util/TimeZone.java: Add standard ID names per JCL; removed 4103 non-standard ones. 4104 (getDefaultTimeZoneId): Removed. 4105 (zoneGMT): Removed. 4106 * java/util/natTimeZone.cc: Removed. 4107 41082001-01-08 Bryce McKinlay <bryce@albatross.co.nz> 4109 4110 * java/lang/Class.h (_Jv_InitClass): Use __builtin_expect. 4111 (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. 4112 (_Jv_GetArrayClass): New inline function. 4113 (arrayclass): New field. 4114 * prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayClass. Don't use 4115 _Jv_GetArrayElementFromElementType. 4116 (_Jv_NewPrimArray): Ditto. 4117 (_Jv_PrimClass constructor): Initialize "depth", "ancestors", and 4118 "idt" for completeness. Initialze "arrayclass" using _Jv_NewArrayClass. 4119 Set Modifier::ABSTRACT. 4120 * java/lang/natClassLoader.cc (_Jv_NewClass): Initialize "arrayclass". 4121 (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. Now void. 4122 Now synchronized. Array classes are now referenced from 4123 elementClass->arrayclass. Don't use _Jv_FindClassInCache. 4124 Set array classes' accessibility flags correctly. Optimize so that 4125 all array classes share the same IDT. 4126 * java/lang/reflect/natArray.cc (newInstance): Use _Jv_GetArrayClass. 4127 * java/lang/reflect/natMethod.cc (_Jv_GetTypesFromSignature): Ditto. 4128 * java/lang/natClass.cc (_getFields): Increment offset. Prevent fields 4129 in superclasses from overwriting classes own fields. 4130 (_Jv_IsAssignableFrom): Check for NULL source idt instead of calling 4131 Modifier::isAbstract(). 4132 (null_idt): New static field. 4133 (_Jv_PrepareConstantTimeTables): Optimize case where class implements 4134 no interfaces. 4135 (_Jv_IndexOf): Made inline. 4136 * boehm.cc (_Jv_MarkObj): Mark "arrayclass" field. 4137 41382001-01-08 Tom Tromey <tromey@redhat.com> 4139 4140 Fix for PR java/1586: 4141 * Makefile.in: Rebuilt. 4142 * Makefile.am (AUTOMAKE_OPTIONS): Added no-dependencies. 4143 41442001-01-08 Bryce McKinlay <bryce@albatross.co.nz> 4145 4146 * Makefile.am: Use the new "-M -MF" option for generating dependencies 4147 from the c++ compiler. 4148 * Makefile.in: Rebuilt. 4149 41502001-01-07 Alexandre Petit-Bianco <apbianco@cygnus.com> 4151 4152 All files with updated copyright. 4153 * prims.cc (class _Jv_PrimClass): Removed. 4154 (init_prim_class): New function. 4155 (DECLARE_PRIM_TYPE): Rewritten. `java::lang::Class' replaces 4156 `_Jv_PrimClass' in primitive type declarations. Assign to the 4157 value returned by `init_prim_class.' 4158 * gcj/array.h: `java::lang::Class' replaces `_Jv_PrimClass' in 4159 primitive type declarations. 4160 (JvPrimClass): Cast to `jclass' removed. 4161 * java/lang/Class.h (Class): New constructor. 4162 (Class): New copy constructor. 4163 (initializePrim): New prototype. 4164 (_Jv_PrimClass): Field removed. 4165 * java/lang/Object.h (struct _JvObjectPrefix): New virtuals 4166 nacd_1 and nacd_2 (for compatibility with the new C++ ABI.) 4167 (class java::lang::Object): `finalize' moved up front. 4168 * java/lang/natClass.cc 4169 (isAssignableFrom): Turned outline. 4170 (isInstance): Likewise. 4171 (isInterface): Likewise, fixed indentation. 4172 (initializePrim): New function. 4173 41742001-01-07 Anthony Green <green@redhat.com> 4175 4176 * Makefile.am (texinfo): Add texinfo target for generating texinfo 4177 documentation. 4178 * Makefile.in: Rebuilt. 4179 4180 * scripts/TexinfoDoclet.java: New file. 4181 4182 * doc/java-applet.texi, doc/java-lang-reflect.texi, 4183 doc/java-awt-color.texi, doc/java-lang.texi, 4184 doc/java-awt-datatransfer.texi, doc/java-math.texi, 4185 doc/java-awt-event.texi, doc/java-net.texi, 4186 doc/java-awt-geom.texi, doc/java-security-spec.texi, 4187 doc/java-awt-image.texi, doc/java-security.texi, 4188 doc/java-awt-peer.texi, doc/java-sql.texi, doc/java-awt.texi, 4189 doc/java-text.texi, doc/java-beans-beancontext.texi, 4190 doc/java-util-jar.texi, doc/java-beans.texi, 4191 doc/java-util-zip.texi, doc/java-io.texi, doc/java-util.texi, 4192 doc/java-lang-ref.texi: New files. 4193 41942001-01-07 Anthony Green <green@redhat.com> 4195 4196 * java/net/URLConnection.java (setDoOutput): URLConnection's may 4197 be used for both input and output, so don't clear doInput. 4198 4199 * java/lang/StringBuffer.java: Fix comments. 4200 42012001-01-06 Anthony Green <green@redhat.com> 4202 4203 * java/beans/PropertyDescriptor.java: Fix comment. 4204 * java/io/PushbackReader.java: Fix comment. 4205 * java/io/ObjectStreamClass.java: Fix comment. 4206 * java/io/DataInputStream.java: Fix comment. 4207 * java/io/PipedInputStream.java: Fix comments. 4208 * java/io/PipedReader.java: Fix comments. 4209 * java/sql/DatabaseMetaData.java: Fix comments. 4210 42112001-01-06 Bryce McKinlay <bryce@albatross.co.nz> 4212 4213 * java/io/PipedReader: Synchronize on "lock" instead of this. 4214 42152001-01-05 Bryce McKinlay <bryce@albatross.co.nz> 4216 4217 * java/lang/Thread.java: Update comment. 4218 4219 * java/io/PipedInputStream: Rewrote to be simpler and more correct. 4220 * java/io/PipedOutputStream: Updated to match new PipedInputStream. 4221 * java/io/PipedReader: New implementation based on new 4222 PipedInputStream. 4223 * java/io/PipedWriter: Updated to match new PipedReader. 4224 42252001-01-03 Tom Tromey <tromey@redhat.com> 4226 4227 * java/awt/ScrollPane.java (setBlockIncrement): Throw error. 4228 (getViewportSize): Insets include scrollbar size. 4229 (doLayout): Finished. 4230 (getScrollPosition): Wrote. 4231 * java/awt/peer/ScrollPanePeer.java (setBlockIncrement): Removed. 4232 42332001-01-02 Tom Tromey <tromey@redhat.com> 4234 4235 * java/awt/ScrollPane.java: Wrote. 4236 * java/awt/peer/ScrollPanePeer.java (setBlockIncrement): New 4237 method. 4238 4239 * java/awt/Panel.java (Panel()): Fixed. 4240 4241 * java/awt/Component.java (isShowing): Return false if no peer 4242 exists, and true if component is visible and no parent exists. 4243 (getLocationOnScreen): Wrote. 4244 (getPreferredSize): Removed FIXME comment. 4245 (getMinimumSize): Likewise. 4246 (getAlignmentX, getAlignmentY): Wrote. 4247 (list): Wrote. 4248 (requestFocus): Wrote. 4249 (transferFocus): Wrote. 4250 (findNextFocusComponent): New method. 4251 (hasFocus()): Wrote. 4252 (checkImage): Wrote. 4253 (enableEvents): Call setEventMask on the peer. 4254 4255 * java/awt/Container.java (list): Use super.list() to print self. 4256 (findNextFocusComponent): New method. 4257 (setLayout): Call invalidate. 4258 (findComponentAt): Wrote. 4259 4260