diff options
Diffstat (limited to 'gcc/fortran/gfortran.h')
-rw-r--r-- | gcc/fortran/gfortran.h | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/gcc/fortran/gfortran.h b/gcc/fortran/gfortran.h index 8795bee3c91..3a7f98a8792 100644 --- a/gcc/fortran/gfortran.h +++ b/gcc/fortran/gfortran.h @@ -199,7 +199,7 @@ gfc_intrinsic_op; /* Arithmetic results. */ typedef enum { ARITH_OK = 1, ARITH_OVERFLOW, ARITH_UNDERFLOW, ARITH_NAN, - ARITH_DIV0, ARITH_INCOMMENSURATE, ARITH_ASYMMETRIC + ARITH_DIV0, ARITH_INCOMMENSURATE, ARITH_ASYMMETRIC, ARITH_PROHIBIT } arith; @@ -527,6 +527,7 @@ typedef enum GFC_INIT_REAL_OFF = 0, GFC_INIT_REAL_ZERO, GFC_INIT_REAL_NAN, + GFC_INIT_REAL_SNAN, GFC_INIT_REAL_INF, GFC_INIT_REAL_NEG_INF } @@ -953,10 +954,9 @@ gfc_omp_clauses; #define gfc_get_omp_clauses() XCNEW (gfc_omp_clauses) -/* The gfc_st_label structure is a doubly linked list attached to a - namespace that records the usage of statement labels within that - space. */ -/* TODO: Make format/statement specifics a union. */ +/* The gfc_st_label structure is a BBT attached to a namespace that + records the usage of statement labels within that space. */ + typedef struct gfc_st_label { BBT_HEADER(gfc_st_label); @@ -1019,7 +1019,7 @@ typedef struct gfc_typebound_proc union { - struct gfc_symtree* specific; + struct gfc_symtree* specific; /* The interface if DEFERRED. */ gfc_tbp_generic* generic; } u; @@ -1038,6 +1038,7 @@ typedef struct gfc_typebound_proc unsigned nopass:1; /* Whether we have NOPASS (PASS otherwise). */ unsigned non_overridable:1; + unsigned deferred:1; unsigned is_generic:1; unsigned function:1, subroutine:1; unsigned error:1; /* Ignore it, when an error occurred during resolution. */ @@ -1547,8 +1548,10 @@ typedef struct gfc_expr locus where; /* True if the expression is a call to a function that returns an array, - and if we have decided not to allocate temporary data for that array. */ - unsigned int inline_noncopying_intrinsic : 1, is_boz : 1; + and if we have decided not to allocate temporary data for that array. + is_boz is true if the integer is regarded as BOZ bitpatten and is_snan + denotes a signalling not-a-number. */ + unsigned int inline_noncopying_intrinsic : 1, is_boz : 1, is_snan : 1; /* Sometimes, when an error has been emitted, it is necessary to prevent it from recurring. */ @@ -1858,7 +1861,8 @@ gfc_forall_iterator; /* Executable statements that fill gfc_code structures. */ typedef enum { - EXEC_NOP = 1, EXEC_ASSIGN, EXEC_LABEL_ASSIGN, EXEC_POINTER_ASSIGN, + EXEC_NOP = 1, EXEC_END_BLOCK, EXEC_ASSIGN, EXEC_LABEL_ASSIGN, + EXEC_POINTER_ASSIGN, EXEC_GOTO, EXEC_CALL, EXEC_COMPCALL, EXEC_ASSIGN_CALL, EXEC_RETURN, EXEC_ENTRY, EXEC_PAUSE, EXEC_STOP, EXEC_CONTINUE, EXEC_INIT_ASSIGN, EXEC_IF, EXEC_ARITHMETIC_IF, EXEC_DO, EXEC_DO_WHILE, EXEC_SELECT, @@ -2005,7 +2009,6 @@ typedef struct int flag_automatic; int flag_backslash; int flag_backtrace; - int flag_check_array_temporaries; int flag_allow_leading_underscore; int flag_dump_core; int flag_external_blas; @@ -2026,6 +2029,7 @@ typedef struct int flag_align_commons; int fpe; + int rtcheck; int warn_std; int allow_std; |