Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IntelliSense is slow with ranges in clang mode (and gcc mode is giving an error) #9937

Open
sean-mcmanus opened this issue Sep 30, 2022 · 3 comments
Labels
Feature: Configuration An issue related to configuring the extension or IntelliSense investigate: repro This issue's repro steps needs to be investigated/confirmed Language Service performance

Comments

@sean-mcmanus
Copy link
Contributor

    I switched to 1.13.1.  I can confirm that the reported issue is fix.

Now I'm experiencing two more issues with the same "test".

  1. Performance when CTRL+Click on std::view is very poor on my machine. It takes very long to load the IntelliSense data, and then the line that should appears under std::range::view feels to no appear: appears disappears. This feature behaves erratically. This sluggish behavior is present in the Clang configuration. In the GCC configuration the performance is much smoother. IMO
  2. In the GCC configuration now I am seeing this (I haven't noticed this error before):
    image

Originally posted by @Zingam in #9888 (comment)

@sean-mcmanus sean-mcmanus self-assigned this Sep 30, 2022
@sean-mcmanus sean-mcmanus added Language Service performance investigate: repro This issue's repro steps needs to be investigated/confirmed Feature: Configuration An issue related to configuring the extension or IntelliSense labels Sep 30, 2022
@Zingam
Copy link

Zingam commented Sep 30, 2022

And a third complaint in that context. It is really difficult to move the mouse from the red squiggle to click on View Problem. The hover disappears too quickly (at least on Ubuntu 22.04/Wayland/Gnome). It feels like a clicking game, which requires very precise movements.

@sean-mcmanus
Copy link
Contributor Author

@Zingam Your last issue is a VS Code UI issue, so you'd need to file an issue at https://github.com/microsoft/vscode/issues . I have also experienced issues with the hover disappearing when I don't want it to. It's possible there might be an existing issue about it.

@Zingam
Copy link

Zingam commented Oct 7, 2022

I'm using 1.13.2.

I have an interesting observation:

#include <iostream>
#include <ranges>

auto
main() -> int
{
  std::cout << "----> Ranges\n";
  auto const ints = { 0, 1, 2, 3, 4, 5 };
  auto even = [](int i) { return 0 == i % 2; };
  auto square = [](int i) { return i * i; };

  // "pipe" syntax of composing the views:
  for (int i :
       ints | std::views::filter(even) | std::views::transform(square)) {
    std::cout << i << ' ';
  }

  std::cout << "---- END ----" << "\n";
}

Clang mode:
On my machine the hover appears immediately over the top std::cout and all other auto's below. After the // "pipe"... comment the hover takes 1-2 or more seconds (sometimes I can see Loading...) to appear even when over the bottom std::cout. The performance/timing appears to be random.

GCC mode
All hovers appear immediately.

@sean-mcmanus sean-mcmanus removed their assignment May 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature: Configuration An issue related to configuring the extension or IntelliSense investigate: repro This issue's repro steps needs to be investigated/confirmed Language Service performance
Projects
None yet
Development

No branches or pull requests

2 participants