octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MOC intermediate files don't have "config.h" inclusion


From: John W. Eaton
Subject: Re: MOC intermediate files don't have "config.h" inclusion
Date: Wed, 20 Mar 2013 04:35:02 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.11) Gecko/20121122 Icedove/10.0.11

On 03/19/2013 03:52 PM, Daniel J Sebald wrote:
It appears that the Qt intermediate files created by MOC go deep into
the standard headers and then come back out to libgnu/unistd.h. That
file requires the definition

_GL_INLINE_HEADER_BEGIN

which is in the main "config.h".

The Qt MOC files are a short hunk of code with tables and hooks to make
all the signals/slots within the associated C++ file work in the Qt system.

The problem is that the MOC files, being generated, cannot include the
file "config.h" the way that, say, dialog.cc can. My temporary solution
is to include the "config.h" file in dialog.h. I believe the other GUI
code might be indirectly doing the same thing because in
"symbol-information.h" is this comment:

// FIXME -- we should not be including config.h in header files.

#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

I think the solution to this problem is to not have the symbol_information constructor take a symbol_table::symbol_record object as an argument, but instead pass in the actual bits of information that are needed and leave that extraction to the .cc files where symbol_information objects are constructed. We can make this easier by writing a function in the symbol_table class that produces the information needed by the workspace viewer in a more suitable format than symbol_record objects.

jwe



reply via email to

[Prev in Thread] Current Thread [Next in Thread]