c++: Fix offsetof use [PR 98232]
authorNathan Sidwell <nathan@acm.org>
Wed, 16 Dec 2020 17:44:38 +0000 (09:44 -0800)
committerNathan Sidwell <nathan@acm.org>
Wed, 16 Dec 2020 17:44:38 +0000 (09:44 -0800)
offsetof is underspecified.  GCC happened to accept an unneeded
explicit scoping, clang does not.

gcc/cp/
* module.cc (dumper::push): Clangify offsetof use.

gcc/cp/module.cc

index d2806966e436e84f8caaf89a3c8b4c324b8572c3..e9ea18636b4286d8fc88314dbe35a2cd1cce01a4 100644 (file)
@@ -4153,7 +4153,7 @@ dumper::push (module_state *m)
       /* Create or extend the dump implementor.  */
       unsigned current = dumps ? dumps->stack.length () : 0;
       unsigned count = current ? current * 2 : EXPERIMENT (1, 20);
-      size_t alloc = (offsetof (impl, impl::stack)
+      size_t alloc = (offsetof (impl, stack)
                      + impl::stack_t::embedded_size (count));
       dumps = XRESIZEVAR (impl, dumps, alloc);
       dumps->stack.embedded_init (count, current);