aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/google/protobuf/descriptor.cc
diff options
context:
space:
mode:
authorGravatar kenton@google.com <kenton@google.com@630680e5-0e50-0410-840e-4b1c322b438d>2008-11-06 04:37:30 +0000
committerGravatar kenton@google.com <kenton@google.com@630680e5-0e50-0410-840e-4b1c322b438d>2008-11-06 04:37:30 +0000
commit3e91fcdd873ae12e3d0943d3fda6abea39fd0e2b (patch)
treecef414173883a83e6cb254329810a88d85347164 /src/google/protobuf/descriptor.cc
parent580cf3c47cb153693480b5f51a7ddcb06251de89 (diff)
Work around GCC 4.3.0 x86_64 compiler bug (seen on Fedora 9).
Details: For each message type, protoc generates an array of byte offsets of each of the fields within the message class. These offsets are later used by the reflection implementation. Prior to this revision, the offset arrays were allocated as global variables. Since they were just arrays of ints, they should have been initialized at compile time. Unfortunately, GCC 4.3.0 incorrectly decides that they cannot be initialized at compile time because the values used to initialize the array have type ptrdiff_t, and GCC 4.3.0 does not recognize that it can convert ptrdiff_t to int at compile time. This bug did not seem to exist in previous versions of GCC. Google's compiler team has submitted a fix for this bug back to the GCC project, but we will have to work around it anyway since Fedora 9 shipped with GCC 4.3.0.
Diffstat (limited to 'src/google/protobuf/descriptor.cc')
0 files changed, 0 insertions, 0 deletions