--- freem/src/routine.c 2025/01/19 02:04:04 1.1 +++ freem/src/routine.c 2025/04/09 19:52:02 1.5 @@ -1,23 +1,11 @@ /* - * * - * * * - * * * - * *************** - * * * * * - * * MUMPS * - * * * * * - * *************** - * * * - * * * - * * - * - * routine.c + * $Id: routine.c,v 1.5 2025/04/09 19:52:02 snw Exp $ * Routine buffer management * * - * Author: Serena Willis + * Author: Serena Willis * Copyright (C) 1998 MUG Deutschland - * Copyright (C) 2023 Coherent Logic Development LLC + * Copyright (C) 2023, 2025 Coherent Logic Development LLC * * * This file is part of FreeM. @@ -35,6 +23,19 @@ * You should have received a copy of the GNU Affero Public License * along with FreeM. If not, see . * + * $Log: routine.c,v $ + * Revision 1.5 2025/04/09 19:52:02 snw + * Eliminate as many warnings as possible while building with -Wall + * + * Revision 1.4 2025/03/27 03:27:35 snw + * Install init scripts to share/freem/examples/init and fix regression in method dispatch + * + * Revision 1.3 2025/03/09 19:50:47 snw + * Second phase of REUSE compliance and header reformat + * + * + * SPDX-FileCopyrightText: (C) 2025 Coherent Logic Development LLC + * SPDX-License-Identifier: AGPL-3.0-or-later **/ #include @@ -210,6 +211,12 @@ short rtn_get_superclass(char *rou, char if (ch == ')') after_parens = TRUE; + /* ignore comments in search for superclass */ + if (ch == ';' && after_parens == TRUE) { + found_super = FALSE; + break; + } + if (ch == ':' && after_parens == TRUE) { strcpy (buf, p); found_super = TRUE; @@ -253,7 +260,7 @@ short rtn_get_path(char *rou, char *buf) } snprintf (buf, PATHLEN, "%s/%s.m", pth, rou); - + if ((fp = fopen (buf, "r")) != NULL) { (void) fclose (fp); @@ -309,7 +316,6 @@ m_entry *rtn_get_entries(char *rou) char cur_label[255]; int has_args = 0; char *paren_pos; - char *curarg; if (rtn_get_path (rou, rou_path) == FALSE) { return (m_entry *) NULL;