Skip to content

Commit d07a3d2

Browse files
committed
Fixed VS2010 build.
Change-Id: I3ee68c5f250d6baa02060ab2ecbc0f0fe254a9d8
1 parent 640df2c commit d07a3d2

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

samples/monster_generated.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,8 +119,9 @@ struct EquipmentUnion {
119119
void Reset();
120120

121121
#ifndef FLATBUFFERS_CPP98_STL
122-
template <typename T, typename RT = typename std::remove_reference<T>::type>
122+
template <typename T>
123123
void Set(T&& val) {
124+
using RT = typename std::remove_reference<T>::type;
124125
Reset();
125126
type = EquipmentTraits<typename RT::TableType>::enum_value;
126127
if (type != Equipment_NONE) {

src/idl_gen_cpp.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1096,8 +1096,9 @@ class CppGenerator : public BaseGenerator {
10961096
code_ += "";
10971097
if (!enum_def.uses_multiple_type_instances) {
10981098
code_ += "#ifndef FLATBUFFERS_CPP98_STL";
1099-
code_ += " template <typename T, typename RT = typename std::remove_reference<T>::type>";
1099+
code_ += " template <typename T>";
11001100
code_ += " void Set(T&& val) {";
1101+
code_ += " using RT = typename std::remove_reference<T>::type;";
11011102
code_ += " Reset();";
11021103
code_ += " type = {{NAME}}Traits<typename RT::TableType>::enum_value;";
11031104
code_ += " if (type != {{NONE}}) {";

tests/monster_test_generated.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,8 +207,9 @@ struct AnyUnion {
207207
void Reset();
208208

209209
#ifndef FLATBUFFERS_CPP98_STL
210-
template <typename T, typename RT = typename std::remove_reference<T>::type>
210+
template <typename T>
211211
void Set(T&& val) {
212+
using RT = typename std::remove_reference<T>::type;
212213
Reset();
213214
type = AnyTraits<typename RT::TableType>::enum_value;
214215
if (type != Any_NONE) {
@@ -348,8 +349,9 @@ struct AnyUniqueAliasesUnion {
348349
void Reset();
349350

350351
#ifndef FLATBUFFERS_CPP98_STL
351-
template <typename T, typename RT = typename std::remove_reference<T>::type>
352+
template <typename T>
352353
void Set(T&& val) {
354+
using RT = typename std::remove_reference<T>::type;
353355
Reset();
354356
type = AnyUniqueAliasesTraits<typename RT::TableType>::enum_value;
355357
if (type != AnyUniqueAliases_NONE) {

0 commit comments

Comments
 (0)