home *** CD-ROM | disk | FTP | other *** search
- /*
- * @(#)names.c 1.2 3/18/87
- */
- #include "assert.h"
- #include "nodes.h"
- #include "system.h"
- #include "error.h"
- #include "ident.h"
-
- Boolean Names_Check(n1, n2)
- NodePtr n1, n2;
- {
- if (n1 == NULL) {
- if (n2 != NULL) {
- WarningMessage(n2, "No opening identifier matching \"%s\"",
- Ident_Name(n2->b.symdef.ident));
- }
- } else if (n2 == NULL) {
- WarningMessage(n1, "No closing identifier matching \"%s\"",
- Ident_Name(n1->b.symdef.ident));
- } else /* neither n1 nor n2 are null */ {
- assert(n1->tag == P_SYMDEF || n1->tag == P_OPNAME);
- assert(n2->tag == P_SYMREF || n2->tag == P_OPNAME);
- if (n1->b.symdef.ident != n2->b.symref.ident) {
- WarningMessage(n2, "Identifier mismatch, \"%s\" should be \"%s\"",
- Ident_Name(n2->b.symref.ident), Ident_Name(n1->b.symdef.ident));
- }
- }
- }
-