Skip to content
Santiago Munín edited this page May 3, 2014 · 8 revisions
Desugar
  • Split checkStructs function in one for structures and pointers and one for classes. √
  • Add check structures against classes and viceversa.
  • Split the name of the method definition in class + name. √
  • Check that if there is method overwrite, they have the same signature (Maybe do this in the typecheck)
  • Check that no 2 methods/fields are defined with the same name in the same class.
  • Add testcase showing that inherited variables are private and cannot be accessed.
Typecheck
  • Add the case where obj1 -> obj2 -> field. Now id -> id it should be expr -> id.
  • Don't allow to access class attributes as they where structure fields. IMPORTANT
  • Heavy refactor
CodeGen
  • Very heavy refactor.
  • Remove use of hash to get the tag. √
Other
  • Check what generates all the s-r conflicts in bnfc.
Clone this wiki locally