If a replaced function is called by another function, both functions are recompiled when called. If the interface of the replaced function does not match that in the calling function, then the calling function must be replaced, otherwise, the calling function raises an error. You can execute sp_depends on the replaced function to check for any calling objects.
create function testfun1 (@para1 int) returns int as begin declare @retval int set @retval = @para1 return @retval end create function testfun2 (@para int) returns int as begin declare @retval int select @retval= dbo.testfun1 (@para) return @retval end create or replace function testfun1 (@para1 int,@para2 int) returns int as begin declare @retval int set @retval = @para1+@para2 return @retval end