brintos

brintos / llvm-project-archived public Read only

0
0
Text · 943 B · 4a99c68 Raw
38 lines · cpp
1//===----------------------------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9// UNSUPPORTED: c++0310 11// <queue>12 13// void push(value_type&& v);14 15#include <queue>16#include <cassert>17 18#include "test_macros.h"19#include "MoveOnly.h"20 21int main(int, char**) {22  std::queue<MoveOnly> q;23  q.push(MoveOnly(1));24  assert(q.size() == 1);25  assert(q.front() == MoveOnly(1));26  assert(q.back() == MoveOnly(1));27  q.push(MoveOnly(2));28  assert(q.size() == 2);29  assert(q.front() == MoveOnly(1));30  assert(q.back() == MoveOnly(2));31  q.push(MoveOnly(3));32  assert(q.size() == 3);33  assert(q.front() == MoveOnly(1));34  assert(q.back() == MoveOnly(3));35 36  return 0;37}38