Visual Studio IDE

Announcement: This forum has been migrated to provide our customers one convenient and responsive system for all feedback. You can now suggest new ideas, browse and vote on existing ideas in the Visual Studio Developer Community. To learn more about the migration to Visual Studio Developer Community please check out the release blog post.

We’d like your suggestions and ideas to help us continuously improve future releases of Visual Studio, so we’ve partnered with UserVoice, a third-party service, to collect your feedback. Please do not send any novel or patentable ideas, copyrighted materials, samples or demos for which you do not want to grant a license to Microsoft.

This site is for feature suggestions; if you need to file a bug, you can visit our Developer Community website to get started.

Note: your use of the portal and your submission is subject to the UserVoice Terms of Service & Privacy Policy and license terms.

We look forward to hearing from you!
- The Visual Studio Team

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Gray out if constexpr block when condition is false at compile time

    Graying out inactive #if and #ifdef blocks exists for a while. Now with adding support for if constexpr it could be a good idea to apply that feature for this too.

    1 vote
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
    • Provide C++ Library Fundamentals TS v2

      MSVC++ 2017 doesn't provide the library fundamentals v2 header files as part of CRT. It would be super awesome if MSVC++ 2019 shipped with this implemented and would be a nice stepping stone on the road towards C++20.

      https://en.cppreference.com/w/cpp/experimental/lib_extensions_2

      As you can see, there's not much there, most of it should be straightforward and simple enough to implement. However, one feature, the std::experimental::source_location class, requires compiler support in the form of a new intrinsic or builtin to populate an instance of this class with the correct metadata at the point of construction. Having a working source_location class as a part…

      1 vote
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
      • Show full macro expansion in QuickInfo Tooltips

        This suggestion is migrated to Developer Community. Please use below link to view the current status.
        https://developercommunity.visualstudio.com/content/idea/351759/show-full-macro-expansion-in-quickinfo-tooltips.html
        The ability to show macro expansions in quickinfo tooltips (https://blogs.msdn.microsoft.com/vcblog/2018/05/07/macro-expansions-in-quick-info-tooltips/) was a great addition.

        The only problem is that it shows only small amount of the expansion, so any macro of substance cannot be visualized.

        I would like to request the ability to show the full macro expansion in the quickinfo tooltips (or perhaps provide some other way of displaying it)

        4 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
        • so your get started with c++ page gets me to a breakpoint, now how the **** do i continue. need a little extra documentation ;)

          so your get started with c++ page gets me to a breakpoint, now how the **** do i continue. need a little extra documentation ;)

          1 vote
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
          • Automatic fix for guideline checker

            clang-tidy provides automatic fixes for some of the checks. On the other hand you have a much larger number of guideline checks. It would be great to have automatic fixes for some of those too. Especially those which require many easy changes (e.g. noexcept/C26439/F.6). Is this planned?

            3 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
            • Restore full functionality of the MFC "Add Function" wizard for adding a function to classes

              The Add Function wizard for adding a new function to a class has been changed in the last release(s) (15.8.x). Previously, when adding a function you could specify, inter alia, the types and variables to the function. This capability has been removed. So, now, the arguments to the function have to be entered manually in both the .h and .cpp files. This was a nice feature and it should not have been removed.

              1 vote
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
              • have a predefined macro for machine name

                It would be helpful to me to have a predefined macro _MACINENAME that would evaluated to the name of the machine being comiled upon.
                Why? Adding a preprocessor definition alters the vcxproj file, which in turn gets flagged a difference to be committed. Often I want to do a test on production code that will never get out into the wild. Having to make the preprocessor definitions is a real pain. if I could
                #if _MACHINEMAME == "MyMachineName"
                it would save a lot of grief.

                1 vote
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                • 1 vote
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                  • Compile header files as C++

                    I would love it if you allowed compilation of C++ header files as cpp files. The alternative - having an empty .cpp file just including the header causes linker warnings, that I would prefer to keep and increases compilation time.
                    Ideally, there would be a possibility to compile a header (like you can compile a C++ file now) and a compile all headers (as your current "build" command).

                    3 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                    • Allow abstract data types and string type to have different colours in the editor (C++)

                      The data type of e.g. Address in:
                      struct Address
                      {
                      };

                      Is the same colour as the data type string in e.g.
                      string Name;

                      It would be nice if they could be different. Both come under C++ User Types in Options > Fonts and Colors > Text Editor.

                      1 vote
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                      • 1 vote
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                        • Fix Code Analysis C6386 warning

                          The attached code should not trigger C6386 because the value of n cannot change while executing the test function.

                          1 vote
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                          • Lettuce should be let's

                            In file

                            C:\Program Files (x86)\Windows Kits\10\Source\10.0.17134.0\ucrt\lowio\write.cpp

                            Line 594 comment says:

                            // Why did we not write anything? Lettuce find out...

                            I think the "lettuce" should be changed to "let's" ?

                            Kind regards ...

                            1 vote
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                            • Profile pause/resume via breakpoint actions or pragma

                              (extension of recurring suggestion that gets the response "check back in a few versions to see if we've done it", last suggested before 2015)

                              As a game developer, the MSVS profiling tools are often rarely useful to me. If I'm investigating something in-game, there's a good chance it's several minutes into app run time.

                              Option 1: Introduce breakpoint actions for start/pause profiling,
                              Option 2: Introduce pragmas:
                              #pragma profiling(pause)
                              #pragma profiling(start)
                              and possibly
                              #pragma profiling(exclude, on/off)

                              3 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                              • 1 vote
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                • VcPkg on linux and VS C++ integration

                                  I am not sure how to solve this issue however it will be great to have a way to integrate VcPkg on linux with VS C++for linux projects. One way might be allowing auto syncing header files with VS C++. this will help intelisense to recognize them and also it will help to compilition. VcPkg is a great way of including open source into Windows solutions and I would like to have the same ability with Linux.

                                  1 vote
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                  • If project is for Linux F1 should search Linux man pages

                                    I have been trying to develop new solutions with VS C++ For Linux however every time I tried to get help for a system function VS directs me to MSDN pages for windows help.

                                    1 vote
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Improve the performance of the precompiled header file

                                      I am using Visual Studio 2017, Version 15.8.1. The creation and use of precompiled header file is full of bugs and issues. When i chose to create the .pch, then i found the .pch is created repeatedly during building. When i chose to use the existing .pch, there are always issues of "can not modify the .pch".

                                      My suggest is that automaticly create the .pch one time and only one time at the beginning of building and use it in the file compiling process. The issue of repeated creation of .pch may be caused by multi-process of compiling.

                                      3 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Add minimum target platform version for C++ desktop apps

                                        There is no good way to specify a target platform version. You have to specify the exact version number of the Windows SDK you want to target, or else you'll get a build error.

                                        <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>

                                        Since Windows releases new SDKs frequently, this is problematic. And it is not possible to author a project file that supports multiple versions. You should add something like,

                                        <MinimumTargetPlatformVersion>10.0</MinimumTargetPlatformVersion>

                                        that will just work with whatever you have installed.

                                        1 vote
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                        • provide a way to exclude specific libraries from LTCG

                                          Given that the VS team have taken licence upon themselves to break binary compatibility in LTCG (causing C1047 errors) on minor upgrades of Visual Studio, say 15.7 to 15.8, a way to exclude specific libraries (which cannot necessarily be rebuilt) from LTCG should be provided.

                                          1 vote
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                          ← Previous 1 3 4 5 27 28

                                          Feedback and Knowledge Base