src/Composer/Util/Silencer.php
public static function call($callable /*, ...$parameters */)
    {
        try {
            self::suppress();
            $result = call_user_func_array($callable, array_slice(func_get_args(), 1));
            self::restore();

            return $result;
        } catch (\Exception $e) {
            // Use a finally block for this when requirements are raised to PHP 5.5
            self::restore();
            throw $e;
        }
    }
public static function call($callable /*, ...$parameters */)
    {
        try {
            self::suppress();
            $result = call_user_func_array($callable, array_slice(func_get_args(), 1));
            self::restore();

            return $result;
        } catch (\Exception $e) {
            // Use a finally block for this when requirements are raised to PHP 5.5
            self::restore();
            throw $e;
        }
    }
Calls a specified function while silencing warnings and below.

Future improvement: when PHP requirements are raised add Callable type hint (5.4) and variadic parameters (5.6)

@param  callable   $callable Function to execute.
@throws \Exception Any exceptions from the callback are rethrown.
@return mixed      Return value of the callback.