This one was a 'fun' issue to deal with.

Actually it's not that common to find a compiler issue that can be replicated with such a small amount of code in my experience, which is kind of satisfying.


uint32 bitTest(uint32 y, uint32 N)
	int shift = 1;
	for(uint32 i=0; i<N; ++i)
		shift = y >> (shift + 1);
	return shift;
In VS2015 update 3, with optimisations enabled, gives

n:\indigo\trunk\utils\bitfield.cpp(21): fatal error C1063: compiler limit: compiler stack overflow
Issue report filed with MS here.