The problem, is that I'm unsure why the parenthesis were needed. I was performing a conditional statement where I checked if a bit was set in a bitfield.
Here's what the statement looked like:
(bitfield & bit == bit);
Oddly enough, that returned a non-zero value almost constantly. So, I added parenthesis around it, like so:
((bitfield & bit) == bit);
This fixed the problem, but I still dont understand why == has presidence over &.
I had the minset that the bitwise comparison operators had precidence over the boolean comparison operators, since the bitwise operators were used more for things like assignment. I sort of had them in the same catagory as arithmatic operators (+, -, /, *).
My rationalization for stating that this was a possible precidence bug, was the question: dont you expect (1 + 2 == 3) to be equivelant to ((1 + 2) == 3)?
So is it a bug? I dont have extensive experiance with languages other then LSL, so I dont know alot here

==Chris
PS: Im not looking for a lecture on the usage of parthenesis. I *know* that they're good for readability, I was just lazy when I coded this small section.