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

Re: Constant-Function, and integration-level



    Date: 13 May 88 00:53:49 EDT (Fri)
    From: gz@spt.entity.com (Gail Zacharias)

    I don't really understand the rest of your message.  The point I was trying to
    make is that since most DEFUN'ed functions are constant, it's not very useful
    to have to have a constant-function declaration for every DEFUN in your
    program.  Rather, that should be the default (i.e. implementations should be
    allowed to assume it), so that correct portable programs *must* explicitly
    mark the exceptions.  NOTINLINE works fine for that purpose.

I disagree entirely, that INLINE should be the default.
Consider:

o If I change a function, then I must recompile all functions
that call it, and hence all functions that call *them*, on
into the night, on the off chance the compiler may have open
coded it.

o Debugging becomes harder. One no longer has a function
invocation to use as a handle for, say TRACE. STEP doesn't
work as expected either, particularly if the compiler is
allowed to constant fold whenever it wants to.

I'm not arguing that this facility doesn't have it's place, I
just don't think it should be the default action. Most of us
are more concerned with maintainability than raw speed.

----
Brad Miller		U. Rochester Comp Sci Dept.
miller@cs.rochester.edu {...allegra!rochester!miller}