FIX: Generazione di codice non corretto del computer dalle operazioni membro campo del compilatore per alcuni bit di Visual C++ in Visual Studio 2010

Sintomi

Si consideri lo scenario seguente:

  • Si sviluppa un'applicazione di Microsoft Visual C++ 2010 che utilizza i membri di campo di bit in una struttura in Microsoft Visual Studio 2010.

  • Si attiva un'opzione del compilatore di ottimizzazione per l'applicazione e quindi si compila l'applicazione.

  • Si esegue l'applicazione.

In questo scenario, codice macchina non corretto può essere generato per determinate operazioni membro di campo di bit nella struttura.

Risoluzione

Informazioni sull'hotfix

Un hotfix supportato è ora disponibile da Microsoft. Tuttavia, destinato esclusivamente alla risoluzione del problema descritto in questo articolo. Applicarlo solo ai sistemi in cui si verificano questo problema specifico.

Per risolvere questo problema, contattare il supporto tecnico clienti Microsoft per ottenere l'hotfix. Per un elenco completo dei numeri di telefono supporto tecnico clienti Microsoft e informazioni sui costi dell'assistenza, visitare il seguente sito Web Microsoft:

http://support.microsoft.com/contactus/?ws=supportNota: In casi particolari, le spese normalmente addebitate per le chiamate di supporto potrebbero essere annullate qualora un addetto al supporto Microsoft determina che uno specifico aggiornamento risolverà il problema. I costi di supporto normale verranno applicati per eventuali ulteriori domande e problemi che non dovessero rientrare nello specifico aggiornamento in questione.

Prerequisiti

Per applicare questo hotfix, è necessario disporre di Microsoft Visual Studio 2010 SP1 installato.

Richiesta di riavvio

Non è necessario riavviare il computer dopo avere installato l'hotfix se non vengono utilizzati i file interessati al momento dell'installazione. Si consiglia di chiudere tutti i componenti relativi a Visual Studio 2010 prima di installare l'hotfix.

La versione globale di questo hotfix presenta gli attributi di file (o attributi successivi) elencati nella tabella riportata di seguito. Le date e ore dei file sono elencate in base al formato UTC (Coordinated Universal Time Coordinated). Quando si visualizzano le informazioni sul file, viene convertito in ora locale. Per calcolare la differenza tra ora UTC e ora locale, utilizzare la scheda fuso orario nell'elemento di Data e ora nel Pannello di controllo.

Nome del file

Versione del file

Dimensione del file

Data

Ora

Piattaforma

Percorso

C2.dll

16.0.40219.449

2,606,728

18-Apr-2013

18:09

x86

Microsoft Visual Studio 10.0\VC\bin

C2.dll

16.0.40219.449

2,493,576

19-Apr-2013

21:19

x86

Microsoft Visual Studio 10.0\VC\bin\x86_amd64

C2.dll

16.0.40219.449

2,593,928

19-Apr-2013

21:19

x86

Microsoft Visual Studio 10.0\VC\bin\x86_ia64

C2.dll

16.0.40219.449

2,960,008

19-Apr-2013

21:19

x64

Microsoft Visual Studio 10.0\VC\bin\amd64


Stato

Microsoft ha confermato che questo è un problema dei prodotti Microsoft elencati nella sezione "Si applica a".

Soluzione alternativa

Per risolvere questo problema, utilizzare uno dei seguenti metodi:

  • Utilizzare l'opzione del compilatoreOd ottimizzazione /per disattivare l'ottimizzazione.

  • Utilizzare il pragma optimize per attivare o disattivare l'ottimizzazione in base dalla funzione.

  • Eseguire l'aggiornamento a Microsoft Visual Studio 2012.

Riferimenti

Per ulteriori informazioni sul pragma optimize , visitare il seguente sito Web MSDN:

Informazioni generali il pragma optimizePer ulteriori informazioni sulle opzioni di ottimizzazione /O , visitare il seguente sito Web MSDN:

Informazioni generali sulle opzioni /O (Ottimizza codice)

Serve aiuto?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×