2 #ifndef __ATLEXCEPT_H__
3 #define __ATLEXCEPT_H__
6 #ifdef _ATL_NO_EXCEPTIONS
7 #if !defined(STATUS_NO_MEMORY) && defined(WIN32_NO_STATUS)
8 #define STATUS_NO_MEMORY ((DWORD)0xC0000017)
13 //FIXME: Enable when RaiseException is marked as NORETURN
15 inline void AtlThrowImp(HRESULT hr
)
21 #ifdef _ATL_NO_EXCEPTIONS
26 hr
== E_OUTOFMEMORY
? STATUS_NO_MEMORY
: EXCEPTION_ILLEGAL_INSTRUCTION
,
27 EXCEPTION_NONCONTINUABLE
, 0, NULL
32 // FIXME: This is horribly wrong, we should implement CException!
42 #define AtlThrow(x) AtlThrowImp(x)