http://d.puremagic.com/issues/show_bug.cgi?id=1449



--- Comment #10 from Lars Ivar Igesund <larsi...@igesund.net> 2011-06-16 
06:44:29 PDT ---
(In reply to comment #9)

> To quote the spec:
> > It is often necessary to deprecate a feature in a library, yet retain it for
> > backwards compatibility. Such declarations can be marked as deprecated, 
> > which > means that the compiler can be set to produce an error if any code 
> > refers to
> > deprecated declarations
> 
> Where is the code referring to a deprecated declaration?

It does so implicitly.

If you have

Bar b = new Foo;

and do 

b.foo();

the compiler will not be able to catch it, as it cannot know whether an
arbitrary Bar instance actually is an instance of Foo. So at runtime, a
deprecated function will be called, or attempted to be called.

The spec probably does not cover this particular usecase, but it seems to me
that it is worth a warning. It just doesn't make sense to have an
implementation be deprecated, when the same function in the interface is not.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------

Reply via email to