Потому что в общем случае они хранят только аргументы своего первого списка параметров. Если есть case class С(a: A)(b: B), то он будет хранить только a, а чтобы создать объект этого класса, нужен b, который неизвестен.