Почему синтаксис CMake везде содержит избыточные скобки?

CMake-хifпойдем так:

if (condition)
    ...
else if (...)
    ...
else (...)
    ...
endif (...)

Сelse if (...) (...) тесты для отдельного состояния.
Зачемelse (...) и не толькоelse? Зачемendif (...) и неendif?

Функции Cmake идут так:

function(funcname ...)
    ...
endfunction(funcname ...)

Зачемendfunction(funcname ...) а не простоendfunction?

Я могу опустить содержимое лишних скобок, где они появляются, например, так:endif (), Какова цель этой конструкции?

Ответы на вопрос(1)

Ваш ответ на вопрос