Skip to content

Definitions inside duplicate files are not displayed #402

@tleb

Description

@tleb

For some reason, the kernel_fpu_begin definition in arch/arm64/include/asm/fpu.h isn't indexed. Sources. This was reported to us by email. It doesn't affect only v6.13.7 but I didn't dig deep to list faulty versions.

No operator or CONFIG_ to be found in the line, so it doesn't seem related to the known issues with the current parse_defs_C() implementation.

All ctags I tested (v5.9.0 from Ubuntu, v6.1.0 locally and v6.1.0 from our current Docker container) properly report the definition, so it appears to be a bug elsewhere in the Elixir code.

Locally:
⟩ ctags --version | grep -i copyright
Universal Ctags 6.1.0(v6.1.0), Copyright (C) 2015-2023 Universal Ctags Team
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert

⟩ wget -O fpu.h "https://elixir.bootlin.com/linux/v6.13.7/source/arch/arm64/include/asm/fpu.h?raw=1"

⟩ ctags -x --kinds-c=+p+x fpu.h
__ASM_FPU_H      macro         7 fpu.h            #define __ASM_FPU_H
kernel_fpu_available macro        11 fpu.h            #define kernel_fpu_available() cpu_has_neon()
kernel_fpu_begin macro        12 fpu.h            #define kernel_fpu_begin() kernel_neon_begin()
kernel_fpu_end   macro        13 fpu.h            #define kernel_fpu_end() kernel_neon_end()
Ubuntu Docker container:
⟩ docker run -it --rm ubuntu:jammy /bin/bash
$ apt update -y && apt upgrade -y
$ apt install -y wget universal-ctags

$ ctags --version | grep -i copyright
Universal Ctags 5.9.0, Copyright (C) 2015 Universal Ctags Team
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert

$ wget -O fpu.h "https://elixir.bootlin.com/linux/v6.13.7/source/arch/arm64/include/asm/fpu.h?raw=1"

$ ctags -x --kinds-c=+p+x fpu.h
__ASM_FPU_H      macro         7 fpu.h            #define __ASM_FPU_H
kernel_fpu_available macro        11 fpu.h            #define kernel_fpu_available() cpu_has_neon()
kernel_fpu_begin macro        12 fpu.h            #define kernel_fpu_begin() kernel_neon_begin()
kernel_fpu_end   macro        13 fpu.h            #define kernel_fpu_end() kernel_neon_end()
Current Elixir container:
⟩ git rev-parse --short HEAD
c4f1532
⟩ docker build -t elixir --build-arg ELIXIR_VERSION=$(git rev-parse --short HEAD) -f ./docker/Dockerfile .
⟩ docker run -it --rm --entrypoint /bin/bash elixir

$ ctags --version | grep -i copyright
Universal Ctags 6.1.0(v6.1.0), Copyright (C) 2015-2023 Universal Ctags Team
Exuberant Ctags 5.8, Copyright (C) 1996-2009 Darren Hiebert

$ wget -O fpu.h "https://elixir.bootlin.com/linux/v6.13.7/source/arch/arm64/include/asm/fpu.h?raw=1"

$ ctags -x --kinds-c=+p+x fpu.h
__ASM_FPU_H      macro         7 fpu.h            #define __ASM_FPU_H
kernel_fpu_available macro        11 fpu.h            #define kernel_fpu_available() cpu_has_neon()
kernel_fpu_begin macro        12 fpu.h            #define kernel_fpu_begin() kernel_neon_begin()
kernel_fpu_end   macro        13 fpu.h            #define kernel_fpu_end() kernel_neon_end()

Metadata

Metadata

Assignees

No one assigned

    Labels

    indexingRelated to the index content — missing definitions/references, lexer bugs, new ctags features...

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions