Весь затык у нас тут в том, что CSS не позволяет в рамках path жонглировать единицами измерения. Почему? Люди задавались этим вопросом с самого момента появления path в CSS. Но этот функционал всегда был в SVG. Так что можно добавить маску в SVG (тут у нас размер элемента, условные 100% на 100%, считается за 1 на 1):
<svg width='0' height='0'>
<defs>
<clipPath id='example' clipPathUnits='objectBoundingBox'>
<path d="M 0 0 a 1 1 0 0 0 1 1 h -1 v -1z"/>
</clipPath>
</defs>
</svg>
И тогда в CSS уже будет все просто:
.example {
clip-path: url(#example);
}
Это не идеальный вариант, хотелось бы на чистом CSS, но имеем, что имеем.