https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87671
--- Comment #7 from Anton Barkovsky <anton at swarmer dot me> --- (In reply to Jonathan Wakely from comment #6) > That does seem to explain the difference. With GCC 8 GDB thinks that 'ptr' > is passed in the register %rsi so the value in the register is the value of > the unique_ptr's member. With GCC 9 it correctly knows that the param is > passed by invisible reference, and so the value in the register is the > address of the unique_ptr on the stack. > > This was fixed on trunk by r263164 so is a dup of PR 86687 > > *** This bug has been marked as a duplicate of bug 86687 *** Thank you very much for the timely analysis. Is there a chance this fix will be backported to 8.2.2? This is quite disruptive for development.