Description
On the page: https://lesscss.org/features/#mixins-feature-guarded-namespaces
Invalid code:
#sp_1 when (default()) {
#sp_2 when (default()) {
.mixin() when not(default()) { /* */ }
}
}
Namespaces in LESS cannot be "default" in the same sense as mixins. The default() function in LESS only works with mixins and their parameters, not with namespaces.
Namespaces (#sp_1, #sp_2) are not mixins. They are used to group mixins and variables, but do not participate in the default() logic.
when (default()) only applies to mixins. It checks whether the mixin was called with default parameters, or was not called at all.
There is no call to the mixin in your code. The only mixin .mixin() is inside namespaces, and it is never called.
Namespaces are logical groups, not executable code.