This is the mail archive of the gcc-patches@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++ Patch] PR 67065 ("Missing diagnostics for ill-formed program with main variable instead of function")


Hi Ville,

On 08/19/2015 10:12 PM, Ville Voutilainen wrote:
submitter noticed that, in violation of [basic.start.main], we don't reject
as ill-formed the declaration of a 'main' variable in the global namespace.
Not a big deal IMHO, but the below simple check works well for me on x86_64-linux.
Just fyi, gcc accepts

decltype(main) x;

decltype(sizeof(decltype(main)*)) x;

which are "uses" of main and also violate [basic.start.main]/3.
"good" to know. In my experience sometimes the front end appears to so-to-speak pre-declare entities. For instance I filed a while ago c++/48396. Not sure if in practice the exact same code is involved...

Paolo.


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