@dro-i-de aparently this is a feature not a bug. If the user editing the fields has a bp_moderate capability, it is allowed to save empty fields. Your regular users will not.
I have the same issue. Apart from the Name field, all new fields marked as required doesn’t throw errors when the user saves its profile on either on frontend and backend.
I created the fields using User > Profile fields tool, where there’s a required option. The input elements on the frontend even has ‘aria-required=”true”‘ param.
In my case, when the user leaves a field empty (i.e. deletes the info that was there previously, the db entry is simply deleted. (agreed with @dro-i-de, not the expected behavior)
How xprofile handles the fields marked as required?
running WP 4.9.4 Theme: Boss (child Theme) 2.4.2
Buddypress: 2.5.14