Project

General

Profile

Actions

Bug #39557

closed

common: Clang requires a default constructor, but it can be empty

Added by Willem Jan Withagen almost 5 years ago. Updated over 4 years ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
nautilus
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

In file included from /home/jenkins/workspace/ceph-master/src/cls/rbd/cls_rbd.cc:28:
In file included from /home/jenkins/workspace/ceph-master/src/objclass/../include/types.h:21:
In file included from /home/jenkins/workspace/ceph-master/src/include/uuid.h:9:
In file included from /home/jenkins/workspace/ceph-master/src/include/encoding.h:17:
In file included from /usr/include/c++/v1/set:426:
In file included from /usr/include/c++/v1/__tree:16:
/usr/include/c++/v1/memory:2241:41: error: call to implicitly-deleted default constructor of '__compressed_pair_elem<ceph::BitVector<'\x02'>::NoInitAllocator, 1>'
: Base1(std::forward<_Tp>(_t)), Base2() {}
^
/usr/include/c++/v1/vector:437:7: note: in instantiation of function template specialization 'std::
_1::__compressed_pair<unsigned int *, ceph::BitVector<'\x02'>::NoInitAllocator>::__compressed_pair<nullptr_t, true>' requested here
_end_cap(nullptr)
^
/usr/include/c++/v1/vector:496:5: note: in instantiation of member function 'std::__1::__vector_base<unsigned int, ceph::BitVector<'\x02'>::NoInitAllocator>::__vector_base' requested here
vector() NOEXCEPT(is_nothrow_default_constructible<allocator_type>::value)
^
/home/jenkins/workspace/ceph-master/src/common/bit_vector.hpp:163:3: note: in instantiation of member function 'std::__1::vector<unsigned int, ceph::BitVector<'\x02'>::NoInitAllocator>::vector' requested here
BitVector();
^
/home/jenkins/workspace/ceph-master/src/cls/rbd/cls_rbd.cc:3289:16: note: in instantiation of member function 'ceph::BitVector<'\x02'>::BitVector' requested here
BitVector<2> object_map;
^
/usr/include/c++/v1/memory:2179:39: note: explicitly defaulted function was implicitly deleted here
LIBCPP_INLINE_VISIBILITY constexpr __compressed_pair_elem() = default;
^
/usr/include/c++/v1/memory:2172:50: note: default constructor of '
_compressed_pair_elem<ceph::BitVector<'\x02'>::NoInitAllocator, 1, true>' is implicitly deleted because base class 'ceph::BitVector<'\x02'>::NoInitAllocator' has no default constructor
struct __compressed_pair_elem<_Tp, _Idx, true> : private _Tp {
^
1 error generated.


Related issues 1 (0 open1 closed)

Is duplicate of rbd - Bug #39561: common: Clang requires a default constructor, but it can be empty #27844Resolved05/01/2019

Actions
Actions #1

Updated by Nathan Cutler over 4 years ago

  • Tracker changed from Backport to Bug
  • Subject changed from common: Clang requires a default constructor, but it can be empty #27844 to common: Clang requires a default constructor, but it can be empty
  • Status changed from New to Pending Backport
  • % Done set to 0
  • Backport set to nautilus
  • Regression set to No
  • Severity set to 3 - minor
  • Pull request ID set to 27844
Actions #3

Updated by Nathan Cutler over 4 years ago

  • Is duplicate of Bug #39561: common: Clang requires a default constructor, but it can be empty #27844 added
Actions #4

Updated by Nathan Cutler over 4 years ago

  • Status changed from Pending Backport to Duplicate
Actions

Also available in: Atom PDF