From fa579e1b403315558abc0178cd84c31b5e02b37e Mon Sep 17 00:00:00 2001 From: Tim203 Date: Sat, 13 Jan 2024 14:12:08 +0100 Subject: [PATCH] Add L to long values to prevent them from being interpreted as int --- src/main/java/com/squareup/javapoet/AnnotationSpec.java | 3 +++ src/test/java/com/squareup/javapoet/AnnotationSpecTest.java | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/squareup/javapoet/AnnotationSpec.java b/src/main/java/com/squareup/javapoet/AnnotationSpec.java index 918c4839e..974d72b69 100644 --- a/src/main/java/com/squareup/javapoet/AnnotationSpec.java +++ b/src/main/java/com/squareup/javapoet/AnnotationSpec.java @@ -232,6 +232,9 @@ Builder addMemberForValue(String memberName, Object value) { if (value instanceof Float) { return addMember(memberName, "$Lf", value); } + if (value instanceof Long) { + return addMember(memberName, "$LL", value); + } if (value instanceof Character) { return addMember(memberName, "'$L'", characterLiteralWithoutSingleQuotes((char) value)); } diff --git a/src/test/java/com/squareup/javapoet/AnnotationSpecTest.java b/src/test/java/com/squareup/javapoet/AnnotationSpecTest.java index 97c1e6e90..15afeeb11 100644 --- a/src/test/java/com/squareup/javapoet/AnnotationSpecTest.java +++ b/src/test/java/com/squareup/javapoet/AnnotationSpecTest.java @@ -59,7 +59,7 @@ public enum Breakfast { int c() default 7; - long d() default 8; + long d() default 12345678910L; float e() default 9.0f; @@ -313,7 +313,7 @@ public class IsAnnotated { + " a = 5,\n" + " b = 6,\n" + " c = 7,\n" - + " d = 8,\n" + + " d = 12345678910L,\n" + " e = 9.0f,\n" + " f = 11.1,\n" + " g = {\n"