Hi Patrick, > On 10 Apr 2024, at 17:33, Jason Merrill <ja...@redhat.com> wrote: > > On 4/10/24 11:26, Patrick Palka wrote: >> On Wed, 10 Apr 2024, Patrick Palka wrote: >>> >>> On Tue, 9 Apr 2024, Jason Merrill wrote: >>> >>>> On 2/16/24 10:06, Patrick Palka wrote: >>>>> On Thu, 15 Feb 2024, Patrick Palka wrote: >>>>>
<snip> > Let's keep documenting the inheritance relationship here, i.e. > > bytes_in : data > >> @@ -694,13 +656,132 @@ protected: >> /* Instrumentation. */ >> static unsigned spans[4]; >> static unsigned lengths[4]; >> - static int is_set; >> + friend struct bits_out; > > It might be a little more elegant for bits_in/out to be nested classes of > bytes_in/out, returned from member functions, rather than friends constructed > directly? OK either way, with the above comment tweak. Unfortunately, this seems to break x86_64 Darwin bootstrap with fails as below - I did not yet have a chance to look in any morre detail, so this is a head’s up - unless you have any immediate ideas? thanks Iain /src-local/gcc-master/gcc/cp/module.cc: In member function ‘{anonymous}::bytes_in::bits_in {anonymous}::bytes_in::stream_bits()’: /src-local/gcc-master/gcc/cp/module.cc:735:24: error: use of deleted function ‘{anonymous}::bytes_in::bits_in::bits_in(const {anonymous}::bytes_in::bits_in&)’ 735 | return bits_in (*this); | ^ /src-local/gcc-master/gcc/cp/module.cc:709:3: note: declared here 709 | bits_in(const bits_in&) = delete; | ^~~~~~~ /src-local/gcc-master/gcc/cp/module.cc: In member function ‘{anonymous}::bytes_out::bits_out {anonymous}::bytes_out::stream_bits()’: /src-local/gcc-master/gcc/cp/module.cc:796:25: error: use of deleted function ‘{anonymous}::bytes_out::bits_out::bits_out(const {anonymous}::bytes_out::bits_out&)’ 796 | return bits_out (*this); | ^ /src-local/gcc-master/gcc/cp/module.cc:755:3: note: declared here 755 | bits_out(const bits_out&) = delete; | ^~~~~~~~