2423. Missing specification slice_array, gslice_array, mask_array, indirect_array copy constructor

Section: 29.7.5 [template.slice.array], 29.7.7 [template.gslice.array], 29.7.8 [template.mask.array], 29.7.9 [template.indirect.array] Status: New Submitter: Akira Takahashi Opened: 2014-08-12 Last modified: 2014-11-03

Priority: 4

View all other issues in [template.slice.array].

View all issues with New status.

Discussion:

I found a missing specification of the copy constructor of the following class templates:

Proposed resolution:

  1. Before 29.7.5.2 [slice.arr.assign] insert a new sub-clause as indicated:

    -?- slice_array constructors [slice.arr.cons]

    slice_array(const slice_array&);
    

    -?- Effects: The constructed slice refers to the same valarray<T> object to which the argument slice refers.

  2. Before 29.7.7.2 [gslice.array.assign] insert a new sub-clause as indicated:

    -?- gslice_array constructors [gslice.array.cons]

    gslice_array(const gslice_array&);
    

    -?- Effects: The constructed slice refers to the same valarray<T> object to which the argument slice refers.

  3. Before 29.7.8.2 [mask.array.assign] insert a new sub-clause as indicated:

    -?- mask_array constructors [mask.array.cons]

    mask_array(const mask_array&);
    

    -?- Effects: The constructed slice refers to the same valarray<T> object to which the argument slice refers.

  4. Before 29.7.9.2 [indirect.array.assign] insert a new sub-clause as indicated:

    -?- indirect_array constructors [indirect.array.cons]

    indirect_array(const indirect_array&);
    

    -?- Effects: The constructed slice refers to the same valarray<T> object to which the argument slice refers.