use is_proto_enum instead of is_enum for repeated accessor field. The later is not supported by some versions of MSVC and the former is more accurate for the use case. Change-Id: I7096226b1ebfef8340d288bbaf2788540aa3e97f
diff --git a/src/google/protobuf/reflection.h b/src/google/protobuf/reflection.h old mode 100644 new mode 100755 index 8f8b1ab..03c761c --- a/src/google/protobuf/reflection.h +++ b/src/google/protobuf/reflection.h
@@ -536,7 +536,7 @@ template<typename T> struct RefTypeTraits< - T, typename internal::enable_if<internal::is_enum<T>::value>::type> { + T, typename internal::enable_if<is_proto_enum<T>::value>::type> { typedef RepeatedFieldRefIterator<T> iterator; typedef RepeatedFieldAccessor AccessorType; // We use int32 for repeated enums in RepeatedFieldAccessor.