public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008
@ 2011-11-10 14:43 burnus at gcc dot gnu.org
  2011-11-10 14:57 ` [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008" burnus at gcc dot gnu.org
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-11-10 14:43 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 51081
           Summary: -std=f2003: Internal procedure in proc-pointer
                    assignment: Mention that it is valid in F2008
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Keywords: diagnostic
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: burnus@gcc.gnu.org
                CC: janus@gcc.gnu.org


Trivial diagnostic bug.

Compiling with -std=2003 just prints:

  Error: Internal procedure 'int' is invalid
         in procedure pointer assignment at (1)

Expected: It mentions that it is actually valid in Fortran 2008, e.g.

  Error: Fortran 2008: Internal procedure 'int'
         in procedure pointer assignment at (1)

ptr => int
contains
  subroutine int()
  end subroutine int
end


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

* [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008"
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
@ 2011-11-10 14:57 ` burnus at gcc dot gnu.org
  2011-11-10 15:01 ` burnus at gcc dot gnu.org
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-11-10 14:57 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |rejects-valid
            Summary|-std=f2003: Internal        |Proc-pointer assignment:
                   |procedure in proc-pointer   |Rejects valid internal
                   |assignment: Mention that it |proc, -std=f2008 should
                   |is valid in F2008           |mention "F2008"

--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-11-10 14:42:43 UTC ---
First, my example was incomplete. Secondly, I just realized that gfortran
rejects the program although I think it is valid (ifort also compiles it):

  subroutine int2()
                 1
Error: FUNCTION attribute conflicts with SUBROUTINE attribute in 'int2' at (1)

I do not see why gfortran regards "int2" as function. If one uncomments the
call line, one even gets:

Error: Interface mismatch in procedure pointer assignment at (1): 'int2' is not
a subroutine


procedure(), pointer :: ptr
ptr => int2
! call ptr()
contains
  subroutine int2()
  end subroutine int2
end


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

* [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008"
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
  2011-11-10 14:57 ` [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008" burnus at gcc dot gnu.org
@ 2011-11-10 15:01 ` burnus at gcc dot gnu.org
  2012-04-16 12:02 ` janus at gcc dot gnu.org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-11-10 15:01 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-11-10 14:47:42 UTC ---
(In reply to comment #1)
>   subroutine int2()
>                  1
> Error: FUNCTION attribute conflicts with SUBROUTINE attribute in 'int2' at (1)

Seemingly both INT and INT2 have some special meaning as for instance INT44
works. (Answer: INT2 is a GNU intrinsic to convert the argument to INTEGER(2).)

Nevertheless, the code should be valid, unless one has used an explicit
"intrinsic int" or "intrinsic int2".


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

* [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008"
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
  2011-11-10 14:57 ` [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008" burnus at gcc dot gnu.org
  2011-11-10 15:01 ` burnus at gcc dot gnu.org
@ 2012-04-16 12:02 ` janus at gcc dot gnu.org
  2012-04-16 12:37 ` janus at gcc dot gnu.org
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-04-16 12:02 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from janus at gcc dot gnu.org 2012-04-16 12:01:46 UTC ---
(In reply to comment #1)
> First, my example was incomplete. Secondly, I just realized that gfortran
> rejects the program although I think it is valid (ifort also compiles it):
> 
>   subroutine int2()
>                  1
> Error: FUNCTION attribute conflicts with SUBROUTINE attribute in 'int2' at (1)

I only get this with 4.6.3, but with 4.7 and trunk I get:

  subroutine int2()
                 1
Error: 'int2' declared INTRINSIC at (1) does not exist


This error message even appears three times and is just as wrong as the other
one.


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

* [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008"
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2012-04-16 12:02 ` janus at gcc dot gnu.org
@ 2012-04-16 12:37 ` janus at gcc dot gnu.org
  2012-07-17 21:51 ` janus at gcc dot gnu.org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-04-16 12:37 UTC (permalink / raw)
  To: gcc-bugs

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

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2012-04-16
     Ever Confirmed|0                           |1

--- Comment #4 from janus at gcc dot gnu.org 2012-04-16 12:37:26 UTC ---
(In reply to comment #0)
> Compiling with -std=2003 just prints:
> 
>   Error: Internal procedure 'int' is invalid
>          in procedure pointer assignment at (1)

This is of course easily fixed:

Index: gcc/fortran/expr.c
===================================================================
--- gcc/fortran/expr.c    (revision 186485)
+++ gcc/fortran/expr.c    (working copy)
@@ -3444,9 +3444,10 @@ gfc_check_pointer_assign (gfc_expr *lvalue, gfc_ex
           return FAILURE;
         }
       if (attr.proc == PROC_INTERNAL &&
-          gfc_notify_std (GFC_STD_F2008, "Internal procedure '%s' is "
-                  "invalid in procedure pointer assignment at %L",
-                  rvalue->symtree->name, &rvalue->where) == FAILURE)
+          gfc_notify_std (GFC_STD_F2008, "Fortran 2008: Internal procedure "
+                  "'%s' is invalid in procedure pointer assignment "
+                  "at %L", rvalue->symtree->name, &rvalue->where)
+                  == FAILURE)
         return FAILURE;
     }
       /* Check for F08:C730.  */



An alternative would be to add the correct label automatically inside
'gfc_notify_std', based on the value of 'GFC_STD_*' passed.


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

* [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008"
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2012-04-16 12:37 ` janus at gcc dot gnu.org
@ 2012-07-17 21:51 ` janus at gcc dot gnu.org
  2012-07-18  8:11 ` [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc janus at gcc dot gnu.org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-07-17 21:51 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from janus at gcc dot gnu.org 2012-07-17 21:51:25 UTC ---
Author: janus
Date: Tue Jul 17 21:51:20 2012
New Revision: 189589

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=189589
Log:
2012-07-17  Janus Weil  <janus@gcc.gnu.org>

    PR fortran/51081
    * error.c (gfc_notify_std): Automatically print the relevant Fortran
    standard version.
    * arith.c (arith_power): Remove explicit standard reference string.
    * array.c (gfc_match_array_spec, gfc_match_array_constructor): Ditto.
    * check.c (gfc_check_a_p, gfc_check_besn, gfc_check_count,
    gfc_check_float, gfc_check_fn_rc2008, gfc_check_iand,
    gfc_check_ichar_iachar, gfc_check_ieor, gfc_check_index, gfc_check_ior,
    gfc_check_lbound, gfc_check_len_lentrim, check_rest, gfc_check_min_max,
    gfc_check_null, gfc_check_scan, gfc_check_selected_real_kind,
    gfc_check_shape, gfc_check_size, gfc_check_sngl, gfc_check_ubound,
    gfc_check_verify): Ditto.
    * data.c (gfc_assign_data_value): Ditto.
    * decl.c (var_element, char_len_param_value, match_char_length,
    gfc_verify_c_interop_param, match_pointer_init, variable_decl,
    gfc_match_decl_type_spec, gfc_match_import, match_attr_spec, 
    gfc_match_prefix, gfc_match_suffix, match_ppc_decl,
    match_procedure_in_interface, gfc_match_procedure,gfc_match_entry,
    gfc_match_subroutine, gfc_match_end, gfc_match_codimension,
    gfc_match_protected, gfc_match_value, gfc_match_volatile,
    gfc_match_asynchronous, gfc_match_modproc, gfc_get_type_attr_spec,
    gfc_match_enum, match_procedure_in_type): Ditto.
    * expr.c (check_elemental, gfc_check_assign, gfc_check_pointer_assign):
    Ditto.
    * interface.c (gfc_match_abstract_interface, check_interface0): Ditto.
    * intrinsic.c (gfc_intrinsic_func_interface): Ditto.
    * io.c (format_lex, resolve_tag_format, resolve_tag,
    compare_to_allowed_values, gfc_match_open, gfc_match_rewind,
    gfc_resolve_dt, gfc_match_wait): Ditto.
    * match.c (match_arithmetic_if, gfc_match_if, gfc_match_critical,
    gfc_match_do, match_exit_cycle, gfc_match_pause, gfc_match_stop,
    gfc_match_lock, sync_statement, gfc_match_assign, gfc_match_goto,
    gfc_match_allocate, gfc_match_return, gfc_match_st_function): Ditto.
    * module.c (gfc_match_use, gfc_use_module): Ditto.
    * parse.c (parse_derived_contains, parse_block_construct,
    parse_associate, parse_contained): Ditto.
    * primary.c (match_hollerith_constant, match_boz_constant,
    match_real_constant, match_sym_complex_part, match_arg_list_function,
    build_actual_constructor, gfc_convert_to_structure_constructor): Ditto.
    * resolve.c (resolve_formal_arglist, resolve_entries,
    resolve_common_blocks, resolve_actual_arglist, gfc_resolve_index_1,
    gfc_resolve_iterator_expr, resolve_ordinary_assign,
    resolve_fl_var_and_proc, resolve_fl_variable_derived,
    resolve_fl_procedure, resolve_fl_derived0, resolve_fl_derived,
    resolve_fl_namelist, resolve_symbol, resolve_fntype): Ditto.
    * symbol.c (check_conflict, conflict, gfc_add_is_bind_c,
    gfc_add_extension, gfc_check_symbol_typed): Ditto.

Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/arith.c
    trunk/gcc/fortran/array.c
    trunk/gcc/fortran/check.c
    trunk/gcc/fortran/data.c
    trunk/gcc/fortran/decl.c
    trunk/gcc/fortran/error.c
    trunk/gcc/fortran/expr.c
    trunk/gcc/fortran/interface.c
    trunk/gcc/fortran/intrinsic.c
    trunk/gcc/fortran/io.c
    trunk/gcc/fortran/match.c
    trunk/gcc/fortran/module.c
    trunk/gcc/fortran/parse.c
    trunk/gcc/fortran/primary.c
    trunk/gcc/fortran/resolve.c
    trunk/gcc/fortran/symbol.c


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

* [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2012-07-17 21:51 ` janus at gcc dot gnu.org
@ 2012-07-18  8:11 ` janus at gcc dot gnu.org
  2012-07-18 12:54 ` janus at gcc dot gnu.org
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-07-18  8:11 UTC (permalink / raw)
  To: gcc-bugs

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

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Proc-pointer assignment:    |[F03] Proc-pointer
                   |Rejects valid internal      |assignment: Rejects valid
                   |proc, -std=f2008 should     |internal proc
                   |mention "F2008"             |

--- Comment #6 from janus at gcc dot gnu.org 2012-07-18 08:10:43 UTC ---
(In reply to comment #4)
> An alternative would be to add the correct label automatically inside
> 'gfc_notify_std', based on the value of 'GFC_STD_*' passed.

This has been implemented with r189589.

ToDo: Fix the bogus errors about INT and INT2, cf. comment 2 and 3.


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

* [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2012-07-18  8:11 ` [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc janus at gcc dot gnu.org
@ 2012-07-18 12:54 ` janus at gcc dot gnu.org
  2012-07-29 16:55 ` janus at gcc dot gnu.org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-07-18 12:54 UTC (permalink / raw)
  To: gcc-bugs

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

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
         AssignedTo|unassigned at gcc dot       |janus at gcc dot gnu.org
                   |gnu.org                     |

--- Comment #7 from janus at gcc dot gnu.org 2012-07-18 12:54:32 UTC ---
(In reply to comment #6)
> ToDo: Fix the bogus errors about INT and INT2, cf. comment 2 and 3.

The following patch makes the test case in comment #1 work:

Index: gcc/fortran/primary.c
===================================================================
--- gcc/fortran/primary.c    (revision 189608)
+++ gcc/fortran/primary.c    (working copy)
@@ -2843,9 +2843,6 @@ gfc_match_rvalue (gfc_expr **result)
         /* Parse functions returning a procptr.  */
         goto function0;

-      if (gfc_is_intrinsic (sym, 0, gfc_current_locus)
-          || gfc_is_intrinsic (sym, 1, gfc_current_locus))
-        sym->attr.intrinsic = 1;
       e = gfc_get_expr ();
       e->expr_type = EXPR_VARIABLE;
       e->symtree = symtree;


However, it regresses on proc_ptr_{1,6,11,12,15}.f90 and sizeof_proc.f90.

Surely the setting of attr.intrinsic comes too early in gfc_match_rvalue. It
probably should be deferred to resolution stage, where we know about the
presence of the internal proc.


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

* [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2012-07-18 12:54 ` janus at gcc dot gnu.org
@ 2012-07-29 16:55 ` janus at gcc dot gnu.org
  2012-07-29 19:04 ` janus at gcc dot gnu.org
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-07-29 16:55 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from janus at gcc dot gnu.org 2012-07-29 16:55:11 UTC ---
Related accepts-invalid problem with proc-pointer assignment to an internal
proc:

  implicit none
  procedure(real), pointer :: p
  p => scale
  print *,p(1.0,2)
end


/tmp/cc4EkFwV.o: In function `MAIN__':
test.f90:(.text+0xf): undefined reference to `_gfortran_specific__scale_4'


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

* [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2012-07-29 16:55 ` janus at gcc dot gnu.org
@ 2012-07-29 19:04 ` janus at gcc dot gnu.org
  2012-07-29 20:16 ` janus at gcc dot gnu.org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-07-29 19:04 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from janus at gcc dot gnu.org 2012-07-29 19:04:25 UTC ---
The following patch adds diagnostics to reject the invalid test case in comment
8:


Index: gcc/fortran/expr.c
===================================================================
--- gcc/fortran/expr.c    (revision 189929)
+++ gcc/fortran/expr.c    (working copy)
@@ -3444,6 +3444,13 @@ gfc_check_pointer_assign (gfc_expr *lvalue, gfc_ex
                   "at %L", rvalue->symtree->name, &rvalue->where)
                   == FAILURE)
         return FAILURE;
+      if (attr.intrinsic && gfc_intrinsic_actual_ok (rvalue->symtree->name,
+                             attr.subroutine) == 0)
+        {
+          gfc_error ("Intrinsic '%s' at %L is invalid in procedure pointer "
+             "assignment", rvalue->symtree->name, &rvalue->where);
+          return FAILURE;
+        }
     }
       /* Check for F08:C730.  */
       if (attr.elemental && !attr.intrinsic)


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

* [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2012-07-29 19:04 ` janus at gcc dot gnu.org
@ 2012-07-29 20:16 ` janus at gcc dot gnu.org
  2012-07-30 19:56 ` janus at gcc dot gnu.org
  2012-07-30 20:00 ` janus at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-07-29 20:16 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from janus at gcc dot gnu.org 2012-07-29 20:15:52 UTC ---
(In reply to comment #9)
> The following patch adds diagnostics to reject the invalid test case in comment
> 8:

... and regtests cleanly.


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

* [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2012-07-29 20:16 ` janus at gcc dot gnu.org
@ 2012-07-30 19:56 ` janus at gcc dot gnu.org
  2012-07-30 20:00 ` janus at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-07-30 19:56 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #11 from janus at gcc dot gnu.org 2012-07-30 19:55:45 UTC ---
Author: janus
Date: Mon Jul 30 19:55:41 2012
New Revision: 189985

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=189985
Log:
2012-07-30  Janus Weil  <janus@gcc.gnu.org>

    PR fortran/51081
    * gfortran.h (gfc_resolve_intrinsic): Add prototype.
    * expr.c (gfc_check_pointer_assign): Set INTRINSIC attribute if needed.
    Check for invalid intrinsics.
    * primary.c (gfc_match_rvalue): Check for intrinsics came too early.
    Set procedure flavor if appropriate.
    * resolve.c (resolve_intrinsic): Renamed to gfc_resolve_intrinsic.
    (resolve_procedure_interface,resolve_procedure_expression,
    resolve_function,resolve_fl_derived0,resolve_symbol): Ditto.

2012-07-30  Janus Weil  <janus@gcc.gnu.org>

    PR fortran/51081
    * gfortran.dg/proc_ptr_37.f90: New.

Added:
    trunk/gcc/testsuite/gfortran.dg/proc_ptr_37.f90
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/expr.c
    trunk/gcc/fortran/gfortran.h
    trunk/gcc/fortran/primary.c
    trunk/gcc/fortran/resolve.c
    trunk/gcc/testsuite/ChangeLog


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

* [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc
  2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  2012-07-30 19:56 ` janus at gcc dot gnu.org
@ 2012-07-30 20:00 ` janus at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: janus at gcc dot gnu.org @ 2012-07-30 20:00 UTC (permalink / raw)
  To: gcc-bugs

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

janus at gcc dot gnu.org changed:

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

--- Comment #12 from janus at gcc dot gnu.org 2012-07-30 19:59:51 UTC ---
r189985 fixes the test cases in comment 1 and 8, so that we can close this PR.


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

end of thread, other threads:[~2012-07-30 20:00 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-11-10 14:43 [Bug fortran/51081] New: -std=f2003: Internal procedure in proc-pointer assignment: Mention that it is valid in F2008 burnus at gcc dot gnu.org
2011-11-10 14:57 ` [Bug fortran/51081] Proc-pointer assignment: Rejects valid internal proc, -std=f2008 should mention "F2008" burnus at gcc dot gnu.org
2011-11-10 15:01 ` burnus at gcc dot gnu.org
2012-04-16 12:02 ` janus at gcc dot gnu.org
2012-04-16 12:37 ` janus at gcc dot gnu.org
2012-07-17 21:51 ` janus at gcc dot gnu.org
2012-07-18  8:11 ` [Bug fortran/51081] [F03] Proc-pointer assignment: Rejects valid internal proc janus at gcc dot gnu.org
2012-07-18 12:54 ` janus at gcc dot gnu.org
2012-07-29 16:55 ` janus at gcc dot gnu.org
2012-07-29 19:04 ` janus at gcc dot gnu.org
2012-07-29 20:16 ` janus at gcc dot gnu.org
2012-07-30 19:56 ` janus at gcc dot gnu.org
2012-07-30 20:00 ` janus 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).