This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Bug in expmed.c:init_expmed
- To: kenner at vlsi1 dot ultra dot nyu dot edu
- Subject: Re: Bug in expmed.c:init_expmed
- From: Mark Mitchell <mark at codesourcery dot com>
- Date: Mon, 10 Apr 2000 12:36:57 -0700
- Cc: gcc-patches at gcc dot gnu dot org
- Organization: CodeSourcery, LLC
- References: <10004101854.AA29779@vlsi1.ultra.nyu.edu>
>>>>> "Richard" == Richard Kenner <kenner@vlsi1.ultra.nyu.edu> writes:
Richard> True, but the convention in the rest of the compiler is
Richard> to make parameter lists dense.
Not entirely -- we've started using the commented convention in the
C++ front-end in some places.
Richard> You are quite correct that the lack of named parameters
Richard> in C hurts here. I think the right approach is to use a
Richard> macro value, such as NO_INSERT and INSERT for that
Richard> operand. I forget: is libibery's master in the tree or
Richard> do we have to get them to make that change? I'd like to
Richard> add those two macros and then change the callers.
We can make changes to libiberty. But I'm not sure that your scheme
is the best solution; eventually, every boolean parameter would need
these macros, and it's hard to know which ones go with which
functions. You could use an enum, which would make that clear; then,
no_insert/insert would be of the wrong type to pass to other
functions. Even that seems like a lot of clutter to me, but it seems
better than the macro bits.
I'll defer to your judgement here; I just want some way of knowing
what that `1' means.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com