On 02/13/2015 07:54 PM, Martin Liška wrote:
On 01/15/2015 06:47 AM, Jan Hubicka wrote:
Hello.

I've just finished successfully chromium LTO build and there's list of mainly 
-Wodr warnings.
I think some of them are false positives?

What of those you consider to be false?
I wonder if we can print just type name so we avoid using the wrong "struct" in 
place of class...

Thanks,
Martin

../../third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h:295:0: 
warning: type ???struct WebCryptoEcKeyImportParams??? violates one definition 
rule [-Wodr]
  class WebCryptoEcKeyImportParams : public WebCryptoAlgorithmParams {
  ^
../../third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h:295:0: 
note: a different type is defined in another translation unit
  class WebCryptoEcKeyImportParams : public WebCryptoAlgorithmParams {
  ^
../../third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h:307:0: 
note: the first difference of corresponding definitions is field 
???m_namedCurve???
      const WebCryptoNamedCurve m_namedCurve;
  ^
../../third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h:295:0: 
note: a field of same name but different type is defined in another translation 
unit
  class WebCryptoEcKeyImportParams : public WebCryptoAlgorithmParams {
  ^

The line info seems wrong here though.
../../third_party/icu/source/common/unicode/bytestream.h:48:0: note: virtual 
method ???_ZTIN6icu_528ByteSinkE???
  class U_COMMON_API ByteSink : public UMemory {
  ^
<built-in>: note: ought to match virtual method ???__cxa_pure_virtual??? but 
does not

This message also should be sanitized - we probably want to special case 
cxa_pure_virtual...

Honza
In function ???__fread_alias???,
     inlined from 
???_ZN21SafeBrowsingStoreFile13CheckValidityEv.part.41.constprop??? at 
../../chrome/browser/safe_browsing/safe_browsing_store_file.cc:611:0:
/usr/include/bits/stdio2.h:290:0: warning: call to ???__fread_chk_warn??? 
declared with attribute warning: fread called with bigger size * nmemb than 
length of destination buffer
   return __fread_chk (__ptr, __bos0 (__ptr), __size, __n, __stream);
  ^
/usr/include/bits/stdio2.h:290:0: warning: call to ???__fread_chk_warn??? 
declared with attribute warning: fread called with bigger size * nmemb than 
length of destination buffer
In function ???__read_alias???,
     inlined from ???GetAppOutputInternal.constprop??? at 
../../base/process/launch_posix.cc:613:0:
/usr/include/bits/unistd.h:39:0: warning: call to ???__read_chk_warn??? 
declared with attribute warning: read called with bigger length than size of 
the destination buffer
   return __read_chk (__fd, __buf, __nbytes, __bos0 (__buf));
  ^



Hello.

There's updated list for Chromium built with LTO.

Martin


Hi.

There's current status of ODR warnings for chrome, inkscape and firefox 
binaries.

Martin
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_tags_from_script' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_layout_language_get_feature_tags' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_tag_to_script' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_get_length' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_get_direction' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_layout_script_find_language' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_get_glyph_infos' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_reverse' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_reset' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_layout_table_get_script_tags' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_destroy' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_get_glyph_positions' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_layout_language_get_required_feature_index' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_language_to_string' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/hb-common.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_tag_from_language' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_layout_script_get_language_tags' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_layout_table_find_script' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_language_from_string' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/hb-common.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_face_destroy' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_add' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_layout_language_find_feature' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_ot_tag_to_language' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_set_direction' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_set_unicode_funcs' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'hb_buffer_create' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/harfbuzz/src/Unified_cpp_gfx_harfbuzz_src0.o
 is referenced by DSO /usr/lib64/libpangoft2-1.0.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_glyph_cache_lookup' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_glyph_cache_insert' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_composite_glyphs' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_glyph_cache_remove' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_glyph_get_mask_format' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_add_triangles' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-trap.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_composite_glyphs_no_mask' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_glyph_cache_thaw' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_glyph_cache_freeze' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/gcc-nightly/install/gcc-c8c7d88048486ec942b9718385d7fccd15d06dc3/bin/ld:
 warning: hidden symbol 'pixman_glyph_cache_create' in 
/home/marxin/Programming/buildbot/slave/source/firefox/obj-x86_64-unknown-linux-gnu/toolkit/library/../../gfx/cairo/libpixman/src/pixman-glyph.o
 is referenced by DSO /usr/lib64/libcairo.so
/home/marxin/Programming/buildbot/slave/source/firefox/netwerk/sctp/datachannel/DataChannel.h:57:0:
 warning: type ‘struct BufferedMsg’ violates one definition rule [-Wodr]
 class BufferedMsg
 ^
../../../../dist/include/mozilla/net/DataChannel.h:57:0: note: a different type 
is defined in another translation unit
/home/marxin/Programming/buildbot/slave/source/firefox/netwerk/sctp/datachannel/DataChannel.h:64:26:
 note: the first difference of corresponding definitions is field ‘mSpa’
   struct sctp_sendv_spa *mSpa;
                          ^
../../../../dist/include/mozilla/net/DataChannel.h:64:0: note: a field of same 
name but different type is defined in another translation unit
/home/marxin/Programming/buildbot/slave/source/firefox/netwerk/sctp/src/usrsctp.h:198:8:
 note: type name ‘sctp_sendv_spa’ should match type name 
‘mozilla::sctp_sendv_spa’
 struct sctp_sendv_spa {
        ^
../../../../dist/include/mozilla/net/DataChannel.h:60:0: note: the incompatible 
type is defined here
../../../dist/include/nsAutoPtr.h:21:7: warning: type ‘struct nsAutoPtr’ 
violates one definition rule [-Wodr]
/home/marxin/Programming/buildbot/slave/source/firefox/media/webrtc/signaling/../../../xpcom/base/nsAutoPtr.h:21:0:
 note: a different type is defined in another translation unit
 class nsAutoPtr
 ^
../../../dist/include/nsAutoPtr.h:67:21: note: the first difference of 
corresponding definitions is field ‘mRawPtr’
/home/marxin/Programming/buildbot/slave/source/firefox/media/webrtc/signaling/../../../xpcom/base/nsAutoPtr.h:67:0:
 note: a field of same name but different type is defined in another 
translation unit
   T* MOZ_OWNING_REF mRawPtr;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/netwerk/sctp/datachannel/DataChannel.h:57:0:
 note: type ‘struct BufferedMsg’ should match type ‘struct BufferedMsg’ that 
itself violate one definition rule
 class BufferedMsg
 ^
../../../../dist/include/mozilla/net/DataChannel.h:57:0: note: the incompatible 
type is defined here
/home/marxin/Programming/buildbot/slave/source/firefox/modules/libjar/zipstruct.h:38:16:
 warning: type ‘struct ZipCentral_’ violates one definition rule [-Wodr]
 typedef struct ZipCentral_
                ^
../../dist/include/zipstruct.h:38:0: note: a different type is defined in 
another translation unit
 typedef struct ZipCentral_
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/modules/libjar/zipstruct.h:47:25:
 note: the first difference of corresponding definitions is field ‘MOZ_Z_crc32’
   unsigned char crc32 [4];
                         ^
../../dist/include/zipstruct.h:47:0: note: a field with different name is 
defined in another translation unit
   unsigned char crc32 [4];
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/modules/libjar/zipstruct.h:16:0:
 warning: type ‘struct ZipLocal_’ violates one definition rule [-Wodr]
 typedef struct ZipLocal_
 ^
../../dist/include/zipstruct.h:16:0: note: a different type is defined in 
another translation unit
 typedef struct ZipLocal_
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/modules/libjar/zipstruct.h:24:0:
 note: the first difference of corresponding definitions is field ‘MOZ_Z_crc32’
   unsigned char crc32 [4];
 ^
../../dist/include/zipstruct.h:24:0: note: a field with different name is 
defined in another translation unit
   unsigned char crc32 [4];
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/../FFmpegDecoderModule.h:18:0:
 warning: type ‘struct FFmpegDecoderModule’ violates one definition rule [-Wodr]
 class FFmpegDecoderModule : public PlatformDecoderModule
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/FFmpegRuntimeLinker.cpp:28:0:
 note: a type with different bases is defined in another translation unit
 template <int V> class FFmpegDecoderModule
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:919:0:
 warning: type ‘struct <anon>’ violates one definition rule [-Wodr]
     struct {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:926:0:
 note: a different type is defined in another translation unit
     struct {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:922:0:
 note: the first difference of corresponding definitions is field ‘type’
         enum AVPacketSideDataType type;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:929:0:
 note: a field of same name but different type is defined in another 
translation unit
         enum AVPacketSideDataType type;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:885:0:
 note: type ‘AVPacketSideDataType’ should match type ‘AVPacketSideDataType’
 enum AVPacketSideDataType {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:833:0:
 note: the incompatible type is defined here
 enum AVPacketSideDataType {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:891:0:
 warning: type ‘struct AVPacket’ violates one definition rule [-Wodr]
 typedef struct AVPacket {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:898:0:
 note: a different type is defined in another translation unit
 typedef struct AVPacket {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:923:0:
 note: the first difference of corresponding definitions is field ‘side_data’
     } *side_data;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:930:0:
 note: a field of same name but different type is defined in another 
translation unit
     } *side_data;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:919:0:
 note: type ‘struct <anon>’ should match type ‘struct <anon>’ that itself 
violate one definition rule
     struct {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:926:0:
 note: the incompatible type is defined here
     struct {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:3189:0:
 warning: type ‘struct AVCodec’ violates one definition rule [-Wodr]
 typedef struct AVCodec {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:2960:0:
 note: a different type is defined in another translation unit
 typedef struct AVCodec {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:3197:0:
 note: the first difference of corresponding definitions is field ‘type’
     enum AVMediaType type;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:2972:0:
 note: a field with different name is defined in another translation unit
     const char *long_name;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:1329:0:
 warning: type ‘struct AVCodecContext’ violates one definition rule [-Wodr]
 typedef struct AVCodecContext {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:1339:0:
 note: a different type is defined in another translation unit
 typedef struct AVCodecContext {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:1340:0:
 note: the first difference of corresponding definitions is field ‘bit_rate’
     int bit_rate;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:1345:0:
 note: a field with different name is defined in another translation unit
     int log_level_offset;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:985:0:
 warning: type ‘struct AVFrame’ violates one definition rule [-Wodr]
 typedef struct AVFrame {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:989:0:
 note: a different type is defined in another translation unit
 typedef struct AVFrame {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:997:0:
 note: the first difference of corresponding definitions is field ‘data’
     uint8_t *data[AV_NUM_DATA_POINTERS];
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:997:0:
 note: a field of same name but different type is defined in another 
translation unit
     uint8_t *data[AV_NUM_DATA_POINTERS];
 ^
lto1: note: array types have different bounds
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:3276:0:
 warning: type ‘struct AVHWAccel’ violates one definition rule [-Wodr]
 typedef struct AVHWAccel {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:3055:0:
 note: a different type is defined in another translation unit
 typedef struct AVHWAccel {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:3296:0:
 note: the first difference of corresponding definitions is field ‘id’
     enum CodecID id;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:3075:0:
 note: a field of same name but different type is defined in another 
translation unit
     enum AVCodecID id;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h:83:0:
 note: type ‘CodecID’ should match type ‘AVCodecID’
 enum CodecID {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h:95:0:
 note: the incompatible type is defined here
 enum AVCodecID {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav54/../FFmpegDecoderModule.h:18:0:
 warning: type ‘struct FFmpegDecoderModule’ violates one definition rule [-Wodr]
 class FFmpegDecoderModule : public PlatformDecoderModule
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/FFmpegRuntimeLinker.cpp:28:0:
 note: a type with different bases is defined in another translation unit
 template <int V> class FFmpegDecoderModule
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/libav55/../FFmpegDecoderModule.h:18:0:
 warning: type ‘struct FFmpegDecoderModule’ violates one definition rule [-Wodr]
 class FFmpegDecoderModule : public PlatformDecoderModule
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/dom/media/fmp4/ffmpeg/FFmpegRuntimeLinker.cpp:28:0:
 note: a type with different bases is defined in another translation unit
 template <int V> class FFmpegDecoderModule
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/modules/libpref/nsPrefBranch.cpp:50:8:
 warning: type ‘struct EnumerateData’ violates one definition rule [-Wodr]
 struct EnumerateData {
        ^
/home/marxin/Programming/buildbot/slave/source/firefox/layout/base/nsPresArena.cpp:120:0:
 note: a different type is defined in another translation unit
 struct EnumerateData {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/modules/libpref/nsPrefBranch.cpp:51:0:
 note: the first difference of corresponding definitions is field ‘parent’
   const char  *parent;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/layout/base/nsPresArena.cpp:121:0:
 note: a field with different name is defined in another translation unit
   nsArenaMemoryStats* stats;
 ^
./glslang_lex.cpp:1033:0: warning: type ‘struct yyguts_t’ violates one 
definition rule [-Wodr]
./Tokenizer.cpp:591:0: note: a different type is defined in another translation 
unit
./glslang_lex.cpp:1037:0: note: the first difference of corresponding 
definitions is field ‘yyextra_r’
./Tokenizer.cpp:595:0: note: a field of same name but different type is defined 
in another translation unit
/home/marxin/Programming/buildbot/slave/source/firefox/gfx/angle/src/compiler/translator/ParseContext.h:27:0:
 note: type name ‘TParseContext’ should match type name ‘pp::Tokenizer::Context’
 struct TParseContext {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/gfx/angle/src/compiler/preprocessor/Tokenizer.h:22:0:
 note: the incompatible type is defined here
     struct Context
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/rdf/base/nsInMemoryDataSource.cpp:149:0:
 warning: type ‘struct Entry’ violates one definition rule [-Wodr]
 struct Entry : PLDHashEntryHdr {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/gfx/skia/trunk/src/core/SkFlattenable.cpp:66:0:
 note: a type with different bases is defined in another translation unit
 struct Entry {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/gfx/skia/trunk/src/sfnt/SkSFNTHeader.h:20:0:
 warning: type ‘struct SkSFNTHeader’ violates one definition rule [-Wodr]
 struct SkSFNTHeader {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/gfx/skia/trunk/src/core/SkFontStream.cpp:12:0:
 note: a different type is defined in another translation unit
 struct SkSFNTHeader {
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/gfx/skia/trunk/src/sfnt/SkSFNTHeader.h:21:0:
 note: the first difference of corresponding definitions is field ‘fontType’
     SK_SFNT_ULONG fontType;
 ^
/home/marxin/Programming/buildbot/slave/source/firefox/gfx/skia/trunk/src/core/SkFontStream.cpp:13:0:
 note: a field with different name is defined in another translation unit
     uint32_t    fVersion;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1134:0: warning: type ‘struct 
AVPacket’ violates one definition rule [-Wodr]
 typedef struct AVPacket {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1134:0: note: a different type is 
defined in another translation unit
 typedef struct AVPacket {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1182:0: note: the first 
difference of corresponding definitions is field ‘pos’
     int64_t pos;                            ///< byte position in stream, -1 
if unknown
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1178:0: note: a field with 
different name is defined in another translation unit
     void  (*destruct)(struct AVPacket *);
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1236:0: warning: type ‘struct 
AVCodecContext’ violates one definition rule [-Wodr]
 typedef struct AVCodecContext {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1236:0: note: a different type is 
defined in another translation unit
 typedef struct AVCodecContext {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:2241:0: note: the first 
difference of corresponding definitions is field ‘get_buffer2’
     int (*get_buffer2)(struct AVCodecContext *s, AVFrame *frame, int flags);
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:2129:0: note: a field with 
different name is defined in another translation unit
     int (*get_buffer)(struct AVCodecContext *c, AVFrame *pic);
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3170:0: warning: type ‘struct 
AVCodec’ violates one definition rule [-Wodr]
 typedef struct AVCodec {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3170:0: note: a different type is 
defined in another translation unit
 typedef struct AVCodec {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3219:0: note: the first 
difference of corresponding definitions is field ‘init_thread_copy’
     int (*init_thread_copy)(AVCodecContext *);
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3219:0: note: a field of same 
name but different type is defined in another translation unit
     int (*init_thread_copy)(AVCodecContext *);
 ^
lto1: note: type mismatch in parameter 1
../../third_party/ffmpeg/libavcodec/avcodec.h:3138:0: note: type ‘struct 
AVCodecContext’ should match type ‘struct AVCodecContext’ that itself violate 
one definition rule
 } AVCodecContext;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3138:0: note: the incompatible 
type is defined here
 } AVCodecContext;
 ^
../../third_party/ffmpeg/libavutil/frame.h:163:0: warning: type ‘struct 
AVFrame’ violates one definition rule [-Wodr]
 typedef struct AVFrame {
 ^
../../third_party/ffmpeg/libavutil/frame.h:163:0: note: a different type is 
defined in another translation unit
 typedef struct AVFrame {
 ^
../../third_party/ffmpeg/libavutil/frame.h:400:0: note: the first difference of 
corresponding definitions is field ‘owner’
     struct AVCodecContext *owner;
 ^
../../third_party/ffmpeg/libavutil/frame.h:400:0: note: a field of same name 
but different type is defined in another translation unit
     struct AVCodecContext *owner;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1236:0: note: type ‘struct 
AVCodecContext’ should match type ‘struct AVCodecContext’ that itself violate 
one definition rule
 typedef struct AVCodecContext {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1236:0: note: the incompatible 
type is defined here
 typedef struct AVCodecContext {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3272:0: warning: type ‘struct 
AVHWAccel’ violates one definition rule [-Wodr]
 typedef struct AVHWAccel {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3272:0: note: a different type is 
defined in another translation unit
 typedef struct AVHWAccel {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3319:0: note: the first 
difference of corresponding definitions is field ‘alloc_frame’
     int (*alloc_frame)(AVCodecContext *avctx, AVFrame *frame);
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3319:0: note: a field of same 
name but different type is defined in another translation unit
     int (*alloc_frame)(AVCodecContext *avctx, AVFrame *frame);
 ^
lto1: note: type mismatch in parameter 1
../../third_party/ffmpeg/libavcodec/avcodec.h:3138:0: note: type ‘struct 
AVCodecContext’ should match type ‘struct AVCodecContext’ that itself violate 
one definition rule
 } AVCodecContext;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3138:0: note: the incompatible 
type is defined here
 } AVCodecContext;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4373:0: warning: type ‘struct 
AVCodecParser’ violates one definition rule [-Wodr]
 typedef struct AVCodecParser {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4373:0: note: a different type is 
defined in another translation unit
 typedef struct AVCodecParser {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4382:0: note: the first 
difference of corresponding definitions is field ‘parser_parse’
                         const uint8_t *buf, int buf_size);
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4382:0: note: a field of same 
name but different type is defined in another translation unit
                         const uint8_t *buf, int buf_size);
 ^
lto1: note: type mismatch in parameter 2
../../third_party/ffmpeg/libavcodec/avcodec.h:3138:0: note: type ‘struct 
AVCodecContext’ should match type ‘struct AVCodecContext’ that itself violate 
one definition rule
 } AVCodecContext;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3138:0: note: the incompatible 
type is defined here
 } AVCodecContext;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4217:0: warning: type ‘struct 
AVCodecParserContext’ violates one definition rule [-Wodr]
 typedef struct AVCodecParserContext {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4371:0: note: a different type is 
defined in another translation unit
 } AVCodecParserContext;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4219:0: note: the first 
difference of corresponding definitions is field ‘parser’
     struct AVCodecParser *parser;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4219:0: note: a field of same 
name but different type is defined in another translation unit
     struct AVCodecParser *parser;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4373:0: note: type ‘struct 
AVCodecParser’ should match type ‘struct AVCodecParser’ that itself violate one 
definition rule
 typedef struct AVCodecParser {
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:4373:0: note: the incompatible 
type is defined here
 typedef struct AVCodecParser {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1804:0: warning: type ‘struct 
AVPacketList’ violates one definition rule [-Wodr]
 typedef struct AVPacketList {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1804:0: note: a different type 
is defined in another translation unit
 typedef struct AVPacketList {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1805:0: note: the first 
difference of corresponding definitions is field ‘pkt’
     AVPacket pkt;
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1805:0: note: a field of same 
name but different type is defined in another translation unit
     AVPacket pkt;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1202:0: note: type ‘struct 
AVPacket’ should match type ‘struct AVPacket’ that itself violate one 
definition rule
 } AVPacket;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:1202:0: note: the incompatible 
type is defined here
 } AVPacket;
 ^
../../third_party/ffmpeg/libavformat/avformat.h:783:0: warning: type ‘struct 
AVStream’ violates one definition rule [-Wodr]
 typedef struct AVStream {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:783:0: note: a different type 
is defined in another translation unit
 typedef struct AVStream {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:802:0: note: the first 
difference of corresponding definitions is field ‘codec’
     AVCodecContext *codec;
 ^
../../third_party/ffmpeg/libavformat/avformat.h:802:0: note: a field of same 
name but different type is defined in another translation unit
     AVCodecContext *codec;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3138:0: note: type ‘struct 
AVCodecContext’ should match type ‘struct AVCodecContext’ that itself violate 
one definition rule
 } AVCodecContext;
 ^
../../third_party/ffmpeg/libavcodec/avcodec.h:3138:0: note: the incompatible 
type is defined here
 } AVCodecContext;
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1201:0: warning: type ‘struct 
AVFormatContext’ violates one definition rule [-Wodr]
 typedef struct AVFormatContext {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1201:0: note: a different type 
is defined in another translation unit
 typedef struct AVFormatContext {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1269:0: note: the first 
difference of corresponding definitions is field ‘streams’
     AVStream **streams;
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1269:0: note: a field of same 
name but different type is defined in another translation unit
     AVStream **streams;
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1114:0: note: type ‘struct 
AVStream’ should match type ‘struct AVStream’ that itself violate one 
definition rule
 } AVStream;
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1114:0: note: the incompatible 
type is defined here
 } AVStream;
 ^
../../third_party/ffmpeg/libavformat/avformat.h:564:0: warning: type ‘struct 
AVInputFormat’ violates one definition rule [-Wodr]
 typedef struct AVInputFormat {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:564:0: note: a different type 
is defined in another translation unit
 typedef struct AVInputFormat {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:634:0: note: the first 
difference of corresponding definitions is field ‘read_header’
     int (*read_header)(struct AVFormatContext *);
 ^
../../third_party/ffmpeg/libavformat/avformat.h:634:0: note: a field of same 
name but different type is defined in another translation unit
     int (*read_header)(struct AVFormatContext *);
 ^
lto1: note: type mismatch in parameter 1
../../third_party/ffmpeg/libavformat/avformat.h:1201:0: note: type ‘struct 
AVFormatContext’ should match type ‘struct AVFormatContext’ that itself violate 
one definition rule
 typedef struct AVFormatContext {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1201:0: note: the incompatible 
type is defined here
 typedef struct AVFormatContext {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:453:0: warning: type ‘struct 
AVOutputFormat’ violates one definition rule [-Wodr]
 typedef struct AVOutputFormat {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:453:0: note: a different type 
is defined in another translation unit
 typedef struct AVOutputFormat {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:497:0: note: the first 
difference of corresponding definitions is field ‘write_header’
     int (*write_header)(struct AVFormatContext *);
 ^
../../third_party/ffmpeg/libavformat/avformat.h:497:0: note: a field of same 
name but different type is defined in another translation unit
     int (*write_header)(struct AVFormatContext *);
 ^
lto1: note: type mismatch in parameter 1
../../third_party/ffmpeg/libavformat/avformat.h:1201:0: note: type ‘struct 
AVFormatContext’ should match type ‘struct AVFormatContext’ that itself violate 
one definition rule
 typedef struct AVFormatContext {
 ^
../../third_party/ffmpeg/libavformat/avformat.h:1201:0: note: the incompatible 
type is defined here
 typedef struct AVFormatContext {
 ^
gen/blink/core/CSSPropertyNames.cpp:2330:0: warning: type ‘struct stringpool_t’ 
violates one definition rule [-Wodr]
 static const short lookup[] =
 ^
gen/blink/core/CSSValueKeywords.cpp:4309:0: note: a different type is defined 
in another translation unit
   static const short lookup[] =
 ^
gen/blink/core/CSSPropertyNames.cpp:2330:0: note: the first difference of 
corresponding definitions is field ‘stringpool_str0’
 static const short lookup[] =
 ^
gen/blink/core/CSSValueKeywords.cpp:4309:0: note: a field of same name but 
different type is defined in another translation unit
   static const short lookup[] =
 ^
lto1: note: array types have different bounds
gen/blink/core/XPathGrammar.h:74:0: warning: type ‘union YYSTYPE’ violates one 
definition rule [-Wodr]
 typedef union YYSTYPE
 ^
../../../../out/Release/gen/blink/core/CSSGrammar.cpp:277:0: note: a different 
type is defined in another translation unit
xml/XPathGrammar.y:59:0: note: the first difference of corresponding 
definitions is field ‘axis’
css/parser/CSSGrammar.y:70:0: note: a field with different name is defined in 
another translation unit
../../../../out/Release/gen/blink/core/CSSGrammar.cpp:557:0: warning: type 
‘union yyalloc’ violates one definition rule [-Wodr]
../../../../out/Release/gen/blink/core/XPathGrammar.cpp:241:0: note: a 
different type is defined in another translation unit
../../../../out/Release/gen/blink/core/CSSGrammar.cpp:557:0: note: the first 
difference of corresponding definitions is field ‘yyvs_alloc’
../../../../out/Release/gen/blink/core/XPathGrammar.cpp:241:0: note: a field of 
same name but different type is defined in another translation unit
../../../../out/Release/gen/blink/core/CSSGrammar.cpp:314:0: note: type ‘union 
YYSTYPE’ should match type ‘union YYSTYPE’ that itself violate one definition 
rule
../../../../out/Release/gen/blink/core/XPathGrammar.cpp:178:0: note: the 
incompatible type is defined here
../../third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h:295:0: 
warning: type ‘struct WebCryptoEcKeyImportParams’ violates one definition rule 
[-Wodr]
 class WebCryptoEcKeyImportParams : public WebCryptoAlgorithmParams {
 ^
../../third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h:295:0: 
note: a different type is defined in another translation unit
 class WebCryptoEcKeyImportParams : public WebCryptoAlgorithmParams {
 ^
../../third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h:307:0: 
note: the first difference of corresponding definitions is field ‘m_namedCurve’
     const WebCryptoNamedCurve m_namedCurve;
 ^
../../third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h:295:0: 
note: a field of same name but different type is defined in another translation 
unit
 class WebCryptoEcKeyImportParams : public WebCryptoAlgorithmParams {
 ^
../../third_party/WebKit/public/platform/WebCryptoAlgorithm.h:80:0: note: type 
‘const WebCryptoNamedCurve’ should match type ‘const WebCryptoNamedCurve’
 enum WebCryptoNamedCurve {
 ^
../../third_party/WebKit/public/platform/WebCryptoAlgorithm.h:81:0: note: the 
incompatible type is defined here
     WebCryptoNamedCurveP256,
 ^
../../third_party/libaddressinput/src/cpp/include/libaddressinput/callback.h:59:0:
 warning: type ‘struct ObserveEvent’ violates one definition rule [-Wodr]
 class CallbackImpl : public Callback<Key, Data> {
 ^
../../third_party/libaddressinput/src/cpp/include/libaddressinput/callback.h:59:0:
 note: a different type is defined in another translation unit
 class CallbackImpl : public Callback<Key, Data> {
 ^
../../third_party/libaddressinput/src/cpp/src/retriever.cc:34:0: note: the 
first difference of corresponding definitions is field ‘__pfn’
 class Helper {
 ^
../../third_party/libaddressinput/src/cpp/src/validating_storage.cc:83:0: note: 
a field of same name but different type is defined in another translation unit
 ValidatingStorage::~ValidatingStorage() {}
 ^
lto1: note: type mismatch in parameter 1
../../third_party/libaddressinput/src/cpp/src/retriever.cc:34:0: note: type 
‘struct Helper’ defined in anonymous namespace can not match type ‘struct 
Helper’
 class Helper {
 ^
../../third_party/libaddressinput/src/cpp/src/validating_storage.cc:70:0: note: 
the incompatible type defined in anonymous namespace in another translation unit
   const Storage::Callback& data_ready_;
 ^
/usr/include/freetype2/ftimage.h:319:0: warning: type ‘struct FT_Bitmap_’ 
violates one definition rule [-Wodr]
   typedef struct  FT_Bitmap_
 ^
../../third_party/pdfium/third_party/freetype/include/ftimage.h:75:0: note: a 
different type is defined in another translation unit
   {
 ^
/usr/include/freetype2/ftimage.h:321:0: note: the first difference of 
corresponding definitions is field ‘rows’
     int             rows;
 ^
../../third_party/pdfium/third_party/freetype/include/ftimage.h:75:0: note: a 
field of same name but different type is defined in another translation unit
   {
 ^
lto1: note: type ‘int’ should match type ‘unsigned int’
/usr/include/freetype2/freetype.h:1670:0: warning: type ‘struct 
FT_GlyphSlotRec_’ violates one definition rule [-Wodr]
   typedef struct  FT_GlyphSlotRec_
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: a 
different type is defined in another translation unit
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:1685:0: note: the first difference of 
corresponding definitions is field ‘bitmap’
     FT_Bitmap         bitmap;
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: a 
field of same name but different type is defined in another translation unit
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/ftimage.h:330:0: note: type ‘struct FT_Bitmap’ should 
match type ‘struct FT_Bitmap’ that itself violate one definition rule
   } FT_Bitmap;
 ^
../../third_party/pdfium/third_party/freetype/include/ftimage.h:75:0: note: the 
incompatible type is defined here
   {
 ^
/usr/include/freetype2/freetype.h:958:0: warning: type ‘struct FT_FaceRec_’ 
violates one definition rule [-Wodr]
   typedef struct  FT_FaceRec_
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: a 
different type is defined in another translation unit
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:995:0: note: the first difference of 
corresponding definitions is field ‘glyph’
     FT_GlyphSlot      glyph;
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: a 
field of same name but different type is defined in another translation unit
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:492:0: note: type ‘struct FT_GlyphSlotRec_ *’ 
should match type ‘struct FT_GlyphSlotRec_ *’
   typedef struct FT_GlyphSlotRec_*  FT_GlyphSlot;
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: 
the incompatible type is defined here
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:779:0: warning: type ‘struct FT_CharMapRec_’ 
violates one definition rule [-Wodr]
   typedef struct  FT_CharMapRec_
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: a 
different type is defined in another translation unit
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:781:0: note: the first difference of 
corresponding definitions is field ‘face’
     FT_Face      face;
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: a 
field of same name but different type is defined in another translation unit
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:440:0: note: type ‘struct FT_FaceRec_ *’ 
should match type ‘struct FT_FaceRec_ *’
   typedef struct FT_FaceRec_*  FT_Face;
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: 
the incompatible type is defined here
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:1460:0: warning: type ‘struct FT_SizeRec_’ 
violates one definition rule [-Wodr]
   typedef struct  FT_SizeRec_
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: a 
different type is defined in another translation unit
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:1462:0: note: the first difference of 
corresponding definitions is field ‘face’
     FT_Face           face;      /* parent face object              */
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: a 
field of same name but different type is defined in another translation unit
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
/usr/include/freetype2/freetype.h:440:0: note: type ‘struct FT_FaceRec_ *’ 
should match type ‘struct FT_FaceRec_ *’
   typedef struct FT_FaceRec_*  FT_Face;
 ^
../../third_party/pdfium/third_party/freetype/include/freetype.h:847:0: note: 
the incompatible type is defined here
   typedef struct FT_Face_InternalRec_*  FT_Face_Internal;
 ^
../../third_party/zlib/zlib.h:85:16: warning: type ‘struct z_stream_s’ violates 
one definition rule [-Wodr]
 typedef struct z_stream_s {
                ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/fx_zlib/zlib_v128/zlib.h:1811:0:
 note: a different type is defined in another translation unit
     struct internal_state {int dummy;};
 ^
../../third_party/zlib/zlib.h:95:32: note: the first difference of 
corresponding definitions is field ‘state’
     struct internal_state FAR *state; /* not visible by applications */
                                ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/fx_zlib/zlib_v128/zlib.h:1811:0:
 note: a field of same name but different type is defined in another 
translation unit
     struct internal_state {int dummy;};
 ^
../../third_party/zlib/zlib.h:1630:0: note: type name ‘MOZ_Z_internal_state’ 
should match type name ‘internal_state’
     struct internal_state {int dummy;};
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/fx_zlib/zlib_v128/zlib.h:1811:0:
 note: the incompatible type is defined here
     struct internal_state {int dummy;};
 ^
../../third_party/libjpeg_turbo/jpeglib.h:286:0: warning: type ‘struct 
jpeg_common_struct’ violates one definition rule [-Wodr]
 struct jpeg_common_struct {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: a different type is defined in another translation unit
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:287:0: note: the first difference of 
corresponding definitions is field ‘is_decompressor’
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: a field of same name but different type is defined in another 
translation unit
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jmorecfg.h:238:0: note: type ‘boolean’ should 
match type ‘boolean’
 typedef int boolean;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jconfig.h:26:0:
 note: the incompatible type is defined here
 typedef unsigned char boolean;
 ^
../../third_party/libjpeg_turbo/jpeglib.h:724:0: warning: type ‘struct 
jpeg_error_mgr’ violates one definition rule [-Wodr]
 struct jpeg_error_mgr {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: a different type is defined in another translation unit
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:726:0: note: the first difference of 
corresponding definitions is field ‘error_exit’
   JMETHOD(void, error_exit, (j_common_ptr cinfo));
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: a field of same name but different type is defined in another 
translation unit
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
lto1: note: type mismatch in parameter 1
../../third_party/libjpeg_turbo/jpeglib.h:294:0: note: type ‘struct 
jpeg_common_struct *’ should match type ‘struct jpeg_common_struct *’
 typedef struct jpeg_common_struct * j_common_ptr;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: the incompatible type is defined here
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:837:0: warning: type ‘struct 
jpeg_memory_mgr’ violates one definition rule [-Wodr]
 struct jpeg_memory_mgr {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: a different type is defined in another translation unit
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:839:0: note: the first difference of 
corresponding definitions is field ‘alloc_small’
   JMETHOD(void *, alloc_small, (j_common_ptr cinfo, int pool_id,
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: a field of same name but different type is defined in another 
translation unit
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
lto1: note: type mismatch in parameter 1
../../third_party/libjpeg_turbo/jpeglib.h:294:0: note: type ‘struct 
jpeg_common_struct *’ should match type ‘struct jpeg_common_struct *’
 typedef struct jpeg_common_struct * j_common_ptr;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: the incompatible type is defined here
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:782:0: warning: type ‘struct 
jpeg_progress_mgr’ violates one definition rule [-Wodr]
 struct jpeg_progress_mgr {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: a different type is defined in another translation unit
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:783:0: note: the first difference of 
corresponding definitions is field ‘progress_monitor’
   JMETHOD(void, progress_monitor, (j_common_ptr cinfo));
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: a field of same name but different type is defined in another 
translation unit
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
lto1: note: type mismatch in parameter 1
../../third_party/libjpeg_turbo/jpeglib.h:294:0: note: type ‘struct 
jpeg_common_struct *’ should match type ‘struct jpeg_common_struct *’
 typedef struct jpeg_common_struct * j_common_ptr;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: the incompatible type is defined here
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:102:0: warning: type ‘struct 
JQUANT_TBL’ violates one definition rule [-Wodr]
 } JQUANT_TBL;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:150:0:
 note: a different type is defined in another translation unit
 typedef struct {
 ^
../../third_party/libjpeg_turbo/jpeglib.h:101:0: note: the first difference of 
corresponding definitions is field ‘sent_table’
   boolean sent_table;  /* TRUE when table has been output */
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:150:0:
 note: a field of same name but different type is defined in another 
translation unit
 typedef struct {
 ^
../../third_party/libjpeg_turbo/jmorecfg.h:238:0: note: type ‘boolean’ should 
match type ‘boolean’
 typedef int boolean;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jconfig.h:26:0:
 note: the incompatible type is defined here
 typedef unsigned char boolean;
 ^
../../third_party/libjpeg_turbo/jpeglib.h:118:0: warning: type ‘struct 
JHUFF_TBL’ violates one definition rule [-Wodr]
 } JHUFF_TBL;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: a different type is defined in another translation unit
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:117:0: note: the first difference of 
corresponding definitions is field ‘sent_table’
   boolean sent_table;  /* TRUE when table has been output */
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: a field of same name but different type is defined in another 
translation unit
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
../../third_party/libjpeg_turbo/jmorecfg.h:238:0: note: type ‘boolean’ should 
match type ‘boolean’
 typedef int boolean;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jconfig.h:26:0:
 note: the incompatible type is defined here
 typedef unsigned char boolean;
 ^
../../third_party/libjpeg_turbo/jpeglib.h:191:0: warning: type ‘struct 
jpeg_component_info’ violates one definition rule [-Wodr]
 } jpeg_component_info;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: a different type is defined in another translation unit
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:172:0: note: the first difference of 
corresponding definitions is field ‘component_needed’
   boolean component_needed; /* do we need the value of this component? */
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: a field of same name but different type is defined in another 
translation unit
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
../../third_party/libjpeg_turbo/jmorecfg.h:238:0: note: type ‘boolean’ should 
match type ‘boolean’
 typedef int boolean;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jconfig.h:26:0:
 note: the incompatible type is defined here
 typedef unsigned char boolean;
 ^
../../third_party/libjpeg_turbo/jpeglib.h:476:0: warning: type ‘struct 
jpeg_decompress_struct’ violates one definition rule [-Wodr]
 struct jpeg_decompress_struct {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: a different type is defined in another translation unit
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:477:0: note: the first difference of 
corresponding definitions is field ‘err’
   jpeg_common_fields;  /* Fields shared with jpeg_compress_struct */
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: a field of same name but different type is defined in another 
translation unit
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:724:0: note: type ‘struct 
jpeg_error_mgr’ should match type ‘struct jpeg_error_mgr’ that itself violate 
one definition rule
 struct jpeg_error_mgr {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: the incompatible type is defined here
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:806:0: warning: type ‘struct 
jpeg_source_mgr’ violates one definition rule [-Wodr]
 struct jpeg_source_mgr {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: a different type is defined in another translation unit
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:810:0: note: the first difference of 
corresponding definitions is field ‘init_source’
   JMETHOD(void, init_source, (j_decompress_ptr cinfo));
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: a field of same name but different type is defined in another 
translation unit
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
lto1: note: type mismatch in parameter 1
../../third_party/libjpeg_turbo/jpeglib.h:296:0: note: type ‘struct 
jpeg_decompress_struct *’ should match type ‘struct jpeg_decompress_struct *’
 typedef struct jpeg_decompress_struct * j_decompress_ptr;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:169:0:
 note: the incompatible type is defined here
   UINT8 bits[17];  /* bits[k] = # of symbols with codes of */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:301:0: warning: type ‘struct 
jpeg_compress_struct’ violates one definition rule [-Wodr]
 struct jpeg_compress_struct {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:251:0:
 note: a different type is defined in another translation unit
 typedef struct {
 ^
../../third_party/libjpeg_turbo/jpeglib.h:302:0: note: the first difference of 
corresponding definitions is field ‘err’
   jpeg_common_fields;  /* Fields shared with jpeg_decompress_struct */
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:251:0:
 note: a field of same name but different type is defined in another 
translation unit
 typedef struct {
 ^
../../third_party/libjpeg_turbo/jpeglib.h:724:0: note: type ‘struct 
jpeg_error_mgr’ should match type ‘struct jpeg_error_mgr’ that itself violate 
one definition rule
 struct jpeg_error_mgr {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:321:0:
 note: the incompatible type is defined here
   jpeg_common_fields;  /* Fields common to both master struct types */
 ^
../../third_party/libjpeg_turbo/jpeglib.h:794:0: warning: type ‘struct 
jpeg_destination_mgr’ violates one definition rule [-Wodr]
 struct jpeg_destination_mgr {
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:251:0:
 note: a different type is defined in another translation unit
 typedef struct {
 ^
../../third_party/libjpeg_turbo/jpeglib.h:798:0: note: the first difference of 
corresponding definitions is field ‘init_destination’
   JMETHOD(void, init_destination, (j_compress_ptr cinfo));
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:251:0:
 note: a field of same name but different type is defined in another 
translation unit
 typedef struct {
 ^
lto1: note: type mismatch in parameter 1
../../third_party/libjpeg_turbo/jpeglib.h:295:0: note: type ‘struct 
jpeg_compress_struct *’ should match type ‘struct jpeg_compress_struct *’
 typedef struct jpeg_compress_struct * j_compress_ptr;
 ^
../../third_party/pdfium/core/src/fxcodec/codec/../.././fxcodec/libjpeg/jpeglib.h:251:0:
 note: the incompatible type is defined here
 typedef struct {
 ^
../../third_party/pdfium/fpdfsdk/src/javascript/../../include/javascript/event.h:41:0:
 warning: type ‘struct event’ violates one definition rule [-Wodr]
 {
 ^
../../third_party/libevent/event.h:213:0: note: a type with different bases is 
defined in another translation unit
 struct event {
 ^
./glslang_lex.cpp:968:0: warning: type ‘struct yyguts_t’ violates one 
definition rule [-Wodr]
./Tokenizer.cpp:348:0: note: a different type is defined in another translation 
unit
./glslang_lex.cpp:968:0: note: the first difference of corresponding 
definitions is field ‘yyextra_r’
./Tokenizer.cpp:348:0: note: a field of same name but different type is defined 
in another translation unit
../../third_party/angle/src/compiler/translator/ParseContext.h:67:0: note: type 
name ‘TParseContext’ should match type name ‘pp::Tokenizer::Context’
     pp::Preprocessor preprocessor;
 ^
../../third_party/angle/src/compiler/preprocessor/Tokenizer.h:23:0: note: the 
incompatible type is defined here
     {
 ^
/usr/include/linux/if.h:210:0: warning: type ‘union <anon>’ violates one 
definition rule [-Wodr]
  union {
 ^
/usr/include/net/if.h:132:0: note: a different type is defined in another 
translation unit
  char ifrn_name[IFNAMSIZ]; /* Interface name, e.g. "en0".  */
 ^
/usr/include/linux/if.h:222:0: note: the first difference of corresponding 
definitions is field ‘ifru_data’
   void * ifru_data;
 ^
/usr/include/net/if.h:132:0: note: a field of same name but different type is 
defined in another translation unit
  char ifrn_name[IFNAMSIZ]; /* Interface name, e.g. "en0".  */
 ^
lto1: note: type ‘void’ should match type ‘char’
<built-in>: note: the incompatible type is defined here
/usr/include/linux/if.h:203:0: warning: type ‘struct ifreq’ violates one 
definition rule [-Wodr]
 struct ifreq {
 ^
/usr/include/net/if.h:132:0: note: a different type is defined in another 
translation unit
  char ifrn_name[IFNAMSIZ]; /* Interface name, e.g. "en0".  */
 ^
/usr/include/linux/if.h:224:0: note: the first difference of corresponding 
definitions is field ‘ifr_ifru’
  } ifr_ifru;
 ^
/usr/include/net/if.h:132:0: note: a field of same name but different type is 
defined in another translation unit
  char ifrn_name[IFNAMSIZ]; /* Interface name, e.g. "en0".  */
 ^
/usr/include/linux/if.h:210:0: note: type ‘union <anon>’ should match type 
‘union <anon>’ that itself violate one definition rule
  union {
 ^
/usr/include/net/if.h:132:0: note: the incompatible type is defined here
  char ifrn_name[IFNAMSIZ]; /* Interface name, e.g. "en0".  */
 ^
../../third_party/pdfium/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp: 
In member function ‘RebuildCrossRef’:
../../third_party/pdfium/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp:2389:0:
 warning: offset outside bounds of constant string
                 pDict->AddValue(CFX_ByteStringC(key.c_str() + 1, 
key.GetLength() - 1), pObj);
 ^
In function ‘__fread_alias’,
    inlined from 
‘_ZN21SafeBrowsingStoreFile13CheckValidityEv.part.38.constprop’ at 
../../chrome/browser/safe_browsing/safe_browsing_store_file.cc:620:0:
/usr/include/bits/stdio2.h:290:0: warning: call to ‘__fread_chk_warn’ declared 
with attribute warning: fread called with bigger size * nmemb than length of 
destination buffer
  return __fread_chk (__ptr, __bos0 (__ptr), __size, __n, __stream);
 ^
/usr/include/bits/stdio2.h:290:0: warning: call to ‘__fread_chk_warn’ declared 
with attribute warning: fread called with bigger size * nmemb than length of 
destination buffer
In function ‘__read_alias’,
    inlined from ‘GetAppOutputInternal.constprop’ at 
../../base/process/launch_posix.cc:676:0:
/usr/include/bits/unistd.h:39:0: warning: call to ‘__read_chk_warn’ declared 
with attribute warning: read called with bigger length than size of the 
destination buffer
  return __read_chk (__fd, __buf, __nbytes, __bos0 (__buf));
 ^

Attachment: inkscape-warnings.txt.bz2
Description: application/bzip

Reply via email to