Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.

Symptoms

Symptom 1

When you compile a Microsoft Visual C++ project that has an enumeration declaration at a specific offset, you may receive a C2371, C2556, or C2511 error.

Cause 1

This issue occurs because the compiler incorrectly parses enumeration declaration code that occurs at the end of a file buffer [at file offset (4096 * n)-1].

Symptom 2

You compile a Visual C++ project that has a virtual function call that returns an object and that binds the returned value to a reference. You also have the /clr option enabled. In this situation, you may receive an access violation exception at run time.

Cause 2

This issue occurs because the implicit lifetime extension of a temporary value that is bound to a const reference does not work if the following conditions are true:

  • The project is compiled asĀ /clr.

  • The temporary value is the returned value of a virtual function call or a function call through a function pointer.

Resolution

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem.

If the hotfix is available for download, there is a "Hotfix Download Available" section at the top of this Knowledge Base article. If this section does not appear, submit a request to Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft website:

http://support.microsoft.com/contactus/?ws=supportNote The "Hotfix Download Available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix, you must have Microsoft Visual Studio 2012 Update 4 installed.

Restart requirement

You may have to restart the computer after you install the hotfix if the affected files are not being used at the time of installation. We recommend that you close all Visual Studio 2012-related components before you install the hotfix.

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.

Was this information helpful?

What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×