Opened 9 years ago
Last modified 4 years ago
#3622 closed defect
Bad management of public and protected variables — at Initial Version
Reported by: | 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 ?