This is the mail archive of the
mailing list for the GCC project.
Re: 3.0.1 Freeze
- To: dewar at gnat dot com
- Subject: Re: 3.0.1 Freeze
- From: Gabriel Dos Reis <gdr at codesourcery dot com>
- Date: 07 Aug 2001 16:06:11 +0200
- Cc: bo at sonofthor dot dk, gdr at codesourcery dot com, gcc at gcc dot gnu dot org, mark at codesourcery dot com
- Organization: CodeSourcery, LLC
- References: <20010807135105.114A1F2B63@nile.gnat.com>
| <<Here, I have a specific case at hand and given the timeframe, I have
| to take the road which makes my life easier. And here, macros just do
| the job fine. Sorry, if that doesn't match your personal taste.
| I think Bo has a good point here. Historically macros in C make up for
| the lack of constant declarations and the absence of inlined functions,
| but once one has both these capabilities, 90% of macros should be replaced
| by one of these far preferable constructs.
The specific issue here isn't that Mark or I want to have macros.
We have generic names to which we want to bind values, and we want
targets to selectively define their own values if they think the
generic ones don't match reality. In that respect, macros are much
more flexible than the alternatives core C++ offers: They offer a
good, painless (well the pain is in typing, but then I bet there is
less typing than in the alternatives), transition path from
non-bootstrapland to bootstrapville.
Actually, that scheme is an incarnation of what Autoconf lets us do
with the rest of library.
I'm not arguing for macro-everywhere in the library.