Browse Source

Ensure expression is a valid float constant before trying to append `f` suffix (#1465)

pull/1467/head
josetr 5 years ago committed by GitHub
parent
commit
9b8275cca9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 10
      src/Generator/Passes/ExpressionHelper.cs

10
src/Generator/Passes/ExpressionHelper.cs

@ -175,10 +175,12 @@ namespace CppSharp.Internal @@ -175,10 +175,12 @@ namespace CppSharp.Internal
return ulong.TryParse(expression, out _);
case TypeCode.Single:
{
if (expression.EndsWith("F"))
expression = expression.Substring(0, expression.Length - 1);
var result = float.TryParse(expression, out _);
expression += "f";
var expr = expression;
if (expr.EndsWith("F"))
expr = expr.Substring(0, expr.Length - 1);
var result = float.TryParse(expr, out _);
if (result)
expression = expr + "f";
return result;
}
case TypeCode.Double:

Loading…
Cancel
Save