J
jacob navia
Ian said:Please look up the word "stack" in the standard and tell us where it occurs.
1: I said that no example of a C implementation without a stack has been
put forward by the regulars.
2: K. Thompson said that mainframes do not have a stack.
3: I proved him wrong using the documentation of the mainframe
compilers.
And now you say:
Please look up the word "stack" in the standard and tell us where it occurs.
You *ignore* the whole argumentation and just throw a sentence
again, without any context.
The word "stack" doesn't appear in the standard. It is implied.
The word "computer" doesn't appear. It is implied.
The word "programmer" doesn't appear. It is implied.
Now to your question. The standard says:
--------------------------------------------------------------
An object whose identifier is declared with no linkage and without the
storage-class specifier static has automatic storage duration.
5 For such an object that does not have a variable length array type,
its lifetime extends from entry into the block with which it is
associated until execution of that block ends in any way. (Entering an
enclosed block or calling a function suspends, but does not end,
execution of the current block.) If the block is entered recursively, a
new instance of the object is created each time.
------------------------------------------------------------
This is conceptually a stack. There is the PUSH operation (a new scope)
a POP operation (a scope ends, and restores the previous scope).
Obviously you can implement a stack in many ways, but MOST serious
implementations of C use the hardware stack.
This is SO OBVIOUS that it needs the twisted "regulars" mentality to
deny it.