Bug 1838863 - Fix deprecated-copy warnings in js/public. r=iain

These files get included in `security/` code we compile with `-Wextra` (which implies `-Wdeprecated-copy`).

Clang complains because these classes have user-declared copy constructors but we're relying
on implicit copy assignment operators

Differential Revision: https://phabricator.services.mozilla.com/D189961
This commit is contained in:
Jan de Mooij
2023-10-04 05:52:24 +00:00
parent 8256f471f2
commit e867832d32
2 changed files with 10 additions and 2 deletions

View File

@@ -115,8 +115,9 @@ struct ColumnNumberWithOrigin {
public: public:
constexpr ColumnNumberWithOrigin() = default; constexpr ColumnNumberWithOrigin() = default;
ColumnNumberWithOrigin( ColumnNumberWithOrigin(const ColumnNumberWithOrigin& other) = default;
const ColumnNumberWithOrigin<Origin, LimitValue>& other) = default; ColumnNumberWithOrigin& operator=(const ColumnNumberWithOrigin& other) =
default;
explicit ColumnNumberWithOrigin(uint32_t value) : value_(value) { explicit ColumnNumberWithOrigin(uint32_t value) : value_(value) {
MOZ_ASSERT(valid()); MOZ_ASSERT(valid());
@@ -337,9 +338,12 @@ struct ColumnNumberZeroOrigin : public detail::ColumnNumberWithOrigin<0> {
public: public:
using Base::Base; using Base::Base;
using Base::operator=;
ColumnNumberZeroOrigin() = default; ColumnNumberZeroOrigin() = default;
ColumnNumberZeroOrigin(const ColumnNumberZeroOrigin& other) = default; ColumnNumberZeroOrigin(const ColumnNumberZeroOrigin& other) = default;
ColumnNumberZeroOrigin& operator=(ColumnNumberZeroOrigin&) = default;
MOZ_IMPLICIT ColumnNumberZeroOrigin(const Base& other) : Base(other) {} MOZ_IMPLICIT ColumnNumberZeroOrigin(const Base& other) : Base(other) {}
explicit ColumnNumberZeroOrigin( explicit ColumnNumberZeroOrigin(
@@ -359,9 +363,12 @@ struct ColumnNumberOneOrigin : public detail::ColumnNumberWithOrigin<1> {
public: public:
using Base::Base; using Base::Base;
using Base::operator=;
ColumnNumberOneOrigin() = default; ColumnNumberOneOrigin() = default;
ColumnNumberOneOrigin(const ColumnNumberOneOrigin& other) = default; ColumnNumberOneOrigin(const ColumnNumberOneOrigin& other) = default;
ColumnNumberOneOrigin& operator=(ColumnNumberOneOrigin&) = default;
MOZ_IMPLICIT ColumnNumberOneOrigin(const Base& other) : Base(other) {} MOZ_IMPLICIT ColumnNumberOneOrigin(const Base& other) : Base(other) {}
explicit ColumnNumberOneOrigin(const detail::ColumnNumberWithOrigin<0>& other) explicit ColumnNumberOneOrigin(const detail::ColumnNumberWithOrigin<0>& other)

View File

@@ -89,6 +89,7 @@ class RegExpFlags {
} }
RegExpFlags(const RegExpFlags&) = default; RegExpFlags(const RegExpFlags&) = default;
RegExpFlags& operator=(const RegExpFlags&) = default;
bool operator==(const RegExpFlags& other) const { bool operator==(const RegExpFlags& other) const {
return flags_ == other.flags_; return flags_ == other.flags_;