Commit df0b360e by Tobias Burnus Committed by Tobias Burnus

re PR fortran/55197 (Use statement for omp_lib causes ICE)

2012-12-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55197
        * module.c (gfc_use_module): Free rename list only for
        internally generated intrinsic modules.

2012-12-16  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55197
        * gfortran.dg/gomp/use_intrinsic_1.f90: New.

From-SVN: r194537
parent f6c28ef1
2012-12-16 Tobias Burnus <burnus@net-b.de>
PR fortran/55197
* module.c (gfc_use_module): Free rename list only for
internally generated intrinsic modules.
2012-12-16 Tobias Burnus <burnus@net-b.de>
* trans-intrinsic.c (conv_intrinsic_move_alloc): Set dynamic
type of the FROM variable to the declared type.
......
......@@ -6157,6 +6157,8 @@ gfc_use_module (gfc_use_list *module)
"intrinsic module at %C") != FAILURE)
{
use_iso_fortran_env_module ();
free_rename (module->rename);
module->rename = NULL;
gfc_current_locus = old_locus;
module->intrinsic = true;
return;
......@@ -6167,6 +6169,8 @@ gfc_use_module (gfc_use_list *module)
"ISO_C_BINDING module at %C") != FAILURE)
{
import_iso_c_binding_module();
free_rename (module->rename);
module->rename = NULL;
gfc_current_locus = old_locus;
module->intrinsic = true;
return;
......@@ -6359,8 +6363,6 @@ gfc_use_modules (void)
next = module_list->next;
rename_list_remove_duplicate (module_list->rename);
gfc_use_module (module_list);
if (module_list->intrinsic)
free_rename (module_list->rename);
free (module_list);
}
gfc_rename_list = NULL;
......
2012-12-16 Tobias Burnus <burnus@net-b.de>
PR fortran/55197
* gfortran.dg/gomp/use_intrinsic_1.f90: New.
2012-12-16 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/move_alloc_14.f90: New.
2012-12-16 Tobias Burnus <burnus@net-b.de>
......
! { dg-do compile }
!
! PR fortran/55197
!
! Contributed by Erik Toussaint
!
use, intrinsic :: omp_lib, only: omp_get_num_threads
use, intrinsic :: omp_lib_kinds , foo => omp_lock_kind
print *, foo
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment