Skip to content

Complete the building of SemanticDomain #1730

@fm-117

Description

@fm-117

Following #1721, the semantic objects are all created but some links between them are missing. The goal of this issue is to finalize the building of Semantic Domain by adding those missing links.

What needs to be set :

  • ScopeType.Parameters and ScopeType.ReturnVariable
    • for a ProgramSymbol, the parameters of the using clause and the return variable are not resolved by ProgramSymbolTableBuilder. They must be searched among variables of the linkage section.
  • VariableSymbol.DependingOn
    • Resolve the variable in the owner group
  • RedefinesSymbol.Redefined
    • Resolve the target of a REDEFINES, note that this would also set VariableSymbol.Redefines
  • TypedVariableSymbol.Typedef
    • This is the type linking process already performed in TypeCobolLinker

Additionally, object model can be improved to simplify usage of Semantic Domain:

  • for GroupType, the Usage property should be overriden so as to better handle 88-levels (i.e. return usage of LeadingType if there is one)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions