52 #define YYBISON_VERSION "3.8.2"
55 #define YYSKELETON_NAME "yacc.c"
68 #define yyparse tp_parse
70 #define yyerror tp_error
71 #define yydebug tp_debug
72 #define yynerrs tp_nerrs
73 #define yylval tp_lval
74 #define yychar tp_char
80 #include "pips_config.h"
85 #include <sys/param.h>
98 #include "resources.h"
114 #define YYERROR_VERBOSE 1
118 extern int yylex(
void);
119 extern void yyerror(
const char *);
129 string ival = getenv(var);
133 user_log(
"setenv %s \"%s\"\n", var, val);
234 static bool just_show(
const char* rname,
const char* mname)
251 fprintf(stdout,
"resource %s[%s] is file %s\n", rname, mname, file);
265 string save_current_module_name;
283 if (mod_name != NULL)
285 if (!what(res->
the_name, mod_name)) {
295 if (save_current_module_name!=NULL)
300 free(save_current_module_name);
311 user_log(
"shell%s%s\n", (s[0]==
' '|| s[0]==
'\t')?
"":
" ", s);
366 fprintf(stdout,
"%s\n", ws? ws:
"");
372 fprintf(stdout,
"%s\n", m? m:
"");
391 else fprintf(stdout,
"%s ", m);
418 int number_of_main = 0;
431 while (number_of_main==0 && n<2)
479 FILE * sourced = fopen(name,
"r");
481 perror(
"while sourcing");
488 fprintf(stderr,
"cannot source file '%s'\n", name);
509 # define YY_CAST(Type, Val) static_cast<Type> (Val)
510 # define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
512 # define YY_CAST(Type, Val) ((Type) (Val))
513 # define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
517 # if defined __cplusplus
518 # if 201103L <= __cplusplus
519 # define YY_NULLPTR nullptr
521 # define YY_NULLPTR 0
524 # define YY_NULLPTR ((void*)0)
530 #ifndef YY_TP_Y_TAB_H_INCLUDED
531 # define YY_TP_Y_TAB_H_INCLUDED
608 #define TK_CREATE 259
610 #define TK_CHECKPOINT 261
611 #define TK_DELETE 262
612 #define TK_MODULE 263
615 #define TK_CAPPLY 266
616 #define TK_DISPLAY 267
617 #define TK_REMOVE 268
618 #define TK_ACTIVATE 269
619 #define TK_SET_PROPERTY 270
620 #define TK_GET_PROPERTY 271
621 #define TK_SET_ENVIRONMENT 272
622 #define TK_GET_ENVIRONMENT 273
623 #define TK_UNSET_ENVIRONMENT 274
629 #define TK_SOURCE 280
632 #define TK_UNKNOWN 283
633 #define TK_TIMEOUT 284
637 #define TK_CHECKACTIVE 288
638 #define TK_VERSION 289
640 #define TK_OWNER_NAME 291
641 #define TK_OWNER_ALL 292
642 #define TK_OWNER_ALLFUNC 293
643 #define TK_OWNER_ALLCU 294
644 #define TK_OWNER_PROGRAM 295
645 #define TK_OWNER_MAIN 296
646 #define TK_OWNER_MODULE 297
647 #define TK_OWNER_CALLERS 298
648 #define TK_OWNER_CALLEES 299
649 #define TK_OPENPAREN 300
651 #define TK_CLOSEPAREN 302
654 #define TK_A_STRING 305
655 #define TK_ENDOFLINE 306
659 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
662 #line 501 "tp_yacc.y"
674 # define YYSTYPE_IS_TRIVIAL 1
675 # define YYSTYPE_IS_DECLARED 1
803 #ifndef __PTRDIFF_MAX__
805 # if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
816 #ifdef __INT_LEAST8_MAX__
818 #elif defined YY_STDINT_H
824 #ifdef __INT_LEAST16_MAX__
826 #elif defined YY_STDINT_H
838 # undef UINT_LEAST8_MAX
839 # undef UINT_LEAST16_MAX
840 # define UINT_LEAST8_MAX 255
841 # define UINT_LEAST16_MAX 65535
844 #if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
846 #elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
847 && UINT_LEAST8_MAX <= INT_MAX)
849 #elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
855 #if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
857 #elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
858 && UINT_LEAST16_MAX <= INT_MAX)
860 #elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
867 # if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
868 # define YYPTRDIFF_T __PTRDIFF_TYPE__
869 # define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
870 # elif defined PTRDIFF_MAX
874 # define YYPTRDIFF_T ptrdiff_t
875 # define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
877 # define YYPTRDIFF_T long
878 # define YYPTRDIFF_MAXIMUM LONG_MAX
883 # ifdef __SIZE_TYPE__
884 # define YYSIZE_T __SIZE_TYPE__
885 # elif defined size_t
886 # define YYSIZE_T size_t
887 # elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
889 # define YYSIZE_T size_t
891 # define YYSIZE_T unsigned
895 #define YYSIZE_MAXIMUM \
896 YY_CAST (YYPTRDIFF_T, \
897 (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \
898 ? YYPTRDIFF_MAXIMUM \
899 : YY_CAST (YYSIZE_T, -1)))
901 #define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
911 # if defined YYENABLE_NLS && YYENABLE_NLS
913 # include <libintl.h>
914 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
918 # define YY_(Msgid) Msgid
923 #ifndef YY_ATTRIBUTE_PURE
924 # if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
925 # define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
927 # define YY_ATTRIBUTE_PURE
931 #ifndef YY_ATTRIBUTE_UNUSED
932 # if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
933 # define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
935 # define YY_ATTRIBUTE_UNUSED
940 #if ! defined lint || defined __GNUC__
941 # define YY_USE(E) ((void) (E))
947 #if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
948 # if __GNUC__ * 100 + __GNUC_MINOR__ < 407
949 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
950 _Pragma ("GCC diagnostic push") \
951 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
953 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
954 _Pragma ("GCC diagnostic push") \
955 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
956 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
958 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
959 _Pragma ("GCC diagnostic pop")
961 # define YY_INITIAL_VALUE(Value) Value
963 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
964 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
965 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
967 #ifndef YY_INITIAL_VALUE
968 # define YY_INITIAL_VALUE(Value)
971 #if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
972 # define YY_IGNORE_USELESS_CAST_BEGIN \
973 _Pragma ("GCC diagnostic push") \
974 _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
975 # define YY_IGNORE_USELESS_CAST_END \
976 _Pragma ("GCC diagnostic pop")
978 #ifndef YY_IGNORE_USELESS_CAST_BEGIN
979 # define YY_IGNORE_USELESS_CAST_BEGIN
980 # define YY_IGNORE_USELESS_CAST_END
984 #define YY_ASSERT(E) ((void) (0 && (E)))
986 #if !defined yyoverflow
990 # ifdef YYSTACK_USE_ALLOCA
991 # if YYSTACK_USE_ALLOCA
993 # define YYSTACK_ALLOC __builtin_alloca
994 # elif defined __BUILTIN_VA_ARG_INCR
997 # define YYSTACK_ALLOC __alloca
998 # elif defined _MSC_VER
1000 # define alloca _alloca
1002 # define YYSTACK_ALLOC alloca
1003 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
1004 # include <stdlib.h>
1006 # ifndef EXIT_SUCCESS
1007 # define EXIT_SUCCESS 0
1014 # ifdef YYSTACK_ALLOC
1016 # define YYSTACK_FREE(Ptr) do { ; } while (0)
1017 # ifndef YYSTACK_ALLOC_MAXIMUM
1022 # define YYSTACK_ALLOC_MAXIMUM 4032
1025 # define YYSTACK_ALLOC YYMALLOC
1026 # define YYSTACK_FREE YYFREE
1027 # ifndef YYSTACK_ALLOC_MAXIMUM
1028 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
1030 # if (defined __cplusplus && ! defined EXIT_SUCCESS \
1031 && ! ((defined YYMALLOC || defined malloc) \
1032 && (defined YYFREE || defined free)))
1033 # include <stdlib.h>
1034 # ifndef EXIT_SUCCESS
1035 # define EXIT_SUCCESS 0
1039 # define YYMALLOC malloc
1040 # if ! defined malloc && ! defined EXIT_SUCCESS
1045 # define YYFREE free
1046 # if ! defined free && ! defined EXIT_SUCCESS
1053 #if (! defined yyoverflow \
1054 && (! defined __cplusplus \
1055 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
1065 # define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
1069 # define YYSTACK_BYTES(N) \
1070 ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
1071 + YYSTACK_GAP_MAXIMUM)
1073 # define YYCOPY_NEEDED 1
1080 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
1083 YYPTRDIFF_T yynewbytes; \
1084 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
1085 Stack = &yyptr->Stack_alloc; \
1086 yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
1087 yyptr += yynewbytes / YYSIZEOF (*yyptr); \
1093 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
1097 # if defined __GNUC__ && 1 < __GNUC__
1098 # define YYCOPY(Dst, Src, Count) \
1099 __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
1101 # define YYCOPY(Dst, Src, Count) \
1105 for (yyi = 0; yyi < (Count); yyi++) \
1106 (Dst)[yyi] = (Src)[yyi]; \
1119 #define YYNTOKENS 53
1123 #define YYNRULES 103
1125 #define YYNSTATES 185
1128 #define YYMAXUTOK 307
1133 #define YYTRANSLATE(YYX) \
1134 (0 <= (YYX) && (YYX) <= YYMAXUTOK \
1135 ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \
1142 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1143 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1144 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1145 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1146 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1147 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1148 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1149 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1150 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1151 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1152 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1153 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1154 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1155 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1156 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1157 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1158 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1159 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1160 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1161 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1162 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1163 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1164 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1165 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1166 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1167 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
1168 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
1169 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1170 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
1171 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
1172 45, 46, 47, 48, 49, 50, 51, 52
1179 0, 511, 511, 512, 515, 516, 517, 518, 519, 520,
1180 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
1181 531, 532, 533, 534, 535, 536, 537, 538, 539, 540,
1182 541, 542, 543, 544, 545, 546, 547, 548, 551, 559,
1183 565, 579, 583, 589, 616, 620, 626, 667, 676, 684,
1184 691, 699, 708, 719, 721, 723, 725, 727, 729, 731,
1185 733, 737, 741, 745, 757, 790, 798, 878, 882, 889,
1186 922, 940, 947, 954, 961, 968, 975, 982, 989, 1005,
1187 1019, 1039, 1046, 1049, 1054, 1061, 1064, 1072, 1080, 1091,
1188 1102, 1113, 1122, 1134, 1143, 1162, 1170, 1173, 1199, 1203,
1189 1205, 1209, 1217, 1225
1194 #define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State])
1203 static const char *
const yytname[] =
1205 "\"end of file\"",
"error",
"\"invalid token\"",
"TK_OPEN",
"TK_CREATE",
1206 "TK_CLOSE",
"TK_CHECKPOINT",
"TK_DELETE",
"TK_MODULE",
"TK_MAKE",
1207 "TK_APPLY",
"TK_CAPPLY",
"TK_DISPLAY",
"TK_REMOVE",
"TK_ACTIVATE",
1208 "TK_SET_PROPERTY",
"TK_GET_PROPERTY",
"TK_SET_ENVIRONMENT",
1209 "TK_GET_ENVIRONMENT",
"TK_UNSET_ENVIRONMENT",
"TK_CDIR",
"TK_INFO",
1210 "TK_PWD",
"TK_HELP",
"TK_SHOW",
"TK_SOURCE",
"TK_SHELL",
"TK_ECHO",
1211 "TK_UNKNOWN",
"TK_TIMEOUT",
"TK_QUIT",
"TK_EXIT",
"TK_LINE",
1212 "TK_CHECKACTIVE",
"TK_VERSION",
"TK_TOUCH",
"TK_OWNER_NAME",
1213 "TK_OWNER_ALL",
"TK_OWNER_ALLFUNC",
"TK_OWNER_ALLCU",
"TK_OWNER_PROGRAM",
1214 "TK_OWNER_MAIN",
"TK_OWNER_MODULE",
"TK_OWNER_CALLERS",
1215 "TK_OWNER_CALLEES",
"TK_OPENPAREN",
"TK_COMMA",
"TK_CLOSEPAREN",
1216 "TK_EQUAL",
"TK_NAME",
"TK_A_STRING",
"TK_ENDOFLINE",
"TK_INT",
1217 "$accept",
"commands",
"command",
"i_quit",
"i_exit",
"i_version",
1218 "i_help",
"i_setprop",
"i_shell",
"i_unknown",
"i_echo",
"i_info",
1219 "i_cd",
"i_pwd",
"i_getenv",
"i_setenv",
"i_unsetenv",
"i_timeout",
1220 "i_checkpoint",
"i_open",
"workspace_name",
"i_create",
"i_close",
1221 "i_delete",
"i_module",
"i_make",
"i_apply",
"i_capply",
"i_display",
1222 "i_touch",
"i_show",
"i_rm",
"i_activate",
"i_checkactive",
"i_get",
1223 "i_source",
"rulename",
"filename_list",
"filename",
"resource_id",
1224 "rule_id",
"owner",
"list_of_owner_name",
"propname",
"phasename",
1235 #define YYPACT_NINF (-102)
1237 #define yypact_value_is_default(Yyn) \
1238 ((Yyn) == YYPACT_NINF)
1240 #define YYTABLE_NINF (-1)
1242 #define yytable_value_is_error(Yyn) \
1249 113, -102, -44, -44, -15, -2, -44, -39, 1, 2,
1250 2, 1, 1, 2, 8, 3, 4, 5, 6, 7,
1251 9, 10, -12, 1, 11, -28, -26, 15, 44, 49,
1252 50, 1, 51, 1, -102, 64, -102, -102, -102, -102,
1253 -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
1254 -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
1255 -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
1256 52, 11, 53, -102, -102, 54, 55, -102, 56, 12,
1257 -102, 57, 12, 58, 59, 60, 61, -102, 62, -102,
1258 94, -41, 98, 99, 100, 101, -102, 102, -102, 103,
1259 -102, -8, -102, 104, -102, 105, -102, -102, 106, -102,
1260 -102, 107, -102, 108, -102, -102, -102, -7, -102, -102,
1261 -102, -102, -11, -102, -102, -102, -102, -102, -102, -102,
1262 -102, -102, -37, 109, 110, 111, -4, -102, -102, -102,
1263 -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
1264 -102, 116, 118, 119, 120, 121, 122, 123, 124, -102,
1265 -29, 125, 126, 127, -3, -102, -102, -102, -102, -102,
1266 -102, -102, -102, -102, -102, -102, -102, 130, -102, -102,
1267 -102, -102, -102, -102, -102
1275 0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
1276 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1277 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1278 0, 0, 0, 0, 4, 0, 3, 31, 33, 32,
1279 34, 30, 29, 36, 28, 27, 24, 25, 20, 21,
1280 22, 23, 9, 5, 6, 7, 8, 10, 11, 12,
1281 13, 14, 35, 15, 16, 17, 18, 19, 26, 65,
1282 0, 0, 0, 67, 63, 0, 0, 103, 0, 97,
1283 102, 0, 97, 0, 0, 0, 0, 82, 0, 101,
1284 0, 0, 0, 0, 0, 0, 51, 0, 42, 0,
1285 85, 0, 84, 0, 44, 0, 48, 46, 0, 38,
1286 39, 0, 40, 0, 1, 2, 64, 0, 68, 69,
1287 70, 71, 0, 86, 72, 87, 73, 74, 77, 78,
1288 43, 80, 0, 85, 0, 0, 0, 52, 61, 50,
1289 49, 41, 76, 81, 83, 45, 47, 62, 79, 75,
1290 66, 0, 0, 0, 0, 0, 0, 0, 0, 98,
1291 0, 85, 0, 0, 0, 53, 55, 59, 57, 88,
1292 89, 90, 91, 92, 93, 95, 94, 0, 96, 99,
1299 -102, -102, 24, -102, -102, -102, -102, -102, -102, -102,
1300 -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
1301 16, -102, -102, -102, -102, -102, -102, -102, -102, -102,
1302 -102, -102, -102, -102, -102, -102, -102, -70, -101, -9,
1303 162, 91, -102, -102, 161, 144
1309 0, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1310 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1311 70, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1312 63, 64, 65, 66, 67, 68, 86, 101, 102, 78,
1313 81, 123, 160, 90, 82, 79
1321 144, 117, 84, 85, 103, 69, 105, 132, 133, 134,
1322 76, 135, 161, 162, 99, 163, 144, 177, 178, 71,
1323 179, 136, 75, 104, 113, 106, 151, 152, 153, 154,
1324 155, 156, 157, 158, 72, 144, 73, 97, 159, 98,
1325 88, 100, 100, 143, 150, 100, 100, 168, 183, 74,
1326 77, 80, 89, 91, 92, 93, 94, 122, 95, 115,
1327 100, 96, 164, 144, 114, 1, 107, 2, 3, 4,
1328 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
1329 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1330 25, 26, 27, 28, 29, 30, 108, 31, 32, 33,
1331 109, 110, 112, 116, 118, 119, 120, 121, 124, 126,
1332 127, 128, 129, 130, 1, 34, 2, 3, 4, 5,
1333 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1334 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1335 26, 27, 28, 29, 30, 131, 31, 32, 33, 137,
1336 138, 139, 140, 141, 142, 145, 146, 147, 148, 149,
1337 165, 166, 167, 169, 34, 170, 171, 172, 173, 174,
1338 175, 176, 83, 125, 87, 111, 180, 181, 182, 184
1343 101, 71, 11, 12, 32, 49, 32, 48, 49, 50,
1344 49, 52, 49, 50, 23, 52, 117, 46, 47, 3,
1345 49, 91, 6, 51, 33, 51, 37, 38, 39, 40,
1346 41, 42, 43, 44, 49, 136, 51, 49, 49, 51,
1347 32, 49, 49, 51, 51, 49, 49, 51, 51, 51,
1348 49, 49, 49, 49, 49, 49, 49, 45, 49, 35,
1349 49, 51, 132, 164, 0, 1, 51, 3, 4, 5,
1350 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1351 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1352 26, 27, 28, 29, 30, 31, 52, 33, 34, 35,
1353 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
1354 51, 51, 51, 51, 1, 51, 3, 4, 5, 6,
1355 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
1356 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
1357 27, 28, 29, 30, 31, 51, 33, 34, 35, 51,
1358 51, 51, 51, 51, 51, 51, 51, 51, 51, 51,
1359 51, 51, 51, 47, 51, 47, 47, 47, 47, 47,
1360 47, 47, 10, 82, 13, 31, 51, 51, 51, 49
1367 0, 1, 3, 4, 5, 6, 7, 8, 9, 10,
1368 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1369 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1370 31, 33, 34, 35, 51, 54, 55, 56, 57, 58,
1371 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1372 69, 70, 71, 72, 74, 75, 76, 77, 78, 79,
1373 80, 81, 82, 83, 84, 85, 86, 87, 88, 49,
1374 73, 73, 49, 51, 51, 73, 49, 49, 92, 98,
1375 49, 93, 97, 93, 92, 92, 89, 97, 32, 49,
1376 96, 49, 49, 49, 49, 49, 51, 49, 51, 92,
1377 49, 90, 91, 32, 51, 32, 51, 51, 52, 51,
1378 51, 98, 51, 92, 0, 55, 51, 90, 51, 51,
1379 51, 51, 45, 94, 51, 94, 51, 51, 51, 51,
1380 51, 51, 48, 49, 50, 52, 90, 51, 51, 51,
1381 51, 51, 51, 51, 91, 51, 51, 51, 51, 51,
1382 51, 37, 38, 39, 40, 41, 42, 43, 44, 49,
1383 95, 49, 50, 52, 90, 51, 51, 51, 51, 47,
1384 47, 47, 47, 47, 47, 47, 47, 46, 47, 49,
1391 0, 53, 54, 54, 55, 55, 55, 55, 55, 55,
1392 55, 55, 55, 55, 55, 55, 55, 55, 55, 55,
1393 55, 55, 55, 55, 55, 55, 55, 55, 55, 55,
1394 55, 55, 55, 55, 55, 55, 55, 55, 56, 57,
1395 58, 59, 59, 60, 61, 61, 62, 63, 63, 64,
1396 65, 66, 67, 68, 68, 68, 68, 68, 68, 68,
1397 68, 69, 70, 71, 72, 73, 74, 75, 75, 76,
1398 77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1399 87, 88, 89, 90, 90, 91, 92, 93, 94, 94,
1400 94, 94, 94, 94, 94, 94, 94, 94, 95, 95,
1407 0, 2, 2, 1, 1, 1, 1, 1, 1, 1,
1408 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1409 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1410 1, 1, 1, 1, 1, 1, 1, 1, 2, 2,
1411 2, 3, 2, 3, 2, 3, 2, 3, 2, 3,
1412 3, 2, 3, 4, 5, 4, 5, 4, 5, 4,
1413 5, 3, 3, 2, 3, 1, 4, 2, 3, 3,
1414 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1415 3, 3, 1, 2, 1, 1, 2, 2, 3, 3,
1416 3, 3, 3, 3, 3, 3, 3, 0, 1, 2,
1423 #define yyerrok (yyerrstatus = 0)
1424 #define yyclearin (yychar = YYEMPTY)
1426 #define YYACCEPT goto yyacceptlab
1427 #define YYABORT goto yyabortlab
1428 #define YYERROR goto yyerrorlab
1429 #define YYNOMEM goto yyexhaustedlab
1432 #define YYRECOVERING() (!!yyerrstatus)
1434 #define YYBACKUP(Token, Value) \
1436 if (yychar == YYEMPTY) \
1440 YYPOPSTACK (yylen); \
1446 yyerror (YY_("syntax error: cannot back up")); \
1453 #define YYERRCODE YYUNDEF
1461 # define YYFPRINTF fprintf
1464 # define YYDPRINTF(Args) \
1473 # define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \
1477 YYFPRINTF (stderr, "%s ", Title); \
1478 yy_symbol_print (stderr, \
1480 YYFPRINTF (stderr, "\n"); \
1493 FILE *yyoutput = yyo;
1527 for (; yybottom <= yytop; yybottom++)
1529 int yybot = *yybottom;
1535 # define YY_STACK_PRINT(Bottom, Top) \
1538 yy_stack_print ((Bottom), (Top)); \
1551 int yynrhs =
yyr2[yyrule];
1553 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %d):\n",
1556 for (yyi = 0; yyi < yynrhs; yyi++)
1561 &yyvsp[(yyi + 1) - (yynrhs)]);
1566 # define YY_REDUCE_PRINT(Rule) \
1569 yy_reduce_print (yyssp, yyvsp, Rule); \
1576 # define YYDPRINTF(Args) ((void) 0)
1577 # define YY_SYMBOL_PRINT(Title, Kind, Value, Location)
1578 # define YY_STACK_PRINT(Bottom, Top)
1579 # define YY_REDUCE_PRINT(Rule)
1585 # define YYINITDEPTH 200
1596 # define YYMAXDEPTH 10000
1643 int yyerrstatus = 0;
1672 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
1678 YYDPRINTF ((stderr,
"Starting parse\n"));
1698 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
1705 if (yyss + yystacksize - 1 <= yyssp)
1706 #if !defined yyoverflow && !defined YYSTACK_RELOCATE
1713 # if defined yyoverflow
1725 yyoverflow (
YY_(
"memory exhausted"),
1726 &yyss1, yysize *
YYSIZEOF (*yyssp),
1727 &yyvs1, yysize *
YYSIZEOF (*yyvsp),
1749 # undef YYSTACK_RELOCATE
1755 yyssp = yyss + yysize - 1;
1756 yyvsp = yyvs + yysize - 1;
1759 YYDPRINTF ((stderr,
"Stack size increased to %ld\n",
1760 YY_CAST (
long, yystacksize)));
1763 if (yyss + yystacksize - 1 <= yyssp)
1792 YYDPRINTF ((stderr,
"Reading a token\n"));
1800 YYDPRINTF ((stderr,
"Now at end of input.\n"));
1874 yyval = yyvsp[1-yylen];
1881 #line 511 "tp_yacc.y"
1883 #line 1884 "y.tab.c"
1887 #line 515 "tp_yacc.y"
1889 #line 1890 "y.tab.c"
1893 #line 516 "tp_yacc.y"
1895 #line 1896 "y.tab.c"
1899 #line 517 "tp_yacc.y"
1901 #line 1902 "y.tab.c"
1905 #line 518 "tp_yacc.y"
1907 #line 1908 "y.tab.c"
1911 #line 519 "tp_yacc.y"
1913 #line 1914 "y.tab.c"
1917 #line 522 "tp_yacc.y"
1919 #line 1920 "y.tab.c"
1923 #line 523 "tp_yacc.y"
1925 #line 1926 "y.tab.c"
1929 #line 524 "tp_yacc.y"
1931 #line 1932 "y.tab.c"
1935 #line 525 "tp_yacc.y"
1937 #line 1938 "y.tab.c"
1941 #line 548 "tp_yacc.y"
1942 {(yyval.
status) =
false;}
1943 #line 1944 "y.tab.c"
1947 #line 552 "tp_yacc.y"
1952 #line 1953 "y.tab.c"
1956 #line 560 "tp_yacc.y"
1960 #line 1961 "y.tab.c"
1964 #line 566 "tp_yacc.y"
1976 #line 1977 "y.tab.c"
1980 #line 580 "tp_yacc.y"
1984 #line 1985 "y.tab.c"
1988 #line 584 "tp_yacc.y"
1992 #line 1993 "y.tab.c"
1996 #line 590 "tp_yacc.y"
2000 user_log(
"setproperty %s\n", (yyvsp[-1].name));
2008 " Move the setproperty statement at the "
2009 "beginning of your tpips script.\n");
2015 " Move the setproperty statement at the beginning "
2016 "of your tpips script.\n");
2019 free((yyvsp[-1].name));
2021 #line 2022 "y.tab.c"
2025 #line 617 "tp_yacc.y"
2029 #line 2030 "y.tab.c"
2033 #line 621 "tp_yacc.y"
2037 #line 2038 "y.tab.c"
2041 #line 627 "tp_yacc.y"
2058 "\tUnknown command \"%s\" at line %d in file \"%s\".\n"
2059 "\tMaybe you intended to execute a direct shell command.\n"
2060 "\tThis convenient feature is desactivated by default.\n"
2061 "\tTo enable it, you can run tpips with the -s option,\n"
2062 "\tor do \"setproperty TPIPS_IS_A_SHELL=TRUE\",\n"
2063 "\tor do \"setenv TPIPS_IS_A_SHELL=TRUE\".\n"
2070 "\tMaybe you intended to execute a direct shell command.\n"
2071 "\tThis convenient feature is desactivated by default.\n"
2072 "\tTo enable it, you can run tpips with the -s option,\n"
2073 "\tor do \"setproperty TPIPS_IS_A_SHELL=TRUE\",\n"
2074 "\tor do \"setenv TPIPS_IS_A_SHELL=TRUE\".\n"
2075 "\tOtherwise use ! or \"shell\" as a command prefix.\n\n");
2078 free((yyvsp[-1].name));
2080 #line 2081 "y.tab.c"
2084 #line 668 "tp_yacc.y"
2086 string s = (yyvsp[-1].
name);
2087 user_log(
"echo %s\n", (yyvsp[-1].name));
2091 free((yyvsp[-1].name));
2093 #line 2094 "y.tab.c"
2097 #line 677 "tp_yacc.y"
2103 #line 2104 "y.tab.c"
2107 #line 685 "tp_yacc.y"
2110 free((yyvsp[-1].name));
2112 #line 2113 "y.tab.c"
2116 #line 692 "tp_yacc.y"
2118 user_log(
"cd %s\n", (yyvsp[-1].name));
2119 if (chdir((yyvsp[-1].name)))
fprintf(stderr,
"error while changing directory\n");
2120 free((yyvsp[-1].name));
2122 #line 2123 "y.tab.c"
2126 #line 700 "tp_yacc.y"
2129 fprintf(stdout,
"current working directory: %s\n",
2133 #line 2134 "y.tab.c"
2137 #line 709 "tp_yacc.y"
2139 string val = getenv((yyvsp[-1].name));
2140 user_log(
"getenv %s\n", (yyvsp[-1].name));
2141 if (val)
fprintf(stdout,
"%s=%s\n", (yyvsp[-1].name), val);
2142 else fprintf(stdout,
"%s is not defined\n", (yyvsp[-1].name));
2143 free((yyvsp[-1].name));
2145 #line 2146 "y.tab.c"
2149 #line 720 "tp_yacc.y"
2151 #line 2152 "y.tab.c"
2155 #line 722 "tp_yacc.y"
2157 #line 2158 "y.tab.c"
2161 #line 724 "tp_yacc.y"
2163 #line 2164 "y.tab.c"
2167 #line 726 "tp_yacc.y"
2169 #line 2170 "y.tab.c"
2173 #line 728 "tp_yacc.y"
2175 #line 2176 "y.tab.c"
2179 #line 730 "tp_yacc.y"
2181 #line 2182 "y.tab.c"
2185 #line 732 "tp_yacc.y"
2187 #line 2188 "y.tab.c"
2191 #line 734 "tp_yacc.y"
2193 #line 2194 "y.tab.c"
2197 #line 738 "tp_yacc.y"
2198 {
user_log(
"unsetenv %s\n", (yyvsp[-1].name)); unsetenv((yyvsp[-1].name)); }
2199 #line 2200 "y.tab.c"
2203 #line 742 "tp_yacc.y"
2205 #line 2206 "y.tab.c"
2209 #line 746 "tp_yacc.y"
2219 #line 2220 "y.tab.c"
2223 #line 758 "tp_yacc.y"
2225 string main_module_name;
2232 "before opening %s!\n",
2245 user_log(
"Main module PROGRAM \"%s\" selected.\n",
2248 free(main_module_name);
2252 free((yyvsp[-1].name));
2254 #line 2255 "y.tab.c"
2258 #line 791 "tp_yacc.y"
2261 (yyval.
name) = (yyvsp[0].name);
2263 pips_user_error(
"workspace name %s contains invalid char(s)\n", (yyvsp[0].name));
2265 #line 2266 "y.tab.c"
2269 #line 800 "tp_yacc.y"
2271 string main_module_name;
2277 pips_user_error(
"Workspace %s already exists. Delete it!", (yyvsp[-2].name));
2281 "creating another!",
2288 volatile bool ws_ok;
2289 volatile bool user_exception_raised =
false;
2293 user_exception_raised =
true;
2307 pips_user_error(
"Could not create workspace \"%s\"", (yyvsp[-2].name));
2316 user_log(
"Deleting workspace...\n");
2319 pips_user_error(
"Could not create workspace \"%s\"\n", (yyvsp[-2].name));
2323 if (user_exception_raised)
2331 user_log(
"Main module PROGRAM \"%s\" selected.", main_module_name);
2333 free(main_module_name);
2343 free((yyvsp[-2].name));
2346 #line 2347 "y.tab.c"
2350 #line 879 "tp_yacc.y"
2354 #line 2355 "y.tab.c"
2358 #line 883 "tp_yacc.y"
2361 free((yyvsp[-1].name));
2363 #line 2364 "y.tab.c"
2367 #line 890 "tp_yacc.y"
2373 if ((wname != NULL) &&
same_string_p(wname, (yyvsp[-1].name))) {
2375 "Workspace %s is open\n", wname);
2383 user_log (
"Workspace %s deleted.\n", (yyvsp[-1].name));
2388 "Could not delete workspace \"%s\"\n", (yyvsp[-1].name));
2396 free((yyvsp[-1].name));
2398 #line 2399 "y.tab.c"
2402 #line 923 "tp_yacc.y"
2409 free((yyvsp[-1].name));
2411 free((yyvsp[-1].name));
2416 else free((yyvsp[-1].name));
2418 #line 2419 "y.tab.c"
2422 #line 941 "tp_yacc.y"
2427 #line 2428 "y.tab.c"
2431 #line 948 "tp_yacc.y"
2436 #line 2437 "y.tab.c"
2440 #line 955 "tp_yacc.y"
2445 #line 2446 "y.tab.c"
2449 #line 962 "tp_yacc.y"
2454 #line 2455 "y.tab.c"
2458 #line 969 "tp_yacc.y"
2463 #line 2464 "y.tab.c"
2467 #line 976 "tp_yacc.y"
2472 #line 2473 "y.tab.c"
2476 #line 983 "tp_yacc.y"
2481 #line 2482 "y.tab.c"
2485 #line 990 "tp_yacc.y"
2493 user_log(
"Selecting rule: %s\n", (yyvsp[-1].name));
2497 free((yyvsp[-1].name));
2499 #line 2500 "y.tab.c"
2503 #line 1006 "tp_yacc.y"
2506 fprintf(stdout,
"resource %s built by phase %s\n", (yyvsp[-1].name), ph);
2513 free((yyvsp[-1].name));
2515 #line 2516 "y.tab.c"
2519 #line 1020 "tp_yacc.y"
2521 pips_debug(7,
"reduce rule i_get (%s)\n", (yyvsp[-1].name));
2534 free((yyvsp[-1].name));
2536 #line 2537 "y.tab.c"
2540 #line 1040 "tp_yacc.y"
2545 #line 2546 "y.tab.c"
2549 #line 1050 "tp_yacc.y"
2554 #line 2555 "y.tab.c"
2558 #line 1055 "tp_yacc.y"
2563 #line 2564 "y.tab.c"
2567 #line 1065 "tp_yacc.y"
2569 pips_debug(7,
"reduce rule resource_id (%s)\n",(yyvsp[0].name));
2570 (yyval.
rn).the_name = (yyvsp[-1].name);
2571 (yyval.
rn).the_owners = (yyvsp[0].
array);
2573 #line 2574 "y.tab.c"
2577 #line 1073 "tp_yacc.y"
2579 pips_debug(7,
"reduce rule rule_id (%s)\n",(yyvsp[-1].name));
2580 (yyval.
rn).the_name = (yyvsp[-1].name);
2581 (yyval.
rn).the_owners = (yyvsp[0].
array);
2583 #line 2584 "y.tab.c"
2587 #line 1081 "tp_yacc.y"
2598 #line 2599 "y.tab.c"
2602 #line 1092 "tp_yacc.y"
2604 pips_debug(7,
"reduce rule owner (ALLFUNC)\n");
2613 #line 2614 "y.tab.c"
2617 #line 1103 "tp_yacc.y"
2628 #line 2629 "y.tab.c"
2632 #line 1114 "tp_yacc.y"
2634 pips_debug(7,
"reduce rule owner (PROGRAM)\n");
2641 #line 2642 "y.tab.c"
2645 #line 1123 "tp_yacc.y"
2657 #line 2658 "y.tab.c"
2661 #line 1135 "tp_yacc.y"
2663 pips_debug(7,
"reduce rule owner (MODULE)\n");
2670 #line 2671 "y.tab.c"
2674 #line 1144 "tp_yacc.y"
2676 pips_debug(7,
"reduce rule owner (CALLEES)\n");
2693 #line 2694 "y.tab.c"
2697 #line 1163 "tp_yacc.y"
2699 pips_debug(7,
"reduce rule owner (CALLERS)\n");
2705 #line 2706 "y.tab.c"
2709 #line 1171 "tp_yacc.y"
2711 #line 2712 "y.tab.c"
2715 #line 1173 "tp_yacc.y"
2729 "No current workspace. Open or create one first!");
2732 "No current module has been defined, explicitly or implictly.\n"
2733 "Please specify a module name as argument or check that"
2734 " the current workspace \"%s\" contains one main module"
2735 " or no more than one module.\n",
2740 #line 2741 "y.tab.c"
2744 #line 1200 "tp_yacc.y"
2748 #line 2749 "y.tab.c"
2752 #line 1204 "tp_yacc.y"
2754 #line 2755 "y.tab.c"
2758 #line 1206 "tp_yacc.y"
2760 #line 2761 "y.tab.c"
2764 #line 1210 "tp_yacc.y"
2767 yyerror(
"Expecting a property name.\n");
2768 (yyval.
name) = (yyvsp[0].name);
2770 #line 2771 "y.tab.c"
2774 #line 1218 "tp_yacc.y"
2777 yyerror(
"Expecting a phase name.\n");
2778 (yyval.
name) = (yyvsp[0].name);
2780 #line 2781 "y.tab.c"
2784 #line 1226 "tp_yacc.y"
2787 yyerror(
"expecting a resource name\n");
2788 (yyval.
name) = (yyvsp[0].name);
2790 #line 2791 "y.tab.c"
2794 #line 2795 "y.tab.c"
2821 const int yyi =
yypgoto[yylhs] + *yyssp;
2822 yystate = (0 <= yyi && yyi <=
YYLAST &&
yycheck[yyi] == *yyssp
2844 if (yyerrstatus == 3)
2973 while (yyssp != yyss)
2987 #line 1233 "tp_yacc.y"
void user_log(const char *format,...)
void db_reset_current_module_name(void)
bool db_resource_p(const char *rname, const char *oname)
true if exists and in loaded or stored state.
string db_get_current_module_name(void)
Also used to check whether set...
bool db_touch_resource(const char *rname, const char *oname)
touch logical time for resource[owner], possibly behind the back of pipsdbm.
void db_delete_resource(const char *rname, const char *oname)
Delete a resource.
bool db_set_current_module_name(const char *name)
const char * activate(const char *phase)
string active_phase_for_resource(string res)
return the phase which would be used to build a given resource.
size_t gen_array_nitems(const gen_array_t a)
void gen_array_full_free(gen_array_t a)
gen_array_t gen_array_make(size_t size)
declarations...
string string_array_join(gen_array_t array, string separator)
Join a string array with a string separator.
gen_array_t gen_array_from_list(list ls)
void * gen_array_item(const gen_array_t a, size_t i)
void gen_array_append(gen_array_t a, void *what)
void gen_array_dupappend(gen_array_t a, void *what)
static const char * yysymbol_name(yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED
The user-facing name of the symbol whose (internal) number is YYSYMBOL.
static void yy_symbol_print(FILE *yyo, yysymbol_kind_t yykind, YYSTYPE const *const yyvaluep)
-----------------------—.
static const yytype_int16 yyrline[]
YYRLINE[YYN] – Source line where rule number YYN was defined.
static void yy_symbol_value_print(FILE *yyo, yysymbol_kind_t yykind, YYSTYPE const *const yyvaluep)
-------------------------------—.
static void yy_reduce_print(yy_state_t *yyssp, YYSTYPE *yyvsp, int yyrule)
--------------------------------------------—.
static const char *const yytname[]
YYTNAME[SYMBOL-NUM] – String name of the symbol SYMBOL-NUM.
static void yy_stack_print(yy_state_t *yybottom, yy_state_t *yytop)
--------------------------------------------------------------—.
#define YYFPRINTF
Enable debugging if requested.
struct _newgen_struct_status_ * status
bool delete_workspace(const char *wname)
bool create_workspace(gen_array_t files)
FI: should be called "initialize_workspace()"; a previous call to db_create_workspace() is useful to ...
bool close_workspace(bool is_quit)
bool lazy_open_module(const char *name)
Do not open a module already opened :
bool open_workspace(const char *name)
should be: success (cf wpips.h)
#define ret(why, what)
true if not a remapping for old.
int safe_display(char *fname)
Display a file through $PIPS_MORE (or $PAGER) if stdout is a TTY, on stdout otherwise.
bool get_bool_property(const string)
FC 2015-07-20: yuk, moved out to prevent an include cycle dependency include "properties....
yysymbol_kind_t
!YY_GENREAD_Y_TAB_H_INCLUDED
unsigned char yytype_uint8
Work around bug in HP-UX 11.23, which defines these macros incorrectly for preprocessor constants.
int yy_state_fast_t
State numbers in computations.
signed char yytype_int8
On compilers that do not define PTRDIFF_MAX etc., make sure <limits.h> and (if available) <stdint....
yytype_int8 yy_state_t
Stored state numbers (used for stacks).
string db_get_memory_resource(const char *rname, const char *oname, bool pure)
Return the pointer to the resource, whatever it is.
gen_array_t db_get_compilation_unit_list(void)
Get an array of all the compilation units of a workspace.
gen_array_t db_get_module_list(void)
Get an array of all the modules (functions, procedures and compilation units) of a workspace.
gen_array_t db_get_function_list(void)
Get an array of all the functions and procedures (not compilation units) of a workspace.
bool displayable_file_p(const char *name)
rather approximated.
#define pips_debug
these macros use the GNU extensions that allow variadic macros, including with an empty list.
#define pips_user_warning
#define STRINGIFY(symbol)
If not using this 2-stage macro evaluation, the generated string is not the value of the macro but th...
#define pips_internal_error
#define MAXPATHLEN
MAXPATHLEN is defined in <sys/param.h> for SunOS...
#define GEN_ARRAY_FOREACH(type, s, array)
string concatenate(const char *,...)
Return the concatenation of the given strings.
#define same_string_p(s1, s2)
#define string_undefined_p(s)
void checkpoint_workspace(void)
checkpoint the current workspace, i.e.
bool workspace_exists_p(const char *)
bool db_close_workspace(bool)
bool db_create_workspace(const char *)
string db_get_current_workspace_name(void)
the function is used to check that there is some current workspace...
bool workspace_name_p(const char *)
workspace.c
gen_array_t get_callers(string module)
Get all the callers of the specified module.
string get_first_main_module(void)
Should be able to handle Fortran applications, C applications and mixed Fortran/C applications.
bool safe_make(const char *res_n, const char *module_n)
bool safe_concurrent_apply(const char *phase_n, gen_array_t modules)
bool safe_apply(const char *phase_n, const char *module_n)
void set_pips_timeout(unsigned int)
set pips timeout on delay setting to 0 removes the current timeout.
string build_view_file(const char *)
view.c
static list called_modules
list of called subroutines or functions
void reset_property_error(void)
void parse_properties_string(char *s, bool processing_p)
properties.c
void fprint_property_direct(FILE *, const char *)
void fprint_property(FILE *, const char *)
entity local_name_to_top_level_entity(const char *n)
This function try to find a top-level entity from a local name.
bool entity_main_module_p(entity e)
struct _newgen_struct_callees_ * callees
#define callees_callees(x)
#define entity_undefined_p(x)
int fprintf()
test sc_min : ce test s'appelle par : programme fichier1.data fichier2.data ...
#define int_least8_t
7.18.1.2.
Storage for arguments of tpips commands.
string the_name
MOD_A, MOD_B, ALL after expansion, default value can be PROGRAM or current_module.
string tpips_unknown_string
static gen_array_t get_main(void)
Returns a newgen array with the main inside.
static bool touch_a_resource(const char *rname, const char *mname)
tell pipsdbm that the resource is up to date.
static bool display_a_resource(const char *rname, const char *mname)
display a resource using $PAGER if defined and stdout on a tty.
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
#define YYMAXDEPTH
YYMAXDEPTH – maximum size the stacks can grow to (effective only if the built-in stack extension meth...
static const yytype_int8 yytranslate[]
YYTRANSLATE[TOKEN-NUM] – Symbol number corresponding to TOKEN-NUM as returned by yylex.
yysymbol_kind_t
!YY_TP_Y_TAB_H_INCLUDED
@ YYSYMBOL_filename_list
rulename
@ YYSYMBOL_TK_SHOW
TK_HELP
@ YYSYMBOL_TK_NAME
TK_EQUAL
@ YYSYMBOL_TK_ENDOFLINE
TK_A_STRING
@ YYSYMBOL_TK_DISPLAY
TK_CAPPLY
@ YYSYMBOL_TK_EQUAL
TK_CLOSEPAREN
@ YYSYMBOL_TK_UNSET_ENVIRONMENT
TK_GET_ENVIRONMENT
@ YYSYMBOL_i_unsetenv
i_setenv
@ YYSYMBOL_TK_CLOSE
TK_CREATE
@ YYSYMBOL_i_capply
i_apply
@ YYSYMBOL_TK_EXIT
TK_QUIT
@ YYSYMBOL_resource_id
filename
@ YYSYMBOL_rulename
i_source
@ YYSYMBOL_TK_INT
TK_ENDOFLINE
@ YYSYMBOL_phasename
propname
@ YYSYMBOL_TK_QUIT
TK_TIMEOUT
@ YYSYMBOL_TK_MAKE
TK_MODULE
@ YYSYMBOL_TK_INFO
TK_CDIR
@ YYSYMBOL_YYerror
"end of file"
@ YYSYMBOL_TK_OWNER_PROGRAM
TK_OWNER_ALLCU
@ YYSYMBOL_TK_UNKNOWN
TK_ECHO
@ YYSYMBOL_TK_REMOVE
TK_DISPLAY
@ YYSYMBOL_i_setprop
i_help
@ YYSYMBOL_i_unknown
i_shell
@ YYSYMBOL_TK_APPLY
TK_MAKE
@ YYSYMBOL_TK_CHECKACTIVE
TK_LINE
@ YYSYMBOL_workspace_name
i_open
@ YYSYMBOL_commands
$accept
@ YYSYMBOL_i_create
workspace_name
@ YYSYMBOL_TK_OWNER_NAME
TK_TOUCH
@ YYSYMBOL_list_of_owner_name
owner
@ YYSYMBOL_i_open
i_checkpoint
@ YYSYMBOL_TK_TOUCH
TK_VERSION
@ YYSYMBOL_i_make
i_module
@ YYSYMBOL_TK_SOURCE
TK_SHOW
@ YYSYMBOL_TK_OWNER_CALLEES
TK_OWNER_CALLERS
@ YYSYMBOL_resourcename
phasename
@ YYSYMBOL_TK_SET_ENVIRONMENT
TK_GET_PROPERTY
@ YYSYMBOL_i_echo
i_unknown
@ YYSYMBOL_i_shell
i_setprop
@ YYSYMBOL_TK_OWNER_CALLERS
TK_OWNER_MODULE
@ YYSYMBOL_i_delete
i_close
@ YYSYMBOL_TK_CHECKPOINT
TK_CLOSE
@ YYSYMBOL_TK_OWNER_MAIN
TK_OWNER_PROGRAM
@ YYSYMBOL_TK_OWNER_ALLFUNC
TK_OWNER_ALL
@ YYSYMBOL_TK_A_STRING
TK_NAME
@ YYSYMBOL_TK_GET_PROPERTY
TK_SET_PROPERTY
@ YYSYMBOL_TK_GET_ENVIRONMENT
TK_SET_ENVIRONMENT
@ YYSYMBOL_TK_ACTIVATE
TK_REMOVE
@ YYSYMBOL_YYACCEPT
TK_INT
@ YYSYMBOL_i_checkactive
i_activate
@ YYSYMBOL_TK_OPENPAREN
TK_OWNER_CALLEES
@ YYSYMBOL_TK_VERSION
TK_CHECKACTIVE
@ YYSYMBOL_TK_CAPPLY
TK_APPLY
@ YYSYMBOL_TK_ECHO
TK_SHELL
@ YYSYMBOL_i_touch
i_display
@ YYSYMBOL_TK_OWNER_ALLCU
TK_OWNER_ALLFUNC
@ YYSYMBOL_TK_CDIR
TK_UNSET_ENVIRONMENT
@ YYSYMBOL_TK_MODULE
TK_DELETE
@ YYSYMBOL_i_version
i_exit
@ YYSYMBOL_propname
list_of_owner_name
@ YYSYMBOL_i_get
i_checkactive
@ YYSYMBOL_TK_SET_PROPERTY
TK_ACTIVATE
@ YYSYMBOL_TK_SHELL
TK_SOURCE
@ YYSYMBOL_TK_COMMA
TK_OPENPAREN
@ YYSYMBOL_TK_OWNER_MODULE
TK_OWNER_MAIN
@ YYSYMBOL_filename
filename_list
@ YYSYMBOL_i_help
i_version
@ YYSYMBOL_i_module
i_delete
@ YYSYMBOL_i_setenv
i_getenv
@ YYSYMBOL_i_display
i_capply
@ YYSYMBOL_rule_id
resource_id
@ YYSYMBOL_i_activate
i_rm
@ YYSYMBOL_i_timeout
i_unsetenv
@ YYSYMBOL_TK_CLOSEPAREN
TK_COMMA
@ YYSYMBOL_TK_CREATE
TK_OPEN
@ YYSYMBOL_TK_OWNER_ALL
TK_OWNER_NAME
@ YYSYMBOL_TK_DELETE
TK_CHECKPOINT
@ YYSYMBOL_TK_TIMEOUT
TK_UNKNOWN
@ YYSYMBOL_command
commands
@ YYSYMBOL_i_checkpoint
i_timeout
@ YYSYMBOL_TK_OPEN
"invalid token"
@ YYSYMBOL_i_close
i_create
@ YYSYMBOL_TK_LINE
TK_EXIT
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
static const yytype_int8 yydefact[]
YYDEFACT[STATE-NUM] – Default reduction number in state STATE-NUM.
#define YYNSTATES
YYNSTATES – Number of states.
#define TK_SET_ENVIRONMENT
#define YY_IGNORE_USELESS_CAST_END
static void set_env_log_and_free(string var, string val)
static void tp_system(const char *s)
bool consistency_enforced_p
Pipsmake does not enforce consistency when properties are changed.
#define YYSTACK_BYTES(N)
The size of an array large to enough to hold all stacks, each with N elements.
static void process_file_list(const gen_array_t a)
yytype_uint8 yy_state_t
Stored state numbers (used for stacks).
#define YY_REDUCE_PRINT(Rule)
#define YY_CAST(Type, Val)
static void yydestruct(const char *yymsg, yysymbol_kind_t yykind, YYSTYPE *yyvaluep)
-------------------------------------------—.
static const yytype_int16 yypact[]
YYPACT[STATE-NUM] – Index in YYTABLE of the portion describing STATE-NUM.
#define TK_UNSET_ENVIRONMENT
static const yytype_uint8 yydefgoto[]
YYDEFGOTO[NTERM-NUM].
#define YYFINAL
!YYCOPY_NEEDED
#define YY_ACCESSING_SYMBOL(State)
Accessing symbol of state STATE.
#define YY_SYMBOL_PRINT(Title, Kind, Value, Location)
static const yytype_int16 yypgoto[]
YYPGOTO[NTERM-NUM].
void tpips_lex_print_pos(FILE *)
static void free_owner_content(res_or_rule *pr)
#define YYNTOKENS
YYNTOKENS – Number of terminals.
unsigned char yytype_uint8
Work around bug in HP-UX 11.23, which defines these macros incorrectly for preprocessor constants.
#define YY_STACK_PRINT(Bottom, Top)
static void try_to_parse_everything_just_in_case(void)
static bool perform(bool(*)(const char *, const char *), res_or_rule *)
forward.
#define YY_IGNORE_USELESS_CAST_BEGIN
static bool just_show(const char *rname, const char *mname)
static const yytype_int8 yyr2[]
YYR2[RULE-NUM] – Number of symbols on the right-hand side of rule RULE-NUM.
#define yytable_value_is_error(Yyn)
#define YYTRANSLATE(YYX)
YYTRANSLATE(TOKEN-NUM) – Symbol number corresponding to TOKEN-NUM as returned by yylex,...
static const yytype_int8 yystos[]
YYSTOS[STATE-NUM] – The symbol kind of the accessing symbol of state STATE-NUM.
const char * soft_revisions
First part of user prologue.
#define YY_ATTRIBUTE_UNUSED
static bool tp_close_the_workspace(const char *s)
static const yytype_int8 yyr1[]
YYR1[RULE-NUM] – Symbol kind of the left-hand side of rule RULE-NUM.
enum yytokentype yytoken_kind_t
int yy_state_fast_t
State numbers in computations.
unsigned short yytype_uint16
static bool remove_a_resource(const char *rname, const char *mname)
static bool processing_started_p
static bool tp_set_current_module(const char *name)
try hard to open a module.
#define YYEMPTY
Token kinds.
#define YYLAST
YYLAST – Last index in YYTABLE.
#define TK_GET_ENVIRONMENT
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
Relocate STACK from its old location to the new one.
#define yypact_value_is_default(Yyn)
bool tpips_execution_mode
cproto-generated files
#define YYINITDEPTH
!YYDEBUG
static const yytype_uint8 yytable[]
YYTABLE[YYPACT[STATE-NUM]] – What to do in state STATE-NUM.
signed char yytype_int8
On compilers that do not define PTRDIFF_MAX etc., make sure <limits.h> and (if available) <stdint....
#define YYSTACK_ALLOC
The parser invokes alloca or malloc; define the necessary symbols.
#define YYDPRINTF(Args)
Enable debugging if requested.
static const yytype_uint8 yycheck[]
#define YY_USE(E)
Suppress unused-variable warnings by "using" E.
static void tp_some_info(const char *about)
void tpips_set_line_to_parse(string)
bool tpips_init_done
variable globale, utilisee par le parser helas
bool tpips_is_interactive
void tpips_process_a_file(FILE *file, string name, bool use_rl)
processing command line per line.
void tpips_help(string line)
bool tpips_behaves_like_a_shell(void)
void jpips_add_tag(string s)
void jpips_tag2(string s1, string s2)
void jpips_begin_tag(string s)
int tpips_current_line_number()
string tpips_current_file_name()
FILE * jpips_out_file(void)
bool property_name_p(string)
bool phase_name_p(string)
bool resource_name_p(string)
INFRINGES ON USER NAME SPACE.