Visual Studio 2015

Welcome to the Visual Studio 2015 UserVoice site. This site is for suggestions and ideas for the IDE of Visual Studio (Community, Professional or Enterprise). You can also add suggestions for Team Services or Visual Studio Code. Or go to Connect to file a bug. Note that Application Insights has moved to its own UserVoice forum.

We also added an Announcements section where we will be posting special opportunities for you to participate in.

Read about current UserVoice statuses and their definitions in our article “What Does the Status of My Feedback Mean?” article.

We look forward to hearing from you!

The Visual Studio team
Terms of Service and Privacy Policy

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. Microsoft should make MFC open source

    MFC is still used in several C++ legacy projects (including very large enterprise applications) still active in maintenance mode.

    With MFC open source, the community and Microsoft could submit new code and patches while Microsoft could monitor the quality of the submitted code and support an official branch.

    Would something similar to open-sourcing ASP.NET work fine for MFC?

    Scott Guthrie sums up an interesting approach when he announced the open-sourcing of ASP.NET MVC, Web API and Razor:

    http://weblogs.asp.net/scottgu/asp-net-mvc-web-api-razor-and-open-source

    “[…] Doing so will enable a more open development model where everyone in the community will be able to engage and provide…

    76 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      under review  ·  8 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
    • confirm before rebuild

      Please make Visual Studio prompt to confirm before rebuilding an entire project. "Build" and "Rebuild" are right next to each other in the context menu and it's so easy to accidentally click Rebuild instead of Build and end up killing a bunch of time waiting for a large project to build from scratch. This should be SO easy for you guys to implement; very little of your time could save the rest of the industry thousands of man-hours. Please!

      69 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        6 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
      • support compiling with "utf-8 without bom".

        I am in trouble when developing, because there are many tools that do not support the bom.

        I would be grateful, if you could add the compiler option that you can set default language which used in compiling.

        66 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
        • Add AddressSanitizer a la Clang.

          Basically instrument allocations, reads and writes to catch memory scribbles at word granularity.

          64 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            5 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
          • Official opening of WTL support

            Total is well known, WTL based on ATL, it was an excellent Win32 application development framework. Relative to the MFC,WTL a more lightweight, high efficiency, the links generated by the small size of the program. My only regret is that while WTL is initially within Visual Studio release, WTL is not supported by the Visual Studio official. I think, Microsoft to retain developer, especially C++ developer, in UI framework Shang does needs efforts, MFC bloated and old, ATL does not too for GUI program, pure SDK of program complex degrees too high, most manufacturers in using Visual Studio using C++…

            58 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              3 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
            • CPU dispatch in C++

              Hello,

              I was wondering when Microsoft will implement a CPU dispatch mechanism in Visual C++ like what Intel, GCC, Clang have done, as a __declspec or a pragma. It appears that it is still not the case in VS2012 U1.

              This would be very useful now AVX processors are roaming. We could write different functions optimized for IA32/SSE2/AVX (or compile with different arch) and a single build (EXE or DLL) will run optimized on several CPUs.

              Thank you.

              - D.

              56 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                3 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
              • Improve CMake support & integration

                In general, I'd like to see improved CMake support (e.g. Edit & Continue doesn't work out of the box, profiling in x64 requires adjustments, ...) for C++ projects. Also integration with CTest could be improved.

                I would also very much like to be able to create the new VS2015 Android project in CMake, generate a VS solution file and then build & debug it, instead of only using a sln.

                Only like that the code can be fully cross-platform compatible!

                53 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                • Improve IntelliSense tooltip for make_shared/make_unique/emplace_back/etc

                  With the new C++11/14 support, and use of all the perfect forwarding functions, the tooltip with help for parameters to functions have gone lost. Normally while writing a call to a constructor, you would get to see what parameters it takes, and what type they are, etc. Now all you get is an info saying "_Types &&... _Args", or so. IntelliSense should really either have an internal list of functions to treat special, or even better, have a pragma, attribute, or special comment that can be placed at a function to mark it as a perfect forwarding proxy. Maybe something…

                  51 votes
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                  • Have C++ IntelliSense parser support GCC extensions, MinGW, and Cygwin toolchains

                    The IntelliSense parser for Visual C++ is separate from MSVC compiler, and will throw out IntelliSense errors that may or may not be accurate with actual C/C++ code errors.

                    This is very annoying when it comes to IntelliSense parsing GCC standard headers and libraries for MinGW and Cygwin toolchains, when we are using Visual Studio 2015 for Makefile projects.

                    Most of the time, IntelliSense will give 1,200+ errors related to not being able to understand GCC extensions, or GCC-specific codes for MinGW and Cygwin toolchains.

                    I am suggesting to the team to find ways to improve IntelliSense C++ parsing so…

                    44 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                    • Add std::decimal with ISO/IEC TR 24733 decimal floating-point arithmetic

                      The document ISO/IEC TR 24733 specifies extension for the programming language C++ to support decimal floating-point arithmetic. Namely, it defines new type std::decimal.

                      It would be very helpful to have this type provided by the C++ Standard Library shipped with Visual C++.

                      libstdc++ already defines std::decimal:
                      http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-api-4.5/a01127.html

                      42 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →

                        There are technical specifications for Decimal Floating Point:

                        JTC 1.22.24733 Information Technology – Programming Languages Technical
                        Report of Type 2 on Extensions for the programming language C++ to support
                        decimal floating point arithmetic

                        We will take this under review.

                        Eric
                        C++ Team

                      • Improve MFC - add a VisualManager (CMFCVisualManagerWindows) for Windows 8 / 10

                        All developers in the world programming for Windows 8 / 10 with MFC need the new visual style / theme for the dialogs / application / windows / controls / a.s.o. Please add the urgent needed file(s) to the Visual Studio 2015 Update 2.

                        39 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          2 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                        • Support c++11 unique_ptr and shared_ptr with C++/CLI

                          C++11 introduced move and unique_ptr, shared_ptr and weak_ptr. This new types highly improve the productivity and the robustness of C++ code. When we implement wrapper/adapter for the new for C++ code that uses unique_ptr/shared_ptr/weak_ptr we have to somehow return to raw pointers because it is only possible to store raw pointers inside of managed classes.
                          When it is not possible to somehow allow unique_ptr/shared_ptr/weak_ptr as members of managed C++/CLI classes (ref class/struct) my suggestion is to use a similar approach as with gcroot and to provide a wrapper for that pointer types.

                          39 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            4 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                          • Add IntelliTest for C++ native apps

                            I just saw in the VS2015 launch video how IntelliTest works for C# and I would love to see similar functionality for native desktop C++ apps.

                            With tools available like libFuzz from the LLVM project, this would actually hopefully not be as hard as it sounds to add at first glance.

                            Add IntelliTest for C++ native apps

                            36 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                            • C++ code map

                              Add support for C++ code maps!

                              35 votes
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                4 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                              • Interop between the concurrency runtime and the CLR

                                Make code that uses the concurrency runtime interoperate with the CLR. Trying to circumvent the limitation using the PIMPL idiom does not work either.

                                34 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  0 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                • Release more CRT source header files and code.

                                  There are a number of .h and .inc files that are referenced by source files in the CRT source but which are not included in the CRT source code, specifically:
                                  ksamd64.inc
                                  strchr_sse.inc
                                  strrchr_sse.inc
                                  strstr_sse.inc
                                  coresyslibs.h
                                  ehassert.h
                                  ehhooks.h
                                  ehstate.h
                                  internal_safecrt.h
                                  ksarm.h
                                  kxarm.h
                                  nowin.h
                                  pch.h
                                  rtti.h
                                  trnsctrl.h
                                  undname.h
                                  vcver.h
                                  vcwininternls.h
                                  xmm_func.h

                                  Some of them are referenced by name in MSDN articles, e.g. http://msdn.microsoft.com/en-us/library/ff770587%28v=vs.110%29.aspx references rtti.h by name.
                                  It would be nice to have these header files so that when reading the CRT source code one doesn't bump into things that are defined or declared in .h files that you cant then go…

                                  33 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    4 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                  • to rewrite VS and Windows SDK header files appropriately so they don't produce humongous amount of warnings during compilation with /Wall

                                    Whoever is responsible for writing, modifying VS and Windows SDK header files should make appropriate corrections in the code they contain so the header files adhere to good coding practices and therefore compile smoothly. The number of warnings these header files produce during compilation is extremely alarming and it explicitly forces user-code to be clumsy-written. When would we, the users, finally be able to write warning-free code as good coding-practices suggest in about every C++ programming course book on the market? What we have now just doesn't make any sense. Please correct this hideousness and embarrassment ASAP. Thanks.

                                    28 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Have a version of Windows.h that doesn't define macros

                                      From time to time I run into a collision between code and macros defined in Windows.h. The macros cause unintentional expansion of parts of my code or third party code and when they do waste a lot of time in trying to find workarounds.

                                      Please introduce a WindowsWithoutMacros.h that defines the Win32 API, but uses proper C++ functions instead of macros. I'm sure for all the functions ending XXXW or XXXA some inline functions could wrap the dispatching.... well, I'll leave the implementation to you. There must be better ways than the current macro mess.

                                      27 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        4 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                      • Include what you use

                                        https://code.google.com/p/include-what-you-use/
                                        Can we have something like this CLang based tool which will remove unnecessary includes?

                                        24 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          1 comment  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Support rc files in UTF8 encoding

                                          A lot VCS doesn't handle properly UTF16 encoding. Please support rc files in UTF8 encoding in resource compiler rc.exe

                                          22 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            5 comments  ·  Languages - C++  ·  Flag idea as inappropriate…  ·  Admin →
                                          • Don't see your idea?

                                          Feedback and Knowledge Base