Opened 9 years ago

Last modified 4 years ago

#3622 closed defect

Bad management of public and protected variables — at Initial Version

Reported by: francois.beaude@… Owned by: somebody
Priority: high Milestone: 1.16.0
Component: New Instantiation Version:
Keywords: protected, public, variables Cc:

Description

When writing the following two models

class AccessRights

Real publ;

protected

Real protec;

end AccessRights;

class Glob

AccessRights A;

equation

A.publ = 10;
A.protec = 1;

end Glob;

The Glob model is successfully compiled and a simulation is conducted (using OpenModelica v1.9.3). Only publ can be displayed in output (not A.protec). When the A.protec = 1 equation is commented out, an error message is displayed (not enough equations).
The Modelica language specification (3.3, section 4.1) says that "Protected elements in classes cannot be accessed via dot notation. They may not be modified or redeclared in a class modification."

As a result, shouldn't the A.protec = 1 equation be deemed illegal ?

Change History (0)

Note: See TracTickets for help on using tickets.