Unfortunately, the solution ultimately proposed doesn't work in this case:
int _a = 50;
int result = min(num, _a);
you end up expanding to "int _a = _a;" which creates a new int _a, and assigns it to itself.