@mixin A($width: 0, $height: 0, $opacity: 0) { width: $width; height: $height; opacity: $opacity; } @mixin B($args...) { @include A($args...); } @mixin C($args...) { @include B($args...); } .testOneLevelPassthrough { @include B(1px, 2px, 0.3); } .testOneLevelNoArgs { @include B(); } .testOneLevelSingleArg { @include B(1px); } .testOneLevelNamedSingleArg { @include B($opacity: 0.1); } .testOneLevelNamedArgs { @include B($opacity: 0.3, $width: 1px, $height: 2px); } .testTwoLevelPassthrough { @include C(1px, 2px, 0.3); } .testTwoLevelNoArgs { @include C(); } .testTwoLevelSingleArg { @include C(1px); } .testTwoLevelNamedSingleArg { @include C($opacity: 0.1); } .testTwoLevelNamedArgs { @include C($opacity: 0.3, $width: 1px, $height: 2px); }