http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53694
Bug #: 53694 Summary: [OOP] GENERIC type-bound procs should be available without part-ref syntax Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: fortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: bur...@gcc.gnu.org Created attachment 27629 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27629 test.f90 If "sqrt" is a generic type-bound procedure, not only something like a%sqrt() or a%sqrt(b) [for pass and nopass, respectively] should work but also a simple: sqrt(a) or sqrt(a, b) That is: The generic enter the normal generic namespace with the exception that use, only: type also imports the generic name for that type. See also: https://groups.google.com/forum/#!msg/comp.lang.fortran/YDt3j0--1Do It is not obvious from the standard that this holds, but it is analog to ASSIGNMENT(=) and OPERATOR(...) which also act that way. [Which is supported in gfortran.] Additionally, the following statement (F2008,4.5.7.3 Type-bound procedure overriding) wouldn't make sense with a different interpretation of the standard: "If a generic binding specied in a type denition has the same generic-spec as an inherited binding, it extends the generic interface and shall satisfy the requirements specied in 12.4.3.4.5."