Skip to content

Multiroot workspace: Only one folder is tag parsed when each folder is configured with its own compile_commands.json #6383

@ryanpholt

Description

@ryanpholt

See title. I work on a multiroot workspace. If I configure each folder with its own compile_commands.json, then only one folder gets tag parsed. However, if I configure with a single compile_commands.json via the "default" option in the workspace settings, then they all get tag parsed.

Download the repro.

The zip file contains a project structure:

test
|----myWorkspace.code-workspace
|----proj1
|----proj2

$ cd proj1
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=1

Repeat for the other folder:

$ cd proj2
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=1

Open the workspace:

$ code myWorkspace.code-workspace

Look at the C++ logs. You will see something like:

  Folder: /usr/include/ will be indexed
  Folder: /usr/lib/gcc/x86_64-linux-gnu/8/include/ will be indexed
  Folder: /usr/lib/gcc/x86_64-linux-gnu/8/include-fixed/ will be indexed
  Folder: /usr/local/include/ will be indexed
  Folder: /home/ryanholt/test/proj2/include/ will be indexed
  Folder: /home/ryanholt/test/proj2/src/ will be indexed

Note that 'proj1' is not indexed.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions