On 20 Nov 2015, at 22:37, Nicolai Hess <nicolaihess@gmail.com> wrote:

GTDummyExamples class
d: anInteger
    <gtExample>
    <label: 'Dummy #d:, depends #c:'>
    <description: 'should raise an exception as the argument is not anInteger'>
    <depends: #c:>
    <raises: Literal constant expected -> MessageNotUnderstood>
   
    ^ 1 + anInteger

The old Parser complains about the class name "MessageNotUnderstood" used as a pragma
argument without being a string or symbol

Opal does not complain

Is Opals behavior intended ?


it actually is compiled as a literal��� maybe the idea was that it follows how literal arrays work? #(thisisasymbol).
But yes, it it confusing and should be changed.



From squeaks bugtracker : http://bugs.squeak.org/view.php?id=7770

Cascading message sends to super.

Compiler refuses to compile
super
    initialize;
    setListProperties


It looks like Opal would compile this to

super initialize.
super setListProperties.

Intended ?

We just use RBParser (or started with RBParser). I think it is intended.

Do we want to keep it?


Yes, I actually like it.

NBNativeCodeGen
parseOptions: optionsArray
uses association symbol -> block instead of block -> block
for caseOf arguments.
The old parser does not accept this.

I would say that we change it to be like the old and change set one user.

Marcus