[libcxx-commits] [PATCH] D115411: [libc++][NFC] Remove test/support/tracked_value.h

Joe Loser via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Dec 8 18:19:38 PST 2021


This revision was not accepted when it landed; it landed in state "Needs Review".
This revision was automatically updated to reflect the committed changes.
Closed by commit rGec63930c06da: [libc++][NFC] Remove test/support/tracked_value.h (authored by joe_loser).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D115411/new/

https://reviews.llvm.org/D115411

Files:
  libcxx/test/support/tracked_value.h


Index: libcxx/test/support/tracked_value.h
===================================================================
--- libcxx/test/support/tracked_value.h
+++ /dev/null
@@ -1,59 +0,0 @@
-//===----------------------------------------------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-#ifndef SUPPORT_TRACKED_VALUE_H
-#define SUPPORT_TRACKED_VALUE_H
-
-#include <cassert>
-
-#include "test_macros.h"
-
-struct TrackedValue {
-    enum State { CONSTRUCTED, MOVED_FROM, DESTROYED };
-    State state;
-
-    TrackedValue() : state(State::CONSTRUCTED) {}
-
-    TrackedValue(TrackedValue const& t) : state(State::CONSTRUCTED) {
-        assert(t.state != State::MOVED_FROM && "copying a moved-from object");
-        assert(t.state != State::DESTROYED  && "copying a destroyed object");
-    }
-
-#if TEST_STD_VER >= 11
-    TrackedValue(TrackedValue&& t) : state(State::CONSTRUCTED) {
-        assert(t.state != State::MOVED_FROM && "double moving from an object");
-        assert(t.state != State::DESTROYED  && "moving from a destroyed object");
-        t.state = State::MOVED_FROM;
-    }
-#endif
-
-    TrackedValue& operator=(TrackedValue const& t) {
-        assert(state != State::DESTROYED && "copy assigning into destroyed object");
-        assert(t.state != State::MOVED_FROM && "copying a moved-from object");
-        assert(t.state != State::DESTROYED  && "copying a destroyed object");
-        state = t.state;
-        return *this;
-    }
-
-#if TEST_STD_VER >= 11
-    TrackedValue& operator=(TrackedValue&& t) {
-        assert(state != State::DESTROYED && "move assigning into destroyed object");
-        assert(t.state != State::MOVED_FROM && "double moving from an object");
-        assert(t.state != State::DESTROYED  && "moving from a destroyed object");
-        state = t.state;
-        t.state = State::MOVED_FROM;
-        return *this;
-    }
-#endif
-
-    ~TrackedValue() {
-        assert(state != State::DESTROYED && "double-destroying an object");
-        state = State::DESTROYED;
-    }
-};
-
-#endif // SUPPORT_TRACKED_VALUE_H


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D115411.393006.patch
Type: text/x-patch
Size: 2343 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20211209/b40a5b5f/attachment-0001.bin>


More information about the libcxx-commits mailing list