ChangeLog-2001 154 KB

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