I may have found a bug in afxdlgs.h.
There is a function declaration in afxdlgs.h:
#ifdef _DEBUG
public:
virtual void Dump(CDumpContext& dc) const;
#endif
that needs the class CDumpContext. (_DEBUG is defined because I am
trying to generate a Multi-threaded Debug DLL.)
The fact is that the class is defined in afx.h this way:
#ifndef _WIN32_WCE
/////////////////////////////////////////////////////////////////////////////
// Diagnostic dumping
//(...)
class CDumpContext
{
//(...)
};
//(...)
#endif // !_WIN32_WCE
And as _WIN32_WCE is defined, which is completelly right, I am getting
an error (afxdlgs.h(385) : error C2061: syntax error : identifier
'CDumpContext').
How come a class that is being referenced in afxdlgs.h for WinCE is
not included in afx.h for WinCE?
The same function is declared more than once in afxdlgs.h under the
condition #ifndef _WIN32_WCE as follows:
#ifdef _DEBUG
public:
#ifndef _WIN32_WCE
virtual void Dump(CDumpContext& dc) const;
#endif // !_WIN32_WCE
#endif
That's why I'm thinking that there must be a mistake in the other
declaration.
Is there anything I'm missing?
Thanks for your time.
I ignored that CE had no printing support and thuse
_AFX_NO_PRINTING_SUPPORT must be #defined. And as in afxdlgs.h:
#ifndef _AFX_NO_PRINTING_SUPPORT
(...)
#ifdef _DEBUG
public:
virtual void Dump(CDumpContext& dc) const;
#endif
(...)
#endif
there is no bug.
So now my problem is even bigger.
How comes there is no printing support for ce???
On 21 ene, 11:23, maite <maiu...@gmail.com> wrote:
> Hi everybody,
>
> I may have found a bug in afxdlgs.h.
> There is a function declaration in afxdlgs.h:
> #ifdef _DEBUG
> public:
> virtual void Dump(CDumpContext& dc) const;
> #endif
>
> that needs the class CDumpContext. (_DEBUG is defined because I am
> trying to generate a Multi-threaded Debug DLL.)
> The fact is that the class is defined in afx.h this way:
> #ifndef _WIN32_WCE
> /////////////////////////////////////////////////////////////////////////////