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

ID | Project | Category | View Status | Date Submitted | Last Update
0008105 | Part 01: TTCN-3 Core Language | Technical | public | 09-08-2022 16:38 | 03-01-2023 11:25

Reporter | Matthias Simon |
Assigned To | Jens Grabowski |
Priority | normal | Severity | minor | Reproducibility | have not tried
Status | closed | Resolution | fixed |
Platform |  | OS |  | OS Version |
Product Version |  |
Target Version |  | Fixed in Version |  |
Clause Reference(s) | Core Language Spec
Source (company - Author) | Nokia - Matthias Simon

Summary | 0008105: Extend allowed usage of nested types
Description | Allow the usage of nested types in more places. For example: * Functions: external function f() return record of charstring; * Local variables: var record of integer a; * Parameters: testcase tc(record of PTC ptcs) { ... }
Steps To Reproduce |
Additional Information |
Tags | No tags attached.
Relationships |

Attached Files

CR-8105.docx (294,286) 10-11-2022 10:47
http://oldforge.etsi.org/mantis/file_download.php?file_id=4075&type=bug
CR-8105-2.docx (313,601) 11-11-2022 09:55
http://oldforge.etsi.org/mantis/file_download.php?file_id=4078&type=bug
CR-8105-3.docx (320,794) 07-12-2022 12:55
http://oldforge.etsi.org/mantis/file_download.php?file_id=4089&type=bug
CR-8105-4.docx (173,623) 12-12-2022 07:24
http://oldforge.etsi.org/mantis/file_download.php?file_id=4094&type=bug

Issue History
Date Modified | Username | Field | Change
09-08-2022 16:38 | Matthias Simon | New Issue |
16-08-2022 10:37 | Jens Grabowski | Note Added: 0016216 |
16-08-2022 10:40 | Jens Grabowski | Assigned To | => Tomas Urban
16-08-2022 10:40 | Jens Grabowski | Status | new => assigned
16-08-2022 14:14 | Jens Grabowski | Project | TTCN-3 Change Requests => Part 01: TTCN-3 Core Language
10-11-2022 10:47 | Tomas Urban | File Added: CR-8105.docx |
10-11-2022 10:51 | Tomas Urban | Note Added: 0016291 |
10-11-2022 10:51 | Tomas Urban | Assigned To | Tomas Urban => Matthias Simon
10-11-2022 10:51 | Tomas Urban | Status | assigned => confirmed
10-11-2022 12:16 | Jens Grabowski | Assigned To | Matthias Simon => Tomas Urban
10-11-2022 12:16 | Jens Grabowski | Status | confirmed => assigned
10-11-2022 20:54 | Matthias Simon | Note Added: 0016301 |
11-11-2022 09:55 | Tomas Urban | File Added: CR-8105-2.docx |
11-11-2022 09:56 | Tomas Urban | Note Added: 0016307 |
11-11-2022 09:56 | Tomas Urban | Assigned To | Tomas Urban => Matthias Simon
11-11-2022 09:56 | Tomas Urban | Status | assigned => confirmed
06-12-2022 10:40 | Matthias Simon | Note Added: 0016358 |
06-12-2022 10:40 | Matthias Simon | Note Edited: 0016358 | bug_revision_view_page.php?bugnote_id=16358#r605
06-12-2022 10:40 | Matthias Simon | Assigned To | Matthias Simon => Tomas Urban
06-12-2022 10:40 | Matthias Simon | Status | confirmed => assigned
07-12-2022 12:55 | Tomas Urban | File Added: CR-8105-3.docx |
07-12-2022 12:55 | Tomas Urban | Note Added: 0016371 |
07-12-2022 12:55 | Tomas Urban | Assigned To | Tomas Urban => Matthias Simon
07-12-2022 12:55 | Tomas Urban | Status | assigned => confirmed
12-12-2022 07:24 | Matthias Simon | File Added: CR-8105-4.docx |
12-12-2022 07:27 | Matthias Simon | Note Added: 0016380 |
12-12-2022 07:27 | Matthias Simon | Status | confirmed => resolved
12-12-2022 07:27 | Matthias Simon | Resolution | open => fixed
12-12-2022 07:27 | Matthias Simon | Assigned To | Matthias Simon => Jens Grabowski
03-01-2023 11:25 | Jens Grabowski | Note Added: 0016445 |
03-01-2023 11:25 | Jens Grabowski | Status | resolved => closed

Notes

(0016216)
Jens Grabowski
16-08-2022 10:37

TTF discussion: The places where nested types should be used, need to be identified.

(0016291)
Tomas Urban
10-11-2022 10:51

Proposal uploaded, please review. I didn't add inline types to templates (with exception of template variables and template parameters) as templates require strong typing for communication operations and it wouldn't make much sense to have static templates with not much practical use. Template parameters and variables are fine though as they are often used withing the code for passing data around.

(0016301)
Matthias Simon
10-11-2022 20:54

This feature is very subtle. I think it would be nice we'd add one or two examples.

(0016307)
Tomas Urban
11-11-2022 09:56

Second version with signatures, constants and couple of examples. Different naming for the new BNF rule is used as well. Please check.

(0016358)
Matthias Simon
06-12-2022 10:40

We should clarify the section about reference-parameters and strong-typing:
> 5.4.1 Formal parameters:
> When parameters are passed by reference, strong typing is required.
> Both the actual and formal parameter shall be of the same type.
> 3.1 Terms:
> strong typing: strict enforcement of type compatibility
> by type name equivalence with no exceptions.
type record of integer RoI;
function f(inout record of integer a) {
a[1] := 23
}
control {
var RoI r := {1,2,3};
f(r); // Should this be allowed?
}

(0016371)
Tomas Urban
07-12-2022 12:55

Added a note on strong typing concerning nested types. Please check

(0016380)
Matthias Simon
12-12-2022 07:27

Looks good to me. Note, I corrected a small mistake in the BNF rules for formal parameters.

(0016445)
Jens Grabowski
03-01-2023 11:25

Implemented as proposed.