Thanks. That info made it much easier to try.�� Sorry I didn't end up with an answer for you, but I confirm there is some issue here, or something new I can learn when other chip in.

Here is what I tried.

* Installed XMLParser (monty.58) from Configuration Browser in Pharo 3.

* Ran your code. Got the same error.

* From the call stack I observed that XMLOrderedCollection(SequenceableCollection)>>copyReplaceFrom:to:with:
has the line "newSequenceableCollection := self species new: newSize." such that it seems your error might be reduced to the question of why the following two snippets fail:
������ d := OrderedCollection new: 1.
������ d at: 1 put: 1.

������ e := OrderedCollection new: 3.
������ e at: 2 put: 1.

However I'm sorry that is beyond my knowledge, and I'm hoping someone else can chip in so I can learn something.

Pushing on, I noticed that XMLOrderedList has an instance variable /collection/ which holds the OrderedCollection.

Now I wonder (without great experience and hoping to learn something) if it smells funny that XMLOrderedList inherits all of SequencableCollection methods that can not operate on /collection/.

I noticed that XMLOrderedList was using an inherited SequenceableCollection>>copyReplaceFrom:to:with
while OrderedCollection overrode that method with its own. So taking inspiration XMLOrderedList>>copyFrom:to: to override SequencableCollection>>copyReplaceFrom:to:with: to work with /collection/
seems to solve your problem:
������ XMLOrderedList>>copyReplaceFrom: start to: stop with: replacementCollection
�������������� ^ self newWithCollection:
������ �������������� (collection copyReplaceFrom: start to: stop with: replacementCollection )


Along the way I noticed a few (possible) bugs that seems not related to your problem:

* When stepping through XMLOrderedList>>setCollection:
there is a red-box-of-death for the instance variables, which can be solved by defining the following.
������ XMLOrderedList>>size
�������������� ^ collection ifNil: [ 0 ] ifNotNil: [ collection size]

* In the debugger the /collection/ instance variable is not shown! (e.g. line XMLOrderedList>>at:put:).
Can someone confirm this should show?

HTH
cheers -ben

Thushar G R wrote:
XMLOrderedList��belongs to package XML-Parser-Nodes.

a := XMLOrderedList new.
a add:'1'.
a , XMLOrderedList new.

Here select all and Do it. On line 3 (a , XMLOrderedList new.) ��i am expected to get a copy of 'a' , but instead it throws an error��SubscriptOutOfBounds.��




OrderedCollection(Object)>>errorSubscriptBounds:
OrderedCollection>>ensureBoundsFrom:to:
OrderedCollection>>at:put:
OrderedCollection(SequenceableCollection)>>replaceFrom:to:with:startingAt:
XMLOrderedList>>replaceFrom:to:with:startingAt:
XMLOrderedList(SequenceableCollection)>>copyReplaceFrom:to:with:
XMLOrderedList(SequenceableCollection)>>,
UndefinedObject>>DoIt
OpalCompiler>>evaluate
SmalltalkEditor>>evaluateSelectionAndDo:
PluggableTextMorph>>inspectIt in Block: [ textMorph editor evaluateSelectionAndDo: [ :resu...etc...
PluggableTextMorph>>handleEdit: in Block: [ result := editBlock value ]
TextMorphForEditView(TextMorph)>>handleEdit:
PluggableTextMorph>>handleEdit:
PluggableTextMorph>>inspectIt
SmalltalkEditor class>>buildSmalltalkEditorKeymappingsOn: in Block: [ :morph | morph inspectIt ]
BlockClosure>>cull:
BlockClosure>>cull:cull:
BlockClosure>>cull:cull:cull:
KMCategoryBinding>>completeMatch:buffer:
KMKeymap>>notifyCompleteMatchTo:buffer: in Block: [ :l | l completeMatch: self buffer: aBuffer ]
Array(SequenceableCollection)>>do:
KMKeymap>>notifyCompleteMatchTo:buffer:
KMKeymap>>onMatchWith:notify:andDo:
KMCategory>>onMatchWith:notify:andDo: in Block: [ :entry | entry onMatchWith: anEventBuffer notify...etc...
Set>>do:
KMCategory>>onMatchWith:notify:andDo:
KMCategoryBinding>>verifyMatchWith:notifying:thenDoing:
KMDispatcher>>dispatch: in Block: [ :aTarget | ...
OrderedCollection>>do:


Plese refer to the above stack.

Thanks in advance.

thushar


On Mon, May 5, 2014 at 6:28 PM, Ben Coman <btc@openinworld.com> wrote:
Thushar G R wrote:
Hi,

I am getting an error while doing this.

a := XMLOrderedList new.
a add:'1'.
a , XMLOrderedList new.

Thanks,

Thushar
I could give you "an answer" ;) - but it would be what you wanted. ��It would help if you told what the error was, where it occurs (which of the three lines), and what you expect each line is doing (especially the third line).

Also I don't see XMLOrderedList in the default Pharo image, so it would help if you describe where you got that from and how you installed it.

cheers -ben