I noticed that the OpenMP extensions are not documented in the normal spot for extensions in the "Extensions to the C Language Family" in the manual.
This is wrong as they are extensions we support to the C standard.
This is a regression as the document is out of date now.
It should be something like what XLC does at:
Which is actually much better than what is even in the current GCC docs which is nothing even at the toplevel of extensions that GCC supports.
Yes, there should at least be a reference to online information about OpenMP in our manual. At this is one of the major new features in 4.2, it should definitely be documented. Diego, would you be able to put a pointer in the manual?
(In reply to comment #3)
> Diego, would you be able to put a pointer in the manual?
There are two references to the OpenMP API already. One in the documentation of -fopenmp, the other with the documentation of the OpenMP gimple codes. I don't think we need to duplicate API documentation when so much external documentation is available.
I agree that since there is a reference to the specification in -fopenmp it is not necessary to do more to document OpenMP in our manual. (If we have extensions to OpenMP they should be documented, but that's another issue.)
(In reply to comment #5)
> I agree that since there is a reference to the specification in -fopenmp it is
> not necessary to do more to document OpenMP in our manual. (If we have
> extensions to OpenMP they should be documented, but that's another issue.)
The current situtation with OpenMP is not the same as the rest of the documentation. "Extensions to the C Language Family" is were extensions to the language STANDARD are documented, if they are not, then how would someone know what the extensions are?
Also -fopenmp is not an option to control "Code Generation Conventions" but instead the language which is accepted so it should be listed in "Options Controlling C Dialect" (and maybe "Options Controlling C++ Dialect.").
Also the pragmas should be listed under:
Also we list extensions to C89 which are in C99 too so documenting this in "Extensions to the C Language Family" is the correct thing to do.
And nothing links directly to the spec, I have to go through another web page to get what each pargma does which is wrong, OUR document should be more complete instead of the current situation where it is half done.
Since you're unwilling to close this PR, I'll leave it open. However, it's P5; I trust OpenMP users to be able to figure out how to find the OpenMP pragmas.
(In reply to comment #9)
> Andrew --
> Since you're unwilling to close this PR, I'll leave it open. However, it's P5;
> I trust OpenMP users to be able to figure out how to find the OpenMP pragmas.
Lets look at it a different way, how easy is it for a GCC user to see that GCC supports OpenMP. It is hard because they have to look at the wrong section to find it does. Yes the news section on the main web page says it exists but that is not an excuse for having not good documentation. Let me also point out there are other extensions which are more documented than OpenMP even ones which are part of a standard like
Should I continue or can I say that OpenMP is just poorly documented and is inconsistent with the rest of GCC and is really an undocumented extension that can be removed still?
Even TLS is not documented the way OpenMP is:
In fact it gives exact edits to the real standard.
Will not be fixed in 4.2.0; retargeting at 4.2.1.
Change target milestone to 4.2.3, as 4.2.2 has been released.
4.2.3 is being released now, changing milestones of open bugs to 4.2.4.
4.2.4 is being released, changing milestones to 4.2.5.
Marking as regression again.
Closing 4.2 branch.
GCC 4.3.4 is being released, adjusting target milestone.
GCC 4.3.5 is being released, adjusting target milestone.
4.3 branch is being closed, moving to 4.4.7 target.
4.4 branch is being closed, moving to 4.5.4 target.
GCC 4.6.4 has been released and the branch has been closed.
The 4.7 branch is being closed, moving target milestone to 4.8.4.
GCC 4.8.4 has been released.
The gcc-4_8-branch is being closed, re-targeting regressions to 4.9.3.
GCC 4.9.3 has been released.