1

After upgrading from TeX Live 2022 to TeX Live 2023, when running bibtex, bibtex8, or bibtexu in TeX Live 2023, I get this error for any input file:

3 is a bad bad

bibtex does not produce any output. What causes this error?

1 Answer 1

3

bad is a variable in bibtex used for reporting "constants" that do not meet certain constraints. The only "good" bad is 0. A bad value of 3 means max_print_line >= buf_size, which is not allowed.

Beginning in TeX Live 2023, bibtex now gets the max_print_line "constant" from the environment. So if you have the max_print_line environment variable set to ≥20000, as suggested in this answer, you will now trigger this error, which you wouldn't have seen before. It does not appear that you can set buf_size with an environment variable in the same way.

If you set max_print_line=19999, the error goes away.

If you are trying to understand how this happens in bibtex works by reading the PDF version of its source produced with weave that comes with TeX Live, you may be more confused because the code reading the environment variables is not there, nor is an initial buf_size value of 20000. All of these things occur in the bibtex.ch change file, which makes various patches.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .