# HG changeset patch # User Manuele Conti # Date 1354468802 -3600 # Node ID d15f13bff9c6628ad60dd2f3d7ab329af4290e88 # Parent d699d54d181afad508995098a4eb92b928227fa9 Remove Ambiguous enumerate value in enum conversion functions. diff -r d699d54d181a -r d15f13bff9c6 stage1_2/create_enumtype_conversion_functions.cc --- a/stage1_2/create_enumtype_conversion_functions.cc Sun Dec 02 12:30:41 2012 +0100 +++ b/stage1_2/create_enumtype_conversion_functions.cc Sun Dec 02 18:20:02 2012 +0100 @@ -155,12 +155,12 @@ IN: STRING; END_VAR IF IN = '' THEN - STRING_TO_ := ; + STRING_TO_ := #; RETURN; END_IF; ... IF IN = '' THEN - STRING_TO_ := ; + STRING_TO_ := #; RETURN; END_IF; ENO := FALSE; @@ -178,7 +178,7 @@ for (itr = enumerateValues.begin(); itr != enumerateValues.end(); ++itr) { std::string value = *itr; text += "IF IN = '" + value + "' THEN\n"; - text += " " + functionName + " := " + value + ";\n"; + text += " " + functionName + " := " + enumerateName + "#" + value + ";\n"; text += " RETURN;\n"; text += "END_IF;\n"; } @@ -195,12 +195,12 @@ VAR_INPUT IN: ; END_VAR - IF IN = THEN + IF IN = # THEN _TO_STRING := '#'; RETURN; END_IF; ... - IF IN = THEN + IF IN = # THEN _TO_STRING := '#'; RETURN; END_IF; @@ -218,7 +218,7 @@ text += "\nVAR_INPUT\nIN : " + enumerateName + ";\nEND_VAR\n"; for (itr = enumerateValues.begin(); itr != enumerateValues.end(); ++itr) { std::string value = *itr; - text += "IF IN = " + value + " THEN\n"; + text += "IF IN = " + enumerateName + "#" + value + " THEN\n"; text += " " + functionName + " := '" + enumerateName + "#" + value + "';\n"; text += " RETURN;\n"; text += "END_IF;\n"; @@ -237,12 +237,12 @@ IN: ; END_VAR IF IN = 1 THEN - _TO_ := ; + _TO_ := #; RETURN; END_IF; ... IF IN = N THEN - _TO_ := ; + _TO_ := #; RETURN; END_IF; ENO := FALSE; @@ -266,7 +266,7 @@ std::stringstream out; out << count; text += "IF IN = " + out.str() + " THEN\n"; - text += " " + functionName + " := " + value + ";\n"; + text += " " + functionName + " := " + enumerateName + "#" + value + ";\n"; text += " RETURN;\n"; text += "END_IF;\n"; count++; @@ -284,12 +284,12 @@ VAR_INPUT IN: ; END_VAR - IF IN = THEN + IF IN = # THEN _TO_ := 1; RETURN; END_IF; ... - IF IN = THEN + IF IN = # THEN _TO_ := N; RETURN; END_IF; @@ -313,7 +313,7 @@ std::string value = *itr; std::stringstream out; out << count; - text += "IF IN = " + value + " THEN\n"; + text += "IF IN = " + enumerateName + "#" + value + " THEN\n"; text += " " + functionName + " := " + out.str() + ";\n"; text += " RETURN;\n"; text += "END_IF;\n";