From b08100dbda2f6c0b19ee2439363b736031247220 Mon Sep 17 00:00:00 2001 From: Richard Elkins Date: Mon, 6 Apr 2026 09:41:55 -0500 Subject: [PATCH 1/2] JACOBIN-887 boolean statics TRUE & FALSE were missing --- src/gfunction/javaLang/javaLangBoolean.go | 11 ++++++----- src/types/constants.go | 1 + 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/gfunction/javaLang/javaLangBoolean.go b/src/gfunction/javaLang/javaLangBoolean.go index 64ef35be..7f843600 100644 --- a/src/gfunction/javaLang/javaLangBoolean.go +++ b/src/gfunction/javaLang/javaLangBoolean.go @@ -152,6 +152,12 @@ func booleanClinit(_ []interface{}) interface{} { Value: k.Data.ClassObject, }) + // Initialize static references for Boolean.TRUE and Boolean.FALSE + obj := object.MakeOneFieldObject(types.ClassNameBigBoolean, "value", types.Bool, types.JavaBoolFalse) + _ = statics.AddStatic("java/lang/Boolean.FALSE", statics.Static{Type: types.Ref, Value: obj}) + obj = object.MakeOneFieldObject(types.ClassNameBigBoolean, "value", types.Bool, types.JavaBoolTrue) + _ = statics.AddStatic("java/lang/Boolean.TRUE", statics.Static{Type: types.Ref, Value: obj}) + return nil } @@ -190,11 +196,6 @@ func booleanClinit(_ []interface{}) interface{} { } } - // Initialize static references for Boolean.TRUE and Boolean.FALSE - obj := object.MakeOneFieldObject(className, "value", types.Bool, types.JavaBoolFalse) - _ = statics.AddStatic("java/lang/Boolean.FALSE", statics.Static{Type: types.Ref, Value: obj}) - obj = object.MakeOneFieldObject(className, "value", types.Bool, types.JavaBoolTrue) - _ = statics.AddStatic("java/lang/Boolean.TRUE", statics.Static{Type: types.Ref, Value: obj}) return nil */ diff --git a/src/types/constants.go b/src/types/constants.go index 0e6ce813..5b30e99f 100644 --- a/src/types/constants.go +++ b/src/types/constants.go @@ -35,6 +35,7 @@ var EmptyString = "" var NullString = "null" // Other useful class names in alpha order +var ClassNameBigBoolean = "java/math/Boolean" var ClassNameBigDecimal = "java/math/BigDecimal" var ClassNameBigInteger = "java/math/BigInteger" var ClassNameJavaLangClass = "java/lang/Class" From 3894fa08a15c4e9edcc5b2980367b57dd2818f61 Mon Sep 17 00:00:00 2001 From: Richard Elkins Date: Mon, 6 Apr 2026 10:47:23 -0500 Subject: [PATCH 2/2] JACOBIN-887 patch (oops) --- src/gfunction/javaLang/javaLangBoolean.go | 4 ++-- src/types/constants.go | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gfunction/javaLang/javaLangBoolean.go b/src/gfunction/javaLang/javaLangBoolean.go index 7f843600..42ad4484 100644 --- a/src/gfunction/javaLang/javaLangBoolean.go +++ b/src/gfunction/javaLang/javaLangBoolean.go @@ -153,9 +153,9 @@ func booleanClinit(_ []interface{}) interface{} { }) // Initialize static references for Boolean.TRUE and Boolean.FALSE - obj := object.MakeOneFieldObject(types.ClassNameBigBoolean, "value", types.Bool, types.JavaBoolFalse) + obj := object.MakeOneFieldObject(types.ClassNameBoolean, "value", types.Bool, types.JavaBoolFalse) _ = statics.AddStatic("java/lang/Boolean.FALSE", statics.Static{Type: types.Ref, Value: obj}) - obj = object.MakeOneFieldObject(types.ClassNameBigBoolean, "value", types.Bool, types.JavaBoolTrue) + obj = object.MakeOneFieldObject(types.ClassNameBoolean, "value", types.Bool, types.JavaBoolTrue) _ = statics.AddStatic("java/lang/Boolean.TRUE", statics.Static{Type: types.Ref, Value: obj}) return nil diff --git a/src/types/constants.go b/src/types/constants.go index 5b30e99f..5b24fbdb 100644 --- a/src/types/constants.go +++ b/src/types/constants.go @@ -35,7 +35,7 @@ var EmptyString = "" var NullString = "null" // Other useful class names in alpha order -var ClassNameBigBoolean = "java/math/Boolean" +var ClassNameBoolean = "java/lang/Boolean" var ClassNameBigDecimal = "java/math/BigDecimal" var ClassNameBigInteger = "java/math/BigInteger" var ClassNameJavaLangClass = "java/lang/Class"