File: changelog

package info (click to toggle)
bock 0.20.2.1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 1,228 kB
  • ctags: 1,370
  • sloc: ansic: 7,367; java: 5,553; yacc: 963; lex: 392; makefile: 243; sh: 90; perl: 42
file content (420 lines) | stat: -rw-r--r-- 17,575 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
bock (0.20.2.1) unstable; urgency=low

  * NMU
  * Changed to build depend on libgc6-dev instead of libgc5-dev.  (closes:
    Bug#111304, Bug#105097)

 -- Doug Porter <dsp@debian.org>  Mon, 19 Nov 2001 12:36:05 -0500

bock (0.20.2) unstable; urgency=low

  * Move documentation to /usr/share/doc and /usr/share/man.
    Closes: bug 91396.
  * LEGAL file now refers to /usr/share/common-licenses instead of
    /usr/doc/copyright.
  * NOT updated standards-version because I haven't verified that the
    package compiles with current policy.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Tue,  5 Jun 2001 16:12:27 +0100

bock (0.20.1) unstable; urgency=low

  * Add build-depends.  Closes:bug#70194.
  * Recompile against libgc5.  Closes:bug#70903,#52333.
  * Check results of IEEE float test case insensitively.  It seems that
    different compilers/libraries capitalise "Inf" differently as the
    printed version of an IEEE infinity.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Tue,  9 Jan 2001 22:26:07 +0000

bock (0.20) frozen unstable; urgency=low

  * Portability fixes:
    + Remove -Werror, to cope with egcs's detection of variables possibly
      used without initialisation, which is detects them where gcc doesn't
      (possibly wrongly so).
    + Represent Java ints as C ints, not C longs.  This should be
      appropriate for gcc/egcs on both 32- and 64-bit architectures.
    + When constructing a memberdecl, cast the second member to (union
      member), rather than to (struct fielddecl *), the type of the
      first member of union member, for egcs compatibility.
    + java.lang.Object.hashCode(): cast first to long int (same size
      as void* on all architectures), then to Javaint; this avoids a
      compiler warning on 64-bit architectures.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Mon, 18 Jan 1999 21:45:44 +0000

bock (0.19.1) frozen unstable; urgency=low

  * Recompile to fix dependencies.  Now depends on libc6, with no
    version requirement.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Fri, 11 Dec 1998 20:32:02 +0000

bock (0.19) unstable; urgency=low

  * Don't dump core if a type inherits from a nonexistent type.

  * Add the rest of the Java 1.1 grammar (and munge everything slightly
    to make it LALR(1)...).  Since there's no back-end support for inner
    or nested classes yet, actually using any of this new grammar causes
    error messages.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Sun, 15 Nov 1998 22:55:58 +0000

bock (0.18) unstable; urgency=low

  * Implemented float and double constants.  (In fact, bock just passes
    them through, almost unchanged, and lets the C compiler parse them.)
  * Added some Java 1.1 features:
    + Non-static initalisers
    + Final locals and parameters (as a no-op)
    + Blank finals can be had for free, because bock doesn't check
      finals anyhow
    + Anonymous array expressions

 -- Charles Briscoe-Smith <cpbs@debian.org>  Sun, 25 Oct 1998 18:13:19 +0000

bock (0.17) frozen unstable; urgency=medium

  * Got rid of the "retflag undefined" C error for block-structured
    statements enclosed within static initialisers.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Thu, 22 Oct 1998 14:01:06 +0100

bock (0.16) unstable; urgency=low

  * Escaped dollars in identifiers as "_4".
  * Implemented java.lang.Integer.parseInt().
  * Started implementing java.io.File.
  * Fixed a type error when string-converting bytes and shorts.
  * Minor changes to the bock and jcomp man pages.
  * Mention jcomp in the package extended description.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Sat,  3 Oct 1998 02:50:15 +0100

bock (0.15) unstable; urgency=low

  * Build statementexpressionlists in forward, rather than reverse order.
  * Delete codegen_stmtexprlist() replacing calls to it with calls to
    codegen_block().
  * Record in the parse tree the number of pairs of empty square brackets
    after local variable and field declarators.
  * Do some simplifying transformations on the parse tree before starting
    to resolve names:
    + Separate local variable and field declarations describing many
      locals or fields into many declarations describing one local or
      field each.
    + Extract the initialisation step from for statements, creating an
      enclosing block to correctly scope declarations.
  * After each local or field declaration is separate, incorporate the
    additional array dimentions stored.

  * As a result of the above, square brackets indicating additional
    array dimensions may now be placed after declarators.  Whew!
  * Back out the square-bracket changes to the copy of JLex in the
    test suite.

  * Made square brackets after method declarators work.  (Which was not
    nearly so difficult as for local and field declarators.)

  * When running bock with no arguments, give usage message.
  * Insert a few "this can't happen" assertions.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Fri, 25 Sep 1998 01:23:07 +0100

bock (0.14) unstable; urgency=low

  * Implemented stack traces.  The implementation may be somewhat
    inefficient, but at least we now have some kind of diagnostics.
  * Implemented \uXXXX Unicode escapes.  Caveat: these work ONLY in
    character and string literals.  These literals are, however, fully
    16-bit clean.  '\0' in string literals now works properly.

  * Implemented java.io.BufferedInputStream.

  * Made java.io.FilterOutputStream call its flush() method before
    closing its contained stream.  This doesn't conform to the JLS, but
    it is specified by both the JDK 1.1 documentation, and common sense.
  * Fixed a bug in toString() in both java.lang.Integer and
    java.lang.Long, where an erroneous '0' was inserted in single-digit
    negative numbers.
  * Fixed a hideous bug in the set() and clear() methods of
    java.util.BitSet.  (I transposed &= with |=.)

  * Made stringpool_intern_wide() allocate memory using xmalloc()
    (which calls GC_malloc()), rather than calling malloc() and realloc()
    directly and then storing pointers to GC_malloc()ed memory in there.
    This seems to have been causing memory to be collected too early,
    and was corrupting the string pool.

  * Removed a spurious error message associated with nested array
    initialisers.

  * Since bock can now compile JLex (with minor changes, namely to move
    the square brackets before the declarator in all declarations, and
    to delete a spurious semicolon which javac should not have accepted
    anyway), JLex is now part of bock's test suite.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Wed, 23 Sep 1998 17:28:18 +0100

bock (0.13) unstable; urgency=low

  * Implement evaluation of array initialisers.
  * Reorganise block generation to put all local declarations first,
    enabling switch statements to be compiled.
  * Implement switch/case statements.

  * Do string conversion on arrays correctly; don't treat them like
    their element type.
  * Fix a bug which made the generated program allocate far too much
    memory for arrays.

  * Generate a diagnostic if the lexer finds a string literal containing a
    '\0'.  (That's better than a silent failure, isn't it?)
  * Minor fix to the grammar to correctly recognise an empty array
    initialiser with a single comma in it.

  * In java.io.FileDescriptor, when converting strings to C format,
    add a '\0' to the end.
  * In java.io.FileDescriptor, open files for writing with O_CREAT and
    with mode 0666 rather than 0.

  * Change some careless C++-style comments in the C source to C-style.
    (GCC is far too forgiving; it doesn't even warn about this.)

 -- Charles Briscoe-Smith <cpbs@debian.org>  Mon, 21 Sep 1998 12:03:52 +0100

bock (0.12) unstable; urgency=low

  * Fix a compiler abort associated with incrementing/decrementing
    array components.
  * Prevent compiler trying to use an array with numeric element type
    on the right hand side of a binary operator as if it were of that
    numeric type.
  * Bomb out if an array initialiser is encountered, since these aren't
    implemented yet.

  * jcomp now links compiled programs with -lgc to provide garbage
    collection.  Still no finalisation, though.

  * Implement java.io.DataOutputStream.
  * Fix StringBuffer such that Strings created from StringBuffers really
    are immutable.

  * Remove some cruft from the source package.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Thu, 10 Sep 1998 20:31:59 +0100

bock (0.11) unstable; urgency=low

  * Bock may now be of some real use to end-users.  Updated README to
    say so.

  * Finished implementing java.io.InputStream, java.io.FileInputStream
    and java.io.FileOutputStream.
  * Implemented java.io.ByteArrayInputStream,
    java.io.StringBufferInputStream, java.io.SequenceInputStream,
    java.io.FilterInputStream, java.io.ByteArrayOutputStream,
    java.io.FilterOutputStream and java.io.BufferedOutputStream.
  * Added more non-public methods to java.io.FileDescriptor in support
    of java.io.File{In,Out}putStream.  Added auxiliary non-public class
    java.io.Errno to get proper error messages from libc's strerror().

  * Buffered java.lang.System.out using a java.io.BufferedOutputStream.
    This fixes a rather serious performance bug.
  * Fixed backwards test in java.lang.System: should create new Properties
    iff no properties are currently available.
  * Fixed java.io.PrintStream to autoflush only if `autoflush' is true,
    plus some adjustments to take into account that its superclass,
    java.io.FilterOutputStream, now exists.

  * Renamed ORG.debian.cpbs.* to org.debian.cpbs.*, to conform to new
    class naming conventions.

  * ./configure now checks for -lgc and <gc/gc.h>
  * Made xmalloc() call GC_malloc when available.  Thus, bock itself is
    now garbage-collected; the programs it produces are, as yet, not.

  * Added /usr/share/bock/lib/LEGAL
  * Minor update to debian/rules.
  * Minor Makefile tweaks.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Wed, 26 Aug 1998 17:16:28 +0100

bock (0.10) unstable; urgency=low

  * Don't evaluate `this' when assigning to static fields referred to
    by simple name.  (Since that couldn't work in a static method or
    static initialiser.)
  * Make casts from interface types work correctly.
  * Don't output default constructors for interface types.  (Last time
    I `fixed' this, I only removed the declarations; I missed the
    definitions.)
  * Fixed a bug which allowed some strange reference widenings, e.g.
    from String[] to String.  Methods java.util.Runtime.exec(...) now
    resolve correctly.
  * Convert the left hand operand of shift operators to their unary
    numeric promoted type.
  * Make java.util.Hashtable and ORG.debian.cpbs.Bag work correctly in
    the presence of negative hash values.

  * Intern all string constants on start up.
  * Instead of printing "Uncaught exception." when main() throws
    an exception, call ThreadGroup.uncaughtException() instead.
    (Not compatible with the standard ThreadGroup!)
  * Make the "Can't resolve TypeName" error message more explicit as to
    where the name occurred.

  * Implemented java.lang.Process, java.lang.Runnable, java.lang.Runtime,
    java.lang.SecurityManager, java.util.BitSet, java.util.Observable,
    java.util.Observer and java.util.Properties.
  * Completed implementation of java.io.PrintStream, java.lang.ClassLoader,
    java.lang.System and java.lang.String.
  * Started implementing java.util.Date.

  * Added a bogus java.lang.ThreadGroup class defining an
    uncaughtException() method.  This is INCOMPATIBLE with the standard,
    and is only there to allow the exception name and message to be
    printed when main() throws an exception.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Sun, 16 Aug 1998 17:16:47 +0100

bock (0.9) unstable; urgency=low

  * Fixed super.method() `underride' bug: if the method picked for the
    call was an overriding method, the non-overriding method which it
    overrode would be called instead.  Of course, this was a result of
    reusing the code for normal method access to do superclass method
    access.
  * Get rid of GCC warning "comparison of distinct pointer types lacks
    a cast" when comparing different reference types.

  * ORG.debian.cpbs.Bag: new method: void putContents(Enumeration e)
  * ORG.debian.cpbs.Bag: fix duplicate local variable

 -- Charles Briscoe-Smith <cpbs@debian.org>  Thu,  6 Aug 1998 11:58:03 +0100

bock (0.8) unstable; urgency=low

  * Completed implementation of the `super' keyword.  `super.method()'
    now works!

  * Fix code generator to handle multiple declarators in the same field
    declaration.
  * Fix string literal scanner to handle strings containing \-escapes
    correctly.  (Except \uxxxx Unicode escapes.)

  * Fix `make install' to install /usr/doc/bock/BUGS.
  * Fix `make install' not to compress files it didn't install.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Tue,  4 Aug 1998 14:45:17 +0100

bock (0.7) unstable; urgency=low

  * Completed interface support in code generator.  Each method table
    now includes the necessary interface method tables, and each class
    has an interface table.  `instanceof', casts and method calling now
    use this information.  Reference widening code updated to match.
  * Uncomment the previously commented-out parts of the library that
    use interfaces.
  * Interfaces are abstract; don't generate default constructors for them.
  * Don't throw away all but the last member of each interface.

  * Implement field access via `super.field'.  Method access via
    `super.method()' is still unimplememted.

  * Correctly type conditional expressions where one branch is of
    null type.  Many other conditional expressions still don't compile.

  * Complete the implementation of java.lang.Character up to Java 1.0
    standard.  As with the `real' Java 1.0, it doesn't grok Unicode
    characters outside the Latin1 character set.
  * Implemented java.util.Dictionary and java.util.Hashtable.

  * Get rid of useless initialisation of class objects representing
    arrays of primitive element types.

  * Compile with -Wmissing-prototypes to try to catch more errors.
    Add prototype for yylex().  Hope it's right for lexes other than flex.
  * Moved some functions between source files to minimise inter-module
    dependencies, and to place them where they logically belong.
  * Don't use tempfile in jcomp; Solaris doesn't have it.  The temp file
    is in the current directory anyway, so this should be fairly safe.
  * Autoconfiscate jcomp so that it respects the configured prefix.

  * Probably a few more changes that I don't remember making.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Sun,  2 Aug 1998 20:06:45 +0100

bock (0.6) unstable; urgency=low

  * Started implementing interface support.  Simple names referring
    to fields declared in interfaces now resolve correctly.  Method
    resolution on interface types now searches superinterfaces.  The code
    generator can't yet cope with interfaces, though.

  * New class: ORG.debian.cpbs.Set representing an unordered collection
    of Objects with duplicates removed.
  * Bug fix: actually install ORG.debian.cpbs.*.
  * Oops: upload it to unstable where it ought to be.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Thu, 30 Jul 1998 12:43:40 +0100

bock (0.5) experimental; urgency=low

  * First released version.

  * New class: ORG.debian.cpbs.Bag represents an unordered collection
    of Objects.
  * Add preliminary toUpperCase() and toLowerCase() methods to Character.
    These currently only work on Latin1 characters.
  * Finish implementing String and StringBuffer.
  * Implement java.util.{Enumeration,Vector,Stack}.  Enumerations are
    not enabled yet, because the compiler doesn't support interfaces.

  * Make the compiler diagnose `constructors' with incorrect names as
    methods with missing return types.

  * Still very alpha; please don't bother with this package unless you
    want to help develop it.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Mon, 27 Jul 1998 13:16:42 +0100

bock (0.4) experimental; urgency=low

  * Rewrote and integrated code generation for assignment, compound
    assignment, and the binary operators.
  * Made return work properly inside try statements.
  * Fixed instanceof "no struct member myclass" bug.
  * Fixed reference casts to work properly with null.
  * Fixed core dump when return used with no value.
  * Fixed core dump when finding appropriate overloaded method; base
    case was missing from transform.c:issubclass().
  * Filled in some more of the standard Java library.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Fri, 24 Jul 1998 18:17:33 +0100

bock (0.3) experimental; urgency=low

  * Now mostly working.  Interfaces don't work (and probably never will
    in this prototype version).  Keyword `super' doesn't work, except
    in explicit superclass constructor invocations.  Certainly many
    more bugs.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Mon, 20 Jul 1998 14:03:41 +0100

bock (0.2) experimental; urgency=low

  * It now works sufficiently (including the library) to compile a working
    version of the included "Hello world" program.  This is no mean feat,
    believe me!

 -- Charles Briscoe-Smith <cpbs@debian.org>  Sun, 12 Jul 1998 16:07:02 +0100

bock (0.1) experimental; urgency=low

  * First version.  Unreleased.
  * Hacked together this package.

 -- Charles Briscoe-Smith <cpbs@debian.org>  Thu, 21 May 1998 17:36:23 +0100