On 11/6/20 8:54 PM, Iain Sandoe wrote:
+/* Provide a dummy type for the RID enum used as an argument to
+   objc_prop_attr_kind_for_rid () */
+enum rid { DUMMY };
+

Hello.

I've noticed the hunk caused the following -Wodr warning:

/home/mliska/Programming/gcc/objdir/./prev-gcc/xg++ 
-B/home/mliska/Programming/gcc/objdir/./prev-gcc/ 
-B/usr/local/x86_64-pc-linux-gnu/bin/ -nostdinc++ 
-B/home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs
 
-B/home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs
  
-I/home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu
  
-I/home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/include
  -I/home/mliska/Programming/gcc/libstdc++-v3/libsupc++ 
-L/home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs
 
-L/home/mliska/Programming/gcc/objdir/prev-x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs
 -no-pie   -g -O2 -fchecking=1 -flto=jobserver -frandom-seed=1 -DIN_GCC     
-fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing 
-Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wmissing-format-attribute 
-Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros 
-Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -static-libstdc++ 
-static-libgcc  -o cc1plus \
      cp/cp-lang.o c-family/stub-objc.o cp/call.o cp/class.o cp/constexpr.o 
cp/constraint.o cp/coroutines.o cp/cp-gimplify.o cp/cp-objcp-common.o 
cp/cp-ubsan.o cp/cvt.o cp/cxx-pretty-print.o cp/decl.o cp/decl2.o cp/dump.o 
cp/error.o cp/except.o cp/expr.o cp/friend.o cp/init.o cp/lambda.o cp/lex.o 
cp/logic.o cp/mangle.o cp/method.o cp/name-lookup.o cp/optimize.o cp/parser.o 
cp/pt.o cp/ptree.o cp/rtti.o cp/search.o cp/semantics.o cp/tree.o cp/typeck.o 
cp/typeck2.o cp/vtable-class-hierarchy.o attribs.o incpath.o 
c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o 
c-family/c-format.o c-family/c-gimplify.o c-family/c-indentation.o 
c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o 
c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o 
c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-ubsan.o 
c-family/known-headers.o c-family/c-attribs.o c-family/c-warn.o 
c-family/c-spellcheck.o i386-c.o glibc-c.o cc1plus-checksum.o libbackend.a 
main.o libcommon-target.a libcommon.a ../libcpp/libcpp.a 
../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a   
../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a 
../libdecnumber/libdecnumber.a   -lmpc -lmpfr -lgmp -rdynamic -ldl  -L./../zlib 
-lz
../../gcc/c-family/c-common.h:63: warning: type ‘rid’ violates the C++ One 
Definition Rule [-Wodr]
   63 | enum rid
      |
../../gcc/c-family/stub-objc.c:30: note: an enum with different value name is 
defined in another translation unit
   30 | enum rid { DUMMY };
      |
../../gcc/c-family/c-common.h:67: note: name ‘RID_STATIC’ differs from name 
‘DUMMY’ defined in another translation unit
   67 |   RID_STATIC = 0,
      |
../../gcc/c-family/stub-objc.c:30: note: mismatching definition
   30 | enum rid { DUMMY };
      |
../../gcc/c-family/c-common.h:63: warning: type ‘rid’ violates the C++ One 
Definition Rule [-Wodr]
   63 | enum rid
      |
../../gcc/c-family/stub-objc.c:30: note: an enum with different value name is 
defined in another translation unit
   30 | enum rid { DUMMY };
      |
../../gcc/c-family/c-common.h:67: note: name ‘RID_STATIC’ differs from name 
‘DUMMY’ defined in another translation unit
   67 |   RID_STATIC = 0,
      |
../../gcc/c-family/stub-objc.c:30: note: mismatching definition
   30 | enum rid { DUMMY };
      |

Can you please take a look?
Thanks,
Martin

Reply via email to