diff options
Diffstat (limited to 'gcc/fortran/st.c')
-rw-r--r-- | gcc/fortran/st.c | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/gcc/fortran/st.c b/gcc/fortran/st.c index dc0a01e..e7461a7 100644 --- a/gcc/fortran/st.c +++ b/gcc/fortran/st.c @@ -1,5 +1,6 @@ /* Build executable statement trees. - Copyright (C) 2000, 2001, 2002, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 2000, 2001, 2002, 2004, 2005, 2006 + Free Software Foundation, Inc. Contributed by Andy Vaught This file is part of GCC. @@ -161,6 +162,33 @@ gfc_free_statement (gfc_code * p) gfc_free_forall_iterator (p->ext.forall_iterator); break; + case EXEC_OMP_DO: + case EXEC_OMP_END_SINGLE: + case EXEC_OMP_PARALLEL: + case EXEC_OMP_PARALLEL_DO: + case EXEC_OMP_PARALLEL_SECTIONS: + case EXEC_OMP_SECTIONS: + case EXEC_OMP_SINGLE: + case EXEC_OMP_WORKSHARE: + case EXEC_OMP_PARALLEL_WORKSHARE: + gfc_free_omp_clauses (p->ext.omp_clauses); + break; + + case EXEC_OMP_CRITICAL: + gfc_free ((char *) p->ext.omp_name); + break; + + case EXEC_OMP_FLUSH: + gfc_free_namelist (p->ext.omp_namelist); + break; + + case EXEC_OMP_ATOMIC: + case EXEC_OMP_BARRIER: + case EXEC_OMP_MASTER: + case EXEC_OMP_ORDERED: + case EXEC_OMP_END_NOWAIT: + break; + default: gfc_internal_error ("gfc_free_statement(): Bad statement"); } |