ETSI's Bug Tracker - Ext Pack: Object-oriented features (ES 203 790)
View Issue Details

ID | Project | Category | View Status | Date Submitted | Last Update
0007856 | Ext Pack: Object-oriented features (ES 203 790) | [All Projects] General | public | 08-08-2019 12:10 | 09-01-2020 16:03

Reporter | Jacob Wieland - Spirent |
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 |  |

Summary | 0007856: Implicit constructor shall only provide parameters for non-var fields without initializer

Description

In the case that a constant or template field of a class already has an initializer, the implicit constructor would violate the rule that a constant/template should only be initialized once and the initialization would fail because these fields are already initialized.
Example:
type class C {
const integer i := 5;
const integer j;
// implicit constructor
create(integer i, integer j) {
this.i := i;
this.j := j;
}
}
Therefore, the implicit constructor derivation should be changed that it excludes all const and template fields that already have an initializer from the parameter list:
==>
create(integer j) {
this.j := j;
}

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

Relationships

related to | 0007868 | closed | Jens Grabowski | External classes should be allowed internal members (direct and inherited)

Attached Files | CR7856.docx (141,386) 08-08-2019 13:08 http://oldforge.etsi.org/mantis/file_download.php?file_id=3848&type=bug CR7856-2.docx (164,514) 08-08-2019 14:21 http://oldforge.etsi.org/mantis/file_download.php?file_id=3849&type=bug CR7856-3.docx (143,222) 08-08-2019 14:38 http://oldforge.etsi.org/mantis/file_download.php?file_id=3850&type=bug

Issue History
Date Modified | Username | Field | Change
08-08-2019 12:10 | Jacob Wieland - Spirent | New Issue |
08-08-2019 12:10 | Jacob Wieland - Spirent | Status | new => assigned
08-08-2019 12:10 | Jacob Wieland - Spirent | Assigned To | => Jacob Wieland - Spirent
08-08-2019 13:08 | Jacob Wieland - Spirent | File Added: CR7856.docx |
08-08-2019 13:09 | Jacob Wieland - Spirent | Note Added: 0015433 |
08-08-2019 13:09 | Jacob Wieland - Spirent | Assigned To | Jacob Wieland - Spirent => Tomas Urban
08-08-2019 13:09 | Jacob Wieland - Spirent | Status | assigned => confirmed
08-08-2019 14:21 | Tomas Urban | File Added: CR7856-2.docx |
08-08-2019 14:28 | Tomas Urban | Note Added: 0015436 |
08-08-2019 14:28 | Tomas Urban | Assigned To | Tomas Urban => Jacob Wieland - Spirent
08-08-2019 14:38 | Jacob Wieland - Spirent | File Added: CR7856-3.docx |
08-08-2019 14:39 | Jacob Wieland - Spirent | Note Added: 0015438 |
08-08-2019 14:39 | Jacob Wieland - Spirent | Status | confirmed => resolved
08-08-2019 14:39 | Jacob Wieland - Spirent | Resolution | open => fixed
08-08-2019 14:39 | Jacob Wieland - Spirent | Assigned To | Jacob Wieland - Spirent => Jens Grabowski
18-12-2019 09:27 | Tomas Urban | Relationship added | related to 0007868
18-12-2019 09:27 | Jens Grabowski | Note Added: 0015570 |
18-12-2019 09:28 | Jens Grabowski | Assigned To | Jens Grabowski => Tomas Urban
18-12-2019 09:28 | Jens Grabowski | Status | resolved => assigned
18-12-2019 10:23 | Tomas Urban | Note Added: 0015574 |
18-12-2019 10:23 | Tomas Urban | Assigned To | Tomas Urban => Jacob Wieland - Spirent
18-12-2019 10:23 | Tomas Urban | Status | assigned => confirmed
18-12-2019 11:04 | Jacob Wieland - Spirent | Status | confirmed => resolved
18-12-2019 11:04 | Jacob Wieland - Spirent | Assigned To | Jacob Wieland - Spirent => Jens Grabowski
09-01-2020 16:03 | Jens Grabowski | Status | resolved => closed

Notes

(0015433)
Jacob Wieland - Spirent
08-08-2019 13:09

please review

(0015436)
Tomas Urban
08-08-2019 14:28

Mostly OK, I slightly modified syntax description and added one sentence to the constructor rules. Please check.

(0015438)
Jacob Wieland - Spirent
08-08-2019 14:39

another small correction Type -> ReferencedType in the super-constructor call

(0015570)
Jens Grabowski
18-12-2019 09:27

conflicts with 7868, 7830

(0015574)
Tomas Urban
18-12-2019 10:23

Merged with changes from 0007868 and 0007830. The merged document is in 0007868. Please mark this CR as resolved if review of the document yield a positive result.