-.\" $Id: roff.3,v 1.3 2010/06/27 15:52:41 kristaps Exp $
+.\" $Id: roff.3,v 1.8 2010/08/20 01:02:07 schwarze Exp $
.\"
.\" Copyright (c) 2010 Kristaps Dzonsons <kristaps@bsd.lv>
.\"
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd $Mdocdate: June 27 2010 $
+.Dd $Mdocdate: August 20 2010 $
.Dt ROFF 3
.Os
.Sh NAME
.Nd roff macro compiler library
.Sh SYNOPSIS
.In mandoc.h
-.In regs.h
.In roff.h
.Ft "struct roff *"
.Fo roff_alloc
.Fa "struct regset *regs"
-.Fa "mandocmsg msgs"
.Fa "void *data"
+.Fa "mandocmsg msgs"
.Fc
.Ft int
.Fn roff_endparse "struct roff *roff"
.Fa data
pointer is passed to
.Fa msgs .
-The
-.Fa pflags
-arguments are defined in
-.Pa roff.h .
Returns NULL on failure.
If non-NULL, the pointer must be freed with
.Fn roff_free .
.Nm
library was written by
.An Kristaps Dzonsons Aq kristaps@bsd.lv .
+.Sh BUGS
+The implementation of user-defined strings needs improvement:
+.Bl -dash
+.It
+String values are taken literally and are not interpreted.
+.It
+Parsing of quoted strings is incomplete.
+.It
+The stings are stored internally using a singly linked list,
+which is fine for small numbers of strings,
+but ineffient when handling many strings.
+.El