Using 25==count makes sense when used as a comparison but using an assignment backwards doesn't make sense. You are simply introducing a deliberate error!
Note, the construct I wrote, strcpy(buff,count==25?"is 25":"isn't") is valid in C.
I was wondering what use count==25 might have (if any).
I have only ever done this once. I often do if(count=25) (which I suspect you mean) but that's a completely different problem.
The problem is a line which only contains count==25; is valid in C but I've no idea why.
XC8 does the same thing if(x=5) gives a warning but x==5; doesn't!!!
Mike.