Перейти до основного
Підтримка
Вхід
Вхід за допомогою облікового запису Microsoft
Увійдіть або створіть обліковий запис.
Вітаємо,
Виберіть інший обліковий запис.
У вас є кілька облікових записів
Виберіть обліковий запис, за допомогою якого потрібно ввійти.

Ознаки

Розглянемо таку ситуацію:

  • Ввімкнути параметр глобальної оптимізації (/Og) призупиняти один із таких параметрів:

    • /O1

    • /O2

    • /Ox

  • Час створення Microsoft Visual C++ вихідний файл за допомогою Microsoft Visual Studio 2008 з пакетом оновлень 1 (SP1).

  • Вихідний файл, викликає функцію setjmp , функція longjmp або обидві функції.

У цьому випадку компілятор може використовувати тим самим зсувом у стеку для зберігання різних локальних змінних. Таким чином, може виникнути нестандартна поведінка під час запуску програми, створених.

Причина

Ця проблема виникає в тому, що optimizer не враховує setjmp функції або longjmp функції. Це призводить до optimizer неправильно визначатиме, локальні змінні роботи. Під час одна змінна змінюється, іншої змінної може неочікувано зміниться.

Спосіб вирішення

Відомості про виправлення

Виправлення доступне від корпорації Майкрософт. Проте це виправлення призначена для вирішення проблеми, описаної в цій статті. Застосовуйте це виправлення лише до систем, які відчувають проблеми, описані в цій статті. Це виправлення може отримати додаткове тестування. Тому, якщо ця проблема не сильно впливає на вас, ми рекомендуємо почекати наступного оновлення програмного забезпечення, що містить це виправлення. Щоб негайно вирішити цю проблему, зверніться до служби підтримки Microsoft, щоб отримати виправлення. Для повного списку телефонів служби підтримки користувачів і технічної підтримки, або щоб створити окремий запит на обслуговування відвідайте веб-сайт корпорації Microsoft:

http://support.microsoft.com/contactus/?ws=supportПримітка. В окремих випадках, якщо фахівець служби підтримки Майкрософт визначить, що для усунення ускладнення потрібне спеціальне оновлення, оплату за звернення до служби технічної підтримки може бути скасовано. Плата стягується на додаткові питання і проблеми, які не пов'язані з оновленням. Щоб завантажити це виправлення Microsoft Developer Network (MSDN)-Code Gallery, перейдіть на веб-сайт корпорації Майкрософт:

http://code.msdn.microsoft.com/KB2498381Примітка. MSDN Code Gallery, відображається список мов, для яких це виправлення доступне. Якщо ви не бачите мову у списку, це тому, що сторінка ресурсів для Code Gallery недоступна для цієї мови. Крім того, це виправлення також можна завантажити з веб-сайт корпорації Майкрософт підключення:

https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=34826

Попередні вимоги

Щоб застосувати це виправлення, слід Microsoft Visual Studio 2008 з пакетом оновлень 1.

Необхідність перезавантаження

Вам не потрібно перезавантажити комп'ютер, після інсталяції цього виправлення, якщо всі екземпляри програми Visual Studio.

Відомості про заміну виправлень

Це виправлення не замінює попередні виправлення.

Відомості про файл

У разі використання глобальної версії цього виправлення на комп’ютері буде інстальовано файли з атрибутами, зазначеними в наведених нижче таблицях. Значення дати й часу для цих файлів наведено за всесвітнім координованим часом (UTC). Значення дати й часу на локальному комп’ютері відображаються відповідно до настройок місцевого часу й переходу на літній час. Крім того, ці значення можуть змінюватися після виконання певний операцій із файлами.

Ім'я файлу

Версія файлу

Розмір файлу

Дата

Час

Платформа

C2.dll

15.0.30729.6147

2,283,840

25 лютого 2011 року.

01:25

x86

C2.dll

15.0.30729.6147

2,362,688

25 лютого 2011 року.

01:25

x86

C2.dll

15.0.30729.6147

2,493,248

25 лютого 2011 року.

01:25

x86

C2.dll

15.0.30729.6147

3,018,048

25 лютого 2011 року.

01:25

x64

C2.dll

15.0.30729.6147

7,263,040

25-Feb-2011

01:25

IA-64

Link.exe

9.0.30729.6147

1,055,560

25 лютого 2011 року.

01:25

x64

Link.exe

9.0.30729.6147

2,135,368

25-Feb-2011

01:25

IA-64

Link.exe

9.0.30729.6147

800,584

25-Feb-2011

01:25

x86

Спосіб вирішення

Щоб вирішити цю проблему, так, що компілятор може бути в курсі змінні життя ініціалізувати локальні змінні в функції.

Стан

Корпорація Майкрософт підтвердила існування цієї неполадки у продуктах Майкрософт, перелічених у розділі "Застосовується до".

Додаткові відомості

Щоб отримати додаткові відомості про термінологію оновлення програмного забезпечення, клацніть цей номер статті в базі знань Microsoft:

824684 Опис стандартної термінології, яка використовується для опису оновлень програмних продуктів Майкрософт

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

Дякуємо за відгук!

×