re PR fortran/35030 (add type/kind information to pointer assignments)
authorDaniel Franke <franke.daniel@gmail.com>
Tue, 19 Feb 2008 18:26:12 +0000 (13:26 -0500)
committerDaniel Franke <dfranke@gcc.gnu.org>
Tue, 19 Feb 2008 18:26:12 +0000 (13:26 -0500)
2008-02-19  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/35030
* expr.c (gfc_check_pointer_assign): Add type and kind information
to type-mismatch message.
(gfc_check_assign): Unify error messages.

From-SVN: r132442

gcc/fortran/ChangeLog
gcc/fortran/expr.c

index c23b81f5e30462094994f10ecaa299580a6b0839..ea74958f3f9243d8def60d526ef96d1377c8f705 100644 (file)
@@ -1,3 +1,10 @@
+2008-02-19  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/35030
+       * expr.c (gfc_check_pointer_assign): Add type and kind information
+       to type-mismatch message.
+       (gfc_check_assign): Unify error messages.
+
 2008-02-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
        PR fortran/34952
@@ -18,7 +25,7 @@
 
 2008-02-10  Daniel Franke  <franke.daniel@gmail.com>
 
-       fortran/PR35019
+       PR fortran/35019
        * lang.opt: Allow '-J<dir>' next to '-J <dir>', 
        likewise '-I <dir>' and '-I<dir>'.
 
index ac159f5ce6ca6fbc518deec6e4ba9b9969e4c92d..bfb61fdf6a8a7a02a77f98a157e70d5cca9ccdc1 100644 (file)
@@ -2825,8 +2825,8 @@ gfc_check_assign (gfc_expr *lvalue, gfc_expr *rvalue, int conform)
       if (lvalue->ts.type == BT_LOGICAL && rvalue->ts.type == BT_LOGICAL)
        return SUCCESS;
 
-      gfc_error ("Incompatible types in assignment at %L, %s to %s",
-                &rvalue->where, gfc_typename (&rvalue->ts),
+      gfc_error ("Incompatible types in assignment at %L; attempted assignment "
+                "of %s to %s", &rvalue->where, gfc_typename (&rvalue->ts),
                 gfc_typename (&lvalue->ts));
 
       return FAILURE;
@@ -2909,8 +2909,9 @@ gfc_check_pointer_assign (gfc_expr *lvalue, gfc_expr *rvalue)
 
   if (!gfc_compare_types (&lvalue->ts, &rvalue->ts))
     {
-      gfc_error ("Different types in pointer assignment at %L",
-                &lvalue->where);
+      gfc_error ("Different types in pointer assignment at %L; attempted "
+                "assignment of %s to %s", &lvalue->where, 
+                gfc_typename (&rvalue->ts), gfc_typename (&lvalue->ts));
       return FAILURE;
     }