# RegionPlot3D no longer localizes its arguments?

Bug introduced after 9, fixed in 12.0.

Just now, I was astonished to find the behavior of RegionPlot3D changes somewhere after v9 . Consider the following sample:

z = w;
RegionPlot3D[x^2 + y^3 - z^2 > 0, {x, -2, 2}, {y, -2, 2}, {z, -2, 2}]


I don't use RegionPlot3D that much, and thought it's a function that localizes its arguments, so the line z = w should not influence the output, and it's exactly the case in v8

and v9

The warning Join::heads in version 9 isn't desired either, but let's ignore it at the moment given this isn't the topic of this post.

However, things become different at least since v11.2:

and the behavior persists through v11.3:

To make this post a question, let me ask:

Is this a bug, or intentional change? If the latter, is it possible to bring back the old behavior? Evaluated -> False doesn't help.

• Sure seems like a bug to me. I can't think of why this would be a desired behaviour. Ask Wolfram, I guess? I had the same issue, macOS 10.14.4 and MMA 11.3.0. – MassDefect Apr 7 '19 at 3:19
• @MassDefect Confirmed as a bug by WRI. See the answer below for more info. – xzczd Apr 9 '19 at 3:45
• Cool, thanks for the info! It seems amazing to me that this bug has been around for so long, especially since I would expect all of their plotting functions to start by localizing variables. Anyway, hopefully by "future release" they mean V12.0. – MassDefect Apr 9 '19 at 7:46

# Update

Just tested on Wolfram cloud, the bug is fixed in v12.0.

The following is the reply from WRI:

Thank you for taking the time to send us this report.

Our developers are aware of this and a correction is being worked on for a future release.

A workaround for now is to manually localize the z symbol with Block.

z=w;
Block[{z},RegionPlot3D[x^2+y^3-z^2>0,{x,-2,2},{y,-2,2},{z,-2,2}]]


So I think it's safe to call it a bug.