1789Speter /* Copyright (c) 1979 Regents of the University of California */ 2789Speter 3*14748Sthien #ifndef lint 4*14748Sthien static char sccsid[] = "@(#)yyoptions.c 1.2 08/19/83"; 5*14748Sthien #endif 6789Speter 7789Speter #include "whoami.h" 8789Speter #include "0.h" 9*14748Sthien #include "tree_ty.h" /* must be included for yy.h */ 10789Speter #include "yy.h" 11789Speter 12789Speter /* 13789Speter * Options processes the option 14789Speter * strings which can appear in 15789Speter * comments and returns the next character. 16789Speter */ 17789Speter options() 18789Speter { 19*14748Sthien register c; 20*14748Sthien #ifdef PI0 21*14748Sthien register ch; 22*14748Sthien #endif 23789Speter register char *optp; 24789Speter 25789Speter c = readch(); 26789Speter if (c != '$') 27789Speter return (c); 28789Speter do { 29*14748Sthien c = readch(); 30*14748Sthien # ifdef PI0 31*14748Sthien ch = c; 32*14748Sthien # endif 33789Speter switch (c) { 34789Speter case 'b': 35789Speter optp = &opt( 'b' ); 36789Speter c = readch(); 37789Speter if (!digit(c)) 38789Speter return (c); 39789Speter *optp = c - '0'; 40789Speter c = readch(); 41789Speter break; 42789Speter # ifdef PC 43789Speter case 'C': 44789Speter /* 45789Speter * C is a replacement for t, fake it. 46789Speter */ 47789Speter c = 't'; 48789Speter /* and fall through */ 49789Speter case 'g': 50789Speter # endif PC 51789Speter case 'k': 52789Speter case 'l': 53789Speter case 'n': 54789Speter case 'p': 55789Speter case 's': 56789Speter case 't': 57789Speter case 'u': 58789Speter case 'w': 59789Speter case 'z': 60789Speter optp = &opt( c ); 61789Speter c = readch(); 62789Speter if (c == '+') { 63789Speter *optp = 1; 64789Speter c = readch(); 65789Speter } else if (c == '-') { 66789Speter *optp = 0; 67789Speter c = readch(); 68789Speter } else { 69789Speter return (c); 70789Speter } 71789Speter break; 72789Speter default: 73789Speter return (c); 74789Speter } 75789Speter #ifdef PI0 76789Speter send(ROSET, ch, *optp); 77789Speter #endif 78789Speter } while (c == ','); 79789Speter if ( opt( 'u' ) ) 80789Speter setuflg(); 81789Speter return (c); 82789Speter } 83