It is often difficult to know what a compiled code has done under the hood, especially when symbolic operations are involved. However, my guess is that null may be employing rref to compute the nullspace. There are many ways to compute a nullspace, not only using svd as MATLAB does for double arrays.
That would suggest that A has full rank, and so the nullspace is empty. rref appears to be incorrect here.
How about QR?
So QR is able to see that A has less than full rank, and we could compute a null space from a QR decomposition. For example working on the transpose of A to compute the nullspace of the columns of A using a QR, we would see that
But SVD fails, because it runs into the standard 5th degree polynomial problems.
root(z^5 + z^4*((2*2^(1/2)*10^(...
Of course, then rank fails, though it too dives under the mex cloak of darkness to do its work.
Is A truly rank 4? It looks to be rank 4, at least in double form.
Even vpa agrees.
7.1125683591344274549613591959346e-38i
0.71889128315887390879918908979534 - 0.000000000000000024094219551455689173676197254085i
0.71889128315887496851465541352151 + 0.000000000000000024094219551455843032602081297669i
0.95105651629515317160385237328668 - 0.000000000000000018212507998940379872651231332919i
0.95105651629515397262902629347034 + 0.0000000000000000182125079989402213862389448737i
Anyway, my guess is that sym/null, which then dives into mupadmex code for the nullspace, probably uses an rref implementation. Hard to know for sure though.
No comment is given from the code. It thinks A is full rank. No warning would be deemed necessary.
I'd just suggest sending this in as a bug report. Note that Answers is NOT official technical support.