[Pharo-project] Subscript out of bounds: 1 on latest (hudson) Pharo 1.3

Guillermo Polito guillermopolito at gmail.com
Thu May 19 20:33:03 EDT 2011


http://code.google.com/p/pharo/issues/detail?id=4255


On Thu, May 19, 2011 at 9:12 PM, Guillermo Polito <guillermopolito at gmail.com
> wrote:

> Hi!
>
> I want to load a 6 month old slice
> (SLICE-Issue-1907-SetWithNilTests-GuillermoPolito.2) from pharo inbox in
> latest 1.3(13204) from hudson using cog, and It opens a pre-debugger because
> of a Subscript out of bounds: 1.  If I clic on it to debug, It throws me
> again the same error :(.
> It happens if there is the sources file or not.
>
>
> But the most strange is that if I download latest 1.3 from the bottom of
> the page: http://www.pharo-project.org/pharo-download
> It actually loads the Slice, but throws me a DNU if I dont have the sources
> file in the same folder:
>
> 19 May 2011 9:02:38 pm
>
> VM: unix - i686 - linux-gnu - Croquet Closure Cog VM [CoInterpreter
> VMMaker-oscog.47]
> Image: Pharo1.3a [Latest update: #13201]
>
> UndefinedObject(Object)>>doesNotUnderstand: #keywords
>     Receiver: nil
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
> nil
>
> CompiledMethod>>getSourceReplacingSelectorWith:
>     Receiver: (TPrintTest>>#testPrintElementsOn "a
> CompiledMethod(842792960)")
>     Arguments and temporary variables:
>         newSelector:     #testPrintElementsOn
>         oldKeywords:     nil
>         newKeywords:     nil
>         args:     nil
>         newSelectorWithArgs:     nil
>         source:     ''
>         oldSelector:     nil
>         s:     nil
>     Receiver's instance variables:
> (TPrintTest>>#testPrintElementsOn "a CompiledMethod(842792960)")
>
> DictionaryTest class(Behavior)>>addTraitSelector:withMethod:
>     Receiver: DictionaryTest
>     Arguments and temporary variables:
>         aSymbol:     #testPrintElementsOn
>         aCompiledMethod:     (TPrintTest>>#testPrintElementsOn "a
> CompiledMethod(842792960)...etc...
>         source:     nil
>         methodAndNode:     nil
>     Receiver's instance variables:
>         superclass:     CollectionRootTest
>         methodDict:     a MethodDictionary(size 192)
>         format:     162
>         instanceVariables:     #('emptyDict' 'nonEmptyDict'
> 'nonEmpty5ElementsNoDuplicates'...etc...
>         organization:     ('helpers' aValue anIndex anotherValue)
> ('requirement' anotherEle...etc...
>         subclasses:     {SmallDictionaryTest. IdentityDictionaryTest.
> LiteralDictionaryTest...etc...
>         name:     #DictionaryTest
>         classPool:     nil
>         sharedPools:     nil
>         environment:     a SystemDictionary(lots of globals)
>         category:     #'CollectionsTests-Unordered'
>         traitComposition:     TIncludesTest + TDictionaryAddingTest +
> TDictionaryComparingT...etc...
>         localSelectors:     an IdentitySet(#testKeyAtIdentityValueIfAbsent
> #testDictionaryC...etc...
>         history:     a Dictionary(#errors->a Set() #failures->a Set()
> #passed->a Set() #tim...etc...
>         testToto:     nil
>         pt1:     nil
>
> [:methodDescription |
> | effectiveMethod selector |
> selector := methodDescription selector.
>     (self includesLocalSelector: selector)
>         ifFalse: [methodDescription isEmpty
>                 ifTrue: [self removeTraitSelector: selector.
>                     modifiedSelectors add: selector]
>                 ifFalse: [effectiveMethod := methodDescription
> effectiveMethod.
>                     self addTraitSelector: selector withMethod:
> effectiveMethod.
>                     modifiedSelectors add: selector]]] in DictionaryTest
> class(Behavior)>>updateMethodDictionarySelector:
>     Receiver: DictionaryTest
>     Arguments and temporary variables:
>         modifiedSelectors:     a TraitMethodDescription
>         methodDescription:     an IdentitySet()
>         effectiveMethod:     (TPrintTest>>#testPrintElementsOn "a
> CompiledMethod(842792960)...etc...
>         selector:     #testPrintElementsOn
>     Receiver's instance variables:
>         superclass:     CollectionRootTest
>         methodDict:     a MethodDictionary(size 192)
>         format:     162
>         instanceVariables:     #('emptyDict' 'nonEmptyDict'
> 'nonEmpty5ElementsNoDuplicates'...etc...
>         organization:     ('helpers' aValue anIndex anotherValue)
> ('requirement' anotherEle...etc...
>         subclasses:     {SmallDictionaryTest. IdentityDictionaryTest.
> LiteralDictionaryTest...etc...
>         name:     #DictionaryTest
>         classPool:     nil
>         sharedPools:     nil
>         environment:     a SystemDictionary(lots of globals)
>         category:     #'CollectionsTests-Unordered'
>         traitComposition:     TIncludesTest + TDictionaryAddingTest +
> TDictionaryComparingT...etc...
>         localSelectors:     an IdentitySet(#testKeyAtIdentityValueIfAbsent
> #testDictionaryC...etc...
>         history:     a Dictionary(#errors->a Set() #failures->a Set()
> #passed->a Set() #tim...etc...
>         testToto:     nil
>         pt1:     nil
>
> OrderedCollection>>do:
>     Receiver: an OrderedCollection(a TraitMethodDescription)
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         array:     an Array(a TraitMethodDescription)
>         firstIndex:     1
>         lastIndex:     1
>
> DictionaryTest class(Behavior)>>updateMethodDictionarySelector:
>     Receiver: DictionaryTest
>     Arguments and temporary variables:
>         aSymbol:     #testPrintElementsOn
>         modifiedSelectors:     an IdentitySet()
>         descriptions:     an OrderedCollection(a TraitMethodDescription)
>     Receiver's instance variables:
>         superclass:     CollectionRootTest
>         methodDict:     a MethodDictionary(size 192)
>         format:     162
>         instanceVariables:     #('emptyDict' 'nonEmptyDict'
> 'nonEmpty5ElementsNoDuplicates'...etc...
>         organization:     ('helpers' aValue anIndex anotherValue)
> ('requirement' anotherEle...etc...
>         subclasses:     {SmallDictionaryTest. IdentityDictionaryTest.
> LiteralDictionaryTest...etc...
>         name:     #DictionaryTest
>         classPool:     nil
>         sharedPools:     nil
>         environment:     a SystemDictionary(lots of globals)
>         category:     #'CollectionsTests-Unordered'
>         traitComposition:     TIncludesTest + TDictionaryAddingTest +
> TDictionaryComparingT...etc...
>         localSelectors:     an IdentitySet(#testKeyAtIdentityValueIfAbsent
> #testDictionaryC...etc...
>         history:     a Dictionary(#errors->a Set() #failures->a Set()
> #passed->a Set() #tim...etc...
>         testToto:     nil
>         pt1:     nil
>
> [:t3 | t2
>         addAll: (self updateMethodDictionarySelector: t3)] in
> DictionaryTest class(Behavior)>>noteChangedSelectors:
>     Receiver: DictionaryTest
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         superclass:     CollectionRootTest
>         methodDict:     a MethodDictionary(size 192)
>         format:     162
>         instanceVariables:     #('emptyDict' 'nonEmptyDict'
> 'nonEmpty5ElementsNoDuplicates'...etc...
>         organization:     ('helpers' aValue anIndex anotherValue)
> ('requirement' anotherEle...etc...
>         subclasses:     {SmallDictionaryTest. IdentityDictionaryTest.
> LiteralDictionaryTest...etc...
>         name:     #DictionaryTest
>         classPool:     nil
>         sharedPools:     nil
>         environment:     a SystemDictionary(lots of globals)
>         category:     #'CollectionsTests-Unordered'
>         traitComposition:     TIncludesTest + TDictionaryAddingTest +
> TDictionaryComparingT...etc...
>         localSelectors:     an IdentitySet(#testKeyAtIdentityValueIfAbsent
> #testDictionaryC...etc...
>         history:     a Dictionary(#errors->a Set() #failures->a Set()
> #passed->a Set() #tim...etc...
>         testToto:     nil
>         pt1:     nil
>
> Array(SequenceableCollection)>>do:
>     Receiver: #(#testPrintElementsOn)
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
> #(#testPrintElementsOn)
>
> DictionaryTest class(Behavior)>>noteChangedSelectors:
>     Receiver: DictionaryTest
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         superclass:     CollectionRootTest
>         methodDict:     a MethodDictionary(size 192)
>         format:     162
>         instanceVariables:     #('emptyDict' 'nonEmptyDict'
> 'nonEmpty5ElementsNoDuplicates'...etc...
>         organization:     ('helpers' aValue anIndex anotherValue)
> ('requirement' anotherEle...etc...
>         subclasses:     {SmallDictionaryTest. IdentityDictionaryTest.
> LiteralDictionaryTest...etc...
>         name:     #DictionaryTest
>         classPool:     nil
>         sharedPools:     nil
>         environment:     a SystemDictionary(lots of globals)
>         category:     #'CollectionsTests-Unordered'
>         traitComposition:     TIncludesTest + TDictionaryAddingTest +
> TDictionaryComparingT...etc...
>         localSelectors:     an IdentitySet(#testKeyAtIdentityValueIfAbsent
> #testDictionaryC...etc...
>         history:     a Dictionary(#errors->a Set() #failures->a Set()
> #passed->a Set() #tim...etc...
>         testToto:     nil
>         pt1:     nil
>
> [:t2 | t2 noteChangedSelectors: t1] in
> Trait(TraitDescription)>>notifyUsersOfChangedSelectors:
>     Receiver: TDictionaryPrintingTest
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         methodDict:     a
> MethodDictionary(#emptyDict->(TDictionaryPrintingTest>>#emptyDict...etc...
>         traitComposition:     {}
>         localSelectors:     nil
>         users:     an IdentitySet(DictionaryTest)
>         organization:     ('requirements' emptyDict newEmptyDict
> nonEmptyDict)
> ('test - pri...etc...
>         name:     #TDictionaryPrintingTest
>         environment:     a SystemDictionary(lots of globals)
>         classTrait:     TDictionaryPrintingTest classTrait
>         category:     #'CollectionsTests-Unordered'
>
> [:each | each
>         ifNotNil: [aBlock value: each]] in IdentitySet(Set)>>do:
>     Receiver: an IdentitySet(DictionaryTest)
>     Arguments and temporary variables:
>         aBlock:     DictionaryTest
>         each:     [:t2 | t2 noteChangedSelectors: t1]
>     Receiver's instance variables:
>         tally:     1
>         array:     {nil. nil. nil. nil. DictionaryTest. nil. nil}
>
> Array(SequenceableCollection)>>do:
>     Receiver: {nil. nil. nil. nil. DictionaryTest. nil. nil}
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
> {nil. nil. nil. nil. DictionaryTest. nil. nil}
>
> IdentitySet(Set)>>do:
>     Receiver: an IdentitySet(DictionaryTest)
>     Arguments and temporary variables:
>         aBlock:     [:t2 | t2 noteChangedSelectors: t1]
>     Receiver's instance variables:
>         tally:     1
>         array:     {nil. nil. nil. nil. DictionaryTest. nil. nil}
>
> Trait(TraitDescription)>>notifyUsersOfChangedSelectors:
>     Receiver: TDictionaryPrintingTest
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         methodDict:     a
> MethodDictionary(#emptyDict->(TDictionaryPrintingTest>>#emptyDict...etc...
>         traitComposition:     {}
>         localSelectors:     nil
>         users:     an IdentitySet(DictionaryTest)
>         organization:     ('requirements' emptyDict newEmptyDict
> nonEmptyDict)
> ('test - pri...etc...
>         name:     #TDictionaryPrintingTest
>         environment:     a SystemDictionary(lots of globals)
>         classTrait:     TDictionaryPrintingTest classTrait
>         category:     #'CollectionsTests-Unordered'
>
> Trait(TraitBehavior)>>notifyUsersOfChangedSelector:
>     Receiver: TDictionaryPrintingTest
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         methodDict:     a
> MethodDictionary(#emptyDict->(TDictionaryPrintingTest>>#emptyDict...etc...
>         traitComposition:     {}
>         localSelectors:     nil
>         users:     an IdentitySet(DictionaryTest)
>         organization:     ('requirements' emptyDict newEmptyDict
> nonEmptyDict)
> ('test - pri...etc...
>         name:     #TDictionaryPrintingTest
>         environment:     a SystemDictionary(lots of globals)
>         classTrait:     TDictionaryPrintingTest classTrait
>         category:     #'CollectionsTests-Unordered'
>
> Trait(TraitBehavior)>>addSelectorSilently:withMethod:
>     Receiver: TDictionaryPrintingTest
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         methodDict:     a
> MethodDictionary(#emptyDict->(TDictionaryPrintingTest>>#emptyDict...etc...
>         traitComposition:     {}
>         localSelectors:     nil
>         users:     an IdentitySet(DictionaryTest)
>         organization:     ('requirements' emptyDict newEmptyDict
> nonEmptyDict)
> ('test - pri...etc...
>         name:     #TDictionaryPrintingTest
>         environment:     a SystemDictionary(lots of globals)
>         classTrait:     TDictionaryPrintingTest classTrait
>         category:     #'CollectionsTests-Unordered'
>
> Trait(TraitDescription)>>addSelectorSilently:withMethod:
>     Receiver: TDictionaryPrintingTest
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         methodDict:     a
> MethodDictionary(#emptyDict->(TDictionaryPrintingTest>>#emptyDict...etc...
>         traitComposition:     {}
>         localSelectors:     nil
>         users:     an IdentitySet(DictionaryTest)
>         organization:     ('requirements' emptyDict newEmptyDict
> nonEmptyDict)
> ('test - pri...etc...
>         name:     #TDictionaryPrintingTest
>         environment:     a SystemDictionary(lots of globals)
>         classTrait:     TDictionaryPrintingTest classTrait
>         category:     #'CollectionsTests-Unordered'
>
> MethodAddition>>installMethod
>     Receiver: a MethodAddition
>     Arguments and temporary variables:
> <<error during printing>
>     Receiver's instance variables:
>         text:     'testPrintElementsOn
>     | str |
>     str := String new writeStream.
>     self nonEm...etc...
>         category:     #'test - printing'
>         changeStamp:     'PeterHugossonMiller 9/3/2009 11:33'
>         requestor:     nil
>         logSource:     true
>         myClass:     TDictionaryPrintingTest
>         methodAndNode:     a CompiledMethodWithNode
>         selector:     #testPrintElementsOn
>         compiledMethod:     (TDictionaryPrintingTest>>#testPrintElementsOn
> "a CompiledMetho...etc...
>         priorMethodOrNil:
> (TDictionaryPrintingTest>>#testPrintElementsOn "a CompiledMet...etc...
>
>
> I'll open a ticket :)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20110519/aad8ff34/attachment.html>


More information about the Pharo-dev mailing list