The usual risks are dividing by very small values (adding fake significance) or subtracting very similar values (losing significance). The specifics of your question rely on the specifics of your physical implementation. One would have to know EXACTLY how things are calculated. Exactly what algorithm is used to calculate sine, cosine, and tangent? For example, if the tangent is calculated directly (some kind of McLauren series, for example), that would be different than if the tangent is calculated from division of corresponding values of sine and cosine.
As a VERY ROUGH example, I started with McLauren expansions up through for sine, cosine, and tangent. I'll call these new functions s(x), c(x), and t(x) - where we expect t(x) = s(x)/c(x).
For x = 0 we get the very predictable:
s(0) = 0
c(0) = 1
t(0) = 0
s(0)/c(0) = 0
Not much interesting about that. With a McLauren expansion, we expect x = 0 to deliver exceptional results.
For we get
First, one might notice that c is NOT equal to s. This is because of the particular implementation. c(x) is an even function and s(x) has one higher order term. Recall that I quit at . This makes c(x) actually quit at , since it has no . Neither is equal to the "exact" value.
Second, it is very clear that . Frankly, the t(x) result is somewhat disappointing, giving only 3 decimal places exact. So we should prefer the quotient, right?
For we get
Now what?! The variations in tangent call into question what side of the asymptote we are on. For an asymptote, we would like a really big number (perhaps even the largest machine number), but I'm sure we'd be more comfortable with the sign not changing. Again, most of this error is a result of the SPECIFIC approximation. The McLauren expansion of tan(x) has ONLY positive terms. For x > 0, it cannot EVER produce a negative value. This, quite obviously, is not the case for sin(x)/cos(x).
What's the real answer to your question? That is very hard to say without a very clear understanding of the nature of your environment. The results shown here are specific to my implementation. Your results may differ, even in an attempt to reproduce what I have shown.
Note: Most implementations would have far sneakier algorithms than a simple McLauren expansion through . Only the designers can tell you what is in there.