If your concurrency strictly can't involve parallelism then sure, no data races, but also then your performance is miserable on modern hardware.
If your concurrency can invoke parallelism, then you need to explicitly protect against data races, or else you need to define what happens (Java does this, nobody else has) or else you shrug and say too bad now the program is nonsense, you lose (C, C++, Go, many modern languages do this, it is easier)
Though Swift concurrency is mostly about "concurrency" not "parallelism", which is the one that has data races.