Я думаю, что у вас есть некоторые вещи в вашей работе, которые не поняты lesscss. Я переписал вашу операцию так:
@icon_base: 30px;
@icon: 24px;
/*sets the position of the background based on the x and y position order */
.icon_position(@x: 1, @y: 1) {
@posx:((@icon_base - @icon)/2 + (@x * @icon_base)) * -1;
@posy:((@icon_base - @icon)/2 + (@y * @icon_base)) * -1;
background-position:~`"@{posx}"` ~`"@{posy}"`;
}
Работает без ошибок и по умолчанию выводит:
background-position: -33px -33px;