gcc/fortran:
2007-07-08 Daniel Franke <franke.daniel@gmail.com>
PR fortran/29876
* module.c (gfc_match_use): Do not set an non-existant
intrinsic operator if a user-defined operator is found.
gcc/testsuite:
2007-07-08 Daniel Franke <franke.daniel@gmail.com>
PR fortran/29876
* gfortran.dg/operator_6.f90: New test.
From-SVN: r126472
+2007-07-08 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/29876
+ * module.c (gfc_match_use): Do not set an non-existant
+ intrinsic operator if a user-defined operator is found.
+
2007-07-08 Daniel Franke <franke.daniel@gmail.com>
PR fortran/24784
"an external module name.", module_name);
goto cleanup;
}
-
- if (type == INTERFACE_USER_OP)
- new->operator = operator;
-
break;
case INTERFACE_INTRINSIC_OP:
PR libfortran/32217
* gfortran.dg/unpack_zerosize_1.f90: New test case.
+2007-07-08 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/29876
+ * gfortran.dg/operator_6.f90: New test.
+
2007-07-08 Daniel Franke <franke.daniel@gmail.com>
PR fortran/17711
--- /dev/null
+! { dg-do compile }
+!
+! PR fortran/29876 ICE on bad operator in ONLY clause of USE statement
+! Testcase contributed by Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+!
+module foo
+end module foo
+
+program test
+ use foo, only : operator(.none.) ! { dg-error "not found in module" }
+ end program test
+! { dg-final { cleanup-modules "foo" } }