/* stc.h -- Private #include File (module.h template V1.0) Copyright (C) 1995 Free Software Foundation, Inc. Contributed by James Craig Burley. This file is part of GNU Fortran. GNU Fortran is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Fortran is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Fortran; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Owning Modules: stc.c Modifications: */ /* Allow multiple inclusion to work. */ #ifndef _H_f_stc #define _H_f_stc /* Simple definitions and enumerations. */ /* Typedefs. */ /* Include files needed by this one. */ #include "bad.h" #include "bld.h" #include "expr.h" #include "lex.h" #include "stp.h" #include "str.h" #include "stt.h" /* Structure definitions. */ /* Global objects accessed by users of this module. */ extern ffeexprContext ffestc_iolist_context_; /* Declare functions with prototypes. */ void ffestc_decl_start (ffestpType type, ffelexToken typet, ffebld kind, ffelexToken kindt, ffebld len, ffelexToken lent); void ffestc_decl_attrib (ffestpAttrib attrib, ffelexToken attribt, ffestrOther intent_kw, ffesttDimList dims); void ffestc_decl_item (ffelexToken name, ffebld kind, ffelexToken kindt, ffesttDimList dims, ffebld len, ffelexToken lent, ffebld init, ffelexToken initt, bool clist); void ffestc_decl_itemstartvals (void); void ffestc_decl_itemvalue (ffebld repeat, ffelexToken repeat_token, ffebld value, ffelexToken value_token); void ffestc_decl_itemendvals (ffelexToken t); void ffestc_decl_finish (void); void ffestc_elsewhere (ffelexToken where_token); void ffestc_end (void); void ffestc_eof (void); bool ffestc_exec_transition (void); void ffestc_ffebad_here_doiter (ffebadIndex i, ffesymbol s); void ffestc_init_3 (void); void ffestc_init_4 (void); bool ffestc_is_decl_not_R1219 (void); bool ffestc_is_entry_in_subr (void); bool ffestc_is_let_not_V027 (void); #if FFESTR_F90 void ffestc_let (ffebld dest, ffebld source, ffelexToken source_token); #else #define ffestc_let ffestc_R737 #endif #if FFESTR_F90 void ffestc_module (ffelexToken module_name, ffelexToken procedure_name); #endif #if FFESTR_F90 void ffestc_private (void); #endif void ffestc_terminate_4 (void); #if FFESTR_F90 void ffestc_R423A (void); void ffestc_R423B (void); void ffestc_R424 (ffelexToken access, ffestrOther access_kw, ffelexToken name); void ffestc_R425 (ffelexToken name); void ffestc_R426_start (ffestpType type, ffelexToken typet, ffebld kind, ffelexToken kindt, ffebld len, ffelexToken lent); void ffestc_R426_attrib (ffestpAttrib attrib, ffelexToken attribt, ffestrOther intent_kw, ffesttDimList dims); void ffestc_R426_item (ffelexToken name, ffebld kind, ffelexToken kindt, ffesttDimList dims, ffebld len, ffelexToken lent, ffebld init, ffelexToken initt, bool clist); void ffestc_R426_itemstartvals (void); void ffestc_R426_itemvalue (ffebld repeat, ffelexToken repeat_token, ffebld value, ffelexToken value_token); void ffestc_R426_itemendvals (ffelexToken t); void ffestc_R426_finish (void); #endif void ffestc_R501_start (ffestpType type, ffelexToken typet, ffebld kind, ffelexToken kindt, ffebld len, ffelexToken lent); void ffestc_R501_attrib (ffestpAttrib attrib, ffelexToken attribt, ffestrOther intent_kw, ffesttDimList dims); void ffestc_R501_item (ffelexToken name, ffebld kind, ffelexToken kindt, ffesttDimList dims, ffebld len, ffelexToken lent, ffebld init, ffelexToken initt, bool clist); void ffestc_R501_itemstartvals (void); void ffestc_R501_itemvalue (ffebld repeat, ffelexToken repeat_token, ffebld value, ffelexToken value_token); void ffestc_R501_itemendvals (ffelexToken t); void ffestc_R501_finish (void); #if FFESTR_F90 void ffestc_R519_start (ffelexToken intent, ffestrOther intent_kw); void ffestc_R519_item (ffelexToken name); void ffestc_R519_finish (void); void ffestc_R520_start (void); void ffestc_R520_item (ffelexToken name); void ffestc_R520_finish (void); void ffestc_R521A (void); void ffestc_R521Astart (void); void ffestc_R521Aitem (ffelexToken name); void ffestc_R521Afinish (void); void ffestc_R521B (void); void ffestc_R521Bstart (void); void ffestc_R521Bitem (ffelexToken name); void ffestc_R521Bfinish (void); #endif void ffestc_R522 (void); void ffestc_R522start (void); void ffestc_R522item_object (ffelexToken name); void ffestc_R522item_cblock (ffelexToken name); void ffestc_R522finish (void); void ffestc_R524_start (bool virtual); void ffestc_R524_item (ffelexToken name, ffesttDimList dims); void ffestc_R524_finish (void); #if FFESTR_F90 void ffestc_R525_start (void); void ffestc_R525_item (ffelexToken name, ffesttDimList dims); void ffestc_R525_finish (void); void ffestc_R526_start (void); void ffestc_R526_item (ffelexToken name, ffesttDimList dims); void ffestc_R526_finish (void); void ffestc_R527_start (void); void ffestc_R527_item (ffelexToken name, ffesttDimList dims); void ffestc_R527_finish (void); #endif void ffestc_R528_start (void); void ffestc_R528_item_object (ffebld expr, ffelexToken expr_token); void ffestc_R528_item_startvals (void); void ffestc_R528_item_value (ffebld repeat, ffelexToken repeat_token, ffebld value, ffelexToken value_token); void ffestc_R528_item_endvals (ffelexToken t); void ffestc_R528_finish (void); void ffestc_R537_start (void); void ffestc_R537_item (ffebld dest, ffelexToken dest_token, ffebld source, ffelexToken source_token); void ffestc_R537_finish (void); void ffestc_R539 (void); void ffestc_R539start (void); void ffestc_R539item (ffestpType type, ffebld kind, ffelexToken kindt, ffebld len, ffelexToken lent, ffesttImpList letters); void ffestc_R539finish (void); void ffestc_R542_start (void); void ffestc_R542_item_nlist (ffelexToken name); void ffestc_R542_item_nitem (ffelexToken name); void ffestc_R542_finish (void); void ffestc_R544_start (void); void ffestc_R544_item (ffesttExprList exprlist); void ffestc_R544_finish (void); void ffestc_R547_start (void); void ffestc_R547_item_object (ffelexToken name, ffesttDimList dims); void ffestc_R547_item_cblock (ffelexToken name); void ffestc_R547_finish (void); #if FFESTR_F90 void ffestc_R620 (ffesttExprList objects, ffebld stat, ffelexToken stat_token); void ffestc_R624 (ffesttExprList pointers); void ffestc_R625 (ffesttExprList objects, ffebld stat, ffelexToken stat_token); #endif void ffestc_R737 (ffebld dest, ffebld source, ffelexToken source_token); #if FFESTR_F90 void ffestc_R738 (ffebld dest, ffebld source, ffelexToken source_token); void ffestc_R740 (ffebld expr, ffelexToken expr_token); void ffestc_R742 (ffebld expr, ffelexToken expr_token); void ffestc_R744 (void); void ffestc_R745 (void); #endif void ffestc_R803 (ffelexToken construct_name, ffebld expr, ffelexToken expr_token); void ffestc_R804 (ffebld expr, ffelexToken expr_token, ffelexToken name); void ffestc_R805 (ffelexToken name); void ffestc_R806 (ffelexToken name); void ffestc_R807 (ffebld expr, ffelexToken expr_token); void ffestc_R809 (ffelexToken construct_name, ffebld expr, ffelexToken expr_token); void ffestc_R810 (ffesttCaseList cases, ffelexToken name); void ffestc_R811 (ffelexToken name); void ffestc_R819A (ffelexToken construct_name, ffelexToken label, ffebld var, ffelexToken var_token, ffebld start, ffelexToken start_token, ffebld end, ffelexToken end_token, ffebld incr, ffelexToken incr_token); void ffestc_R819B (ffelexToken construct_name, ffelexToken label, ffebld expr, ffelexToken expr_token); void ffestc_R820A (ffelexToken construct_name, ffebld var, ffelexToken var_token, ffebld start, ffelexToken start_token, ffebld end, ffelexToken end_token, ffebld incr, ffelexToken incr_token); void ffestc_R820B (ffelexToken construct_name, ffebld expr, ffelexToken expr_token); void ffestc_R825 (ffelexToken name); void ffestc_R834 (ffelexToken name); void ffestc_R835 (ffelexToken name); void ffestc_R836 (ffelexToken label); void ffestc_R837 (ffesttTokenList label_toks, ffebld expr, ffelexToken expr_token); void ffestc_R838 (ffelexToken label, ffebld target, ffelexToken target_token); void ffestc_R839 (ffebld target, ffelexToken target_token, ffesttTokenList label_toks); void ffestc_R840 (ffebld expr, ffelexToken expr_token, ffelexToken neg, ffelexToken zero, ffelexToken pos); void ffestc_R841 (void); void ffestc_R842 (ffebld expr, ffelexToken expr_token); void ffestc_R843 (ffebld expr, ffelexToken expr_token); void ffestc_R904 (void); void ffestc_R907 (void); void ffestc_R909_start (bool only_format); void ffestc_R909_item (ffebld expr, ffelexToken expr_token); void ffestc_R909_finish (void); void ffestc_R910_start (void); void ffestc_R910_item (ffebld expr, ffelexToken expr_token); void ffestc_R910_finish (void); void ffestc_R911_start (void); void ffestc_R911_item (ffebld expr, ffelexToken expr_token); void ffestc_R911_finish (void); void ffestc_R919 (void); void ffestc_R920 (void); void ffestc_R921 (void); void ffestc_R923A (void); void ffestc_R923B_start (void); void ffestc_R923B_item (ffebld expr, ffelexToken expr_token); void ffestc_R923B_finish (void); void ffestc_R1001 (ffesttFormatList f); void ffestc_R1102 (ffelexToken name); void ffestc_R1103 (ffelexToken name); #if FFESTR_F90 void ffestc_R1105 (ffelexToken name); void ffestc_R1106 (ffelexToken name); void ffestc_R1107_start (ffelexToken name, bool only); void ffestc_R1107_item (ffelexToken local, ffelexToken use); void ffestc_R1107_finish (void); #endif void ffestc_R1111 (ffelexToken name); void ffestc_R1112 (ffelexToken name); #if FFESTR_F90 void ffestc_R1202 (ffestpDefinedOperator operator, ffelexToken name); void ffestc_R1203 (void); void ffestc_R1205_start (void); void ffestc_R1205_item (ffelexToken name); void ffestc_R1205_finish (void); #endif void ffestc_R1207_start (void); void ffestc_R1207_item (ffelexToken name); void ffestc_R1207_finish (void); void ffestc_R1208_start (void); void ffestc_R1208_item (ffelexToken name); void ffestc_R1208_finish (void); void ffestc_R1212 (ffebld expr, ffelexToken expr_token); #if FFESTR_F90 void ffestc_R1213 (ffebld dest, ffebld source, ffelexToken source_token); #endif void ffestc_R1219 (ffelexToken funcname, ffesttTokenList args, ffelexToken final, ffestpType type, ffebld kind, ffelexToken kindt, ffebld len, ffelexToken lent, ffelexToken recursive, ffelexToken result); void ffestc_R1221 (ffelexToken name); void ffestc_R1223 (ffelexToken subrname, ffesttTokenList args, ffelexToken final, ffelexToken recursive); void ffestc_R1225 (ffelexToken name); void ffestc_R1226 (ffelexToken entryname, ffesttTokenList args, ffelexToken final); void ffestc_R1227 (ffebld expr, ffelexToken expr_token); #if FFESTR_F90 void ffestc_R1228 (void); #endif void ffestc_R1229_start (ffelexToken name, ffesttTokenList args, ffelexToken final); void ffestc_R1229_finish (ffebld expr, ffelexToken expr_token); void ffestc_S3P4 (ffebld filename, ffelexToken filename_token); #if FFESTR_VXT void ffestc_V003_start (ffelexToken structure_name); void ffestc_V003_item (ffelexToken name, ffesttDimList dims); void ffestc_V003_finish (void); void ffestc_V004 (void); void ffestc_V009 (void); void ffestc_V010 (void); void ffestc_V012 (void); void ffestc_V013 (void); #endif void ffestc_V014_start (void); void ffestc_V014_item_object (ffelexToken name); void ffestc_V014_item_cblock (ffelexToken name); void ffestc_V014_finish (void); #if FFESTR_VXT void ffestc_V016_start (void); void ffestc_V016_item_structure (ffelexToken name); void ffestc_V016_item_object (ffelexToken name, ffesttDimList dims); void ffestc_V016_finish (void); void ffestc_V018_start (void); void ffestc_V018_item (ffebld expr, ffelexToken expr_token); void ffestc_V018_finish (void); void ffestc_V019_start (void); void ffestc_V019_item (ffebld expr, ffelexToken expr_token); void ffestc_V019_finish (void); #endif void ffestc_V020_start (void); void ffestc_V020_item (ffebld expr, ffelexToken expr_token); void ffestc_V020_finish (void); #if FFESTR_VXT void ffestc_V021 (void); void ffestc_V022 (void); void ffestc_V023_start (void); void ffestc_V023_item (ffebld expr, ffelexToken expr_token); void ffestc_V023_finish (void); void ffestc_V024_start (void); void ffestc_V024_item (ffebld expr, ffelexToken expr_token); void ffestc_V024_finish (void); void ffestc_V025_start (void); void ffestc_V025_item (ffebld u, ffelexToken ut, ffebld m, ffelexToken mt, ffebld n, ffelexToken nt, ffebld asv, ffelexToken asvt); void ffestc_V025_finish (void); void ffestc_V026 (void); #endif void ffestc_V027_start (void); void ffestc_V027_item (ffelexToken dest_token, ffebld source, ffelexToken source_token); void ffestc_V027_finish (void); void ffestc_any (void); /* Define macros. */ #define ffestc_context_iolist() ffestc_iolist_context_ #define ffestc_init_0() #define ffestc_init_1() #define ffestc_init_2() #define ffestc_terminate_0() #define ffestc_terminate_1() #define ffestc_terminate_2() #define ffestc_terminate_3() /* End of #include file. */ #endif