Skip to content

Commit 8651a89

Browse files
committed
c_coders
Signed-off-by: Cervenka Dusan <cervenka@acrios.com>
1 parent ed8beaf commit 8651a89

29 files changed

+843
-679
lines changed

erpcgen/Makefile

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -72,13 +72,17 @@ SOURCES += $(OBJS_ROOT)/erpcgen_parser.tab.cpp \
7272
.SECONDARY: $(OBJS_ROOT)/erpcgen_parser.tab.cpp \
7373
$(OBJS_ROOT)/erpcgen_lexer.cpp \
7474
$(OBJS_ROOT)/erpcgen/src/templates/c_common_header.c \
75-
$(OBJS_ROOT)/erpcgen/src/templates/c_interface_header.c \
75+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_interface_header.c \
76+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_client_header.c \
77+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_client_source.c \
78+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_server_header.c \
79+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_server_source.c \
80+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_coders.c \
81+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_common_functions.c \
7682
$(OBJS_ROOT)/erpcgen/src/templates/c_client_header.c \
7783
$(OBJS_ROOT)/erpcgen/src/templates/c_client_source.c \
7884
$(OBJS_ROOT)/erpcgen/src/templates/c_server_header.c \
7985
$(OBJS_ROOT)/erpcgen/src/templates/c_server_source.c \
80-
$(OBJS_ROOT)/erpcgen/src/templates/c_coders.c \
81-
$(OBJS_ROOT)/erpcgen/src/templates/c_common_functions.c \
8286
$(OBJS_ROOT)/erpcgen/src/templates/c_crc.c \
8387
$(OBJS_ROOT)/erpcgen/src/templates/py_init.c \
8488
$(OBJS_ROOT)/erpcgen/src/templates/py_common.c \
@@ -90,23 +94,31 @@ SOURCES += $(OBJS_ROOT)/erpcgen_parser.tab.cpp \
9094

