Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Jan 2019 13:41:59 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 235320] usr.bin/units: What does this error message really mean: units: memory overflow in unit reduction
Message-ID:  <bug-235320-227@https.bugs.freebsd.org/bugzilla/>

index | next in thread | raw e-mail

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235320

            Bug ID: 235320
           Summary: usr.bin/units: What does this error message really
                    mean: units: memory overflow in unit reduction
           Product: Base System
           Version: 11.2-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: 0mp@FreeBSD.org

I use the following one-liner to test:

> sh -c 'units "$(yes m | head -n "$1")" "$(yes cm | head -n "$1")"' sh $N

When N is at most 154 then units(1) handles the conversion as expected. For
example, for N=154:

>         * 1e+308
>         / 1e-308

For N from 155 to 333 the output is as follows:

>         * inf
>         / 0

While for N from 334 to 500 the output seems a little bit broken. Here is the
output of N=500:

> units: memory overflow in unit reduction
> conformability error
>         1 m^334
>         0 centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi m centi cm m^166

For N >= 501 the output is:

> units: memory overflow in unit reduction
> units: memory overflow in unit reduction
> units: memory overflow in unit reduction
> conformability error
>         1 m^500
>         1 centi cm^499

I'd like to document this behavior but I am not sure what really is expected to
happen in those edge cases.

-- 
You are receiving this mail because:
You are the assignee for the bug.

help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-235320-227>