This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: compile server design document
- From: Devang Patel <dpatel at apple dot com>
- To: Per Bothner <pbothner at apple dot com>
- Cc: Devang Patel <dpatel at apple dot com>, gcc at gcc dot gnu dot org
- Date: Thu, 27 Feb 2003 13:45:33 -0800
- Subject: Re: compile server design document
Thanks for taking time to write detailed document. It helps to
understand more about compile server approach.
- "This assumes that (normally) a header file consists mainly of
declarations (including macro definitions), and the "meaning" of these
declarations does not chnge across compilations."
In C++ headers, inline function definitions are everywhere. But even
<stdio.h> brings in this little jewel
static __inline int __sputc(int _c, FILE *_p) {
if (--_p->_w >= 0 || (_p->_w >= _p->_lbfsize && (char)_c !=
'\n'))
return (*_p->_p++ = _c);
else
return (__swbuf(_c, _p));
}
- Do you have any info/data/rough estimate about fragments per header
for popular headers like stdio.h, iostream and Carbon.h ?
- "Depending on lack of a macro bindings" issue. In C++, namespaces
also creates similar problem.
- "Types defined in multiple locations". Do you plan to detect and
report violation of extended single one-definition rule?
- And last question is a implementation detail. Any idea how client
will know if server went in infinite loop or an ICE?
Thanks,
-Devang