How to report a problem with the Visual C toolset or documentation. 24 minutes to read. Contributors. In this article If you encounter problems with the Microsoft Visual C compiler, linker, or other tools and libraries, we want to know about them. If the issue is in our documentation, we want to know about that, too. How to report a C toolset issue The best way to let us know about a problem is to send us a report that includes a description of the problem you've encountered, details about how you're building your program, and a repro, a complete test case we can use to reproduce the problem on our own machines.
This information lets us quickly verify that the problem exists in our code and is not local to your environment, to determine whether it affects other versions of the compiler, and to diagnose its cause. In the sections below, you'll read about what makes a good report, how to generate a repro for the kind of issue you've found, and how to send your report to the product team. Your reports are important to us and to other developers like you.
Thank you for helping us improve Visual C! How to prepare your report Creating a high-quality report is important because it is very difficult to reproduce the problem you encountered on our own machines without complete information. The better your report is, the more effectively we are able recreate and diagnose the problem. At a minimum, your report should contain. The full version information of the toolset you're using.
This function resolves the problem of bad quality of a image at ImageView: public static Bitmap getBitmapFromResources(Resources resources, int resImage).
The full cl.exe command line used to build your code. A detailed description of the problem you encountered.
A repro: a complete, simplified, self-contained source code example that demonstrates the problem. Read on to learn more about the specific information we need and where you can find it, and how to create a good repro. The toolset version We need the full version information and the target architecture of the toolset that causes the problem so that we can test your repro against the same toolset on our machines. If we can reproduce the problem, this information also gives us a starting point to investigate which other versions of the toolset exhibit the same problem. To report the full version of the compiler you're using. Open the Developer Command Prompt that matches the Visual Studio version and configuration architecture used to build your project. For example, if you build by using Visual Studio 2017 on x64 for x64 targets, choose x64 Native Tools Command Prompt for VS 2017.
For more information, see. In the developer command prompt console window, enter the command cl /Bv.
The output should look similar to this: C: Users username Sourcecl /Bv Microsoft (R) C/C Optimizing Compiler Version 8.1 for x86 Copyright (C) Microsoft Corporation. All rights reserved. Note The online compiler websites are not affiliated with Microsoft. Many online compiler websites are run as personal projects, and some of these sites may not be available when you read this, but a search should find others you can use. Problems in the compiler, linker, and in the libraries, tend to show themselves in particular ways. The kind of problem you encounter will determine what kind of repro you should include in your report. Without an appropriate repro, we have nothing to investigate.
Here are a few of the kinds of issues that you may see, and instructions for generating the kinds of repros you should use to report each kind of problems. Frontend (parser) crash Frontend crashes occur during the parsing phase of the compiler. Typically, the compiler will emit and reference the source code file and line number on which the error occurred; it will often mention a file msc1.cpp, but you can ignore this detail.
For this kind of crash, please provide a. Here's example compiler output for this kind of crash: SandBoxHost.cpp d: o dev search foundation common tools sandbox managed managed.h(929): fatal error C1001: An internal error has occurred in the compiler. (compiler file 'msc1.cpp', line 1369) To work around this problem, try simplifying or changing the program near the locations listed above. Please choose the Technical Support command on the Visual C Help menu, or open the Technical Support help file for more information d: o dev search foundation common tools sandbox managed managed.h(929): note: This diagnostic occurred in the compiler generated function 'void Microsoft::Ceres::Common::Tools::Sandbox::SandBoxedProcess::Dispose(bool)' Internal Compiler Error in d: o dev otools bin x64 cl.exe. You will be prompted to send an error report to Microsoft later.
INTERNAL COMPILER ERROR in 'd: o dev otools bin x64 cl.exe' Please choose the Technical Support command on the Visual C Help menu, or open the Technical Support help file for more information Backend (code generation) crash Backend crashes occur during the code generation phase of the compiler. Typically, the compiler will emit, and might not reference the source code file and line number associated with the problem; it will often mention the file compiler utc src p2 main.c, but you can ignore this detail. For this kind of crash, please provide a if you are using Link-Time Code Generation (LTCG), enabled by the /GL command-line argument to cl.exe. If not, please provide a instead.
Here's example compiler output for a backend crash in which LTCG is not used. If your compiler output looks like this you should provide a.
Repro.cpp officefile public tadg vc14 comperror repro.cpp(13): fatal error C1001: An internal error has occurred in the compiler. (compiler file 'f: dd vctools compiler utc src p2 main.c', line 230) To work around this problem, try simplifying or changing the program near the locations listed above.
Please choose the Technical Support command on the Visual C Help menu, or open the Technical Support help file for more information INTERNAL COMPILER ERROR in 'C: Program Files (x86) Microsoft Visual Studio 14.0 VC BIN cl.exe' Please choose the Technical Support command on the Visual C Help menu, or open the Technical Support help file for more information If the line that begins with INTERNAL COMPILER ERROR mentions link.exe, rather than cl.exe, LTCG was enabled and you should provide a. If its not clear whether LTCG was enabled from the compiler error message, you may need to examine the command line arguments that you copied from your build log in a previous step for the /GL command-line argument. Linker crash Linker crashes occur during the linking phase, after the compiler has run.
Typically, the linker will emit. Note If the output mentions C1001 or involves Link-Time Code Generation, refer to instead for more information. For this kind of crash, please provide a. Here's example compiler output for this kind of crash.
Note Preprocessed repros are not as useful for problems that might be the result of bugs in our standard library implementation, because we will often want to substitute our latest, in-progress implementation to see whether we've already fixed the problem. In this case, don't preprocess the repro, and if you can't reduce the problem to a single source file, package your code into a.zip file or similar, or consider using an IDE project repro. For more information, see. To preprocess a source code file.
Capture the command line arguments used to build your repro, as described in. Open the Developer Command Prompt that matches the Visual Studio version and configuration architecture used to build your project. Change to the directory that contains your repro project. In the developer command prompt console window, enter the command cl /P arguments filename.cpp, where arguments is the list of arguments captured above, and filename.cpp is the name of your repro source file. This command replicates the command line used for the repro, but stops the compilation after the preprocessor pass, and outputs the preprocessed source code to filename.i. If you are preprocessing a C/CX source code file, or you are using the C Modules feature, some additional steps are required.
For more information, see the sections below. After you have generated the preprocessed file, its a good idea to make sure that the problem still repros using the preprocessed file. To confirm that the error still repros with the preprocessed file. In the developer command prompt console window, enter the command cl arguments /TP filename.i to tell cl.exe to compile the preprocessed file as a C source file, where arguments is the list of arguments captured above, but with any /D and /I arguments removed (because they have already been included in the preprocessed file); and where filename.i is the name of your preprocessed file. Confirm that the problem is reproduced. Finally, attach the preprocessed repro filename.i to your report. Preprocessed C/CX WinRT/UWP code repros If you're using C/CX to build your executable, there are some extra steps required to create and validate a preprocessed repro.
To preprocess C/CX source code. Create a preprocessed source file as described in. Search the generated filename.i file for #using directives.
Make a list of all of the referenced files. Leave out any Windows.winmd files, platform.winmd files, and mscorlib.dll.
To prepare to validate that the preprocessed file still reproduces the problem,. Create a new directory for the preprocessed file and copy it to the new directory. Copy the.winmd files from your #using list to the new directory. Create an empty vccorlib.h file in the new directory. Edit the preprocessed file to remove any #using directives for mscorlib.dll. Edit the preprocessed file to change any absolute paths to just the bare filenames for the copied.winmd files. Confirm that the preprocessed file still reproduces the problem, as above.
Preprocessed C Modules repros If you're using the Modules feature of the C compiler, there are some different steps required to create and validate a preprocessed repro. To preprocess a source code file that uses a module. Capture the command line arguments used to build your repro, as described in.
Open the Developer Command Prompt that matches the Visual Studio version and configuration architecture used to build your project. Change to the directory that contains your repro project. In the developer command prompt console window, enter the command cl /P arguments filename.cpp, where arguments is the list of arguments captured above, and filename.cpp is the name of the source file that consumes the module. Change to the directory that contains the repro project that built the module interface (the.ifc output). Capture the command line arguments used to build your module interface. In the developer command prompt console window, enter the command cl /P arguments modulename.ixx, where arguments is the list of arguments captured above, and modulename.ixx is the name of the file that creates the module interface.
After you have generated the preprocessed files, its a good idea to make sure the problem still repros using the preprocessed file. To confirm that the error still repros with the preprocessed file. In the developer console window, change back to the directory that contains your repro project. Enter the command cl arguments /TP filename.i as above, to compile the preprocessed file as if it were a C source file. Confirm that the problem is still reproduced by the preprocessed file.
Finally, attach the preprocessed repro files ( filename.i and modulename.i) along with the.ifc output to your report. Link repros A link repro is the linker-generated contents of a directory specified by the linkrepro environment variable. It contains build artifacts that collectively demonstrate a problem that occurs at link time, such as a backend crash involving Link-Time Code Generation (LTCG), or a linker crash. These build artifacts are the ones needed as linker input so that the problem can be reproduced. A link repro can be created easily by using this environment variable to enable the built-in repro generation capability of the linker.
To generate a link repro. Capture the command line arguments used to build your repro, as described in. Open the Developer Command Prompt that matches the Visual Studio version and configuration architecture used to build your project. In the developer command prompt console window, change to the directory that contains your repro project. Enter mkdir linkrepro to create a directory for the link repro. Enter the command set linkrepro=linkrepro to set the linkrepro environment variable to the directory you just created. If your build is run from a different directory, as is often the case for more complex projects, then set linkrepro to the full path to your linkrepro directory instead.
To build the repro project in Visual Studio, in the developer command prompt console window, enter the command devenv. This ensures that the value of the linkrepro environment variable is visible to Visual Studio. To build the project at the command line, use the command line arguments captured above to duplicate the repro build. Build your repro project, and confirm that the expected problem has occurred. Close Visual Studio if you used it to perform the build.
In the developer command prompt console window, enter the command set linkrepro= to clear the linkrepro environment variable. Finally, package the repro by compressing the entire linkrepro directory into a.zip file or similar and attach it to your report. Other repros If you can't reduce the problem to a single source file or preprocessed repro, and the problem does not require a link repro, we can investigate an IDE project. All the guidance on how to create a good repro still applies; the code should be minimal and self-contained, the problem should occur in our most recent tools, and if relevant, the problem should not be seen in other compilers. Create your repro as a minimal IDE project, then package it by compressing the entire directory structure into a.zip file or similar and attach it to your report. Ways to send your report There are a couple of good ways to get your report to us.
You can use Visual Studio's built-in, or the pages. You can also get directly to our Developer Community pages by choosing the Product feedback button at the bottom of this page. The choice depends on whether you want to use the tools built into the IDE for capturing screenshots and organizing your report for posting on the Developer Community pages, or if you'd prefer to use the website directly.
Note Regardless of how you submit your report, Microsoft respects your privacy. Microsoft is committed to compliance with all data privacy laws and regulations. For information about how we treat the data that you send us, see the. Use the Report a Problem tool The Report a Problem tool in Visual Studio is a way for Visual Studio users to report a variety of problems with just a few clicks. It provides a simple form that you can use to specify detailed information about the problem you've encountered and then submit your report without ever leaving the IDE. Reporting your problem through the Report a Problem tool is easy and convenient from the IDE. You can access it from the title bar by choosing the Send Feedback icon next to the Quick Launch search box, or you can find it on the menu bar in Help Send Feedback Report a Problem.
When you choose to report a problem, first search the Developer Community for similar problems. If your problem has been reported before, upvote the topic and add comments with additional specifics. If you don't see a similar problem, choose the Report new problem button at the bottom of the Visual Studio Feedback dialog and follow the steps to report your problem.
Use the Visual Studio Developer Community pages The Visual Studio Developer Community pages are another convenient way to report problems and find solutions for Visual Studio and the C compiler, tools, and libraries. There are specific Developer Community pages for,. Beneath these tabs, near the top of each page, is a search box you can use to find posts or topics that report problems similar to yours. You may find that a solution or other useful information related to your problem is already available. If someone has reported the same problem before, please upvote and comment on that topic rather than create a new problem report. To comment, vote, or report a new problem, you may be asked to sign in to your Visual Studio account and to agree to give the Developer Community app access to your profile. For issues with the C compiler, linker, and other tools and libraries, use the page.
If you search for your problem, and it hasn't been reported before, choose the Report a problem button next to the search box at the top of the page. You can include your repro code and command line, screen shots, links to related discussions, and any other information you think is relevant and useful. Tip For other kinds of problems you might encounter in Visual Studio that are not related to the C toolset (For example, UI issues, broken IDE functionality, or general crashes), use the Report a Problem tool in the IDE.
This is the best choice, due to its screenshot capabilities and its ability to record UI actions that lead to the problem you've encountered. These kinds of errors can also be looked up on the site. For more information, see. Reports and privacy By default, all information in reports and any comments and replies are publicly visible. Normally, this is a benefit, because it allows the entire community to see the issues, solutions, and workarounds other users have found.
However, if you're concerned about making your data or identity public, for privacy or intellectual property reasons, you have options. If you are concerned about revealing your identity, that does not disclose any details about you. Use this account to create your report.
Don't put anything you want to keep private in the title or content of the initial report, which is public. Instead, note that you will send details privately in a separate comment. To make sure that your report is directed to the right people, include cppcompiler in the topic list of your problem report. Once the problem report is created, it's now possible to specify who can see your replies and attachments. To create a problem report for private information. In the report you created, choose Add comment to create your private description of the problem.
In the reply editor, use the dropdown control below the Submit and Cancel buttons to specify the audience for your reply. Only the people you specify can see these private replies and any images, links, or code you include in them. Choose Viewable by moderators and the original poster to limit visibility to Microsoft employees and yourself. Add the description and any other information, images, and file attachments needed for your repro. Choose the Submit button to send this information privately. Note that there is a 2GB limit on attached files, and a maximum of 10 files.
For any larger uploads, please request an upload URL in your private comment. Any replies under this comment have the same restricted visibility you specified.
This is true even if the dropdown control on replies does not show the restricted visibility status correctly. To maintain your privacy and keep your sensitive information out of public view, please take care to keep all interaction with Microsoft to replies under this restricted comment. Replies to other comments may cause you to accidentally disclose sensitive information.
How to report a C documentation issue We use GitHub issues to track problems reported in our documentation. You can now create GitHub issues directly from a content page, which enables you interact in a much richer way with writers and product teams. If you see an issue with a document, a bad code sample, a confusing explanation, a critical omission, or even just a typo, you can easily let us know.
Scroll to the bottom of the page and select Sign in to give documentation feedback. You'll need to create a GitHub account if you don't have one already, but once you do, you can see all of our documentation issues, their status, and get notifications when changes are made for the issue you reported. For more information, see. When you create a documentation issue on GitHub by using the documentation feedback button, the issue is automatically filled in with some information about the page you created the issue on, so we know where the problem is located.
Please don't edit this information. Just append the details about what's wrong and, if you like, a suggested fix., so if you'd like to actually make a fix and propose it yourself, you can do that. For more information about how you can contribute to our documentation, see our on GitHub.
![]()
I cannot understand why they did not include a full SSD configuration. In my day to day usage of this computer, the hard drive really slows down applications' loading. That is my only gripe of this computer. Wasting 15 more seconds loading heavy applications each time vs. A real SSD really consumes a lot of time when you combine all the time lost in the long run. I would pay for a full SSD configuration, but there is not even one for me to buy.
The screen should also be able to be pushed all the way down to a zero angle instead of a 20 degree angle. The PC seems capable of loading 64 GB of RAM (with two slots not used). So why not including one? They pulled this driver-enabled feature on models 5 years ago, only to re-add it after complaints, like this one. You cannot record audio from what's playing on the Studio.
![]()
The only work around is to buy an external sound card, and tie up the few usb ports the machine has. Microsoft is insidiously obtuse.
You say this is for Creators? Think about these things before you click buy.
Try to make a demo project with audio without that feature. It's hypocrisy too. They added screen capture for stealing artwork IP, but audio, oh no, that's different. Also, the SD card on mine stopped working once the CU update installed itself.
Another broken feature. The price of ssd is cheap.
500GB, 1TB, 2TB m.2 nvme disks should have been your only thought when designing this, hybrid drives are seriously bad. 960 Pro or Evo ssd was probably too late for this in design process, but if you had started the design with 950 you could have transitioned to the cheaper better 960 now. Nvidia 965m is a dog and the 980m is meh compared to the new 1080, even the 1060 is great, would be well worth the effort to refresh this soon. Why design something this expensive as a flagship product with such obvious bottlenecks? True innovations are there, but no one should have a bad taste of frustration in their mouth like this from a flagship product.
A head scratcher. Will this line last long enough for the surface dial to be implemented into more than just a few apps? Maybe 3.5 stars. The screen is simply stunning, and the hinge works beautifully. Palm rejection has been flawless for me. The screen is the most revolutionary thing I've seen on a computer since, well, 1984. But it's horribly marred by simply stupid hardware decisions that aren't deserving of being in the same machine as this screen.
The hybrid drive is just slow. Not bad much of the time, but for example when you're editing large photos, it just gets stuck for long periods of time while the drive catches up. Frustrating to move from a four-year old computer that was so much faster but cost less than one-third of the price. The noise from the fan is mildly annoying, the keyboard is (for me) uncomfortable, I/O ports are weak, crashes are surprisingly common, but it would still be 5 stars if it weren't so slow. There's a Youtube video of the Microsoft design team talking about how a user of this device shouldn't have to even think about the hardware underneath.
And you shouldn't have to. But due to some bizarre cost-saving decisions, you do. I just purchased a Microsoft Surface Studio to replace my old work station. It is amazing and I love using it. HOWEVER, I'm debating on keeping it because there is no pen tilt sensitivity.
Is this something that can be added later? Is it something Microsoft is considering addressing? I would totally buy a separate pen if that solved the issue.
I have less than 15 days to decide if I'm keeping it or not. I do a lot of digital drawing/painting. Not having this feature is big deal. Pen tilt might be a deal breaker for me. Other things I don't like that aren't necessarily deal breakers: Right click: Having to press the right click button while hovering, then click the screen with the pen nib. Right click should just be right click.
Illustrator blob brush: Doesn't work correctly. Ideally, more pressure = more ink. The flow starts as a huge blob and THEN pressure sensitivity kicks in. 2 Things of note: This machine contains a gaming graphics card which some applications can use, but a large number of professional design applications cannot. AutoCAD Inventor & SOLIDWORKS are 2 applications that have said this computer does not work well with their applications because it doesn't meet their minimum GPU specifications (Raster graphics card vs vector graphics card). Also Microsoft stop posting bogus reviews we can tell when you post your own 5 star comments you're somewhat obvious.
As a small business owner and engineer/ designer I would expect more from Microsoft's marketing team before posting capabilities that are flat out wrong on this page. I'd love to hear from Microsoft on this issue.
UPDATE- I was urged to report my cracked screen problem in detail to [email protected], and was assured that this was an extremely rare event, and should not happen. They promptly sent someone to replace my Surface Studio and make sure I got the new one set up! Thanks, Surface Team! I noticed that it bogs down a bit when doing disk-intensive work like copying lots of files (moving photos from an SD card). I may try replacing the hybrid disk system with some SSDs.ORIGINAL- I love my Studio, but last night I tilted the monitor up from about 45 degrees to about 75 degrees using only one hand on the left side, causing the screen to crack from the lower left corner to the top center. This is not covered by the warranty, and a replacement will cost about $900.
Be sure to use both hands when tilting your monitor! And get Microsoft Complete coverage from Surface Studio Customer Support within 45 days of purchase. The display still makes my friends jealous.
Comments are closed.
|
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |