diff options
Diffstat (limited to 'src/google/protobuf/message.cc')
-rw-r--r-- | src/google/protobuf/message.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/google/protobuf/message.cc b/src/google/protobuf/message.cc index d9c200c6..032748bd 100644 --- a/src/google/protobuf/message.cc +++ b/src/google/protobuf/message.cc @@ -494,11 +494,19 @@ Message* GenericTypeHandler<Message>::NewFromPrototype( return prototype->New(arena); } template<> +#if defined(_MSC_VER) && (_MSC_VER >= 1900) +// Note: force noinline to workaround MSVC 2015 compiler bug, issue #240 +GOOGLE_ATTRIBUTE_NOINLINE +#endif google::protobuf::Arena* GenericTypeHandler<Message>::GetArena( Message* value) { return value->GetArena(); } template<> +#if defined(_MSC_VER) && (_MSC_VER >= 1900) +// Note: force noinline to workaround MSVC 2015 compiler bug, issue #240 +GOOGLE_ATTRIBUTE_NOINLINE +#endif void* GenericTypeHandler<Message>::GetMaybeArenaPointer( Message* value) { return value->GetMaybeArenaPointer(); |