home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
sa104os2.zip
/
SATHR104.ZIP
/
SATHER
/
DOC
/
BUGS
next >
Wrap
Text File
|
1994-12-22
|
2KB
|
59 lines
These are easy to avoid once you know about them.
Send comments to "sather-bugs@icsi.berkeley.edu".
-----------------------------------------------------------------
Major functionality omissions:
Bound iters and dispatching over iters aren't implemented.
If you dispatch to a routine that would require boxing or unboxing
of the arguments or return value, this may not occur. (This only
happens when you mix value and abstract types.) This will be fixed
in the next release.
Bugs of libraries and library support:
FLTX and FLTDX aren't implemented; it's difficult when most C
compilers don't support them, either.
Built-in INT operations such as "plus" don't work when you change
asize in a descendent. AVAL{BOOL} and AREF{BOOL} use bytes instead
of bits for storage except in built-in classes.
The FILE classes are currently being rewritten for portability
and proper error handling; expect them to change soon.
Bugs affecting checking:
Not all the arithmetic checks happen. IEEE exception handling
isn't implemented.
Destroy checks are not performed.
Static checks on classes with type bounds are not performed. This
never affects the correctness of compiled code, but means that for
the moment it is possible for a new instantiation of parameters to
cause a type problem that wasn't recognized until that instantiation.
Programs with infinite numbers of classes, for instance
class BUG{T} is a:BUG{SAME} is end; end;
aren't caught properly; the compiler infinite loops.
So, don't write programs like this.
Invariants and postconditions don't always get checked,
in particular when using "return" or "yield" to exit a routine.
Stack overflows are reported as void accesses under some
circumstances.
Bugs affecting invocation/environment:
Symbolic info generated by -debug or -g may occasionally point to a
C file instead of Sather, but these may be ignored (it only happens
if there isn't an appropriate Sather line that corresponds to the C
statements, such as during automatic boxing of dispatched value types).
"csh"-style globbing in the command files doesn't work.