public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module is private
  2011-04-28 18:49 [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private burnus at gcc dot gnu.org
@ 2011-04-28 18:41 ` burnus at gcc dot gnu.org
  2011-04-28 19:27 ` [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure " burnus at gcc dot gnu.org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-04-28 18:41 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48810

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.6.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private
@ 2011-04-28 18:49 burnus at gcc dot gnu.org
  2011-04-28 18:41 ` [Bug fortran/48810] " burnus at gcc dot gnu.org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-04-28 18:49 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48810

           Summary: [4.6/4.7 Regression] [OOP] TPB rejected because module
                    is private
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Keywords: rejects-valid
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: burnus@gcc.gnu.org
                CC: janus@gcc.gnu.org


Reported by Andrew Baldwin at c.l.f, cf.
http://groups.google.com/group/comp.lang.fortran/browse_thread/thread/6e47d1d7271e4c02

The following program is accepted by NAG f95, by gfortran 4.5, and by Richard
Maine, but gfortran 4.6/4.7 reject it with:

      bar = foo%getx()
            1
Error: 'gimmex' of 'foobar' is PRIVATE at (1)


      module qtest
      type foobar
        integer :: x
        contains
        private
        procedure :: gimmex
        generic, public :: getx => gimmex
      end type foobar
      contains
        function gimmex(foo)
          class (foobar) :: foo
          integer :: gimmex
          gimmex = foo%x
        end function gimmex
      end module qtest

      program quicktest
      use qtest
      type (foobar) :: foo
      integer :: bar
      bar = foo%getx()
      end program quicktest


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure is private
  2011-04-28 18:49 [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private burnus at gcc dot gnu.org
  2011-04-28 18:41 ` [Bug fortran/48810] " burnus at gcc dot gnu.org
@ 2011-04-28 19:27 ` burnus at gcc dot gnu.org
  2011-04-29  5:50 ` burnus at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-04-28 19:27 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48810

--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-04-28 19:26:59 UTC ---
Works: 2010-06-03-r160231
Fails: 2010-06-07-r160349

Should be the commit:

r160335 | janus | 2010-06-06 04:04:04 +0200 (So, 06. Jun 2010) | 19 Zeilen

2010-06-05  Paul Thomas  <pault@gcc.gnu.org>
            Janus Weil  <janus@gcc.gnu.org>

        PR fortran/43945
        * resolve.c (get_declared_from_expr): Move to before
        resolve_typebound_generic_call.  Make new_ref and class_ref
        ignorable if set to NULL.
        (resolve_typebound_generic_call): Once we have resolved the
        generic call, check that the specific instance is that which
        is bound to the declared type.
        (resolve_typebound_function,resolve_typebound_subroutine): Avoid
        freeing 'class_ref->next' twice.


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure is private
  2011-04-28 18:49 [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private burnus at gcc dot gnu.org
  2011-04-28 18:41 ` [Bug fortran/48810] " burnus at gcc dot gnu.org
  2011-04-28 19:27 ` [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure " burnus at gcc dot gnu.org
@ 2011-04-29  5:50 ` burnus at gcc dot gnu.org
  2011-04-29 13:59 ` jakub at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-04-29  5:50 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48810

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2011.04.29 05:41:52
     Ever Confirmed|0                           |1

--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-04-29 05:41:52 UTC ---
Patch: http://gcc.gnu.org/ml/fortran/2011-04/msg00296.html


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure is private
  2011-04-28 18:49 [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private burnus at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2011-04-29  5:50 ` burnus at gcc dot gnu.org
@ 2011-04-29 13:59 ` jakub at gcc dot gnu.org
  2011-04-29 16:52 ` burnus at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-04-29 13:59 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48810

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P4
                 CC|                            |jakub at gcc dot gnu.org


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure is private
  2011-04-28 18:49 [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private burnus at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2011-04-29 13:59 ` jakub at gcc dot gnu.org
@ 2011-04-29 16:52 ` burnus at gcc dot gnu.org
  2011-04-29 21:26 ` burnus at gcc dot gnu.org
  2011-04-29 21:27 ` burnus at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-04-29 16:52 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48810

--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-04-29 16:49:59 UTC ---
Author: burnus
Date: Fri Apr 29 16:49:53 2011
New Revision: 173175

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=173175
Log:
2011-04-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48810
        * resolve.c (resolve_typebound_generic_call): Don't check access
        flags of the specific function.

        PR fortran/48800
        * resolve.c (resolve_formal_arglist): Don't change AS_DEFERRED
        to AS_ASSUMED_SHAPE for function results.
        (resolve_fl_var_and_proc): Print also for function results with
        AS_DEFERRED an error, if they are not a pointer or allocatable.
        (resolve_types): Make sure arguments of procedures in interface
        blocks are resolved.

2011-04-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48810
        * gfortran.dg/typebound_proc_22.f90: New.

        PR fortran/48800
        * gfortran.dg/interface_36.f90: New.


Added:
    trunk/gcc/testsuite/gfortran.dg/interface_36.f90
    trunk/gcc/testsuite/gfortran.dg/typebound_proc_22.f90
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/resolve.c
    trunk/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure is private
  2011-04-28 18:49 [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private burnus at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2011-04-29 16:52 ` burnus at gcc dot gnu.org
@ 2011-04-29 21:26 ` burnus at gcc dot gnu.org
  2011-04-29 21:27 ` burnus at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-04-29 21:26 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48810

--- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-04-29 21:26:10 UTC ---
Author: burnus
Date: Fri Apr 29 21:26:07 2011
New Revision: 173191

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=173191
Log:
2011-04-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48810
        * resolve.c (resolve_typebound_generic_call): Don't check access
        flags of the specific function.

        PR fortran/48800
        * resolve.c (resolve_formal_arglist): Don't change AS_DEFERRED
        to AS_ASSUMED_SHAPE for function results.
        (resolve_fl_var_and_proc): Print also for function results with
        AS_DEFERRED an error, if they are not a pointer or allocatable.
        (resolve_types): Make sure arguments of procedures in interface
        blocks are resolved.

2011-04-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/48810
        * gfortran.dg/typebound_proc_22.f90: New.

        PR fortran/48800
        * gfortran.dg/interface_36.f90: New.


Added:
    branches/gcc-4_6-branch/gcc/testsuite/gfortran.dg/interface_36.f90
    branches/gcc-4_6-branch/gcc/testsuite/gfortran.dg/typebound_proc_22.f90
Modified:
    branches/gcc-4_6-branch/gcc/fortran/ChangeLog
    branches/gcc-4_6-branch/gcc/fortran/resolve.c
    branches/gcc-4_6-branch/gcc/testsuite/ChangeLog


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure is private
  2011-04-28 18:49 [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private burnus at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2011-04-29 21:26 ` burnus at gcc dot gnu.org
@ 2011-04-29 21:27 ` burnus at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-04-29 21:27 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48810

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

--- Comment #5 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-04-29 21:27:25 UTC ---
FIXED on the 4.7 trunk and on the 4.6.1 branch.

Thanks for the report, Andrew.


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-04-29 21:27 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-28 18:49 [Bug fortran/48810] New: [4.6/4.7 Regression] [OOP] TPB rejected because module is private burnus at gcc dot gnu.org
2011-04-28 18:41 ` [Bug fortran/48810] " burnus at gcc dot gnu.org
2011-04-28 19:27 ` [Bug fortran/48810] [4.6/4.7 Regression] [OOP] TPB rejected because module procedure " burnus at gcc dot gnu.org
2011-04-29  5:50 ` burnus at gcc dot gnu.org
2011-04-29 13:59 ` jakub at gcc dot gnu.org
2011-04-29 16:52 ` burnus at gcc dot gnu.org
2011-04-29 21:26 ` burnus at gcc dot gnu.org
2011-04-29 21:27 ` burnus at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).