![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| akul |
|
|||
|
Unregistered |
Студия 2003 падает на темплейтном деструкторе без прототипа. Microsoft ® 32-bit C/C++ Optimizing Compiler Version 13.10.3077 for 80x86 Copyright © Microsoft Corporation 1984-2002. All rights reserved. test.cpp test.cpp(8) : fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'msc1.cpp', line 2701) Please choose the Technical Support command on the Visual C++ Help menu, or open the Technical Support help file for more information |
|||
|
||||
| Sergusha |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 14.6.2006 Репутация: нет Всего: нет |
Люди, помогите если можете. При компиляции выдается сообщение о фатальной ошибке компилятора, как и в верхнем посте. Не могу понять в чем дело в MSDN этот объеснений, в гугле народ пишет про оптимизации, у меня они выключены.
Код следующий:
вот вызов:
Студия версии 7.1 |
||||
|
|||||
| Palladin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 932 Регистрация: 15.5.2007 Где: Беларусь г.Гомель Репутация: нет Всего: 17 |
Sergusha, Я что-то не вижу связи твоего поста с названием топа, создавай новую тему и там задавай вопрос
-------------------- Глуп тот кто полагается на истину авторитета, а не на авторитет истины [color=red]KAV&KIS==Evil[/color] |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
INTERNAL COMPILER ERROR означает, что у компилятора съехала крыша, и он не может разрулить ситуацию. Приводить к этому могут самые разные ошибки. Искать, конечно, тяжело, учитывая диагностику, но это всегда ваша ошибка. В первом случае деструктор не объявлен в классе, что бессмысленно.
Во втором случае лень искать, код большой. Но есть беспроигрышный метод: частично комментируешь код и таким образом локадизуешь ошибку. -------------------- ... |
|||
|
||||
| Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
Что ты тут проверяешь? Метод не возвращает ничего, даже void? Что за x? Откуда эта ппеременная? А что такое Split? А после этого у них компиляторы, видите ли, плохие... Это сообщение отредактировал(а) Daevaorn - 23.10.2006, 09:04 |
|||
|
||||
| Empirik |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 156 Регистрация: 28.10.2005 Где: Россия, Пермь Репутация: нет Всего: 1 |
Господа либо я не выспался либо одно из двух. Но скажите мне пожалуйста как можно реализовывать тело деструктора, не описав его прототип в теле класса? Это первый вопрос? И второй вопрос, скажи пожалуйста, у тебя описание шаблонного класса и реализация его методов находиться в одном файле? Это сообщение отредактировал(а) Empirik - 23.10.2006, 08:55 --------------------
Постоянно удивляюсь человеческой фантазии напридумывают гаджетов |
||||
|
|||||
| Sergusha |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 14.6.2006 Репутация: нет Всего: нет |
Всем спасибо, не ожидал что народ так быстро откликнется. Сразу прошу прощения за то что задал вопросы по коду с явными ошибками. Писал просто все это ночью, запарился. С утра свежим глазом глянул сам ужаснулся. Ошибки нашел, все исправил все работает.
Возможно ты и прав. Daevaorn отдельное спасибо.
Предотвращение многократного включения заголовочного файла. С остальным полностью согласен косяки. Просто тупо скопировал функцию в класс и даже не проверил Прошу сильно не ругаться Это сообщение отредактировал(а) Sergusha - 23.10.2006, 10:14 |
||||
|
|||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 17 Всего: 110 |
а ещё раз: -------------------- qqq |
|||
|
||||
| maksr |
|
|||
![]() Lizard King ![]() Профиль Группа: Участник Сообщений: 60 Регистрация: 17.2.2005 Где: Нижний Новгород Репутация: нет Всего: 1 |
fatal error C1001: An internal error has occurred in the compiler. (compiler file 'msc1.cpp', line 1392) 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 |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
GNU C++ на этом примере работает прекрасно.
P.S. У меня бывали internal error'ы в Borland C++ Builder 6 и Borlaтв С++ Builder 2006 Architect Preview, когда ни с того, ни с сего компилер выдавал внутреннюю ошибку, потом ставился пробел, он же удалялся, и все работало дальше прекрасно. |
|||
|
||||
| nickless |
|
|||
![]() Гентозавр ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2976 Регистрация: 29.8.2005 Где: Germany Репутация: 19 Всего: 181 |
У меня gcc 4.1.1 падает с сегфолтом если попытаться скомпилировать что нибудь одновременно с -O2 и -ftrapv
-------------------- ![]() Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies - Linus Torvalds |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
nickless, это под разными проектами? Hello World компилит при таких опциях?
Если да, то код в студию... P.S. Дабы далеко не лазить, что опция -ftrapv делает? |
|||
|
||||
| bsa |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
|
||||
|
|||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Странно, что компилятор допускает такую комбинацую настроек...
|
|||
|
||||
| nickless |
|
||||||||
![]() Гентозавр ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2976 Регистрация: 29.8.2005 Где: Germany Репутация: 19 Всего: 181 |
Hello world компилит, код будет. В более сложном коде результат вариирует от ошибки в системной либе до сегфолта или out of memory. Кстати что такого в этой комбинации? Почему бы не потестить на overflow в оптимированном коде? EDIT: Урезанный код одного класса
Вот что пишет gcc:
Люди, попробуйте у себя кому не лень, а то интересно, это gcc глючит или просто у меня версия такая корявая ЗЫ gcc 3.4.6 компилит без проблем Это сообщение отредактировал(а) nickless - 25.10.2006, 18:51 -------------------- ![]() Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies - Linus Torvalds |
||||||||
|
|||||||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |