trace_arguments: Mark StringStorage's move operations noexcept
This fixes the GCC build after eebbd7f6 ("Introduce base::trace_event::TraceArguments helper class"): ../../base/trace_event/trace_event_impl.cc:61:1: error: function ‘base::trace_event::TraceEvent::TraceEvent(base::trace_event::TraceEvent&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ TraceEvent::TraceEvent(TraceEvent&& other) noexcept = default; ^~~~~~~~~~ ../../base/trace_event/trace_event_impl.cc:62:13: error: function ‘base::trace_event::TraceEvent& base::trace_event::TraceEvent::operator=(base::trace_event::TraceEvent&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’ TraceEvent& TraceEvent::operator=(TraceEvent&& other) noexcept = default; ^~~~~~~~~~ With GCC, having that noexcept marker requires all members to be marked with noexcept themselves, and StringStorage was missing it. clang is fine because we pass -fno-exceptions and it disables the same error there, while GCC continues to raise it (bug 843143 and its corresponding CL have a longer discussion on this issue). Bug: 819294 Change-Id: Ie2eba30dcb6d4a5f9cc1b4b7c961af96d9f55f10 Reviewed-on: https://chromium-review.googlesource.com/c/1374230Reviewed-by:David Turner <digit@chromium.org> Reviewed-by:
oysteine <oysteine@chromium.org> Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> Cr-Commit-Position: refs/heads/master@{#616082}
Showing
Please register or sign in to comment