[View]  [Edit]  [Lock]  [References]  [Attachments]  [History]  [Home]  [Changes]  [Search]  [Help] 

[S8] Bug report page

Reported BUGs

  1. Missing #doesNotUnderstand: mechanism
  2. Wrong array contents in this Array literal expressions:
     #( .1 )
     #( - )
  3. [NTH] Solution for modal UI in coco8


Please test if the bugs in this list are removed in current version of U8.
In case of finding more errors, please report at top of this page; under "Reported BUGs".

Status / Comment
BUG reported
done[NTH] Implement accessors for CompiledMethod's messageComment
done[NTH] ComposedObjects. Try following expressions
(CompiledMethod collection
	,(Point class >> #x:y:)
 ) asArray.

CompiledMethod collection
removedsupport for literal notation
    #'this is a symbol with blanks'
!Object methodsFor: #blockTest!
testBlocks: aBlock
        aBlock isNil
                ifTrue: [
                    self testBlocks: [self print: #true. ^true].
                    self print: #nowhere ]
                ifFalse: [aBlock value].
        self print: #false.
        ^false "This should not execute"! !
This method returns false but it should return true.
testedSupport #isNil overrrides (and also inline #isNil message, as we are doing today)
testedNTH: inline #respondsTo: and #isKindOf: to support "sending this messages to undefined. (routed to smalltalk?)
testedConform equality test semantics with other smalltalk (for Numbers, Strings, undefined, nil ,etc).
removedSymbol literals in arrays must be parsed without requiring a # (now it is required for uppercase names and selectors with : )
RemovedCases of #( true false nil )
RemovedBlocks must not be accepted as valid array literal. It generates an error during compilation (#value not understood)
removed#basicAt:[ifAbsent:] macro fails when property is 0,false or empty string (must store internal variable and test with nil.isNil_ )
removedIt looks like #deepCopy is broken. For instance, try the following:
(5 -> 7) deepCopy.
The key and value will be nil.
removed#false notNil return false. It is a bug in macro used by compiler (see showIt of expression [ false notNil ]). (false perform: #notNil) is ok.
NIH Not a S8 issue. It was a U8 service issue.
removedThe class Array appears two times as subclass of SequenceableCollection.
not a bug
If a class mapped to standard javascript si reevaluated, the old bindings of the class are missing (it is not expected to reevaluate mapping, but it can happen by mistake, and the problem is that subclasses of the already mapped class dissapear when saving the image, because are not rebound to new class -with same name- ).
removed 123 yourself == 123 (return false, also wrong with strings)

This bug is also related with typeof semantics of javascript. Evaluate:

JS typeOf: 123    (returns number)
then evaluate
JS typeOf: 123 yourself (return object)
Something crazy... it is related with "this" semantics of typeof operator.
not a bug
diferent messages
# The method #replace:with: is repeated in DOMElement as #replace:old:
removedEvaluating a definition of a class that already exists, as subclass of a new class; it is retained delegation on old superclass (on class side -it is a class side problem, instance side delegation is ok-)
removed#Failed to subclass Array - do not work in IE (ComposedAssociations was planned to be a subclass of Array, but the native functions of Arrays -e.g. push()- was not visible/accessible for ComposedAssociations instances)
Note:Was an IE bug?
resolvedwhen asking a HTMLDOMElement #offset it returns a Rectangle with the topLeft point having a x value equals to Number
resolvedin a HTMLSelect the selectionIndex is a 0 based index, probably requires a translation to be compatible with smalltalk index notation
ImplememtedNTH: implementation for Collection>>#collect:thenSelect: and Collection>>#select:thenCollect: