A
Aryeh M. Friedman
I decided to switch from 1.6 to 1.7 for developing one of our major projects and am now getting warnings that I did not in 1.6. Seems the primary suspect is @SupressWarnings("uncheck") is not being honored. For example the following snippet compiles with no warning under 1.6 but with a warning on 1.7:
@SuppressWarnings("unchecked")
private Queue<CharacterToken> prep(String s)
{
return CollectionUtil.toQueue(new UnicodeLexer(
LexerUtil.lexerPrep(s),loc).getTokens());
}
Here are are the signatures of the called methods:
LexerUtil:
public static Queue<Character> lexerPrep(String s)
UnicodeLexer:
public UnicodeLexer(Queue<Character> in,String compilationUnit)
public List<CharacterToken> getTokens()
CollectionUtil:
@SuppressWarnings("unchecked")
public static Queue toQueue(List list)
and the derivation for CharacterToken:
public class CharacterToken extends Token<Character>
public abstract class Token<T>
Why does it not work in 1.7 but does in 1.6 (yes I know the warning is generated by CollectionUtil.toQueue)?
@SuppressWarnings("unchecked")
private Queue<CharacterToken> prep(String s)
{
return CollectionUtil.toQueue(new UnicodeLexer(
LexerUtil.lexerPrep(s),loc).getTokens());
}
Here are are the signatures of the called methods:
LexerUtil:
public static Queue<Character> lexerPrep(String s)
UnicodeLexer:
public UnicodeLexer(Queue<Character> in,String compilationUnit)
public List<CharacterToken> getTokens()
CollectionUtil:
@SuppressWarnings("unchecked")
public static Queue toQueue(List list)
and the derivation for CharacterToken:
public class CharacterToken extends Token<Character>
public abstract class Token<T>
Why does it not work in 1.7 but does in 1.6 (yes I know the warning is generated by CollectionUtil.toQueue)?