This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: c++/10569: use typedef type as return from main yields warning
- From: Falk Hueffner <falk dot hueffner at student dot uni-tuebingen dot de>
- To: bangerth at dealii dot org
- Cc: gcc-bugs at gcc dot gnu dot org, wxy at kivera dot com, gcc-gnats at gcc dot gnu dot org
- Date: 30 Apr 2003 20:26:07 +0200
- Subject: Re: c++/10569: use typedef type as return from main yields warning
- References: <20030430180219.6494.qmail@sources.redhat.com>
bangerth@dealii.org writes:
> Old Synopsis: use typedef type as return from main
> New Synopsis: use typedef type as return from main yields warning
>
> State-Changed-From-To: open->analyzed
> State-Changed-By: bangerth
> State-Changed-When: Wed Apr 30 18:02:19 2003
> State-Changed-Why:
> Confirmed with present 3.4. The standard says in 3.6.1.2:
>
> An implementation shall not predefine the main function. This func-
> tion shall not be overloaded. It shall have a return type of type
> int,...
> I can't say whether this rules out having a typedef to
> int instead. I think the answer is: don't do it, there's
> no good reason for such bogosity.
There's something weird going on, though. For me, it fails with
*error* when turning on -Wall, but not when additionally giving
-pedantic:
falk@juist:/tmp% g++ --version
g++ (GCC) 3.4 20030423 (experimental)
falk@juist:/tmp% g++ -O2 test.cc
falk@juist:/tmp% g++ -O2 -Wall test.cc
test.cc:2: error: return type for `main' changed to `int'
falk@juist:/tmp% g++ -O2 -Wall -pedantic test.cc
test.cc:2: warning: return type for `main' changed to `int'
Adding -Wall shouldn't make any program fail, I think.
--
Falk