Backslide in NSolve in V11.1?

Is there anyway to get NSolve to solve this equation in V11.1?

Adding Complexes makes it work

    NSolve[BesselJ[0, x] == 0 && 0 < x < 20, x, Complexes]

Mathematica graphics


It is a bug in V11.1. As a workaround, you can put the following in your init.m file.

Reduce`RealTNRoots;
nonElementaryQ[f_] := Module[{x}, !ListQ[Simplify`FunctionSingularities[f[x], x, "ELEM"]]]
System`TRootsDump`NIntervalRoots[f_?nonElementaryQ, ii_, prec_] := $Failed

This will disable the offending code for non-elementary functions.

In[4]:= NSolve[BesselJ[0, x] == 0 && 0 < x < 20, x]
Out[4]= {{x -> 2.40483}, {x -> 5.52008}, {x -> 8.65373}, {x -> 11.7915},
>    {x -> 14.9309}, {x -> 18.0711}}