d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy/*
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy *
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * This code is free software; you can redistribute it and/or modify it
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * under the terms of the GNU General Public License version 2 only, as
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * published by the Free Software Foundation.
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy *
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * This code is distributed in the hope that it will be useful, but WITHOUT
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * version 2 for more details (a copy is included in the LICENSE file that
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * accompanied this code).
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy *
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * You should have received a copy of the GNU General Public License version
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * 2 along with this work; if not, write to the Free Software Foundation,
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy *
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * or visit www.oracle.com if you need additional information or have any
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * questions.
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy */
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy/*
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * @test
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * @bug 4916607 4931647
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * @summary an extends-bound (covariant) wildcard is like readonly
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * @author gafter
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy *
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy * @compile/fail Readonly.java
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy */
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedyclass Err<T> {
d583b39bfb4e2571d3e41097c5c357ffe353ad45John Wren Kennedy Err<T> get() { return null; }
d33341fb88062a3afe7066acda297c3a1959176aYuri Pankov void put(Err<T> t) {}
d33341fb88062a3afe7066acda297c3a1959176aYuri Pankov
d33341fb88062a3afe7066acda297c3a1959176aYuri Pankov static void f(Err<? extends String> e) {
e.put(e.get());
}
}