|
Die Notiz (Notices) trifft auf alloca() als Library-Funktion zu, sie trifft nicht zu,
wenn alloca() compiler-intern ist.
Lediglich die Portabilität ist dann eingeschränkt.
Folgende selbst entwickelte Funktion hatte es mir mal ermöglicht, den gcc2.8.1 zu kompilieren, mit einem Compiler, der alloca() nicht kennt: (Der Ersatz alloca.c mit malloc/free hatte zuvor nicht funktioniert!):
|
Ausblick auf C99-Compiler:
Heute mit gcc:
|
Zugehöriger Assembler:
|
--hs
Welchen praktischen Nutzen hat eine Funktion, die bei Speichermangel auf dem Stack ein undefiniertes Verhalten (d. h. meistens Programmabbruch) hat?