The latter is not WCAG compliant.
Really the <a> tag should wrap the div, not the other way around.
Really the <a> tag should wrap the div, not the other way around.
It also avoids having large "white space" areas that are clickable, when only the text should be clickable. (Like when you wrap an <h1> with an <a> for example.)