Я вижу довольно странное поведение с PowerShell, похоже, что для пользовательских функций может потребоваться "скобка для скобок" для оценки, как вы могли бы ожидать. Учитывая простую функцию PowerShell:
function Return-True { return $true }
а затем пример кода для его вызова:
PS C:\> Return-True
True
PS C:\> Return-True -eq $false
True
PS C:\> (Return-True) -eq $false
False
Идеи? Комментарии?