From 0b299aecb7427132a10da698b949551f0aafe3c9 Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 2 Jun 1999 20:21:45 +0000 Subject: [PATCH] Fixed NaN and INFINITY values git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@825 379699f6-c40d-0410-875b-85095c16579e --- jode/jode/expr/ConstOperator.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/jode/jode/expr/ConstOperator.java b/jode/jode/expr/ConstOperator.java index aab1725..d113296 100644 --- a/jode/jode/expr/ConstOperator.java +++ b/jode/jode/expr/ConstOperator.java @@ -198,8 +198,24 @@ public class ConstOperator extends NoArgOperator { } if (type.isOfType(Type.tLong)) return strVal+"L"; - if (type.isOfType(Type.tFloat)) + if (type.isOfType(Type.tFloat)) { + if (strVal.equals("NaN")) + return "Float.NaN"; + if (strVal.equals("-Infinity")) + return "Float.NEGATIVE_INFINITY"; + if (strVal.equals("Infinity")) + return "Float.POSITIVE_INFINITY"; return strVal+"F"; + } + if (type.isOfType(Type.tDouble)) { + if (strVal.equals("NaN")) + return "Double.NaN"; + if (strVal.equals("-Infinity")) + return "Double.NEGATIVE_INFINITY"; + if (strVal.equals("Infinity")) + return "Double.POSITIVE_INFINITY"; + return strVal; + } if (!type.isOfType(Type.tInt) && (type.getHint().equals(Type.tByte) || type.getHint().equals(Type.tShort))