Av det jag läst. Du instansierar UserController med parametern CompanyController.
Denna instansiering görs innan du faktiskt har skickat Auth::login()-anropet.
När du instansierar företagskontrollern med __construct innan du kör confirmUser på userController objektet companyController finns före Auth::login() samtal görs.