No problem, the simulator and synthesizer are both happy with X. During simulation, X means "unknown state", and helps you catch bugs. During synthesis, X means "don't care", and is absorbed during logic optimization. Go ahead and use X, it is very helpful.
In my projects, I set various data buses to X during idle states. ModelSim displays X in red color. That greatly clarifies the data pipelines, helping me to visualize the data flow and catch bugs such as reading data at the wrong time.