Se il dominio della variabile di una macro call rule e' un Concrete Domain viene generato un errore "Unresolved reference".
Un esempio viene riportato in "asm_examples/errors/rpns/macroProblem.asm"; riportato anche qui di seguito.
-----------------------
asm macroProblem
import ../../STDL/StandardLibrary
signature:
domain SubDom subsetof Integer
definitions:
domain SubDom = {1..4}
macro rule r_SubDom($x in SubDom) =
skip
main rule r_main =
//errore: Unresolved reference to r_SubDom
r_SubDom[2]
-----------------------
file di esempio
Attualmente il simulatore adotta questa definizione di compatibilità tra tipi:
dati due tipi T1 e T2, T1 è compatibile con T2 sse T1 è un sottotipo di T2, cioè T1 è dichiarato subsetof T2.
Per ovviare al problema, si potrebbe modificare la nozione di compatibilità così: T1 è compatibile con T2 sse T1 è un sottotipo di T2, oppure T1 è BasicTd e T2 è compatibile con T1.