ETSI's Bug Tracker - Part 01: TTCN-3 Core Language
View Issue Details

ID | Project | Category | View Status | Date Submitted | Last Update
0006692 | Part 01: TTCN-3 Core Language | Clarification | public | 26-02-2014 08:46 | 06-01-2015 19:30

Reporter | Tomas Urban |
Assigned To | Gyorgy Rethy |
Priority | normal | Severity | minor | Reproducibility | N/A
Status | closed | Resolution | fixed |
Platform |  | OS |  | OS Version |
Product Version | v4.5.1 (published 2013-04) |
Target Version | v4.7.1 (published 2015-06) | Fixed in Version | v4.7.1 (published 2015-06) |
Clause Reference(s) | 15.5
Source (company - Author) | Elvior

Summary | 0006692: More detailed restriction on parameters of modified templates

Description

The restriction 15.5.b.1 says that: "the derived template shall not omit parameters defined at any of the modification steps between the base
template and the actual modified template".
However, the word "omit" might be interpreted in several ways. E.g. it is not clear if the type of the parameter has to remain exactly the same or if it is possible to use a compatible type:
type integer Restricted(0..1)
template MyType m_src (int p_par) := {...}
template MyType m_modified (Restricted p_par) modifies m_src := {...}
It is also not clear if it is allowed to use a different kind of parameter (i.e. change a value parameter to a template parameter or vice versa) or to add or remove a template restriction:
template MyType m_modified2 (template int p_par) modifies m_src := {...}
template MyType m_modified3 (template(omit) int p_par) modifies m_modified2 := {...}
In my opinion, the restriction should describe these situations to avoid possible different interpretations by tool vendors.

Steps To Reproduce |
Additional Information |
Tags | No tags attached.
Relationships |
Attached Files | CR6692_v1-140616-JG.docx (22,517) 18-06-2014 08:28 http://oldforge.etsi.org/mantis/file_download.php?file_id=3043&type=bug CR6692_v2-140618-TU.docx (26,877) 18-06-2014 13:44 http://oldforge.etsi.org/mantis/file_download.php?file_id=3052&type=bug

Issue History
Date Modified | Username | Field | Change
26-02-2014 08:46 | Tomas Urban | New Issue |
07-04-2014 15:54 | Gyorgy Rethy | Assigned To | => Gyorgy Rethy
07-04-2014 15:54 | Gyorgy Rethy | Status | new => assigned
07-04-2014 16:07 | Gyorgy Rethy | Assigned To | Gyorgy Rethy => Jens Grabowski
08-04-2014 17:02 | Gyorgy Rethy | Target Version | => v4.7.1 (published 2015-06)
30-04-2014 09:21 | Jacob Wieland - Spirent | Note Added: 0012059 |
17-06-2014 14:01 | Jens Grabowski | Note Added: 0012107 |
17-06-2014 14:08 | Gyorgy Rethy | Note Edited: 0012107 | bug_revision_view_page.php?bugnote_id=12107#r27
18-06-2014 08:28 | Jens Grabowski | Note Added: 0012117 |
18-06-2014 08:28 | Jens Grabowski | File Added: CR6692_v1-140616-JG.docx |
18-06-2014 08:29 | Jens Grabowski | Assigned To | Jens Grabowski => Tomas Urban
18-06-2014 08:29 | Jens Grabowski | Status | assigned => confirmed
18-06-2014 13:44 | Tomas Urban | File Added: CR6692_v2-140618-TU.docx |
18-06-2014 13:48 | Tomas Urban | Note Added: 0012125 |
18-06-2014 13:48 | Tomas Urban | Status | confirmed => resolved
18-06-2014 13:48 | Tomas Urban | Resolution | open => fixed
18-06-2014 13:48 | Tomas Urban | Assigned To | Tomas Urban => Gyorgy Rethy
06-01-2015 19:30 | Gyorgy Rethy | Note Added: 0012663 |
06-01-2015 19:30 | Gyorgy Rethy | Status | resolved => closed
06-01-2015 19:30 | Gyorgy Rethy | Fixed in Version | => v4.7.1 (published 2015-06)

Notes

(0012059)
Jacob Wieland - Spirent
30-04-2014 09:21

The resulting clarification should take care of the semantics of modification, insofar that a changed parameter type (either by being more or less restrictive) or a changed template modifier (either adding or removing accepted actual parameters) must still be processable by the parent-template definition before the modifications of the modifying template are applied to it.
Therefore, in my opinion, only more restrictive types/template-restrictions should be allowed for the inherited parameters in the modifying template, if the parameters are to be changeable at all.
If you allow less-restrictive types/template-restrictions, this would be confusing as the modifying template would practically be undefined for values not accepted by the parent template, even though the signature of the modifying template suggests that it would accept these actual parameters.

(0012107)
Jens Grabowski
17-06-2014 14:01 (edited on: 17-06-2014 14:08)

STF discussion: Template parameters shall not ommitted and their types or names be changed, but template parameter restrictions can be changed to a stricter one.

(0012117)
Jens Grabowski
18-06-2014 08:28

Resolution proposal attached. Assigned to Tomas for proofreading.

(0012125)
Tomas Urban
18-06-2014 13:48

I made a minor typographical correction (full stop replaced with a semicolon), but appart from that, the proposed rule changes solve the reported issue and are ready to be included to the next version of the standard.

(0012663)
Gyorgy Rethy
06-01-2015 19:30

Added to draft V4.6.3