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]
Other format: [Raw text]

Re: C Code mutilation by using gcc-3.3.x


On Wed, 4 Feb 2004, Daniel Berlin wrote:

> > Aha, unnamed/annonymous structures and unions .....
> >
> 
> > Well thats briljant... in 2 years time all Open Source code will be 
> > unnamed
> > and anonymous in the form of propiatary .o modules, and Linus will 
> > still
> > be happy to deliver his /usr/src/linux/kernel subtree of the Linux
> > kernel source. Quite funny to see Open Source evolving by implementing
> > "modern" C compilers like gcc-3.x.
> 
> 
> This has to be the worst attempt at a troll i've ever read.
> Either that, or you are just not medicated properly and don't feel like 
> actually looking up what an anonymous structure/union is.
> 
> If this was Usenet, i'd nominate you for kook of the month.
> Since it's not, I just want my time and money back from having to read 
> this email.
> --Dan

Well sorry about that, I am rather serious here. 

When interfacing a linux kernel with a vendor's .o module with the
aid of unnamed and anonymous structure/union's one can expect the unexpected.

The variables and structs used maybe match in name, but they might not
match in size, or array limits, gcc3 will still get your driver module 
vendor_kit.o compiled.

The trouble will start when actually using the freshly compiled kernel 
driver module. If the vendor has implemented a bad written error handling in
his module, one might even be debugging his linux machine for months, before
getting a clue about whats going on.

IMHO this is a bad thing. The idea of using open source makes no sense 
in such a case.

Robert
-- 
Robert M. Stockmann - RHCE
Network Engineer - UNIX/Linux Specialist
crashrecovery.org  stock@stokkie.net


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