Created on2014-03-04.00:00:00 last changed109 months ago
[Moved to DR at the May, 2015 meeting.]
Proposed resolution (November, 2014):
Change 6.10.3.1 [basic.start.main] paragraph 2 as follows:
An implementation shall not predefine themainfunction. This function shall not be overloaded.ItIts type shall have C++ language linkage and it shallhave a declared return type of typeint, butotherwise its type is implementation-defined. Animplementation shall allow both...
Change 6.10.3.1 [basic.start.main] paragraph 3 as follows:
The functionmain shall not be used within aprogram. The linkage (6.7 [basic.link])ofmain is implementation-defined. A program thatdefinesmain as deleted or thatdeclaresmain to beinline,static, orconstexpr is ill-formed.Themain functionshall not be declared with alinkage-specification(9.12 [dcl.link]). A program that declares a variablemain at global scope or that declares the namemain with C language linkage (in any namespace) isill-formed. The namemain is not otherwisereserved...
There does not appear to be any restriction on givingmain() an explicit language linkage, but it shouldprobably be either ill-formed or conditionally-supported.
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2017-02-06 00:00:00 | admin | set | status: drwp -> cd4 |
| 2015-11-10 00:00:00 | admin | set | status: dr -> drwp |
| 2015-05-25 00:00:00 | admin | set | messages: +msg6040 |
| 2015-05-25 00:00:00 | admin | set | status: tentatively ready -> dr |
| 2014-11-24 00:00:00 | admin | set | messages: +msg5157 |
| 2014-11-24 00:00:00 | admin | set | status: drafting -> tentatively ready |
| 2014-07-07 00:00:00 | admin | set | status: open -> drafting |
| 2014-03-04 00:00:00 | admin | create | |