idf.str 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
  3. * See the copyright notice in the ACK home directory, in the file "Copyright".
  4. */
  5. /* $Id$ */
  6. /* IDENTIFIER DESCRIPTOR */
  7. #include "nopp.h"
  8. struct id_u {
  9. #ifndef NOPP
  10. struct macro *idd_macro;
  11. int idd_resmac; /* if nonzero: keyword of macroproc. */
  12. #endif /* NOPP */
  13. int idd_reserved; /* non-zero for reserved words */
  14. char *idd_file; /* file containing the occurrence */
  15. unsigned int idd_line; /* line number of the occurrence */
  16. struct def *idd_label; /* labels */
  17. struct def *idd_def; /* variables, typedefs, enum-constants */
  18. struct sdef *idd_sdef; /* selector tags */
  19. struct tag *idd_tag; /* struct, union, and enum tags */
  20. int idd_special; /* special action needed at occurrence */
  21. };
  22. #define IDF_TYPE struct id_u
  23. #define id_macro id_user.idd_macro
  24. #define id_resmac id_user.idd_resmac
  25. #define id_reserved id_user.idd_reserved
  26. #define id_file id_user.idd_file
  27. #define id_line id_user.idd_line
  28. #define id_label id_user.idd_label
  29. #define id_def id_user.idd_def
  30. #define id_sdef id_user.idd_sdef
  31. #define id_tag id_user.idd_tag
  32. #define id_special id_user.idd_special
  33. #include <idf_pkg.spec>
  34. #ifndef NOPP
  35. struct dependency {
  36. struct dependency *next;
  37. struct idf *dep_idf;
  38. };
  39. /* ALLOCDEF "dependency" 10 */
  40. #endif /* NOPP */
  41. extern int level;
  42. extern struct idf *gen_idf();