# Dynarray Semi-Editorial Issues

ISO/IEC JTC1 SC22 WG21 N4050 - 2014-05-26

Lawrence Crowl, Lawrence@Crowl.org

## Contents

Introduction
Wording changes
23.3.4.1 Class template `dynarray` overview [dynarray.overview]
23.3.4.2 `dynarray` constructor and destructor [dynarray.cons]

## Introduction

N3691 Working Draft, Standard for Programming Language C++ had some semi-editorial issues and hence N3820 Working Draft, Technical Specification — Array Extensions has them as well.

## Wording changes

The proposed wording changes are relative to N3820 Working Draft, Technical Specification — Array Extensions).

### 23.3.4.1 Class template `dynarray` overview [dynarray.overview]

Relational operators cannot be constant-time complexity. In the third paragraph, edit as follows.

> All operations except construction, destruction, relational operators, and fill shall have constant-time complexity.

### 23.3.4.2 `dynarray` constructor and destructor [dynarray.cons]

The specification for the `initializer_list` constructor is missing. Before the allocator variants of the constructors, add the following specification.

> `dynarray(initializer_list<T> il)`

>   Requires: `T` shall meet the `CopyConstructible` requirements.

>   Effects: Allocates storage for `distance(il.begin(), il.end())` elements. Copies the contents of `il` into the `dynarray`. May or may not invoke the global `operator new`.