Skip to content

Const marked in wrong range in a Lombok class #791

Open
@ofeki-neosec

Description

@ofeki-neosec

Hello,
When indexing https://github.com/apitable/apitable/tree/develop I ran into a weird scenario.
The file application/src/main/java/com/apitable/shared/cache/bean/#UserDto.java contains the const TIME_SIMPLE_PATTERN in two places within the overall class:

    /**
     * # time.
     */
    @JsonFormat(pattern = TIME_SIMPLE_PATTERN)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    private LocalDateTime #Time;

    /**
     * last login time.
     */
    @JsonFormat(pattern = TIME_SIMPLE_PATTERN)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    private LocalDateTime lastLoginTime;

However, the SCIP indexer (v0.10.4) marks both occurrences of this const under the @Data text in the annotation above the class. This means that if we're looking at the line range where the consts should appear, we see anything but the consts:

739 = {Occurrence} range: 98  range: 5  range: 18 symbol: "semanticdb maven maven/com.fasterxml.jackson.core/jackson-databind 2.15.3 com/fasterxml/jackson/databind/annotation/JsonSerialize#" 
740 = {Occurrence} range: 98  range: 19 range: 24  symbol: "semanticdb maven maven/com.fasterxml.jackson.core/jackson-databind 2.15.3 com/fasterxml/jackson/databind/annotation/JsonSerialize#using()."  
741 = {Occurrence} range: 98  range: 27 range: 50  symbol: "semanticdb maven maven/com.fasterxml.jackson.datatype/jackson-datatype-jsr310 2.15.3 com/fasterxml/jackson/datatype/jsr310/ser/LocalDateTimeSerializer#" 
742 = {Occurrence} range: 98  range: 51 range: 56  symbol: "semanticdb maven maven/com.fasterxml.jackson.datatype/jackson-datatype-jsr310 2.15.3 com/fasterxml/jackson/datatype/jsr310/ser/LocalDateTimeSerializer#class." 
743 = {Occurrence} range: 99  range: 12 range: 25  symbol: "semanticdb maven jdk 17 java/time/LocalDateTime#"  
744 = {Occurrence} range: 99  range: 26 range: 36  symbol: "semanticdb maven . . com/apitable/shared/cache/bean/#UserDto##Time."  symbol_roles: 1 
745 = {Occurrence} range: 99  range: 26 range: 36  symbol: "local 10"  symbol_roles: 1 
746 = {Occurrence} range: 99  range: 26 range: 37  symbol: "semanticdb maven jdk 17 java/lang/SuppressWarnings#" 
747 = {Occurrence} range: 99  range: 26 range: 37  symbol: "semanticdb maven . . java/lang/" 
748 = {Occurrence} range: 99  range: 26 range: 37  symbol: "semanticdb maven . . java/"  
749 = {Occurrence} range: 99  range: 26 range: 37  symbol: "semanticdb maven jdk 17 java/time/LocalDateTime#"  
750 = {Occurrence} range: 99  range: 26 range: 37  symbol: "semanticdb maven . . com/apitable/shared/cache/bean/#UserDto##Time."  
751 = {Occurrence} range: 99  range: 37 range: 102 range: 3 symbol: "semanticdb maven . . com/apitable/shared/cache/bean/#UserDto#get#Time()."  symbol_roles: 1 
752 = {Occurrence} range: 106 range: 5 range: 18  symbol: "semanticdb maven maven/com.fasterxml.jackson.core/jackson-databind 2.15.3 com/fasterxml/jackson/databind/annotation/JsonSerialize#"  
753 = {Occurrence} range: 106 range: 19  range: 24 symbol: "semanticdb maven maven/com.fasterxml.jackson.core/jackson-databind 2.15.3 com/fasterxml/jackson/databind/annotation/JsonSerialize#using()." 
754 = {Occurrence} range: 106 range: 27  range: 50 symbol: "semanticdb maven maven/com.fasterxml.jackson.datatype/jackson-datatype-jsr310 2.15.3 com/fasterxml/jackson/datatype/jsr310/ser/LocalDateTimeSerializer#"  
755 = {Occurrence} range: 106 range: 51  range: 56 symbol: "semanticdb maven maven/com.fasterxml.jackson.datatype/jackson-datatype-jsr310 2.15.3 com/fasterxml/jackson/datatype/jsr310/ser/LocalDateTimeSerializer#class."  
756 = {Occurrence} range: 107 range: 12  range: 25 symbol: "semanticdb maven jdk 17 java/time/LocalDateTime#" 
757 = {Occurrence} range: 107 range: 26  range: 39 symbol: "semanticdb maven . . com/apitable/shared/cache/bean/#UserDto#lastLoginTime."  symbol_roles: 1 
758 = {Occurrence} range: 107 range: 26  range: 39 symbol: "local 11" symbol_roles: 1  
759 = {Occurrence} range: 107 range: 26  range: 40 symbol: "semanticdb maven jdk 17 java/lang/SuppressWarnings#"  
760 = {Occurrence} range: 107 range: 26  range: 40 symbol: "semanticdb maven . . java/lang/"  
761 = {Occurrence} range: 107 range: 26  range: 40 symbol: "semanticdb maven . . java/" 
762 = {Occurrence} range: 107 range: 26  range: 40 symbol: "semanticdb maven jdk 17 java/time/LocalDateTime#" 
763 = {Occurrence} range: 107 range: 26  range: 40 symbol: "semanticdb maven . . com/apitable/shared/cache/bean/#UserDto#lastLoginTime."  
764 = {Occurrence} range: 107 range: 40  range: 110  range: 6  symbol: "semanticdb maven . . com/apitable/shared/cache/bean/#UserDto#getLastLoginTime()."  symbol_roles: 1 

The consts are here:

051 = {Occurrence} range: 38  range: 0  range: 5  symbol: "semanticdb maven . . com/apitable/shared/constants/DateFormatConstants#TIME_SIMPLE_PATTERN." 
058 = {Occurrence} range: 38  range: 0  range: 5  symbol: "semanticdb maven . . com/apitable/shared/constants/DateFormatConstants#TIME_SIMPLE_PATTERN." 

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions