This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: exception handling poll


meissner@cygnus.com said:
> [Sorry, attribution lost]:
> | A little poll for those that have been complaining about 
> | exception handling frame unwind info being included for C:

> |   Assuming the .eh_frame section is completely read-only, at what
> |   eh/text ratio would you find it acceptible that that information
> |   is always there?

> | Can you live with 10%?  8?  5?  3?

> For many embedded users, the answer is 0.

Seconded.

And for other applications too.  Disk space is _not_ infinite either.  Also
remember C is mostly used as portable assembly, with the intention of "no
fat whatsoever". Sadly, C++ is wandering off into PL/I land...

BTW, as has been said several times before: You _can't_ ever trow through C
code, unless that C code is _very_ *very* carefully written (I'd suspect
C++ must be written with the same care, or thereabouts, as far as things
stand now ;-). So C++ exception handling support in C is not only a waste
(can't be used in C) but even extremely dangerous. Just leave that stuff to
C++, and compile your "C" to be used with C++ with a C++ compiler, or add
it in with an explicit enabling flag for C, so clueless people don't try to
do it by mistake. If libc or whatever functions need overriding for C++
with C++-safe versions, do that in libc++ or whatever.  You'll have to do
that anyway, as you will never be able to trust the native libraries.
-- 
Dr. Horst H. von Brand                       mailto:vonbrand@inf.utfsm.cl
Departamento de Informatica                     Fono: +56 32 654431
Universidad Tecnica Federico Santa Maria              +56 32 654239
Casilla 110-V, Valparaiso, Chile                Fax:  +56 32 797513


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]