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

ID | Project | Category | View Status | Date Submitted | Last Update
0006677 | Part 01: TTCN-3 Core Language | Clarification | public | 24-01-2014 10:40 | 06-01-2015 19:17

Reporter | Tomas Urban |
Assigned To | Gyorgy Rethy |
Priority | normal | Severity | minor | Reproducibility | have not tried
Status | closed | Resolution | fixed |
Platform |  | OS |  | OS Version |
Product Version | v4.6.1 (published 2014-06) |
Target Version | v4.7.1 (published 2015-06) | Fixed in Version | v4.7.1 (published 2015-06) |
Clause Reference(s) | 8.2.3.1
Source (company - Author) | STF 470

Summary | 0006677: Additional rule on name class in import

Description

The current rules on a name clash caused by import implicitly assume that when the name clash is between a definition from an importing module and an imported definition, then using an unqualified reference means the local definition. However, this fact is never stated directly. The current rules only say that the name clash shall be resolved by adding a module prefix to the imported definition, but never say what happens if there's no prefix.
There are of course examples describing this situation and from the whole text it is obvious that such a reference is a reference to a definition in the current module, but I think it would cause no harm, if an explicit rule was added to the chapter 8.2.3.1 (before the paragraph defining an exception valid for enumerated values):
When there's a name clash between a definition from an importing module and an imported definition, a reference that is not prefixed with a module identifier shall be processed as a reference to the definition from the importing module.

Steps To Reproduce |
Additional Information |
Tags | No tags attached.

Relationships

related to | 0006694 | closed | Gyorgy Rethy | clarify that only module definitions can be prefixed by module identifier

Attached Files | CR6677_update_proposal.docx (13,731) 10-04-2014 13:35 http://oldforge.etsi.org/mantis/file_download.php?file_id=2999&type=bug CR6677_update_proposal_v2.docx (13,864) 11-04-2014 14:12 http://oldforge.etsi.org/mantis/file_download.php?file_id=3018&type=bug CR6677_update_proposal_v3.docx (13,930) 07-10-2014 09:43 http://oldforge.etsi.org/mantis/file_download.php?file_id=3091&type=bug

Issue History
Date Modified | Username | Field | Change
24-01-2014 10:40 | Tomas Urban | New Issue |
24-01-2014 10:40 | Tomas Urban | Clause Reference(s) | => 8.2.3.1
24-01-2014 10:40 | Tomas Urban | Source (company - Author) | => STF 470
07-04-2014 14:57 | Gyorgy Rethy | Assigned To | => Axel Rennoch
07-04-2014 14:57 | Gyorgy Rethy | Status | new => assigned
08-04-2014 16:53 | Gyorgy Rethy | Product Version | => v4.6.1 (published 2014-06)
08-04-2014 16:53 | Gyorgy Rethy | Target Version | => v4.7.1 (published 2015-06)
10-04-2014 13:35 | Axel Rennoch | File Added: CR6677_update_proposal.docx |
10-04-2014 13:35 | Axel Rennoch | Assigned To | Axel Rennoch => Gyorgy Rethy
10-04-2014 13:36 | Axel Rennoch | Note Added: 0012005 |
10-04-2014 13:36 | Axel Rennoch | Status | assigned => confirmed
10-04-2014 13:48 | Axel Rennoch | File Added: CR6691_update_proposal.docx |
10-04-2014 13:48 | Axel Rennoch | File Deleted: CR6691_update_proposal.docx |
11-04-2014 14:01 | Gyorgy Rethy | Note Added: 0012029 |
11-04-2014 14:02 | Gyorgy Rethy | Assigned To | Gyorgy Rethy => Axel Rennoch
11-04-2014 14:02 | Gyorgy Rethy | Status | confirmed => assigned
11-04-2014 14:12 | Axel Rennoch | File Added: CR6677_update_proposal_v2.docx |
11-04-2014 14:13 | Axel Rennoch | Note Added: 0012030 |
11-04-2014 14:13 | Tomas Urban | Note Added: 0012031 |
11-04-2014 14:14 | Tomas Urban | Relationship added | related to 0006674
11-04-2014 14:34 | Tomas Urban | Note Edited: 0012031 | bug_revision_view_page.php?bugnote_id=12031#r14
11-04-2014 14:34 | Tomas Urban | Relationship deleted | related to 0006674
11-04-2014 14:35 | Tomas Urban | Relationship added | related to 0006694
06-10-2014 15:09 | Gyorgy Rethy | Status | assigned => confirmed
06-10-2014 15:11 | Gyorgy Rethy | Assigned To | Axel Rennoch => Tomas Urban
07-10-2014 09:43 | Tomas Urban | File Added: CR6677_update_proposal_v3.docx |
07-10-2014 09:44 | Tomas Urban | Note Added: 0012247 |
07-10-2014 09:44 | Tomas Urban | Status | confirmed => resolved
07-10-2014 09:44 | Tomas Urban | Resolution | open => fixed
07-10-2014 09:44 | Tomas Urban | Assigned To | Tomas Urban => Gyorgy Rethy
06-01-2015 19:17 | Gyorgy Rethy | Note Added: 0012660 |
06-01-2015 19:17 | Gyorgy Rethy | Status | resolved => closed
06-01-2015 19:17 | Gyorgy Rethy | Fixed in Version | => v4.7.1 (published 2015-06)

Notes

(0012005)
Axel Rennoch
10-04-2014 13:36

Problem: missing module identifiers refering to own module scope Approach: missing module identifier is implicitly given by the module name that provides the scope of the reference

(0012029)
Gyorgy Rethy
11-04-2014 14:01

As I remember the STF discussion, it was also about name clash between an enumeration value and a local definition's name. In this case the missing prefix does not refer implicitly to the local module. I think what we need (at least), if there is no such statement yet that all definitions can be referred by their qualified names, i.e. the local module name can also be used as the prefix of a qualified name.

(0012030)
Axel Rennoch
11-04-2014 14:13

update_proposal_v2 takes into account the cases of enumerated values

(0012031)
Tomas Urban
11-04-2014 14:13 (edited on: 11-04-2014 14:34)

That was a different CR: 6694. IMHO, the current resolution is fine for this CR.

(0012247)
Tomas Urban
07-10-2014 09:44

The proposed resolution (with one trivial correction) is ready for inclusion into the next version of the TTCN-3 core language standard.

(0012660)
Gyorgy Rethy
06-01-2015 19:17

Added to draft V4.6.3