bmw-software-engineering/trlc

ICE error message provided, but should not

phiwuu opened this issue · 1 comments

phiwuu commented

In the context of #64 an odd error message has been detected (see here):

error: on resolving references, types do not match; expected RE, got R
| please report this to https://github.com/bmw-software-engineering/trlc/issues

The error message is correct, but the remark to report this problem to https://github.com/bmw-software-engineering/trlc/issues is wrong.

Steps to reproduce:
rsl file:

package Foo

type R {
    a Integer
}

type RE extends R {
    b Integer
}

type Potato {
    ref R[1..*]
}

type Kitten {
    ref RE[1..*]
}

trlc file:

package Foo

R Tiger {
    a = 1
}

RE Lion {
    a = 1
    b = 2
}

Potato Bar {
    ref = [Tiger, Lion]
}

Kitten Sonic {
    ref = [Tiger, Lion]
}

Apparently the error is interpreted as inter-compiler exception, although it is a regular trlc error due to invalid references in the TRLC file.

I have fixed this. The error was right, the severity was not.