9195
ifeq "$(is_mingw)" "1"
9296
SOURCES += $(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_common_header.cpp \
93-
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_interface_header.c \
94-
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_client_header.c \
97+
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/cpp_interface_header.cpp \
98+
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/cpp_client_header.cpp \
99+
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/cpp_client_source.cpp \
100+
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/cpp_server_header.cpp \
101+
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/cpp_server_source.cpp \
102+
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/cpp_coders.cpp \
103+
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/cpp_common_functions.cpp \
104+
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_client_header.cpp \
95105
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_client_source.cpp \
96106
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_server_header.cpp \
97107
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_server_source.cpp \
98-
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_coders.cpp \
99-
$(ERPC_ROOT)/erpcgen/VisualStudio_v14/c_common_functions.cpp \
100108
$(OBJS_ROOT)/erpcgen/src/templates/c_crc.cpp
101109
else
102110
SOURCES += $(OBJS_ROOT)/erpcgen/src/templates/c_common_header.c \
103-
$(OBJS_ROOT)/erpcgen/src/templates/c_interface_header.c \
111+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_interface_header.c \
112+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_client_header.c \
113+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_client_source.c \
114+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_server_header.c \
115+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_server_source.c \
116+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_coders.c \
117+
$(OBJS_ROOT)/erpcgen/src/templates/cpp_common_functions.c \
104118
$(OBJS_ROOT)/erpcgen/src/templates/c_client_header.c \
105119
$(OBJS_ROOT)/erpcgen/src/templates/c_client_source.c \
106120
$(OBJS_ROOT)/erpcgen/src/templates/c_server_header.c \
107121
$(OBJS_ROOT)/erpcgen/src/templates/c_server_source.c \
108-
$(OBJS_ROOT)/erpcgen/src/templates/c_coders.c \
109-
$(OBJS_ROOT)/erpcgen/src/templates/c_common_functions.c \
110122
$(OBJS_ROOT)/erpcgen/src/templates/c_crc.c \
111123
$(OBJS_ROOT)/erpcgen/src/templates/py_init.c \
112124
$(OBJS_ROOT)/erpcgen/src/templates/py_common.c \

erpcgen/VisualStudio_v14/.gitignore

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,17 @@ erpcgen_parser.tab.cpp
44
erpcgen_parser.tab.hpp
55

66
# templates
7-
c_client_source.cpp
8-
c_coders.cpp
7+
cpp_client_source.cpp
8+
cpp_client_header.cpp
9+
cpp_server_header.cpp
10+
cpp_server_source.cpp
11+
cpp_coders.cpp
912
c_common_header.cpp
13+
c_client_source.cpp
14+
c_client_header.cpp
1015
c_server_header.cpp
1116
c_server_source.cpp
12-
c_common_functions.cpp
17+
cpp_common_functions.cpp
1318
c_defines.cpp
1419
c_crc.cpp
1520
py_client.cpp

erpcgen/VisualStudio_v14/erpcgen.vcxproj

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -96,14 +96,18 @@
9696
</Inputs>
9797
</CustomBuildStep>
9898
<PreBuildEvent>
99-
<Command>python.exe ..\bin\txt_to_c.py --output .\c_coders.cpp ..\src\templates\c_coders.template
99+
<Command>python.exe ..\bin\txt_to_c.py --output .\cpp_coders.cpp ..\src\templates\cpp_coders.template
100100
python.exe ..\bin\txt_to_c.py --output .\c_common_header.cpp ..\src\templates\c_common_header.template
101-
python.exe ..\bin\txt_to_c.py --output .\c_interface_header.cpp ..\src\templates\c_interface_header.template
101+
python.exe ..\bin\txt_to_c.py --output .\cpp_interface_header.cpp ..\src\templates\cpp_interface_header.template
102+
python.exe ..\bin\txt_to_c.py --output .\cpp_client_header.cpp ..\src\templates\cpp_client_header.template
103+
python.exe ..\bin\txt_to_c.py --output .\cpp_client_source.cpp ..\src\templates\cpp_client_source.template
104+
python.exe ..\bin\txt_to_c.py --output .\cpp_server_source.cpp ..\src\templates\cpp_server_source.template
105+
python.exe ..\bin\txt_to_c.py --output .\cpp_server_header.cpp ..\src\templates\cpp_server_header.template
102106
python.exe ..\bin\txt_to_c.py --output .\c_client_header.cpp ..\src\templates\c_client_header.template
103107
python.exe ..\bin\txt_to_c.py --output .\c_client_source.cpp ..\src\templates\c_client_source.template
104108
python.exe ..\bin\txt_to_c.py --output .\c_server_source.cpp ..\src\templates\c_server_source.template
105109
python.exe ..\bin\txt_to_c.py --output .\c_server_header.cpp ..\src\templates\c_server_header.template
106-
python.exe ..\bin\txt_to_c.py --output .\c_common_functions.cpp ..\src\templates\c_common_functions.template
110+
python.exe ..\bin\txt_to_c.py --output .\cpp_common_functions.cpp ..\src\templates\cpp_common_functions.template
107111
python.exe ..\bin\txt_to_c.py --output .\c_crc.cpp ..\src\templates\c_crc.template
108112
python.exe ..\bin\txt_to_c.py --output .\py_client.cpp ..\src\templates\py_client.template
109113
python.exe ..\bin\txt_to_c.py --output .\py_coders.cpp ..\src\templates\py_coders.template
@@ -137,14 +141,18 @@ python.exe ..\bin\txt_to_c.py --output .\py_global_init.cpp ..\src\templates\py_
137141
<AdditionalLibraryDirectories>$(ProjectDir)\boost_1_67_0\lib32-msvc-14.1;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
138142
</Link>
139143
<PreBuildEvent>
140-
<Command>python.exe ..\bin\txt_to_c.py --output .\c_coders.cpp ..\src\templates\c_coders.template
144+
<Command>python.exe ..\bin\txt_to_c.py --output .\cpp_coders.cpp ..\src\templates\cpp_coders.template
141145
python.exe ..\bin\txt_to_c.py --output .\c_common_header.cpp ..\src\templates\c_common_header.template
142-
python.exe ..\bin\txt_to_c.py --output .\c_interface_header.cpp ..\src\templates\c_interface_header.template
146+
python.exe ..\bin\txt_to_c.py --output .\cpp_interface_header.cpp ..\src\templates\cpp_interface_header.template
147+
python.exe ..\bin\txt_to_c.py --output .\cpp_client_header.cpp ..\src\templates\cpp_client_header.template
148+
python.exe ..\bin\txt_to_c.py --output .\cpp_client_source.cpp ..\src\templates\cpp_client_source.template
149+
python.exe ..\bin\txt_to_c.py --output .\cpp_server_source.cpp ..\src\templates\cpp_server_source.template
150+
python.exe ..\bin\txt_to_c.py --output .\cpp_server_header.cpp ..\src\templates\cpp_server_header.template
143151
python.exe ..\bin\txt_to_c.py --output .\c_client_header.cpp ..\src\templates\c_client_header.template
144152
python.exe ..\bin\txt_to_c.py --output .\c_client_source.cpp ..\src\templates\c_client_source.template
145153
python.exe ..\bin\txt_to_c.py --output .\c_server_source.cpp ..\src\templates\c_server_source.template
146154
python.exe ..\bin\txt_to_c.py --output .\c_server_header.cpp ..\src\templates\c_server_header.template
147-
python.exe ..\bin\txt_to_c.py --output .\c_common_functions.cpp ..\src\templates\c_common_functions.template
155+
python.exe ..\bin\txt_to_c.py --output .\cpp_common_functions.cpp ..\src\templates\cpp_common_functions.template
148156
python.exe ..\bin\txt_to_c.py --output .\c_crc.cpp ..\src\templates\c_crc.template
149157
python.exe ..\bin\txt_to_c.py --output .\py_client.cpp ..\src\templates\py_client.template
150158
python.exe ..\bin\txt_to_c.py --output .\py_coders.cpp ..\src\templates\py_coders.template
@@ -229,15 +237,19 @@ python.exe ..\bin\txt_to_c.py --output .\py_global_init.cpp ..\src\templates\py_
229237
<ClCompile Include="..\src\Token.cpp" />
230238
<ClCompile Include="..\src\types\Type.cpp" />
231239
<ClCompile Include="..\src\UniqueIdChecker.cpp" />
232-
<ClCompile Include="c_coders.cpp" />
240+
<ClCompile Include="cpp_coders.cpp" />
233241
<ClCompile Include="c_common_header.cpp" />
234-
<ClCompile Include="c_interface_header.cpp" />
242+
<ClCompile Include="c_crc.cpp" />
243+
<ClCompile Include="cpp_interface_header.cpp" />
244+
<ClCompile Include="cpp_client_header.cpp" />
245+
<ClCompile Include="cpp_client_source.cpp" />
246+
<ClCompile Include="cpp_server_header.cpp" />
247+
<ClCompile Include="cpp_server_source.cpp" />
235248
<ClCompile Include="c_client_header.cpp" />
236249
<ClCompile Include="c_client_source.cpp" />
237-
<ClCompile Include="c_crc.cpp" />
238250
<ClCompile Include="c_server_header.cpp" />
239251
<ClCompile Include="c_server_source.cpp" />
240-
<ClCompile Include="c_common_functions.cpp" />
252+
<ClCompile Include="cpp_common_functions.cpp" />
241253
<ClCompile Include="erpcgen_lexer.flex.cpp">
242254
<DisableSpecificWarnings Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">4005;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>
243255
</ClCompile>

erpcgen/VisualStudio_v14/erpcgen.vcxproj.filters

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -161,13 +161,25 @@
161161
<ClCompile Include="..\src\cpptemplate\cpptempl.cpp">
162162
<Filter>Source Files\cpptemplate</Filter>
163163
</ClCompile>
164-
<ClCompile Include="c_coders.cpp">
164+
<ClCompile Include="cpp_coders.cpp">
165165
<Filter>Source Files</Filter>
166166
</ClCompile>
167167
<ClCompile Include="c_common_header.cpp">
168168
<Filter>Source Files</Filter>
169169
</ClCompile>
170-
<ClCompile Include="c_interface_header.cpp">
170+
<ClCompile Include="cpp_interface_header.cpp">
171+
<Filter>Source Files</Filter>
172+
</ClCompile>
173+
<ClCompile Include="cpp_client_header.cpp">
174+
<Filter>Source Files</Filter>
175+
</ClCompile>
176+
<ClCompile Include="cpp_client_source.cpp">
177+
<Filter>Source Files</Filter>
178+
</ClCompile>
179+
<ClCompile Include="cpp_server_header.cpp">
180+
<Filter>Source Files</Filter>
181+
</ClCompile>
182+
<ClCompile Include="cpp_server_source.cpp">
171183
<Filter>Source Files</Filter>
172184
</ClCompile>
173185
<ClCompile Include="c_client_header.cpp">
@@ -257,7 +269,7 @@
257269
<ClCompile Include="..\src\UniqueIdChecker.cpp">
258270
<Filter>Source Files</Filter>
259271
</ClCompile>
260-
<ClCompile Include="c_common_functions.cpp">
272+
<ClCompile Include="cpp_common_functions.cpp">
261273
<Filter>Source Files</Filter>
262274
</ClCompile>
263275
<ClCompile Include="py_interface.cpp">

erpcgen/src/CGenerator.cpp

Lines changed: 86 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,17 @@ static const char *const kIdentifierChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHI
3131

3232
// Templates strings converted from text files by txt_to_c.py.
3333
extern const char *const kCCommonHeader;
34-
extern const char *const kCInterfaceHeader;
34+
extern const char *const kCppInterfaceHeader;
35+
extern const char *const kCppClientHeader;
36+
extern const char *const kCppClientSource;
37+
extern const char *const kCppServerHeader;
38+
extern const char *const kCppServerSource;
39+
extern const char *const kCppCoders;
40+
extern const char *const kCppCommonFunctions;
3541
extern const char *const kCClientHeader;
3642
extern const char *const kCClientSource;
3743
extern const char *const kCServerHeader;
3844
extern const char *const kCServerSource;
39-
extern const char *const kCCoders;
40-
extern const char *const kCCommonFunctions;
4145
extern const char *const kCCrc;
4246

4347
// number which makes list temporary variables unique.
@@ -48,7 +52,6 @@ static uint8_t listCounter = 0;
4852
////////////////////////////////////////////////////////////////////////////////
4953
CGenerator::CGenerator(InterfaceDefinition *def)
5054
: Generator(def, kC)
51-
, m_generateC(true)
5255
{
5356
/* Set copyright rules. */
5457
if (m_def->hasProgramSymbol())
@@ -71,78 +74,114 @@ CGenerator::CGenerator(InterfaceDefinition *def)
7174
initCReservedWords();
7275
}
7376

74-
void CGenerator::generateCpp(void)
75-
{
76-
m_generateC=false;
77-
this->generate();
78-
}
79-
8077
void CGenerator::generateOutputFiles(const string &fileName)
8178
{
82-
generateCommonHeaderFiles(fileName);
79+
generateCommonCHeaderFiles(fileName);
80+
81+
generateInterfaceCppHeaderFile(fileName);
8382

84-
generateInterfaceHeaderFile(fileName);
83+
generateClientCppHeaderFile(fileName);
84+
generateClientCppSourceFile(fileName);
8585

86-
generateClientHeaderFile(fileName);
87-
generateClientSourceFile(fileName);
86+
generateServerCppHeaderFile(fileName);
87+
generateServerCppSourceFile(fileName);
8888

89-
generateServerHeaderFile(fileName);
90-
generateServerSourceFile(fileName);
89+
generateClientCHeaderFile(fileName);
90+
generateClientCSourceFile(fileName);
91+
92+
generateServerCHeaderFile(fileName);
93+
generateServerCSourceFile(fileName);
9194
}
9295

93-
void CGenerator::generateCommonHeaderFiles(string fileName)
96+
void CGenerator::generateCommonCHeaderFiles(string fileName)
9497
{
9598
fileName += "_common.h";
96-
m_templateData["commonGuardMacro"] = generateIncludeGuardName(fileName);
97-
m_templateData["commonHeaderName"] = fileName;
99+
m_templateData["commonCGuardMacro"] = generateIncludeGuardName(fileName);
100+
m_templateData["commonCHeaderName"] = fileName;
98101
generateOutputFile(fileName , "c_common_header", m_templateData, kCCommonHeader);
99102
}
100103

101-
void CGenerator::generateInterfaceHeaderFile(string fileName)
104+
void CGenerator::generateInterfaceCppHeaderFile(string fileName)
102105
{
103-
fileName += "_interface.h";
104-
m_templateData["interfaceGuardMacro"] = generateIncludeGuardName(fileName);
105-
m_templateData["interfaceHeaderName"] = fileName;
106-
generateOutputFile(fileName, "c_interface_header", m_templateData, kCInterfaceHeader);
106+
fileName += "_interface.hpp";
107+
m_templateData["interfaceCppGuardMacro"] = generateIncludeGuardName(fileName);
108+
m_templateData["interfaceCppHeaderName"] = fileName;
109+
generateOutputFile(fileName, "cpp_interface_header", m_templateData, kCppInterfaceHeader);
107110
}
108111

109-
void CGenerator::generateClientHeaderFile(string fileName)
112+
void CGenerator::generateClientCppHeaderFile(string fileName)
110113
{
111-
fileName += "_client.h";
112-
m_templateData["clientGuardMacro"] = generateIncludeGuardName(fileName);
113-
m_templateData["clientHeaderName"] = fileName;
114-
generateOutputFile(fileName, "c_client_header", m_templateData, kCClientHeader);
114+
fileName += "_client.hpp";
115+
m_templateData["clientCppGuardMacro"] = generateIncludeGuardName(fileName);
116+
m_templateData["clientCppHeaderName"] = fileName;
117+
generateOutputFile(fileName, "cpp_client_header", m_templateData, kCppClientHeader);
115118
}
116119

117-
void CGenerator::generateClientSourceFile(string fileName)
120+
void CGenerator::generateClientCppSourceFile(string fileName)
118121
{
119-
m_templateData["source"] = "client";
120122
fileName += "_client.cpp";
121-
m_templateData["clientSourceName"] = fileName;
123+
m_templateData["clientCppSourceName"] = fileName;
122124

123125
// TODO: temporary workaround for tests
124126
m_templateData["unitTest"] = (fileName.compare("test_unit_test_common_client.cpp") == 0 ? false : true);
125127

126-
generateOutputFile(fileName, "c_client_source", m_templateData, kCClientSource);
128+
generateOutputFile(fileName, "cpp_client_source", m_templateData, kCppClientSource);
127129
}
128130

129-
void CGenerator::generateServerHeaderFile(string fileName)
131+
void CGenerator::generateServerCppHeaderFile(string fileName)
130132
{
131-
fileName += "_server.h";
132-
m_templateData["serverGuardMacro"] = generateIncludeGuardName(fileName);
133-
m_templateData["serverHeaderName"] = fileName;
134-
generateOutputFile(fileName, "c_server_header", m_templateData, kCServerHeader);
133+
fileName += "_server.hpp";
134+
m_templateData["serverCppGuardMacro"] = generateIncludeGuardName(fileName);
135+
m_templateData["serverCppHeaderName"] = fileName;
136+
generateOutputFile(fileName, "cpp_server_header", m_templateData, kCppServerHeader);
135137
}
136138

137-
void CGenerator::generateServerSourceFile(string fileName)
139+
void CGenerator::generateServerCppSourceFile(string fileName)
138140
{
139-
m_templateData["source"] = "server";
140141
fileName += "_server.cpp";
141-
m_templateData["serverSourceName"] = fileName;
142+
m_templateData["serverCppSourceName"] = fileName;
142143

143144
// TODO: temporary workaround for tests
144145
m_templateData["unitTest"] = (fileName.compare("test_unit_test_common_server.cpp") == 0 ? false : true);
145146

147+
generateOutputFile(fileName, "cpp_server_source", m_templateData, kCppServerSource);
148+
}
149+
150+
void CGenerator::generateClientCHeaderFile(string fileName)
151+
{
152+
fileName ="c_"+fileName+ "_client.h";
153+
m_templateData["clientCGuardMacro"] = generateIncludeGuardName(fileName);
154+
m_templateData["clientCHeaderName"] = fileName;
155+
generateOutputFile(fileName, "c_client_header", m_templateData, kCClientHeader);
156+
}
157+
158+
void CGenerator::generateClientCSourceFile(string fileName)
159+
{
160+
fileName ="c_"+fileName+ "_client.cpp";
161+
m_templateData["clientCSourceName"] = fileName;
162+
163+
// TODO: temporary workaround for tests
164+
m_templateData["unitTest"] = (fileName.compare("c_test_unit_test_common_client.cpp") == 0 ? false : true);
165+
166+
generateOutputFile(fileName, "c_client_source", m_templateData, kCClientSource);
167+
}
168+
169+
void CGenerator::generateServerCHeaderFile(string fileName)
170+
{
171+
fileName ="c_"+fileName+ "_server.h";
172+
m_templateData["serverCGuardMacro"] = generateIncludeGuardName(fileName);
173+
m_templateData["serverCHeaderName"] = fileName;
174+
generateOutputFile(fileName, "c_server_header", m_templateData, kCServerHeader);
175+
}
176+
177+
void CGenerator::generateServerCSourceFile(string fileName)
178+
{
179+
fileName ="c_"+fileName+ "_server.cpp";
180+
m_templateData["serverCSourceName"] = fileName;
181+
182+
// TODO: temporary workaround for tests
183+
m_templateData["unitTest"] = (fileName.compare("c_test_unit_test_common_server.cpp") == 0 ? false : true);
184+
146185
generateOutputFile(fileName, "c_server_source", m_templateData, kCServerSource);
147186
}
148187

@@ -155,12 +194,12 @@ void CGenerator::generateCrcFile()
155194

156195
void CGenerator::parseSubtemplates()
157196
{
158-
string templateName = "c_coders";
197+
string templateName = "cpp_coders";
159198
try
160199
{
161-
parse(kCCoders, m_templateData);
162-
templateName = "c_common_functions";
163-
parse(kCCommonFunctions, m_templateData);
200+
parse(kCppCoders, m_templateData);
201+
templateName = "cpp_common_functions";
202+
parse(kCppCommonFunctions, m_templateData);
164203
}
165204
catch (TemplateException &e)
166205
{
@@ -1918,8 +1957,9 @@ string CGenerator::getFunctionServerCall(Function *fn, FunctionType *functionTyp
19181957
string proto = "";
19191958
if (!fn->getReturnType()->isVoid() && prefix.length()>0)
19201959
{
1921-
proto += "result = "+prefix;
1960+
proto += "result = ";
19221961
}
1962+
proto += prefix;
19231963
proto += getOutputName(fn);
19241964
proto += "(";
19251965

0 commit comments

Comments
 (0)