My question is: what happens when I set a null variable inside a usage block? Will it still fit correctly?
It depends on where your variable is declared. It will either be disposed of correctly or your code will not compile in the first place.
If your variable is declared outside the using statement: Yes
A a; using (a = new A()) { a = null; }
Yes, it will be installed correctly. For a simple test:

My color scheme is Ragnarok Gray text.
Even when the job is released, the link to new A() seems to be preserved. a is deleted at the end of the using statement, as expected, even if it was muffled internally.
In some versions of Visual Studio, this may result in Compiler Warning (level 2) CS0728 :
Possibly incorrect assignment to local "a", which is an argument for the use or lock statement. A call to Dispose or unlock will occur at the original local value.
If your variable is declared in a using: N / A statement
using (var a = new A()) { a = null; }
The above code will not compile. First of all, you are not allowed to assign a using variable. The above code creates this compilation error:
Cannot assign 'a' because it is 'using variable'
This is CS1656 Compiler Error .
This error occurs when a variable assignment occurs in a read-only context. Read-only contexts include foreach iteration variables using variables and fixed variables. To resolve this error, avoid operator variable assignments using blocks, foreach, and fixed statements.