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

Bug#486347: gcc-4.3: Superfluous warning when -std=c99/gnu99 and noreturn on main()



Bastian Blank wrote:
> Well, main returns always in a hosted environment.

The bug reporter of bug #141015 used exit() on all occasions, I thought that
didn't count as a return? (just curiosity)

I think the noreturn attribute is quite overkill for normal computers
though, this in contrast to embedded development.

> I doubt that you want a hosted compiler environment while building code 
> for such a device. Use -ffreestanding and/or use a different name then 
> main.

I have to admit I might not fully understand what you mean. I looked at the
description of -ffreestanding; I'm under the impression you are talking
about a program that does not use standard libraries, whereas I'm talking
about development using avr-libc.

The avr-libc documentation has this to say about -ffreestanding:

> However, this also turns off all optimizations normally done by the
> compiler which assume that functions known by a certain name behave as
> described by the standard. E. g., applying the function strlen() to a
> literal string will normally cause the compiler to immediately replace
> that call by the actual length of the string, while with -ffreestanding,
> it will always call strlen() at run-time.

Doesn't sound like what I want.

Thanks for the reply,

Peter.

-- 
I'm using the GNU Privacy Guard (GnuPG) in combination with Enigmail.
You can send me encrypted mail if you want some privacy.
My key is available at http://wwwhome.ewi.utwente.nl/~lebbing/pubkey.txt



Reply to: