Это невозможно.Для сценария, который вы даете.
create proc dbo.foo
@a int
as
select 1
go
create proc dbo.bar
as
exec dbo.foo @b=10
Единственный способ обнаружить ошибку - это выполнить ее.Очевидно, вы могли бы выполнить транзакцию, которая откатывает и автоматизирует эти тесты.