John Swinney has been criticised after it emerged the state-run shipyard is barred from bidding for the latest Calmac ferry contract.