URL:
  <https://savannah.gnu.org/bugs/?68124>

                 Summary: DS Macro difference between 1.22.4 and 1.24.0
                   Group: GNU roff
               Submitter: None
               Submitted: Thu 05 Mar 2026 05:35:40 PM UTC
                Category: Macro package mm
                Severity: 3 - Normal
              Item Group: Incorrect behaviour
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Unlocked
         Planned Release: None


    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: Thu 05 Mar 2026 05:35:40 PM UTC By: Anonymous
GROFF VERSOIN: 1.22.4 / 1.24.0
PLATFORM:
Linux roffmm 6.6.87.2-microsoft-standard-WSL2 #1 SMP PREEMPT_DYNAMIC Thu Jun
5 18:30:46 UTC 2025 x86_64 GNU/Linux

Linux ... 6.6.87.2-microsoft-standard-WSL2 #1 SMP PREEMPT_DYNAMIC Thu Jun  5
18:30:46 UTC 2025 x86_64 GNU/Linux

CONFIGURATOIN REPORT:
DEBIAN:
Package: groff
Status: install ok installed
Priority: optional
Section: text
Installed-Size: 10557
Maintainer: Colin Watson <[email protected]>
Architecture: amd64
Multi-Arch: foreign
Version: 1.22.4-10
Provides: groff-x11, jgroff
Depends: groff-base (= 1.22.4-10), libc6 (>= 2.35), libgcc-s1 (>= 3.0),
libstdc++6 (>= 4.1.1), libx11-6, libxaw7 (>= 2:1.0.14), libxmu6 (>= 2:1.1.3),
libxt6
Recommends: ghostscript, imagemagick, libpaper1, netpbm, perl, psutils
Conffiles:
 /etc/X11/app-defaults/GXditview ee0e9f38fdf99c32c77a89cd67b8ac03
 /etc/X11/app-defaults/GXditview-color 753a00fce7fa986c812c517b8bb2680e
Description: GNU troff text-formatting system
 This package contains optional components of the GNU troff text-formatting
 system. The core package, groff-base, contains the traditional tools like
 troff, nroff, tbl, eqn, and pic. This package contains additional devices
 and drivers for output to DVI, HTML (when recommended packages are
 installed - see below), PDF, HP LaserJet printers, and Canon CAPSL LBP-4
 and LBP-8 printers.
 .
 The X75, X75-12, X100, and X100-12 devices, which allow groff output to be
 conveniently viewed on an X display using the standard X11 fonts, are now
 included here. They were previously in a separate package, groff-x11.
 .
 Besides these, the groff package contains man pages describing the language
 and its macro sets, info documentation, and a number of supplementary
 programs:
 .
  - gxditview, which is used to display the output of the X* devices, and
    can also be used to view PostScript output from groff;
  - grn, a preprocessor for pictures in the 'gremlin' format;
  - tfmtodit, which creates font files for use with 'groff -Tdvi';
  - hpftodit, which creates font files for use with 'groff -Tlj4';
  - afmtodit, which creates font files for use with 'groff -Tps';
  - refer, which preprocesses bibliographic references for use with groff;
  - indxbib, which creates inverted indices for bibliographic databases used
    by 'refer';
  - lkbib and lookbib, which search bibliographic databases;
  - addftinfo, which adds metric information to troff font files for use
    with groff;
  - pfbtops, which translates a PostScript font in .pfb format to ASCII for
    use with groff;
  - mmroff, a simple groff preprocessor which expands references in mm;
  - pic2graph, which converts PIC diagrams into cropped image files;
  - eqn2graph, which converts EQN equations into cropped image files;
  - pdfmom, which runs 'groff -mom' to produce PDFs.
 .
 All the standard macro packages are supported.
 .
 Some facilities only work if certain recommended packages are installed:
 .
  - ghostscript, netpbm, psutils: required for HTML output;
  - imagemagick: required for the pic2graph and eqn2graph programs;
  - libpaper1: paper size detection in dvi, lbp, lj4, and ps devices (falls
    back to a4 if not installed);
  - perl: required for PDF output and for the chem preprocessor.
Homepage: https://www.gnu.org/software/groff/

ARCH:
Repository      : core
Name            : groff
Version         : 1.24.0-1
Description     : GNU troff text-formatting system
Architecture    : x86_64
URL             : https://www.gnu.org/software/groff/groff.html
Licenses        : GPL-3.0-or-later
Groups          : None
Provides        : None
Depends On      : glibc  libgcc  libstdc++  perl
Optional Deps   : netpbm: for use together with man -H command interaction in
browsers
                  psutils: for use together with man -H command interaction in
browsers
                  libxaw: for gxditview
                  perl-file-homedir: for use with glilypond
Conflicts With  : None
Replaces        : None
Download Size   : 2.40 MiB
Installed Size  : 9.01 MiB
Packager        : Tobias Powalowski <[email protected]>
Build Date      : Sun 01 Mar 2026 12:37:01 AM MST
Validated By    : SHA-256 Sum  Signature

INPUT FILE:
(attached)

COMMAND LINE:
groff -mm -T pdf example.mm > x.y.z.pdf

DESCRIPTION:

I have attached 2 pdfs generated from 1.22.4 and 1.24.0. They were generated
from (effectively) the same source (just changed the version number
displayed). Both were generated using the same command.

It seems that the third argument in the .DS macro is doing something weird :/
In the older version it would just intent the right-hand side (as the man page
suggests it does) but in the newer version it tries to push the right margin
all the way left, spitting out error messages such as:

troff:example.mm:5: warning [page 1, 1.5i (diversion 'ds*div!1', 0.0i)]:
cannot adjust line; overset by 0.231514i

Where the older version has no errors and works as expected.






    _______________________________________________________
File Attachments:

Name: 1.22.4.pdf                     Size: 6.3KiB
    <https://file.savannah.gnu.org/file/1.22.4.pdf?file_id=58308>

Name: example.mm                     Size: 105B
    <https://file.savannah.gnu.org/file/example.mm?file_id=58309>

Name: 1.24.0.pdf                     Size: 1.9KiB
    <https://file.savannah.gnu.org/file/1.24.0.pdf?file_id=58307>



    AGPL NOTICE

These attachments are served by Savane. You can download the corresponding
source code of Savane at
https://savannah.gnu.org/source/savane-2a2ecc185bd672dd377a2efbb667431a4b30acc3.tar.gz

    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?68124>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to