Mercurial > ~dholland > hg > ag > index.cgi
view anagram/guisupport/ruletabdc.h @ 8:ec2b657edf13
Add explicit lint-comment-style fallthrough annotations.
GCC now assumes that if you don't have these you're making a mistake,
which is annoying.
XXX: This changeset updates the AG output files only (by hand) and is
XXX: abusive - rebuilding them will erase the change. However, I need
XXX: to get things to build before I can try to get AG to issue the
XXX: annotations itself, so this seems like a reasonable expedient.
author | David A. Holland |
---|---|
date | Mon, 30 May 2022 23:51:43 -0400 |
parents | 13d2b8934445 |
children |
line wrap: on
line source
/* * AnaGram, A System for Syntax Directed Programming * Copyright 1993-2002 Parsifal Software. All Rights Reserved. * See the file COPYING for license and usage terms. * * ruletabdc.h */ #ifndef RULETABDC_H #define RULETABDC_H #include "conflicttrc.h" #include "dc.h" #include "q1glbl.h" class rule_table_dc : public dc { public: static MenuOption *auxTable[]; virtual MenuOption **getAuxWinMenu(void) { return auxTable; } rule_table_dc(void); rule_table_dc(rule_stack_dc &x) : dc(x) {} virtual void getLine(unsigned) const; virtual void synchCursor(unsigned) const; struct localize { unsigned rule; unsigned index; localize(unsigned); unsigned token() { unsigned nt = ibnfn[rule]; if (index < nt) return ibnfs[ibnfb[rule] + index]; return 0; } }; virtual dc_ref expansion_rules(unsigned); virtual dc_ref productions(unsigned); virtual dc_ref rule_context(unsigned); virtual dc_ref usage(unsigned); virtual int expansion_rules_ok(unsigned); virtual int productions_ok(unsigned); virtual int rule_context_ok(unsigned ln) { return ln != 0; } virtual int usage_ok(unsigned); }; #endif /* RULETABDC_H */