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

ID | Project | Category | View Status | Date Submitted | Last Update
0007988 | Part 01: TTCN-3 Core Language | Clarification | public | 27-10-2020 10:11 | 16-12-2020 16:58

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 | 4.12.1 (published 2020-05) |
Target Version | 4.13.1 (ongoing) | Fixed in Version | 4.13.1 (ongoing) |
Clause Reference(s) | 6.2.15.1
Source (company - Author) | TTF T003

Summary | 0007988: Clarification of a restriction on map types

Description

The restriction 6.2.15.1 states that: "... expressions of type map or any structured type containing a field or element of type map directly or indirectly are not allowed."
What exactly does it mean? An expression is usually of a certain type if its result is of this type. However, there are no operands that could produce a result of a map type.
The other possibility is that the restriction is related to operands of expressions. That would make more sense as map values could occur e.g. in comparison expressions and there's no explicit guidance on how to compare two map values in the standand.
If the latter is true, I would prefer the restriction to be split into two:
a) Templates of a map type or any structured type containing a field or element of a map type on any level of nesting are not allowed.
b) Operands of expressions shall not be of a map type or any structured type containing a field or element of a map type on any level of nesting.
Eventually we could add an explicit rule on comparison of two maps:
Two map values are equal if they are mutually compatible with the type of the other operand (see clause 6.3.8), both values contain the same amount of key value pairs and each value associated with a key in one value is a equal to a value associated with an equal key in the other value.
If the intention of the existing restriction is indeed to forbid comparison of maps then there's a problem with the anytype. The anytype automatically contains all map types declared in the module and therefore it is not possible to use it in comparison operations, because it is a constucted type containing an element of a map type.

Steps To Reproduce |
Additional Information |
Tags | No tags attached.
Relationships |
Attached Files | CR7988-1.docx (181,289) 07-12-2020 13:31 http://oldforge.etsi.org/mantis/file_download.php?file_id=3967&type=bug

Issue History
Date Modified | Username | Field | Change
27-10-2020 10:11 | Tomas Urban | New Issue |
07-12-2020 11:58 | Jens Grabowski | Assigned To | => Tomas Urban
07-12-2020 11:58 | Jens Grabowski | Status | new => assigned
07-12-2020 13:31 | Tomas Urban | File Added: CR7988-1.docx |
07-12-2020 13:32 | Tomas Urban | Note Added: 0015798 |
07-12-2020 13:32 | Tomas Urban | Assigned To | Tomas Urban => KristÃ³f Szabados
07-12-2020 13:32 | Tomas Urban | Status | assigned => confirmed
07-12-2020 17:08 | KristÃ³f Szabados | Note Added: 0015804 |
07-12-2020 17:09 | KristÃ³f Szabados | Note Added: 0015805 |
07-12-2020 17:09 | KristÃ³f Szabados | Status | confirmed => resolved
07-12-2020 17:09 | KristÃ³f Szabados | Resolution | open => fixed
07-12-2020 17:09 | KristÃ³f Szabados | Assigned To | KristÃ³f Szabados => Gyorgy Rethy
16-12-2020 16:58 | Gyorgy Rethy | Note Added: 0015871 |
16-12-2020 16:58 | Gyorgy Rethy | Status | resolved => closed
16-12-2020 16:58 | Gyorgy Rethy | Product Version | => 4.12.1 (published 2020-05)
16-12-2020 16:58 | Gyorgy Rethy | Fixed in Version | => 4.13.1 (ongoing)
16-12-2020 16:58 | Gyorgy Rethy | Target Version | => 4.13.1 (ongoing)

Notes

(0015798)
Tomas Urban
07-12-2020 13:32

Resolution uploaded. Please check.

(0015804)
KristÃ³f Szabados
07-12-2020 17:08

Looks fine to me.

(0015805)
KristÃ³f Szabados
07-12-2020 17:09

Can be included in the next version of the standard.

(0015871)
Gyorgy Rethy
16-12-2020 16:58

Implemented in draft 4.12.2