Poprawka: "Fatal error C1001" błąd podczas korzystania z opcji oxtlub/OX/O2 i platforma docelowa x64 w programie Visual Studio 2012 aktualizacji 4

Objawy

Załóżmy, że został zainstalowany dodatek Microsoft Visual Studio 2012 aktualizacji 4 na komputerze. Podczas kompilowania niektóre źródła C lub C++ kod razem z opcję optymalizacji kompilatora, takich jak /ox/OX (Pełna optymalizacja), oxtlub /o2/O2 (zmaksymalizować szybkość), jeśli platforma docelowa x64, może zostać wyświetlony następujący komunikat o błędzie:

Błąd krytyczny C1001: Wystąpił błąd wewnętrzny w kompilatorze.


Uwaga: ten problem może wystąpić, jeśli tablica struct lub klasy jest używana w wywołaniu funkcji, a pierwsze pole pierwszy element tablicy jest używany w wywołaniu funkcji. Można znaleźć w poniższym przykładzie:S* arr = …func1(arr, …)
func2(arr->firstField, …)

Rozwiązanie

Informacje o poprawce

Obsługiwana poprawka jest udostępniana przez firmę Microsoft. Jednak ta poprawka jest przeznaczona tylko do usunięcia problemu opisanego w tym artykule. Tylko w systemach, których dotyczy ten problem, należy zastosować tę poprawkę.

Jeśli poprawka jest dostępna do pobrania, pojawi się sekcja "Poprawka dostępna do pobrania" na początku tego artykułu z bazy wiedzy Knowledge Base. Jeśli nie ma tej sekcji, należy przesłać żądanie do centrum obsługi klienta firmy Microsoft i obsługi technicznej w celu uzyskania poprawki.

Uwaga Jeśli wystąpią dodatkowe błędy lub konieczność rozwiązania problemu, być może trzeba będzie utworzyć osobne zlecenie usługi. Zwykłe koszty obsługi będą zastosowane do dodatkowych pytań i problemów, których nie można rozwiązać przy użyciu określonej poprawki. Aby uzyskać pełną listę numerów telefonów działu obsługi klienta firmy Microsoft lub utworzyć osobne zlecenie usługi odwiedź następujące witryny firmy Microsoft:

http://support.microsoft.com/contactus/?ws=supportUwaga "Poprawka dostępna do pobrania" zawiera listę języków, dla których dostępna jest poprawka. Jeśli odpowiedni język nie jest widoczny, to dlatego, że poprawka nie jest dostępna dla danego języka.

Wymagania wstępne

Aby zastosować tę poprawkę, musi mieć Microsoft Visual Studio 2012 aktualizacji 4 rata.

Wymagania dotyczące ponownego uruchomienia

Należy ponownie uruchomić komputer po zainstalowaniu poprawki, jeśli nie są używane pliki podlegające luce w czasie instalacji. Zaleca się zamknięcie wszystkich elementów związanych z programu Visual Studio 2010, przed zainstalowaniem poprawki.

Obejście problemu

Aby obejść ten problem, użyj opcji kompilatora optymalizacji /o1/O1 (zminimalizować rozmiar), lub wyłączyć optymalizacji za pomocą wszystkie podklucze i wartości (Wyłącz).

Stan

Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji „Dotyczy”.

Potrzebna dalsza pomoc?

Rozwijaj swoje umiejętności
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów firmy Microsoft

Czy te informacje były pomocne?

Jak zadowalająca jest jakość tłumaczenia?

Co wpłynęło na Twoje wrażenia?

Czy chcesz przekazać jakieś inne uwagi? (Opcjonalnie)

Dziękujemy za opinię!

×