-.\" $OpenBSD: mandoc.1,v 1.124 2017/06/17 22:40:27 schwarze Exp $
+.\" $OpenBSD: mandoc.1,v 1.125 2017/06/17 23:06:43 schwarze Exp $
.\"
.\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
.\" Copyright (c) 2012, 2014-2017 Ingo Schwarze <schwarze@openbsd.org>
or
.Ic NetBSD
keyword substitution as conventionally used in these operating systems.
+.It Sy "duplicate RCS id"
+A single manual page contains two copies of the RCS identifier for
+the same operating system.
+Consider deleting the later instance and moving the first one up
+to the top of the page.
.It Sy "useless macro"
.Pq mdoc
A
-/* $OpenBSD: mandoc.h,v 1.173 2017/06/17 22:40:27 schwarze Exp $ */
+/* $OpenBSD: mandoc.h,v 1.174 2017/06/17 23:06:43 schwarze Exp $ */
/*
* Copyright (c) 2010, 2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010-2017 Ingo Schwarze <schwarze@openbsd.org>
MANDOCERR_MDOCDATE_MISSING, /* Mdocdate missing: Dd ... */
MANDOCERR_DATE_LEGACY, /* legacy man(7) date format: Dd ... */
MANDOCERR_RCS_MISSING, /* RCS id missing */
+ MANDOCERR_RCS_REP, /* duplicate RCS id: ... */
MANDOCERR_MACRO_USELESS, /* useless macro: macro */
MANDOCERR_BX, /* consider using OS macro: macro */
MANDOCERR_ER_ORDER, /* errnos out of order: Er ... */
-/* $OpenBSD: read.c,v 1.149 2017/06/17 22:40:27 schwarze Exp $ */
+/* $OpenBSD: read.c,v 1.150 2017/06/17 23:06:43 schwarze Exp $ */
/*
* Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010-2017 Ingo Schwarze <schwarze@openbsd.org>
"Mdocdate missing",
"legacy man(7) date format",
"RCS id missing",
+ "duplicate RCS id",
"useless macro",
"consider using OS macro",
"errnos out of order",
-/* $OpenBSD: roff.c,v 1.185 2017/06/17 22:40:27 schwarze Exp $ */
+/* $OpenBSD: roff.c,v 1.186 2017/06/17 23:06:43 schwarze Exp $ */
/*
* Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010-2015, 2017 Ingo Schwarze <schwarze@openbsd.org>
}
if (cp != NULL &&
isalnum((unsigned char)*cp) == 0 &&
- strchr(cp, '$') != NULL)
+ strchr(cp, '$') != NULL) {
+ if (r->man->meta.rcsids & (1 << os_e))
+ mandoc_msg(MANDOCERR_RCS_REP, r->parse,
+ ln, stesc + 1 - buf->buf, stesc + 1);
r->man->meta.rcsids |= 1 << os_e;
+ }
/* Handle trailing whitespace. */