It looks like a cast type operator. Oh, never mind, read "why this operator is called" for, "what this operator is called"
Ok, I checked your code and inspected it a bit more. Thus, the operator aaa is a cast type of type aaa. Type aaa is a pointer to a member function of type void func (). ThisTypeDoesNotSupportComparisons is aaa type function. the aaa operator is called and returns a function pointer.
I think it is called because if allows the use of function pointers. You can check if the pointer is NULL or not, and the closest compiler can find it, therefore, if it calls the aaa operator and checks if the pointer is returned.
source share