If this was removed, would it cause issues when including the header file ...
Potentially, yes. Not necessarily. In general, it depends. In particular, it depends on the content of the header and whether the header is included more than once into a single translation unit (TU). Some declarations can be repeated - others may not. For example, definitions must not be repeated.
... in multiple source files?
Whether the header has guard macro is irrelevant to the header being included into multiple TUs. Each TU is pre-processed separately and the guard doesn't prevent inclusion into multiple TU.
If a header contains definitions that may not be included into more than one TU (such as definition of a non-inline function), then the header is not generally very useful (although, a practical example of this exists: some header-only libraries provide a way to include their own main
function definition).