You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@plc4x.apache.org by cd...@apache.org on 2019/12/21 12:31:01 UTC

[plc4x] branch next-gen-core updated: - Fixed a bug in the floating point parsing.

This is an automated email from the ASF dual-hosted git repository.

cdutz pushed a commit to branch next-gen-core
in repository https://gitbox.apache.org/repos/asf/plc4x.git


The following commit(s) were added to refs/heads/next-gen-core by this push:
     new e7064e7  - Fixed a bug in the floating point parsing.
e7064e7 is described below

commit e7064e7f89b58f677d48d2cb04364cf5fb5dec83
Author: Christofer Dutz <ch...@c-ware.de>
AuthorDate: Sat Dec 21 13:30:53 2019 +0100

    - Fixed a bug in the floating point parsing.
---
 .../java/org/apache/plc4x/language/java/JavaLanguageTemplateHelper.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/build-utils/language-java/src/main/java/org/apache/plc4x/language/java/JavaLanguageTemplateHelper.java b/build-utils/language-java/src/main/java/org/apache/plc4x/language/java/JavaLanguageTemplateHelper.java
index e4005d9..b82a79d 100644
--- a/build-utils/language-java/src/main/java/org/apache/plc4x/language/java/JavaLanguageTemplateHelper.java
+++ b/build-utils/language-java/src/main/java/org/apache/plc4x/language/java/JavaLanguageTemplateHelper.java
@@ -274,7 +274,7 @@ public class JavaLanguageTemplateHelper implements FreemarkerLanguageTemplateHel
                 }
                 sb.append("\n               long exponent = io.readUnsignedLong(").append(floatTypeReference.getExponent()).append(");");
                 sb.append("\n               long mantissa = io.readUnsignedLong(").append(floatTypeReference.getMantissa()).append(");");
-                sb.append("\n               return (float) ((negative ? -1 : 1) * (0.01 * mantissa) * (2 ^ exponent));");
+                sb.append("\n               return (float) ((negative ? -1 : 1) * (0.01 * mantissa) * Math.pow(2, exponent));");
                 sb.append("\n            } catch(ParseException e) {");
                 sb.append("\n               return 0.0f;");
                 sb.append("\n            }");