• Hans Wennborg's avatar
    Add wire_format_lite_inl.h include to implicit_weak_message.cc · 5d8dd6b0
    Hans Wennborg authored
    This unbreaks the Windows shared-library build of Chrome when using
    Clang versions based on r344987 or later, see https://crbug.com/901776
    
    implicit_weak_message.cc is part of protobuf_lite.dll, and it includes
    wire_format_lite.h, which includes the dllexport inline function
    WireFormatLite::WriteGroupToArray which will therefore be emitted.
    
    WriteGroupToArray in turn calls the inline function
    InternalWriteGroupToArray, however that definition is provided in the
    _inl file. To make sure the definition is available, the _inl file must
    be included.
    
    Before Clang r344987 the build worked anyway due to luck, because
    InternalWriteGroupToArray was emitted into other object files (e.g. in
    wire_format_lite.obj). After that Clang revision, those definitions
    started getting inlined, and so are longer available and cause a link
    failure for the reference from implicit_weak_message.obj.
    5d8dd6b0
Name
Last commit
Last update
.github/ISSUE_TEMPLATE Loading commit data...
benchmarks Loading commit data...
cmake Loading commit data...
conformance Loading commit data...
csharp Loading commit data...
docs Loading commit data...
editors Loading commit data...
examples Loading commit data...
java Loading commit data...
js Loading commit data...
kokoro Loading commit data...
m4 Loading commit data...
objectivec Loading commit data...
php Loading commit data...
protoc-artifacts Loading commit data...
python Loading commit data...
ruby Loading commit data...
src Loading commit data...
third_party Loading commit data...
util/python Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
BUILD Loading commit data...
CHANGES.txt Loading commit data...
CONTRIBUTING.md Loading commit data...
CONTRIBUTORS.txt Loading commit data...
LICENSE Loading commit data...
Makefile.am Loading commit data...
Protobuf.podspec Loading commit data...
README.md Loading commit data...
WORKSPACE Loading commit data...
appveyor.bat Loading commit data...
appveyor.yml Loading commit data...
autogen.sh Loading commit data...
compiler_config_setting.bzl Loading commit data...
composer.json Loading commit data...
configure.ac Loading commit data...
generate_changelog.py Loading commit data...
generate_descriptor_proto.sh Loading commit data...
post_process_dist.sh Loading commit data...
protobuf-lite.pc.in Loading commit data...
protobuf.bzl Loading commit data...
protobuf.pc.in Loading commit data...
six.BUILD Loading commit data...
tests.sh Loading commit data...
update_file_lists.sh Loading commit data...