label.h 912 B

12345678910111213141516171819202122232425262728
  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. /* L A B E L D E F I N I T I O N */
  7. #include <em_label.h> /* obtain definition of "label" */
  8. #define NO_LABEL (label) 0
  9. extern label lab_count;
  10. #define text_label() (lab_count++) /* returns a new text label */
  11. extern label datlab_count;
  12. #define data_label() (datlab_count++) /* returns a new data label */
  13. #define define_label(idf) enter_label(idf, 1);
  14. /* The identifier idf is defined as a label. If it is new,
  15. it is entered into the idf list with the largest possible
  16. scope, i.e., on the lowest possible level.
  17. */
  18. #define apply_label(idf) enter_label(idf, 0);
  19. /* The identifier idf is applied as a label. It may or may
  20. not be there, and if it is there, it may be from a
  21. declaration or another application.
  22. */