[Search for users]
[Overall Top Noters]
[List of all Conferences]
[Download this site]
Title: | Microsoft Visual C++ bug reports and kits |
Notice: | Register in Topic 2. 5.Last for latest Kit |
Moderator: | DECWET::THOMAS N |
|
Created: | Tue May 17 1994 |
Last Modified: | Fri Jun 06 1997 |
Last Successful Update: | Fri Jun 06 1997 |
Number of topics: | 521 |
Total number of notes: | 2938 |
515.0. "INTERNAL COMPILER ERROR on Alpha & Intel" by HYDRA::AMORELLI () Thu May 15 1997 13:38
The sample code included demonstrates an "INTERNAL COMPILER ERROR" bug
in the cl.exe (msc1.cpp) compiler in MS VC++ 5.0 Intel & Alpha. The error
occurs when exception handling is enabled (/GX).
To re-create the error do the following:
-Run MSDEV
-Drop the file "bug.cpp" into the project window.
-Compile (F7) using default Project Setting.
(Accept the default project workspace)
** THEN...
-Change Project Setting (Alt-F7) by:
-Removing exception handling option, /GX
(Select C/C++ Tab, Catagory C++ Langauge, Disable "Enable exception handling")
-OK
-F7
(it compiles Link will fail...which is expected)
==============================================================================
--------------------Configuration: bug - Win32 Debug--------------------
Compiling...
bug.cpp
C:\Temp\bug.cpp(53) : fatal error C1001: INTERNAL COMPILER ERROR
(compiler file 'msc1.cpp', line 1188)
Please choose the Technical Support command on the Visual C++
Help menu, or open the Technical Support help file for more information
Error executing cl.exe.
bug.exe - 1 error(s), 0 warning(s)
=========================================================
// bug.cpp
// CPA 15-May-1997
// Reproducer to show ICE in VC++ 5.0 Intel/Alpha
#define MFCUT_EXPORT
#include "afxcoll.h"
class MFCUT_EXPORT suObArray : public CObArray
{
public:
int addUnique( CObject* );
void deleteAll( );
int find( CObject* ); // -1 return means its not there
int remove( CObject* , BOOL leaveBlank = FALSE ); // -1 return
means its not there
// File IO
static void serializePtr (CArchive& ar, suObArray*& ptrInOut);
// Save/Restore
DECLARE_SERIAL(suObArray)
};
class moUserUnits_c;
class moUnitsTable_c : private suObArray
{
public:
MFCUT_EXPORT moUnitsTable_c( BOOL makeDefault = FALSE );
MFCUT_EXPORT moUserUnits_c* getUserUnits(CRuntimeClass*
userUnitClass ) const;
MFCUT_EXPORT BOOL find(moUserUnits_c* unitIn) const;
MFCUT_EXPORT void reset( const moUnitsTable_c& unitsTab );
MFCUT_EXPORT virtual void Serialize( CArchive& ar);
MFCUT_EXPORT void addUse( );
MFCUT_EXPORT void removeUse( );
suObArray::operator new;
suObArray::operator delete;
// IO
MFCUT_EXPORT BOOL iAddUserUnits( moUserUnits_c* userUnit );
MFCUT_EXPORT BOOL iDelUserUnits( moUserUnits_c* userUnit );
private:
~moUnitsTable_c() { deleteAll(); }
int iUseCount;
DECLARE_SERIAL( moUnitsTable_c );
};
IMPLEMENT_SERIAL ( moUnitsTable_c, suObArray, 1 )
T.R | Title | User | Personal Name | Date | Lines |
---|
515.1 | RAIDed at MS. | sdtwst.zso.dec.com::hutchinson | Eliminating the need for cleverness | Tue May 20 1997 13:30 | 9 |
| Thank you for the sample program. It has been determined that your
bug is in Microsoft's front end code. As such, the bug has been
RAIDed (#25382). Microsoft's developers will have to determine the
priority of the bug fix. The next available vehicle for distributing
this fix is likely to be VC++ 5.0 Service Pack 2.
Thanks,
Phil
|