CS269: HW/SW
Engineering of Embedded Systems, Winter02


The frontend
•File Loader
•0
•1
•2
•3
•4
“File does not exist”
“Syntax error”
“package A does not exist”
“class B not found in package A”
“port A already declared”
“class A should implement a method B(int,float)”
“class A does not have a field called B”
“template A declared with 3 type parameters, but it is used with 2”
“template instantiated with type ’int’, but used as an object”
“Incompatible types in expression: +(int,bool)”
“method A(int) not declared in class B”
“Type of port A of class B is not a Port interface“
“Second argument of ‘refine’ is not a netlist“
•Class resolution
•Name resolution
•Metamodel checks
•Template
elimination
• Package
resolution
ASTs
ASTs
Meta model files
