The test runner works by generating its own main function and deleting from the AST any existing function tagged with #[main]. Now that we have a #[main] attribute, we don't actually need to remove the main function, just the attribute.
Note that this doesn't affect main functions that don't have the attribute, since that main is silently ignored when there's a #[main] somewhere.