• Jon Skeet's avatar
    Fix to allow AOT compilers to play nicely with reflection · 1b219a17
    Jon Skeet authored
    With this fix, Unity using IL2CPP should work with one of two
    approaches:
    
    - Call `FileDescriptor.ForceReflectionInitialization<T>` for every
      enum present in generated code (including oneof case enums)
    - Ensure that IL2CPP uses the same code for int and any int-based
      enums
    
    The former approach is likely to be simpler, unless IL2CPP changes
    its default behavior. We *could* potentially generate the code
    automatically, but that makes me slightly uncomfortable in terms of
    generating code that's only relevant in one specific scenario. It
    would be reasonably easy to write a tool (separate from protoc) to
    generate the code required for any specific set of assemblies, so
    that Unity users can include it in their application. We can always
    decide to change to generate it automatically later.
    1b219a17
Name
Last commit
Last update
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...
.travis.yml Loading commit data...
BUILD Loading commit data...
CHANGES.txt 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...
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...