X++:
static void yearDiff_test(Args _args)
{;
// AX 2009 5.0.1500.4570
info(strfmt('%1', yearDiff(28\2\2017, 28\2\1976))); // returns 41 - OK
info(strfmt('%1', yearDiff(1\3\2017, 29\2\1976))); // returns 41 - OK
info(strfmt('%1', yearDiff(28\2\2017, 29\2\1976))); // returns 40 - arguable
info(strfmt('%1', yearDiff(1\3\2017, 1\3\1976))); // returns 40 - wtf?
info(strfmt('%1', yearDiff(2\3\2117, 1\3\1976))); // returns 140 - WTF!?
}