diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2023-01-30 14:56:07 +0100 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2023-01-30 14:57:36 +0100 |
commit | 760e1041346593bec39897b21eb965f8d1f7dbd2 (patch) | |
tree | 187729d52ac3f2ecf326325d096f5471a8690971 | |
parent | dc5ab21052f1f0507d9aa70879a7c58e9fb241a7 (diff) | |
download | vala-760e1041346593bec39897b21eb965f8d1f7dbd2.tar.gz |
vala: Improve missing exponent check for real literals
-rw-r--r-- | tests/basic-types/float-literals.c-expected | 6 | ||||
-rw-r--r-- | tests/basic-types/float-literals.vala | 4 | ||||
-rw-r--r-- | vala/valarealliteral.vala | 2 |
3 files changed, 11 insertions, 1 deletions
diff --git a/tests/basic-types/float-literals.c-expected b/tests/basic-types/float-literals.c-expected index baa5423a1..2447e3e68 100644 --- a/tests/basic-types/float-literals.c-expected +++ b/tests/basic-types/float-literals.c-expected @@ -24,6 +24,12 @@ _vala_main (void) } { gdouble foo = 0.0; + gfloat bar = 0.0F; + foo = 23.42e+12; + bar = 47.11E-4f; + } + { + gdouble foo = 0.0; gdouble bar = 0.0; foo = 23.42; bar = 47.11; diff --git a/tests/basic-types/float-literals.vala b/tests/basic-types/float-literals.vala index b4bba83a4..73119c9a7 100644 --- a/tests/basic-types/float-literals.vala +++ b/tests/basic-types/float-literals.vala @@ -8,6 +8,10 @@ void main () { double bar = 47.11d; } { + double foo = 23.42e+12d; + float bar = 47.11E-4f; + } + { double foo = 23.42; double bar = 47.11; } diff --git a/vala/valarealliteral.vala b/vala/valarealliteral.vala index c992fba6f..86e7cf5c1 100644 --- a/vala/valarealliteral.vala +++ b/vala/valarealliteral.vala @@ -71,7 +71,7 @@ public class Vala.RealLiteral : Literal { type_name = "double"; } - if (value.has_suffix ("e") || value.has_suffix ("+") || value.has_suffix ("-")) { + if (value.has_suffix ("e") || value.has_suffix ("E") || value.has_suffix ("+") || value.has_suffix ("-")) { Report.error (source_reference, "exponent has no digits"); error = true; } |