Auto merge of #59922 - Centril:rollup-0qmx4jg, r=Centril
Rollup of 8 pull requests Successful merges: - #59781 (Remove check_match from const_eval) - #59820 (proc_macro: stop using LEB128 for RPC.) - #59846 (clarify what the item is in "not a module" error) - #59847 (Error when using `catch` after `try`) - #59859 (Suggest removing `?` to resolve type errors.) - #59862 (Tweak unstable diagnostic output) - #59866 (Recover from missing semicolon based on the found token) - #59892 (Impl RawFd conversion traits for WASI TcpListener, TcpStream and UdpSocket) Failed merges: r? @ghost
This commit is contained in:
commit
aa35e73b25
211 changed files with 1327 additions and 631 deletions
|
@ -24,32 +24,22 @@ pub(super) trait DecodeMut<'a, 's, S>: Sized {
|
|||
}
|
||||
|
||||
macro_rules! rpc_encode_decode {
|
||||
(uleb128 $ty:ty) => {
|
||||
(le $ty:ty) => {
|
||||
impl<S> Encode<S> for $ty {
|
||||
fn encode(mut self, w: &mut Writer, s: &mut S) {
|
||||
let mut byte = 0x80;
|
||||
while byte & 0x80 != 0 {
|
||||
byte = (self & 0x7f) as u8;
|
||||
self >>= 7;
|
||||
if self != 0 {
|
||||
byte |= 0x80;
|
||||
}
|
||||
byte.encode(w, s);
|
||||
}
|
||||
fn encode(self, w: &mut Writer, _: &mut S) {
|
||||
w.write_all(&self.to_le_bytes()).unwrap();
|
||||
}
|
||||
}
|
||||
|
||||
impl<S> DecodeMut<'_, '_, S> for $ty {
|
||||
fn decode(r: &mut Reader<'_>, s: &mut S) -> Self {
|
||||
let mut byte = 0x80;
|
||||
let mut v = 0;
|
||||
let mut shift = 0;
|
||||
while byte & 0x80 != 0 {
|
||||
byte = u8::decode(r, s);
|
||||
v |= ((byte & 0x7f) as Self) << shift;
|
||||
shift += 7;
|
||||
}
|
||||
v
|
||||
fn decode(r: &mut Reader<'_>, _: &mut S) -> Self {
|
||||
const N: usize = ::std::mem::size_of::<$ty>();
|
||||
|
||||
let mut bytes = [0; N];
|
||||
bytes.copy_from_slice(&r[..N]);
|
||||
*r = &r[N..];
|
||||
|
||||
Self::from_le_bytes(bytes)
|
||||
}
|
||||
}
|
||||
};
|
||||
|
@ -136,8 +126,8 @@ impl<S> DecodeMut<'_, '_, S> for u8 {
|
|||
}
|
||||
}
|
||||
|
||||
rpc_encode_decode!(uleb128 u32);
|
||||
rpc_encode_decode!(uleb128 usize);
|
||||
rpc_encode_decode!(le u32);
|
||||
rpc_encode_decode!(le usize);
|
||||
|
||||
impl<S> Encode<S> for bool {
|
||||
fn encode(self, w: &mut Writer, s: &mut S) {
|
||||
|
|
|
@ -604,13 +604,39 @@ impl<'a, 'gcx, 'tcx> InferCtxt<'a, 'gcx, 'tcx> {
|
|||
source,
|
||||
ref prior_arms,
|
||||
last_ty,
|
||||
discrim_hir_id,
|
||||
..
|
||||
} => match source {
|
||||
hir::MatchSource::IfLetDesugar { .. } => {
|
||||
let msg = "`if let` arms have incompatible types";
|
||||
err.span_label(cause.span, msg);
|
||||
}
|
||||
hir::MatchSource::TryDesugar => {}
|
||||
hir::MatchSource::TryDesugar => {
|
||||
if let Some(ty::error::ExpectedFound { expected, .. }) = exp_found {
|
||||
let discrim_expr = self.tcx.hir().expect_expr_by_hir_id(discrim_hir_id);
|
||||
let discrim_ty = if let hir::ExprKind::Call(_, args) = &discrim_expr.node {
|
||||
let arg_expr = args.first().expect("try desugaring call w/out arg");
|
||||
self.in_progress_tables.and_then(|tables| {
|
||||
tables.borrow().expr_ty_opt(arg_expr)
|
||||
})
|
||||
} else {
|
||||
bug!("try desugaring w/out call expr as discriminant");
|
||||
};
|
||||
|
||||
match discrim_ty {
|
||||
Some(ty) if expected == ty => {
|
||||
let source_map = self.tcx.sess.source_map();
|
||||
err.span_suggestion(
|
||||
source_map.end_point(cause.span),
|
||||
"try removing this `?`",
|
||||
"".to_string(),
|
||||
Applicability::MachineApplicable,
|
||||
);
|
||||
},
|
||||
_ => {},
|
||||
}
|
||||
}
|
||||
}
|
||||
_ => {
|
||||
let msg = "`match` arms have incompatible types";
|
||||
err.span_label(cause.span, msg);
|
||||
|
|
|
@ -226,6 +226,7 @@ pub enum ObligationCauseCode<'tcx> {
|
|||
source: hir::MatchSource,
|
||||
prior_arms: Vec<Span>,
|
||||
last_ty: Ty<'tcx>,
|
||||
discrim_hir_id: hir::HirId,
|
||||
},
|
||||
|
||||
/// Computing common supertype in the pattern guard for the arms of a match expression
|
||||
|
|
|
@ -519,6 +519,7 @@ impl<'a, 'tcx> Lift<'tcx> for traits::ObligationCauseCode<'a> {
|
|||
source,
|
||||
ref prior_arms,
|
||||
last_ty,
|
||||
discrim_hir_id,
|
||||
} => {
|
||||
tcx.lift(&last_ty).map(|last_ty| {
|
||||
super::MatchExpressionArm {
|
||||
|
@ -526,6 +527,7 @@ impl<'a, 'tcx> Lift<'tcx> for traits::ObligationCauseCode<'a> {
|
|||
source,
|
||||
prior_arms: prior_arms.clone(),
|
||||
last_ty,
|
||||
discrim_hir_id,
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
|
@ -615,22 +615,9 @@ pub fn const_eval_raw_provider<'a, 'tcx>(
|
|||
let cid = key.value;
|
||||
let def_id = cid.instance.def.def_id();
|
||||
|
||||
if let Some(id) = tcx.hir().as_local_hir_id(def_id) {
|
||||
let tables = tcx.typeck_tables_of(def_id);
|
||||
|
||||
// Do match-check before building MIR
|
||||
// FIXME(#59378) check_match may have errored but we're not checking for that anymore
|
||||
tcx.check_match(def_id);
|
||||
|
||||
if let hir::BodyOwnerKind::Const = tcx.hir().body_owner_kind_by_hir_id(id) {
|
||||
tcx.mir_const_qualif(def_id);
|
||||
}
|
||||
|
||||
// Do not continue into miri if typeck errors occurred; it will fail horribly
|
||||
if tables.tainted_by_errors {
|
||||
return Err(ErrorHandled::Reported)
|
||||
}
|
||||
};
|
||||
if def_id.is_local() && tcx.typeck_tables_of(def_id).tainted_by_errors {
|
||||
return Err(ErrorHandled::Reported);
|
||||
}
|
||||
|
||||
let (res, ecx) = eval_body_and_ecx(tcx, cid, None, key.param_env);
|
||||
res.and_then(|place| {
|
||||
|
|
|
@ -3731,9 +3731,16 @@ impl<'a> Resolver<'a> {
|
|||
def, path.len() - i - 1
|
||||
));
|
||||
} else {
|
||||
let label = format!(
|
||||
"`{}` is {} {}, not a module",
|
||||
ident,
|
||||
def.article(),
|
||||
def.kind_name(),
|
||||
);
|
||||
|
||||
return PathResult::Failed {
|
||||
span: ident.span,
|
||||
label: format!("not a module `{}`", ident),
|
||||
label,
|
||||
suggestion: None,
|
||||
is_error_from_last_segment: is_last,
|
||||
};
|
||||
|
|
|
@ -732,6 +732,7 @@ https://doc.rust-lang.org/reference/types.html#trait-objects");
|
|||
source: match_src,
|
||||
prior_arms: other_arms.clone(),
|
||||
last_ty: prior_arm_ty.unwrap(),
|
||||
discrim_hir_id: discrim.hir_id,
|
||||
})
|
||||
};
|
||||
coercion.coerce(self, &cause, &arm.body, arm_ty);
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
use crate::fs;
|
||||
use crate::io;
|
||||
use crate::sys;
|
||||
use crate::net;
|
||||
use crate::sys_common::{AsInner, FromInner, IntoInner};
|
||||
|
||||
/// Raw file descriptors.
|
||||
|
@ -50,6 +51,60 @@ pub trait IntoRawFd {
|
|||
fn into_raw_fd(self) -> RawFd;
|
||||
}
|
||||
|
||||
impl AsRawFd for net::TcpStream {
|
||||
fn as_raw_fd(&self) -> RawFd {
|
||||
self.as_inner().fd().as_raw()
|
||||
}
|
||||
}
|
||||
|
||||
impl FromRawFd for net::TcpStream {
|
||||
unsafe fn from_raw_fd(fd: RawFd) -> net::TcpStream {
|
||||
net::TcpStream::from_inner(sys::net::TcpStream::from_inner(fd))
|
||||
}
|
||||
}
|
||||
|
||||
impl IntoRawFd for net::TcpStream {
|
||||
fn into_raw_fd(self) -> RawFd {
|
||||
self.into_inner().into_fd().into_raw()
|
||||
}
|
||||
}
|
||||
|
||||
impl AsRawFd for net::TcpListener {
|
||||
fn as_raw_fd(&self) -> RawFd {
|
||||
self.as_inner().fd().as_raw()
|
||||
}
|
||||
}
|
||||
|
||||
impl FromRawFd for net::TcpListener {
|
||||
unsafe fn from_raw_fd(fd: RawFd) -> net::TcpListener {
|
||||
net::TcpListener::from_inner(sys::net::TcpListener::from_inner(fd))
|
||||
}
|
||||
}
|
||||
|
||||
impl IntoRawFd for net::TcpListener {
|
||||
fn into_raw_fd(self) -> RawFd {
|
||||
self.into_inner().into_fd().into_raw()
|
||||
}
|
||||
}
|
||||
|
||||
impl AsRawFd for net::UdpSocket {
|
||||
fn as_raw_fd(&self) -> RawFd {
|
||||
self.as_inner().fd().as_raw()
|
||||
}
|
||||
}
|
||||
|
||||
impl FromRawFd for net::UdpSocket {
|
||||
unsafe fn from_raw_fd(fd: RawFd) -> net::UdpSocket {
|
||||
net::UdpSocket::from_inner(sys::net::UdpSocket::from_inner(fd))
|
||||
}
|
||||
}
|
||||
|
||||
impl IntoRawFd for net::UdpSocket {
|
||||
fn into_raw_fd(self) -> RawFd {
|
||||
self.into_inner().into_fd().into_raw()
|
||||
}
|
||||
}
|
||||
|
||||
impl AsRawFd for fs::File {
|
||||
fn as_raw_fd(&self) -> RawFd {
|
||||
self.as_inner().fd().as_raw()
|
||||
|
|
|
@ -4,8 +4,12 @@ use crate::net::{SocketAddr, Shutdown, Ipv4Addr, Ipv6Addr};
|
|||
use crate::time::Duration;
|
||||
use crate::sys::{unsupported, Void};
|
||||
use crate::convert::TryFrom;
|
||||
use crate::sys::fd::{WasiFd};
|
||||
use crate::sys_common::FromInner;
|
||||
|
||||
pub struct TcpStream(Void);
|
||||
pub struct TcpStream {
|
||||
fd: WasiFd,
|
||||
}
|
||||
|
||||
impl TcpStream {
|
||||
pub fn connect(_: io::Result<&SocketAddr>) -> io::Result<TcpStream> {
|
||||
|
@ -17,89 +21,111 @@ impl TcpStream {
|
|||
}
|
||||
|
||||
pub fn set_read_timeout(&self, _: Option<Duration>) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_write_timeout(&self, _: Option<Duration>) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn read_timeout(&self) -> io::Result<Option<Duration>> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn write_timeout(&self) -> io::Result<Option<Duration>> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn peek(&self, _: &mut [u8]) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn read(&self, _: &mut [u8]) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn read_vectored(&self, _: &mut [IoVecMut<'_>]) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn write(&self, _: &[u8]) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn write_vectored(&self, _: &[IoVec<'_>]) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn peer_addr(&self) -> io::Result<SocketAddr> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn socket_addr(&self) -> io::Result<SocketAddr> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn shutdown(&self, _: Shutdown) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn duplicate(&self) -> io::Result<TcpStream> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_nodelay(&self, _: bool) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn nodelay(&self) -> io::Result<bool> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_ttl(&self, _: u32) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn ttl(&self) -> io::Result<u32> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn take_error(&self) -> io::Result<Option<io::Error>> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_nonblocking(&self, _: bool) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn fd(&self) -> &WasiFd {
|
||||
&self.fd
|
||||
}
|
||||
|
||||
pub fn into_fd(self) -> WasiFd {
|
||||
self.fd
|
||||
}
|
||||
}
|
||||
|
||||
impl FromInner<u32> for TcpStream {
|
||||
fn from_inner(fd: u32) -> TcpStream {
|
||||
unsafe {
|
||||
TcpStream {
|
||||
fd: WasiFd::from_raw(fd),
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl fmt::Debug for TcpStream {
|
||||
fn fmt(&self, _f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
match self.0 {}
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
f.debug_struct("TcpStream")
|
||||
.field("fd", &self.fd.as_raw())
|
||||
.finish()
|
||||
}
|
||||
}
|
||||
|
||||
pub struct TcpListener(Void);
|
||||
pub struct TcpListener {
|
||||
fd: WasiFd
|
||||
}
|
||||
|
||||
impl TcpListener {
|
||||
pub fn bind(_: io::Result<&SocketAddr>) -> io::Result<TcpListener> {
|
||||
|
@ -107,49 +133,71 @@ impl TcpListener {
|
|||
}
|
||||
|
||||
pub fn socket_addr(&self) -> io::Result<SocketAddr> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn accept(&self) -> io::Result<(TcpStream, SocketAddr)> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn duplicate(&self) -> io::Result<TcpListener> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_ttl(&self, _: u32) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn ttl(&self) -> io::Result<u32> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_only_v6(&self, _: bool) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn only_v6(&self) -> io::Result<bool> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn take_error(&self) -> io::Result<Option<io::Error>> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_nonblocking(&self, _: bool) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn fd(&self) -> &WasiFd {
|
||||
&self.fd
|
||||
}
|
||||
|
||||
pub fn into_fd(self) -> WasiFd {
|
||||
self.fd
|
||||
}
|
||||
}
|
||||
|
||||
impl FromInner<u32> for TcpListener {
|
||||
fn from_inner(fd: u32) -> TcpListener {
|
||||
unsafe {
|
||||
TcpListener {
|
||||
fd: WasiFd::from_raw(fd),
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl fmt::Debug for TcpListener {
|
||||
fn fmt(&self, _f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
match self.0 {}
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
f.debug_struct("TcpListener")
|
||||
.field("fd", &self.fd.as_raw())
|
||||
.finish()
|
||||
}
|
||||
}
|
||||
|
||||
pub struct UdpSocket(Void);
|
||||
pub struct UdpSocket {
|
||||
fd: WasiFd,
|
||||
}
|
||||
|
||||
impl UdpSocket {
|
||||
pub fn bind(_: io::Result<&SocketAddr>) -> io::Result<UdpSocket> {
|
||||
|
@ -157,133 +205,153 @@ impl UdpSocket {
|
|||
}
|
||||
|
||||
pub fn peer_addr(&self) -> io::Result<SocketAddr> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn socket_addr(&self) -> io::Result<SocketAddr> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn recv_from(&self, _: &mut [u8]) -> io::Result<(usize, SocketAddr)> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn peek_from(&self, _: &mut [u8]) -> io::Result<(usize, SocketAddr)> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn send_to(&self, _: &[u8], _: &SocketAddr) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn duplicate(&self) -> io::Result<UdpSocket> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_read_timeout(&self, _: Option<Duration>) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_write_timeout(&self, _: Option<Duration>) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn read_timeout(&self) -> io::Result<Option<Duration>> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn write_timeout(&self) -> io::Result<Option<Duration>> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_broadcast(&self, _: bool) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn broadcast(&self) -> io::Result<bool> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_multicast_loop_v4(&self, _: bool) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn multicast_loop_v4(&self) -> io::Result<bool> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_multicast_ttl_v4(&self, _: u32) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn multicast_ttl_v4(&self) -> io::Result<u32> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_multicast_loop_v6(&self, _: bool) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn multicast_loop_v6(&self) -> io::Result<bool> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn join_multicast_v4(&self, _: &Ipv4Addr, _: &Ipv4Addr)
|
||||
-> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn join_multicast_v6(&self, _: &Ipv6Addr, _: u32)
|
||||
-> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn leave_multicast_v4(&self, _: &Ipv4Addr, _: &Ipv4Addr)
|
||||
-> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn leave_multicast_v6(&self, _: &Ipv6Addr, _: u32)
|
||||
-> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_ttl(&self, _: u32) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn ttl(&self) -> io::Result<u32> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn take_error(&self) -> io::Result<Option<io::Error>> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn set_nonblocking(&self, _: bool) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn recv(&self, _: &mut [u8]) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn peek(&self, _: &mut [u8]) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn send(&self, _: &[u8]) -> io::Result<usize> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn connect(&self, _: io::Result<&SocketAddr>) -> io::Result<()> {
|
||||
match self.0 {}
|
||||
unsupported()
|
||||
}
|
||||
|
||||
pub fn fd(&self) -> &WasiFd {
|
||||
&self.fd
|
||||
}
|
||||
|
||||
pub fn into_fd(self) -> WasiFd {
|
||||
self.fd
|
||||
}
|
||||
}
|
||||
|
||||
impl FromInner<u32> for UdpSocket {
|
||||
fn from_inner(fd: u32) -> UdpSocket {
|
||||
unsafe {
|
||||
UdpSocket {
|
||||
fd: WasiFd::from_raw(fd),
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
impl fmt::Debug for UdpSocket {
|
||||
fn fmt(&self, _f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
match self.0 {}
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
f.debug_struct("UdpSocket")
|
||||
.field("fd", &self.fd.as_raw())
|
||||
.finish()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -903,7 +903,7 @@ pub const BUILTIN_ATTRIBUTES: &[(&str, AttributeType, AttributeTemplate, Attribu
|
|||
("thread_local", Whitelisted, template!(Word), Gated(Stability::Unstable,
|
||||
"thread_local",
|
||||
"`#[thread_local]` is an experimental feature, and does \
|
||||
not currently handle destructors.",
|
||||
not currently handle destructors",
|
||||
cfg_fn!(thread_local))),
|
||||
|
||||
("rustc_on_unimplemented", Whitelisted, template!(List:
|
||||
|
@ -1438,18 +1438,34 @@ pub enum GateStrength {
|
|||
Soft,
|
||||
}
|
||||
|
||||
pub fn emit_feature_err(sess: &ParseSess, feature: &str, span: Span, issue: GateIssue,
|
||||
explain: &str) {
|
||||
pub fn emit_feature_err(
|
||||
sess: &ParseSess,
|
||||
feature: &str,
|
||||
span: Span,
|
||||
issue: GateIssue,
|
||||
explain: &str,
|
||||
) {
|
||||
feature_err(sess, feature, span, issue, explain).emit();
|
||||
}
|
||||
|
||||
pub fn feature_err<'a>(sess: &'a ParseSess, feature: &str, span: Span, issue: GateIssue,
|
||||
explain: &str) -> DiagnosticBuilder<'a> {
|
||||
pub fn feature_err<'a>(
|
||||
sess: &'a ParseSess,
|
||||
feature: &str,
|
||||
span: Span,
|
||||
issue: GateIssue,
|
||||
explain: &str,
|
||||
) -> DiagnosticBuilder<'a> {
|
||||
leveled_feature_err(sess, feature, span, issue, explain, GateStrength::Hard)
|
||||
}
|
||||
|
||||
fn leveled_feature_err<'a>(sess: &'a ParseSess, feature: &str, span: Span, issue: GateIssue,
|
||||
explain: &str, level: GateStrength) -> DiagnosticBuilder<'a> {
|
||||
fn leveled_feature_err<'a>(
|
||||
sess: &'a ParseSess,
|
||||
feature: &str,
|
||||
span: Span,
|
||||
issue: GateIssue,
|
||||
explain: &str,
|
||||
level: GateStrength,
|
||||
) -> DiagnosticBuilder<'a> {
|
||||
let diag = &sess.span_diagnostic;
|
||||
|
||||
let issue = match issue {
|
||||
|
@ -1457,23 +1473,26 @@ fn leveled_feature_err<'a>(sess: &'a ParseSess, feature: &str, span: Span, issue
|
|||
GateIssue::Library(lib) => lib,
|
||||
};
|
||||
|
||||
let explanation = match issue {
|
||||
None | Some(0) => explain.to_owned(),
|
||||
Some(n) => format!("{} (see issue #{})", explain, n)
|
||||
};
|
||||
|
||||
let mut err = match level {
|
||||
GateStrength::Hard => {
|
||||
diag.struct_span_err_with_code(span, &explanation, stringify_error_code!(E0658))
|
||||
diag.struct_span_err_with_code(span, explain, stringify_error_code!(E0658))
|
||||
}
|
||||
GateStrength::Soft => diag.struct_span_warn(span, &explanation),
|
||||
GateStrength::Soft => diag.struct_span_warn(span, explain),
|
||||
};
|
||||
|
||||
match issue {
|
||||
None | Some(0) => {} // We still accept `0` as a stand-in for backwards compatibility
|
||||
Some(n) => {
|
||||
err.note(&format!(
|
||||
"for more information, see https://github.com/rust-lang/rust/issues/{}",
|
||||
n,
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
// #23973: do not suggest `#![feature(...)]` if we are in beta/stable
|
||||
if sess.unstable_features.is_nightly_build() {
|
||||
err.help(&format!("add #![feature({})] to the \
|
||||
crate attributes to enable",
|
||||
feature));
|
||||
err.help(&format!("add #![feature({})] to the crate attributes to enable", feature));
|
||||
}
|
||||
|
||||
// If we're on stable and only emitting a "soft" warning, add a note to
|
||||
|
@ -1488,10 +1507,10 @@ fn leveled_feature_err<'a>(sess: &'a ParseSess, feature: &str, span: Span, issue
|
|||
}
|
||||
|
||||
const EXPLAIN_BOX_SYNTAX: &str =
|
||||
"box expression syntax is experimental; you can call `Box::new` instead.";
|
||||
"box expression syntax is experimental; you can call `Box::new` instead";
|
||||
|
||||
pub const EXPLAIN_STMT_ATTR_SYNTAX: &str =
|
||||
"attributes on expressions are experimental.";
|
||||
"attributes on expressions are experimental";
|
||||
|
||||
pub const EXPLAIN_ASM: &str =
|
||||
"inline assembly is not stable enough for use and is subject to change";
|
||||
|
@ -1685,10 +1704,12 @@ impl<'a> Visitor<'a> for PostExpansionVisitor<'a> {
|
|||
|
||||
fn visit_name(&mut self, sp: Span, name: ast::Name) {
|
||||
if !name.as_str().is_ascii() {
|
||||
gate_feature_post!(&self,
|
||||
non_ascii_idents,
|
||||
self.context.parse_sess.source_map().def_span(sp),
|
||||
"non-ascii idents are not fully supported.");
|
||||
gate_feature_post!(
|
||||
&self,
|
||||
non_ascii_idents,
|
||||
self.context.parse_sess.source_map().def_span(sp),
|
||||
"non-ascii idents are not fully supported"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -348,19 +348,17 @@ impl DiagnosticSpanLine {
|
|||
/// `span` within the line.
|
||||
fn from_span(span: Span, je: &JsonEmitter) -> Vec<DiagnosticSpanLine> {
|
||||
je.sm.span_to_lines(span)
|
||||
.map(|lines| {
|
||||
let fm = &*lines.file;
|
||||
lines.lines
|
||||
.iter()
|
||||
.map(|line| {
|
||||
DiagnosticSpanLine::line_from_source_file(fm,
|
||||
line.line_index,
|
||||
line.start_col.0 + 1,
|
||||
line.end_col.0 + 1)
|
||||
})
|
||||
.collect()
|
||||
})
|
||||
.unwrap_or_else(|_| vec![])
|
||||
.map(|lines| {
|
||||
let fm = &*lines.file;
|
||||
lines.lines
|
||||
.iter()
|
||||
.map(|line| DiagnosticSpanLine::line_from_source_file(
|
||||
fm,
|
||||
line.line_index,
|
||||
line.start_col.0 + 1,
|
||||
line.end_col.0 + 1,
|
||||
)).collect()
|
||||
}).unwrap_or_else(|_| vec![])
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -851,8 +851,34 @@ impl<'a> Parser<'a> {
|
|||
}
|
||||
}
|
||||
|
||||
let is_semi_suggestable = expected.iter().any(|t| match t {
|
||||
TokenType::Token(token::Semi) => true, // we expect a `;` here
|
||||
_ => false,
|
||||
}) && ( // a `;` would be expected before the current keyword
|
||||
self.token.is_keyword(keywords::Break) ||
|
||||
self.token.is_keyword(keywords::Continue) ||
|
||||
self.token.is_keyword(keywords::For) ||
|
||||
self.token.is_keyword(keywords::If) ||
|
||||
self.token.is_keyword(keywords::Let) ||
|
||||
self.token.is_keyword(keywords::Loop) ||
|
||||
self.token.is_keyword(keywords::Match) ||
|
||||
self.token.is_keyword(keywords::Return) ||
|
||||
self.token.is_keyword(keywords::While)
|
||||
);
|
||||
let cm = self.sess.source_map();
|
||||
match (cm.lookup_line(self.span.lo()), cm.lookup_line(sp.lo())) {
|
||||
(Ok(ref a), Ok(ref b)) if a.line != b.line && is_semi_suggestable => {
|
||||
// The spans are in different lines, expected `;` and found `let` or `return`.
|
||||
// High likelihood that it is only a missing `;`.
|
||||
err.span_suggestion_short(
|
||||
label_sp,
|
||||
"a semicolon may be missing here",
|
||||
";".to_string(),
|
||||
Applicability::MaybeIncorrect,
|
||||
);
|
||||
err.emit();
|
||||
return Ok(true);
|
||||
}
|
||||
(Ok(ref a), Ok(ref b)) if a.line == b.line => {
|
||||
// When the spans are in the same line, it means that the only content between
|
||||
// them is whitespace, point at the found token in that case:
|
||||
|
@ -4091,7 +4117,15 @@ impl<'a> Parser<'a> {
|
|||
{
|
||||
let (iattrs, body) = self.parse_inner_attrs_and_block()?;
|
||||
attrs.extend(iattrs);
|
||||
Ok(self.mk_expr(span_lo.to(body.span), ExprKind::TryBlock(body), attrs))
|
||||
if self.eat_keyword(keywords::Catch) {
|
||||
let mut error = self.struct_span_err(self.prev_span,
|
||||
"keyword `catch` cannot follow a `try` block");
|
||||
error.help("try using `match` on the result of the `try` block instead");
|
||||
error.emit();
|
||||
Err(error)
|
||||
} else {
|
||||
Ok(self.mk_expr(span_lo.to(body.span), ExprKind::TryBlock(body), attrs))
|
||||
}
|
||||
}
|
||||
|
||||
// `match` token already eaten
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: compiler plugins are experimental and possibly buggy (see issue #29597)
|
||||
error[E0658]: compiler plugins are experimental and possibly buggy
|
||||
--> $DIR/gated-plugin.rs:3:1
|
||||
|
|
||||
LL | #![plugin(attr_plugin_test)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29597
|
||||
= help: add #![feature(plugin)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -2,44 +2,49 @@ error[E0601]: `main` function not found in crate `hash_stable_is_unstable`
|
|||
|
|
||||
= note: consider adding a `main` function to `$DIR/hash-stable-is-unstable.rs`
|
||||
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead? (see issue #27812)
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
|
||||
--> $DIR/hash-stable-is-unstable.rs:3:1
|
||||
|
|
||||
LL | extern crate rustc_data_structures;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27812
|
||||
= help: add #![feature(rustc_private)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead? (see issue #27812)
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
|
||||
--> $DIR/hash-stable-is-unstable.rs:5:1
|
||||
|
|
||||
LL | extern crate rustc;
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27812
|
||||
= help: add #![feature(rustc_private)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead? (see issue #27812)
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
|
||||
--> $DIR/hash-stable-is-unstable.rs:7:1
|
||||
|
|
||||
LL | extern crate rustc_macros;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27812
|
||||
= help: add #![feature(rustc_private)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead? (see issue #27812)
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
|
||||
--> $DIR/hash-stable-is-unstable.rs:10:5
|
||||
|
|
||||
LL | use rustc_macros::HashStable;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27812
|
||||
= help: add #![feature(rustc_private)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead? (see issue #27812)
|
||||
error[E0658]: use of unstable library feature 'rustc_private': this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via `Cargo.toml` instead?
|
||||
--> $DIR/hash-stable-is-unstable.rs:13:10
|
||||
|
|
||||
LL | #[derive(HashStable)]
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27812
|
||||
= help: add #![feature(rustc_private)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 6 previous errors
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
error[E0658]: casting pointers to integers in constants is unstable (see issue #51910)
|
||||
error[E0658]: casting pointers to integers in constants is unstable
|
||||
--> $DIR/cast-ptr-to-int-const.rs:5:9
|
||||
|
|
||||
LL | main as u32
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51910
|
||||
= help: add #![feature(const_raw_ptr_to_usize_cast)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: casting pointers to integers in constants is unstable (see issue #51910)
|
||||
error[E0658]: casting pointers to integers in constants is unstable
|
||||
--> $DIR/cast-ptr-to-int-const.rs:9:9
|
||||
|
|
||||
LL | &Y as *const u32 as u32
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51910
|
||||
= help: add #![feature(const_raw_ptr_to_usize_cast)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: no_core is experimental (see issue #29639)
|
||||
error[E0658]: no_core is experimental
|
||||
--> $DIR/cfg-attr-crate-2.rs:6:21
|
||||
|
|
||||
LL | #![cfg_attr(broken, no_core)]
|
||||
| ^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29639
|
||||
= help: add #![feature(no_core)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: no_core is experimental (see issue #29639)
|
||||
error[E0658]: no_core is experimental
|
||||
--> $DIR/cfg-attr-multi-invalid-1.rs:4:21
|
||||
|
|
||||
LL | #![cfg_attr(broken, no_core, no_std)]
|
||||
| ^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29639
|
||||
= help: add #![feature(no_core)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: no_core is experimental (see issue #29639)
|
||||
error[E0658]: no_core is experimental
|
||||
--> $DIR/cfg-attr-multi-invalid-2.rs:4:29
|
||||
|
|
||||
LL | #![cfg_attr(broken, no_std, no_core)]
|
||||
| ^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29639
|
||||
= help: add #![feature(no_core)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
error[E0658]: The attribute `unknown` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `unknown` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/cfg-attr-unknown-attribute-macro-expansion.rs:3:27
|
||||
|
|
||||
LL | #[cfg_attr(all(), unknown)]
|
||||
|
@ -7,6 +7,7 @@ LL | #[cfg_attr(all(), unknown)]
|
|||
LL | foo!();
|
||||
| ------- in this macro invocation
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: dereferencing raw pointers in statics is unstable (see issue #51911)
|
||||
error[E0658]: dereferencing raw pointers in statics is unstable
|
||||
--> $DIR/const-deref-ptr.rs:4:29
|
||||
|
|
||||
LL | static C: u64 = unsafe {*(0xdeadbeef as *const u64)};
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51911
|
||||
= help: add #![feature(const_raw_ptr_deref)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: unions in const fn are unstable (see issue #51909)
|
||||
error[E0658]: unions in const fn are unstable
|
||||
--> $DIR/feature-gate-const_fn_union.rs:11:5
|
||||
|
|
||||
LL | Foo { u }.i
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51909
|
||||
= help: add #![feature(const_fn_union)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,27 +1,30 @@
|
|||
error[E0658]: panicking in constants is unstable (see issue #51999)
|
||||
error[E0658]: panicking in constants is unstable
|
||||
--> $DIR/feature-gate-const_panic.rs:3:15
|
||||
|
|
||||
LL | const Z: () = panic!("cheese");
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51999
|
||||
= help: add #![feature(const_panic)] to the crate attributes to enable
|
||||
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
||||
|
||||
error[E0658]: panicking in constants is unstable (see issue #51999)
|
||||
error[E0658]: panicking in constants is unstable
|
||||
--> $DIR/feature-gate-const_panic.rs:9:15
|
||||
|
|
||||
LL | const X: () = unimplemented!();
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51999
|
||||
= help: add #![feature(const_panic)] to the crate attributes to enable
|
||||
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
||||
|
||||
error[E0658]: panicking in constants is unstable (see issue #51999)
|
||||
error[E0658]: panicking in constants is unstable
|
||||
--> $DIR/feature-gate-const_panic.rs:6:15
|
||||
|
|
||||
LL | const Y: () = unreachable!();
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51999
|
||||
= help: add #![feature(const_panic)] to the crate attributes to enable
|
||||
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
||||
|
||||
|
|
|
@ -3,7 +3,9 @@ fn main() {
|
|||
// that pointer comparison is disallowed, not that parts of a pointer are accessed as raw
|
||||
// bytes.
|
||||
let _: [u8; 0] = [4; {
|
||||
match &1 as *const i32 as usize { //~ ERROR casting pointers to integers in constants
|
||||
match &1 as *const i32 as usize {
|
||||
//~^ ERROR casting pointers to integers in constants
|
||||
//~| NOTE for more information, see
|
||||
0 => 42, //~ ERROR constant contains unimplemented expression type
|
||||
//~^ NOTE "pointer arithmetic or comparison" needs an rfc before being allowed
|
||||
//~| ERROR evaluation of constant value failed
|
||||
|
|
|
@ -1,19 +1,20 @@
|
|||
error[E0658]: casting pointers to integers in constants is unstable (see issue #51910)
|
||||
error[E0658]: casting pointers to integers in constants is unstable
|
||||
--> $DIR/match-test-ptr-null.rs:6:15
|
||||
|
|
||||
LL | match &1 as *const i32 as usize {
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51910
|
||||
= help: add #![feature(const_raw_ptr_to_usize_cast)] to the crate attributes to enable
|
||||
|
||||
error[E0019]: constant contains unimplemented expression type
|
||||
--> $DIR/match-test-ptr-null.rs:7:13
|
||||
--> $DIR/match-test-ptr-null.rs:9:13
|
||||
|
|
||||
LL | 0 => 42,
|
||||
| ^
|
||||
|
||||
error[E0080]: evaluation of constant value failed
|
||||
--> $DIR/match-test-ptr-null.rs:7:13
|
||||
--> $DIR/match-test-ptr-null.rs:9:13
|
||||
|
|
||||
LL | 0 => 42,
|
||||
| ^ "pointer arithmetic or comparison" needs an rfc before being allowed inside constants
|
||||
|
|
|
@ -1,33 +1,37 @@
|
|||
error[E0658]: dereferencing raw pointers in constant functions is unstable (see issue #51911)
|
||||
error[E0658]: dereferencing raw pointers in constant functions is unstable
|
||||
--> $DIR/min_const_fn_unsafe.rs:50:77
|
||||
|
|
||||
LL | const fn bad_const_fn_deref_raw(x: *mut usize) -> &'static usize { unsafe { &*x } }
|
||||
| ^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51911
|
||||
= help: add #![feature(const_raw_ptr_deref)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: dereferencing raw pointers in constant functions is unstable (see issue #51911)
|
||||
error[E0658]: dereferencing raw pointers in constant functions is unstable
|
||||
--> $DIR/min_const_fn_unsafe.rs:53:70
|
||||
|
|
||||
LL | const unsafe fn bad_const_unsafe_deref_raw(x: *mut usize) -> usize { *x }
|
||||
| ^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51911
|
||||
= help: add #![feature(const_raw_ptr_deref)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: dereferencing raw pointers in constant functions is unstable (see issue #51911)
|
||||
error[E0658]: dereferencing raw pointers in constant functions is unstable
|
||||
--> $DIR/min_const_fn_unsafe.rs:56:83
|
||||
|
|
||||
LL | const unsafe fn bad_const_unsafe_deref_raw_ref(x: *mut usize) -> &'static usize { &*x }
|
||||
| ^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51911
|
||||
= help: add #![feature(const_raw_ptr_deref)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: unions in const fn are unstable (see issue #51909)
|
||||
error[E0658]: unions in const fn are unstable
|
||||
--> $DIR/min_const_fn_unsafe.rs:63:5
|
||||
|
|
||||
LL | Foo { x: () }.y
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51909
|
||||
= help: add #![feature(const_fn_union)] to the crate attributes to enable
|
||||
|
||||
error[E0133]: dereference of raw pointer is unsafe and requires unsafe function or block
|
||||
|
|
|
@ -10,12 +10,13 @@ error[E0019]: constant contains unimplemented expression type
|
|||
LL | unsafe { *b = 5; }
|
||||
| ^^^^^^
|
||||
|
||||
error[E0658]: dereferencing raw pointers in constants is unstable (see issue #51911)
|
||||
error[E0658]: dereferencing raw pointers in constants is unstable
|
||||
--> $DIR/projection_qualif.rs:7:18
|
||||
|
|
||||
LL | unsafe { *b = 5; }
|
||||
| ^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51911
|
||||
= help: add #![feature(const_raw_ptr_deref)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 3 previous errors
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
error[E0658]: The attribute `foo` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `foo` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/custom_attribute.rs:3:3
|
||||
|
|
||||
LL | #[foo]
|
||||
| ^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `foo` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `foo` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/custom_attribute.rs:5:7
|
||||
|
|
||||
LL | #[foo]
|
||||
| ^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `foo` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `foo` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/custom_attribute.rs:7:7
|
||||
|
|
||||
LL | #[foo]
|
||||
| ^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 3 previous errors
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
static FOO: i32 = 42;
|
||||
static BAR: i32 = 42;
|
||||
|
||||
static BAZ: bool = unsafe { (&FOO as *const i32) == (&BAR as *const i32) }; //~ ERROR issue #53020
|
||||
static BAZ: bool = unsafe { (&FOO as *const i32) == (&BAR as *const i32) };
|
||||
//~^ ERROR comparing raw pointers inside static
|
||||
|
||||
fn main() {
|
||||
}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: comparing raw pointers inside static (see issue #53020)
|
||||
error[E0658]: comparing raw pointers inside static
|
||||
--> $DIR/E0395.rs:6:29
|
||||
|
|
||||
LL | static BAZ: bool = unsafe { (&FOO as *const i32) == (&BAR as *const i32) };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/53020
|
||||
= help: add #![feature(const_compare_raw_pointers)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: dereferencing raw pointers in constants is unstable (see issue #51911)
|
||||
error[E0658]: dereferencing raw pointers in constants is unstable
|
||||
--> $DIR/E0396.rs:5:28
|
||||
|
|
||||
LL | const VALUE: u8 = unsafe { *REG_ADDR };
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51911
|
||||
= help: add #![feature(const_raw_ptr_deref)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
error[E0658]: repr with 128-bit type is unstable (see issue #35118)
|
||||
error[E0658]: repr with 128-bit type is unstable
|
||||
--> $DIR/E0658.rs:2:1
|
||||
|
|
||||
LL | / enum Foo {
|
||||
|
@ -6,6 +6,7 @@ LL | | Bar(u64),
|
|||
LL | | }
|
||||
| |_^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/35118
|
||||
= help: add #![feature(repr128)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
error[E0658]: use of unstable library feature 'unstable_undeclared' (see issue #38412)
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared'
|
||||
--> $DIR/explore-issue-38412.rs:21:63
|
||||
|
|
||||
LL | let Record { a_stable_pub: _, a_unstable_declared_pub: _, a_unstable_undeclared_pub: _, .. } =
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38412
|
||||
= help: add #![feature(unstable_undeclared)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared' (see issue #38412)
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared'
|
||||
--> $DIR/explore-issue-38412.rs:30:5
|
||||
|
|
||||
LL | r.a_unstable_undeclared_pub;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38412
|
||||
= help: add #![feature(unstable_undeclared)] to the crate attributes to enable
|
||||
|
||||
error[E0616]: field `b_crate` of struct `pub_and_stability::Record` is private
|
||||
|
@ -32,12 +34,13 @@ error[E0616]: field `d_priv` of struct `pub_and_stability::Record` is private
|
|||
LL | r.d_priv;
|
||||
| ^^^^^^^^
|
||||
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared' (see issue #38412)
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared'
|
||||
--> $DIR/explore-issue-38412.rs:37:5
|
||||
|
|
||||
LL | t.2;
|
||||
| ^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38412
|
||||
= help: add #![feature(unstable_undeclared)] to the crate attributes to enable
|
||||
|
||||
error[E0616]: field `3` of struct `pub_and_stability::Tuple` is private
|
||||
|
@ -58,20 +61,22 @@ error[E0616]: field `5` of struct `pub_and_stability::Tuple` is private
|
|||
LL | t.5;
|
||||
| ^^^
|
||||
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared' (see issue #38412)
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared'
|
||||
--> $DIR/explore-issue-38412.rs:44:7
|
||||
|
|
||||
LL | r.unstable_undeclared_trait_method();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38412
|
||||
= help: add #![feature(unstable_undeclared)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared' (see issue #38412)
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared'
|
||||
--> $DIR/explore-issue-38412.rs:48:7
|
||||
|
|
||||
LL | r.unstable_undeclared();
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38412
|
||||
= help: add #![feature(unstable_undeclared)] to the crate attributes to enable
|
||||
|
||||
error[E0624]: method `pub_crate` is private
|
||||
|
@ -92,20 +97,22 @@ error[E0624]: method `private` is private
|
|||
LL | r.private();
|
||||
| ^^^^^^^
|
||||
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared' (see issue #38412)
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared'
|
||||
--> $DIR/explore-issue-38412.rs:57:7
|
||||
|
|
||||
LL | t.unstable_undeclared_trait_method();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38412
|
||||
= help: add #![feature(unstable_undeclared)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared' (see issue #38412)
|
||||
error[E0658]: use of unstable library feature 'unstable_undeclared'
|
||||
--> $DIR/explore-issue-38412.rs:61:7
|
||||
|
|
||||
LL | t.unstable_undeclared();
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38412
|
||||
= help: add #![feature(unstable_undeclared)] to the crate attributes to enable
|
||||
|
||||
error[E0624]: method `pub_crate` is private
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
#![crate_type="rlib"]
|
||||
#![optimize(speed)] //~ ERROR #54882
|
||||
#![optimize(speed)] //~ ERROR #[optimize] attribute is an unstable feature
|
||||
|
||||
#[optimize(size)] //~ ERROR #54882
|
||||
#[optimize(size)] //~ ERROR #[optimize] attribute is an unstable feature
|
||||
mod module {
|
||||
|
||||
#[optimize(size)] //~ ERROR #54882
|
||||
#[optimize(size)] //~ ERROR #[optimize] attribute is an unstable feature
|
||||
fn size() {}
|
||||
|
||||
#[optimize(speed)] //~ ERROR #54882
|
||||
#[optimize(speed)] //~ ERROR #[optimize] attribute is an unstable feature
|
||||
fn speed() {}
|
||||
|
||||
#[optimize(banana)]
|
||||
//~^ ERROR #54882
|
||||
//~^ ERROR #[optimize] attribute is an unstable feature
|
||||
//~| ERROR E0722
|
||||
fn not_known() {}
|
||||
|
||||
|
|
|
@ -1,41 +1,46 @@
|
|||
error[E0658]: #[optimize] attribute is an unstable feature (see issue #54882)
|
||||
error[E0658]: #[optimize] attribute is an unstable feature
|
||||
--> $DIR/feature-gate-optimize_attribute.rs:7:1
|
||||
|
|
||||
LL | #[optimize(size)]
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/54882
|
||||
= help: add #![feature(optimize_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: #[optimize] attribute is an unstable feature (see issue #54882)
|
||||
error[E0658]: #[optimize] attribute is an unstable feature
|
||||
--> $DIR/feature-gate-optimize_attribute.rs:10:1
|
||||
|
|
||||
LL | #[optimize(speed)]
|
||||
| ^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/54882
|
||||
= help: add #![feature(optimize_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: #[optimize] attribute is an unstable feature (see issue #54882)
|
||||
error[E0658]: #[optimize] attribute is an unstable feature
|
||||
--> $DIR/feature-gate-optimize_attribute.rs:13:1
|
||||
|
|
||||
LL | #[optimize(banana)]
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/54882
|
||||
= help: add #![feature(optimize_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: #[optimize] attribute is an unstable feature (see issue #54882)
|
||||
error[E0658]: #[optimize] attribute is an unstable feature
|
||||
--> $DIR/feature-gate-optimize_attribute.rs:4:1
|
||||
|
|
||||
LL | #[optimize(size)]
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/54882
|
||||
= help: add #![feature(optimize_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: #[optimize] attribute is an unstable feature (see issue #54882)
|
||||
error[E0658]: #[optimize] attribute is an unstable feature
|
||||
--> $DIR/feature-gate-optimize_attribute.rs:2:1
|
||||
|
|
||||
LL | #![optimize(speed)]
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/54882
|
||||
= help: add #![feature(optimize_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0722]: invalid argument
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: C-varaidic functions are unstable (see issue #44930)
|
||||
error[E0658]: C-varaidic functions are unstable
|
||||
--> $DIR/feature-gate-c_variadic.rs:3:1
|
||||
|
|
||||
LL | pub unsafe extern "C" fn test(_: i32, ap: ...) { }
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44930
|
||||
= help: add #![feature(c_variadic)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
error[E0658]: kind="static-nobundle" is feature gated (see issue #37403)
|
||||
error[E0658]: kind="static-nobundle" is feature gated
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/37403
|
||||
= help: add #![feature(static_nobundle)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: msp430-interrupt ABI is experimental and subject to change (see issue #38487)
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi-msp430-interrupt.rs:4:1
|
||||
|
|
||||
LL | extern "msp430-interrupt" fn foo() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38487
|
||||
= help: add #![feature(abi_msp430_interrupt)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -6,12 +6,13 @@ LL | extern "rust-intrinsic" fn f1() {}
|
|||
|
|
||||
= help: add #![feature(intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy (see issue #27731)
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy
|
||||
--> $DIR/feature-gate-abi.rs:13:1
|
||||
|
|
||||
LL | extern "platform-intrinsic" fn f2() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27731
|
||||
= help: add #![feature(platform_intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: vectorcall is experimental and subject to change
|
||||
|
@ -22,36 +23,40 @@ LL | extern "vectorcall" fn f3() {}
|
|||
|
|
||||
= help: add #![feature(abi_vectorcall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: rust-call ABI is subject to change (see issue #29625)
|
||||
error[E0658]: rust-call ABI is subject to change
|
||||
--> $DIR/feature-gate-abi.rs:15:1
|
||||
|
|
||||
LL | extern "rust-call" fn f4() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29625
|
||||
= help: add #![feature(unboxed_closures)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change (see issue #38487)
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:16:1
|
||||
|
|
||||
LL | extern "msp430-interrupt" fn f5() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38487
|
||||
= help: add #![feature(abi_msp430_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: PTX ABIs are experimental and subject to change (see issue #38788)
|
||||
error[E0658]: PTX ABIs are experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:17:1
|
||||
|
|
||||
LL | extern "ptx-kernel" fn f6() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38788
|
||||
= help: add #![feature(abi_ptx)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change (see issue #40180)
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:18:1
|
||||
|
|
||||
LL | extern "x86-interrupt" fn f7() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/40180
|
||||
= help: add #![feature(abi_x86_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: thiscall is experimental and subject to change
|
||||
|
@ -62,12 +67,13 @@ LL | extern "thiscall" fn f8() {}
|
|||
|
|
||||
= help: add #![feature(abi_thiscall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change (see issue #51575)
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:20:1
|
||||
|
|
||||
LL | extern "amdgpu-kernel" fn f9() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51575
|
||||
= help: add #![feature(abi_amdgpu_kernel)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: intrinsics are subject to change
|
||||
|
@ -78,12 +84,13 @@ LL | extern "rust-intrinsic" fn m1();
|
|||
|
|
||||
= help: add #![feature(intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy (see issue #27731)
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy
|
||||
--> $DIR/feature-gate-abi.rs:25:5
|
||||
|
|
||||
LL | extern "platform-intrinsic" fn m2();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27731
|
||||
= help: add #![feature(platform_intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: vectorcall is experimental and subject to change
|
||||
|
@ -94,36 +101,40 @@ LL | extern "vectorcall" fn m3();
|
|||
|
|
||||
= help: add #![feature(abi_vectorcall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: rust-call ABI is subject to change (see issue #29625)
|
||||
error[E0658]: rust-call ABI is subject to change
|
||||
--> $DIR/feature-gate-abi.rs:27:5
|
||||
|
|
||||
LL | extern "rust-call" fn m4();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29625
|
||||
= help: add #![feature(unboxed_closures)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change (see issue #38487)
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:28:5
|
||||
|
|
||||
LL | extern "msp430-interrupt" fn m5();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38487
|
||||
= help: add #![feature(abi_msp430_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: PTX ABIs are experimental and subject to change (see issue #38788)
|
||||
error[E0658]: PTX ABIs are experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:29:5
|
||||
|
|
||||
LL | extern "ptx-kernel" fn m6();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38788
|
||||
= help: add #![feature(abi_ptx)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change (see issue #40180)
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:30:5
|
||||
|
|
||||
LL | extern "x86-interrupt" fn m7();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/40180
|
||||
= help: add #![feature(abi_x86_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: thiscall is experimental and subject to change
|
||||
|
@ -134,12 +145,13 @@ LL | extern "thiscall" fn m8();
|
|||
|
|
||||
= help: add #![feature(abi_thiscall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change (see issue #51575)
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:32:5
|
||||
|
|
||||
LL | extern "amdgpu-kernel" fn m9();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51575
|
||||
= help: add #![feature(abi_amdgpu_kernel)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: intrinsics are subject to change
|
||||
|
@ -150,12 +162,13 @@ LL | extern "rust-intrinsic" fn dm1() {}
|
|||
|
|
||||
= help: add #![feature(intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy (see issue #27731)
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy
|
||||
--> $DIR/feature-gate-abi.rs:35:5
|
||||
|
|
||||
LL | extern "platform-intrinsic" fn dm2() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27731
|
||||
= help: add #![feature(platform_intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: vectorcall is experimental and subject to change
|
||||
|
@ -166,36 +179,40 @@ LL | extern "vectorcall" fn dm3() {}
|
|||
|
|
||||
= help: add #![feature(abi_vectorcall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: rust-call ABI is subject to change (see issue #29625)
|
||||
error[E0658]: rust-call ABI is subject to change
|
||||
--> $DIR/feature-gate-abi.rs:37:5
|
||||
|
|
||||
LL | extern "rust-call" fn dm4() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29625
|
||||
= help: add #![feature(unboxed_closures)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change (see issue #38487)
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:38:5
|
||||
|
|
||||
LL | extern "msp430-interrupt" fn dm5() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38487
|
||||
= help: add #![feature(abi_msp430_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: PTX ABIs are experimental and subject to change (see issue #38788)
|
||||
error[E0658]: PTX ABIs are experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:39:5
|
||||
|
|
||||
LL | extern "ptx-kernel" fn dm6() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38788
|
||||
= help: add #![feature(abi_ptx)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change (see issue #40180)
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:40:5
|
||||
|
|
||||
LL | extern "x86-interrupt" fn dm7() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/40180
|
||||
= help: add #![feature(abi_x86_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: thiscall is experimental and subject to change
|
||||
|
@ -206,12 +223,13 @@ LL | extern "thiscall" fn dm8() {}
|
|||
|
|
||||
= help: add #![feature(abi_thiscall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change (see issue #51575)
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:42:5
|
||||
|
|
||||
LL | extern "amdgpu-kernel" fn dm9() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51575
|
||||
= help: add #![feature(abi_amdgpu_kernel)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: intrinsics are subject to change
|
||||
|
@ -222,12 +240,13 @@ LL | extern "rust-intrinsic" fn m1() {}
|
|||
|
|
||||
= help: add #![feature(intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy (see issue #27731)
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy
|
||||
--> $DIR/feature-gate-abi.rs:50:5
|
||||
|
|
||||
LL | extern "platform-intrinsic" fn m2() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27731
|
||||
= help: add #![feature(platform_intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: vectorcall is experimental and subject to change
|
||||
|
@ -238,36 +257,40 @@ LL | extern "vectorcall" fn m3() {}
|
|||
|
|
||||
= help: add #![feature(abi_vectorcall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: rust-call ABI is subject to change (see issue #29625)
|
||||
error[E0658]: rust-call ABI is subject to change
|
||||
--> $DIR/feature-gate-abi.rs:52:5
|
||||
|
|
||||
LL | extern "rust-call" fn m4() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29625
|
||||
= help: add #![feature(unboxed_closures)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change (see issue #38487)
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:53:5
|
||||
|
|
||||
LL | extern "msp430-interrupt" fn m5() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38487
|
||||
= help: add #![feature(abi_msp430_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: PTX ABIs are experimental and subject to change (see issue #38788)
|
||||
error[E0658]: PTX ABIs are experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:54:5
|
||||
|
|
||||
LL | extern "ptx-kernel" fn m6() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38788
|
||||
= help: add #![feature(abi_ptx)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change (see issue #40180)
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:55:5
|
||||
|
|
||||
LL | extern "x86-interrupt" fn m7() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/40180
|
||||
= help: add #![feature(abi_x86_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: thiscall is experimental and subject to change
|
||||
|
@ -278,12 +301,13 @@ LL | extern "thiscall" fn m8() {}
|
|||
|
|
||||
= help: add #![feature(abi_thiscall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change (see issue #51575)
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:57:5
|
||||
|
|
||||
LL | extern "amdgpu-kernel" fn m9() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51575
|
||||
= help: add #![feature(abi_amdgpu_kernel)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: intrinsics are subject to change
|
||||
|
@ -294,12 +318,13 @@ LL | extern "rust-intrinsic" fn im1() {}
|
|||
|
|
||||
= help: add #![feature(intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy (see issue #27731)
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy
|
||||
--> $DIR/feature-gate-abi.rs:63:5
|
||||
|
|
||||
LL | extern "platform-intrinsic" fn im2() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27731
|
||||
= help: add #![feature(platform_intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: vectorcall is experimental and subject to change
|
||||
|
@ -310,36 +335,40 @@ LL | extern "vectorcall" fn im3() {}
|
|||
|
|
||||
= help: add #![feature(abi_vectorcall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: rust-call ABI is subject to change (see issue #29625)
|
||||
error[E0658]: rust-call ABI is subject to change
|
||||
--> $DIR/feature-gate-abi.rs:65:5
|
||||
|
|
||||
LL | extern "rust-call" fn im4() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29625
|
||||
= help: add #![feature(unboxed_closures)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change (see issue #38487)
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:66:5
|
||||
|
|
||||
LL | extern "msp430-interrupt" fn im5() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38487
|
||||
= help: add #![feature(abi_msp430_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: PTX ABIs are experimental and subject to change (see issue #38788)
|
||||
error[E0658]: PTX ABIs are experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:67:5
|
||||
|
|
||||
LL | extern "ptx-kernel" fn im6() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38788
|
||||
= help: add #![feature(abi_ptx)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change (see issue #40180)
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:68:5
|
||||
|
|
||||
LL | extern "x86-interrupt" fn im7() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/40180
|
||||
= help: add #![feature(abi_x86_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: thiscall is experimental and subject to change
|
||||
|
@ -350,12 +379,13 @@ LL | extern "thiscall" fn im8() {}
|
|||
|
|
||||
= help: add #![feature(abi_thiscall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change (see issue #51575)
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:70:5
|
||||
|
|
||||
LL | extern "amdgpu-kernel" fn im9() {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51575
|
||||
= help: add #![feature(abi_amdgpu_kernel)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: intrinsics are subject to change
|
||||
|
@ -366,12 +396,13 @@ LL | type A1 = extern "rust-intrinsic" fn();
|
|||
|
|
||||
= help: add #![feature(intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy (see issue #27731)
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy
|
||||
--> $DIR/feature-gate-abi.rs:75:11
|
||||
|
|
||||
LL | type A2 = extern "platform-intrinsic" fn();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27731
|
||||
= help: add #![feature(platform_intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: vectorcall is experimental and subject to change
|
||||
|
@ -382,36 +413,40 @@ LL | type A3 = extern "vectorcall" fn();
|
|||
|
|
||||
= help: add #![feature(abi_vectorcall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: rust-call ABI is subject to change (see issue #29625)
|
||||
error[E0658]: rust-call ABI is subject to change
|
||||
--> $DIR/feature-gate-abi.rs:77:11
|
||||
|
|
||||
LL | type A4 = extern "rust-call" fn();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29625
|
||||
= help: add #![feature(unboxed_closures)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change (see issue #38487)
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:78:11
|
||||
|
|
||||
LL | type A5 = extern "msp430-interrupt" fn();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38487
|
||||
= help: add #![feature(abi_msp430_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: PTX ABIs are experimental and subject to change (see issue #38788)
|
||||
error[E0658]: PTX ABIs are experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:79:11
|
||||
|
|
||||
LL | type A6 = extern "ptx-kernel" fn ();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38788
|
||||
= help: add #![feature(abi_ptx)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change (see issue #40180)
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:80:11
|
||||
|
|
||||
LL | type A7 = extern "x86-interrupt" fn();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/40180
|
||||
= help: add #![feature(abi_x86_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: thiscall is experimental and subject to change
|
||||
|
@ -422,12 +457,13 @@ LL | type A8 = extern "thiscall" fn();
|
|||
|
|
||||
= help: add #![feature(abi_thiscall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change (see issue #51575)
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:82:11
|
||||
|
|
||||
LL | type A9 = extern "amdgpu-kernel" fn();
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51575
|
||||
= help: add #![feature(abi_amdgpu_kernel)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: intrinsics are subject to change
|
||||
|
@ -438,12 +474,13 @@ LL | extern "rust-intrinsic" {}
|
|||
|
|
||||
= help: add #![feature(intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy (see issue #27731)
|
||||
error[E0658]: platform intrinsics are experimental and possibly buggy
|
||||
--> $DIR/feature-gate-abi.rs:86:1
|
||||
|
|
||||
LL | extern "platform-intrinsic" {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/27731
|
||||
= help: add #![feature(platform_intrinsics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: vectorcall is experimental and subject to change
|
||||
|
@ -454,36 +491,40 @@ LL | extern "vectorcall" {}
|
|||
|
|
||||
= help: add #![feature(abi_vectorcall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: rust-call ABI is subject to change (see issue #29625)
|
||||
error[E0658]: rust-call ABI is subject to change
|
||||
--> $DIR/feature-gate-abi.rs:88:1
|
||||
|
|
||||
LL | extern "rust-call" {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29625
|
||||
= help: add #![feature(unboxed_closures)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change (see issue #38487)
|
||||
error[E0658]: msp430-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:89:1
|
||||
|
|
||||
LL | extern "msp430-interrupt" {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38487
|
||||
= help: add #![feature(abi_msp430_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: PTX ABIs are experimental and subject to change (see issue #38788)
|
||||
error[E0658]: PTX ABIs are experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:90:1
|
||||
|
|
||||
LL | extern "ptx-kernel" {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/38788
|
||||
= help: add #![feature(abi_ptx)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change (see issue #40180)
|
||||
error[E0658]: x86-interrupt ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:91:1
|
||||
|
|
||||
LL | extern "x86-interrupt" {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/40180
|
||||
= help: add #![feature(abi_x86_interrupt)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: thiscall is experimental and subject to change
|
||||
|
@ -494,12 +535,13 @@ LL | extern "thiscall" {}
|
|||
|
|
||||
= help: add #![feature(abi_thiscall)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change (see issue #51575)
|
||||
error[E0658]: amdgpu-kernel ABI is experimental and subject to change
|
||||
--> $DIR/feature-gate-abi.rs:93:1
|
||||
|
|
||||
LL | extern "amdgpu-kernel" {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51575
|
||||
= help: add #![feature(abi_amdgpu_kernel)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 63 previous errors
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
use core::alloc::Layout;
|
||||
|
||||
#[alloc_error_handler] //~ ERROR #[alloc_error_handler] is an unstable feature (see issue #51540)
|
||||
#[alloc_error_handler] //~ ERROR #[alloc_error_handler] is an unstable feature
|
||||
fn oom(info: Layout) -> ! {
|
||||
loop {}
|
||||
}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: #[alloc_error_handler] is an unstable feature (see issue #51540)
|
||||
error[E0658]: #[alloc_error_handler] is an unstable feature
|
||||
--> $DIR/feature-gate-alloc-error-handler.rs:8:1
|
||||
|
|
||||
LL | #[alloc_error_handler]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51540
|
||||
= help: add #![feature(alloc_error_handler)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: allow_fail attribute is currently unstable (see issue #46488)
|
||||
error[E0658]: allow_fail attribute is currently unstable
|
||||
--> $DIR/feature-gate-allow_fail.rs:3:1
|
||||
|
|
||||
LL | #[allow_fail]
|
||||
| ^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/46488
|
||||
= help: add #![feature(allow_fail)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,27 +1,30 @@
|
|||
error[E0658]: `Ptr<Self>` cannot be used as the type of `self` without the `arbitrary_self_types` feature (see issue #44874)
|
||||
error[E0658]: `Ptr<Self>` cannot be used as the type of `self` without the `arbitrary_self_types` feature
|
||||
--> $DIR/feature-gate-arbitrary-self-types.rs:16:18
|
||||
|
|
||||
LL | fn foo(self: Ptr<Self>);
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44874
|
||||
= help: add #![feature(arbitrary_self_types)] to the crate attributes to enable
|
||||
= help: consider changing to `self`, `&self`, `&mut self`, or `self: Box<Self>`
|
||||
|
||||
error[E0658]: `Ptr<Bar>` cannot be used as the type of `self` without the `arbitrary_self_types` feature (see issue #44874)
|
||||
error[E0658]: `Ptr<Bar>` cannot be used as the type of `self` without the `arbitrary_self_types` feature
|
||||
--> $DIR/feature-gate-arbitrary-self-types.rs:22:18
|
||||
|
|
||||
LL | fn foo(self: Ptr<Self>) {}
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44874
|
||||
= help: add #![feature(arbitrary_self_types)] to the crate attributes to enable
|
||||
= help: consider changing to `self`, `&self`, `&mut self`, or `self: Box<Self>`
|
||||
|
||||
error[E0658]: `std::boxed::Box<Ptr<Bar>>` cannot be used as the type of `self` without the `arbitrary_self_types` feature (see issue #44874)
|
||||
error[E0658]: `std::boxed::Box<Ptr<Bar>>` cannot be used as the type of `self` without the `arbitrary_self_types` feature
|
||||
--> $DIR/feature-gate-arbitrary-self-types.rs:26:18
|
||||
|
|
||||
LL | fn bar(self: Box<Ptr<Self>>) {}
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44874
|
||||
= help: add #![feature(arbitrary_self_types)] to the crate attributes to enable
|
||||
= help: consider changing to `self`, `&self`, `&mut self`, or `self: Box<Self>`
|
||||
|
||||
|
|
|
@ -1,27 +1,30 @@
|
|||
error[E0658]: `*const Self` cannot be used as the type of `self` without the `arbitrary_self_types` feature (see issue #44874)
|
||||
error[E0658]: `*const Self` cannot be used as the type of `self` without the `arbitrary_self_types` feature
|
||||
--> $DIR/feature-gate-arbitrary_self_types-raw-pointer.rs:9:18
|
||||
|
|
||||
LL | fn bar(self: *const Self);
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44874
|
||||
= help: add #![feature(arbitrary_self_types)] to the crate attributes to enable
|
||||
= help: consider changing to `self`, `&self`, `&mut self`, or `self: Box<Self>`
|
||||
|
||||
error[E0658]: `*const Foo` cannot be used as the type of `self` without the `arbitrary_self_types` feature (see issue #44874)
|
||||
error[E0658]: `*const Foo` cannot be used as the type of `self` without the `arbitrary_self_types` feature
|
||||
--> $DIR/feature-gate-arbitrary_self_types-raw-pointer.rs:4:18
|
||||
|
|
||||
LL | fn foo(self: *const Self) {}
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44874
|
||||
= help: add #![feature(arbitrary_self_types)] to the crate attributes to enable
|
||||
= help: consider changing to `self`, `&self`, `&mut self`, or `self: Box<Self>`
|
||||
|
||||
error[E0658]: `*const ()` cannot be used as the type of `self` without the `arbitrary_self_types` feature (see issue #44874)
|
||||
error[E0658]: `*const ()` cannot be used as the type of `self` without the `arbitrary_self_types` feature
|
||||
--> $DIR/feature-gate-arbitrary_self_types-raw-pointer.rs:14:18
|
||||
|
|
||||
LL | fn bar(self: *const Self) {}
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44874
|
||||
= help: add #![feature(arbitrary_self_types)] to the crate attributes to enable
|
||||
= help: consider changing to `self`, `&self`, `&mut self`, or `self: Box<Self>`
|
||||
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: inline assembly is not stable enough for use and is subject to change (see issue #29722)
|
||||
error[E0658]: inline assembly is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-asm.rs:3:9
|
||||
|
|
||||
LL | asm!("");
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29722
|
||||
= help: add #![feature(asm)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: inline assembly is not stable enough for use and is subject to change (see issue #29722)
|
||||
error[E0658]: inline assembly is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-asm2.rs:5:26
|
||||
|
|
||||
LL | println!("{:?}", asm!(""));
|
||||
| ^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29722
|
||||
= help: add #![feature(asm)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: associated type defaults are unstable (see issue #29661)
|
||||
error[E0658]: associated type defaults are unstable
|
||||
--> $DIR/feature-gate-assoc-type-defaults.rs:4:5
|
||||
|
|
||||
LL | type Bar = u8;
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29661
|
||||
= help: add #![feature(associated_type_defaults)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -16,12 +16,13 @@ error[E0425]: cannot find value `async` in this scope
|
|||
LL | let _ = async || { true };
|
||||
| ^^^^^ not found in this scope
|
||||
|
||||
error[E0658]: async fn is unstable (see issue #50547)
|
||||
error[E0658]: async fn is unstable
|
||||
--> $DIR/feature-gate-async-await-2015-edition.rs:5:1
|
||||
|
|
||||
LL | async fn foo() {}
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/50547
|
||||
= help: add #![feature(async_await)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 4 previous errors
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
error[E0658]: async fn is unstable (see issue #50547)
|
||||
error[E0658]: async fn is unstable
|
||||
--> $DIR/feature-gate-async-await.rs:5:1
|
||||
|
|
||||
LL | async fn foo() {}
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/50547
|
||||
= help: add #![feature(async_await)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: async blocks are unstable (see issue #50547)
|
||||
error[E0658]: async blocks are unstable
|
||||
--> $DIR/feature-gate-async-await.rs:8:13
|
||||
|
|
||||
LL | let _ = async {};
|
||||
| ^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/50547
|
||||
= help: add #![feature(async_await)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: async closures are unstable (see issue #50547)
|
||||
error[E0658]: async closures are unstable
|
||||
--> $DIR/feature-gate-async-await.rs:9:13
|
||||
|
|
||||
LL | let _ = async || {};
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/50547
|
||||
= help: add #![feature(async_await)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 3 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: box expression syntax is experimental; you can call `Box::new` instead. (see issue #49733)
|
||||
error[E0658]: box expression syntax is experimental; you can call `Box::new` instead
|
||||
--> $DIR/feature-gate-box-expr.rs:12:13
|
||||
|
|
||||
LL | let x = box 'c';
|
||||
| ^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/49733
|
||||
= help: add #![feature(box_syntax)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: box pattern syntax is experimental (see issue #29641)
|
||||
error[E0658]: box pattern syntax is experimental
|
||||
--> $DIR/feature-gate-box_patterns.rs:2:9
|
||||
|
|
||||
LL | let box x = Box::new('c');
|
||||
| ^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29641
|
||||
= help: add #![feature(box_patterns)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -2,5 +2,5 @@
|
|||
|
||||
fn main() {
|
||||
let x = box 3;
|
||||
//~^ ERROR box expression syntax is experimental; you can call `Box::new` instead.
|
||||
//~^ ERROR box expression syntax is experimental; you can call `Box::new` instead
|
||||
}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: box expression syntax is experimental; you can call `Box::new` instead. (see issue #49733)
|
||||
error[E0658]: box expression syntax is experimental; you can call `Box::new` instead
|
||||
--> $DIR/feature-gate-box_syntax.rs:4:13
|
||||
|
|
||||
LL | let x = box 3;
|
||||
| ^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/49733
|
||||
= help: add #![feature(box_syntax)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -13,78 +13,78 @@ trait Sized {}
|
|||
trait Copy {}
|
||||
|
||||
#[cfg(target_has_atomic = "8")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_u8(x: *mut u8) {
|
||||
atomic_xadd(x, 1);
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "8")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_i8(x: *mut i8) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "16")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_u16(x: *mut u16) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "16")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_i16(x: *mut i16) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "32")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_u32(x: *mut u32) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "32")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_i32(x: *mut i32) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "64")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_u64(x: *mut u64) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "64")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_i64(x: *mut i64) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "128")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_u128(x: *mut u128) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "128")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_i128(x: *mut i128) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "ptr")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_usize(x: *mut usize) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
#[cfg(target_has_atomic = "ptr")]
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
pub unsafe fn atomic_isize(x: *mut isize) {
|
||||
atomic_xadd(x, 1);
|
||||
}
|
||||
|
||||
fn main() {
|
||||
cfg!(target_has_atomic = "8");
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
cfg!(target_has_atomic = "16");
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
cfg!(target_has_atomic = "32");
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
cfg!(target_has_atomic = "64");
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
cfg!(target_has_atomic = "128");
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
cfg!(target_has_atomic = "ptr");
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
//~^ ERROR `cfg(target_has_atomic)` is experimental and subject to change
|
||||
}
|
||||
|
|
|
@ -1,145 +1,163 @@
|
|||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:15:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "8")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:21:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "8")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:26:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "16")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:31:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "16")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:36:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "32")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:41:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "32")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:46:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "64")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:51:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "64")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:56:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "128")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:61:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "128")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:66:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "ptr")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:71:7
|
||||
|
|
||||
LL | #[cfg(target_has_atomic = "ptr")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:78:10
|
||||
|
|
||||
LL | cfg!(target_has_atomic = "8");
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:80:10
|
||||
|
|
||||
LL | cfg!(target_has_atomic = "16");
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:82:10
|
||||
|
|
||||
LL | cfg!(target_has_atomic = "32");
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:84:10
|
||||
|
|
||||
LL | cfg!(target_has_atomic = "64");
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:86:10
|
||||
|
|
||||
LL | cfg!(target_has_atomic = "128");
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change (see issue #32976)
|
||||
error[E0658]: `cfg(target_has_atomic)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-has-atomic.rs:88:10
|
||||
|
|
||||
LL | cfg!(target_has_atomic = "ptr");
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/32976
|
||||
= help: add #![feature(cfg_target_has_atomic)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 18 previous errors
|
||||
|
|
|
@ -7,7 +7,7 @@ extern crate cfg_target_thread_local;
|
|||
|
||||
extern {
|
||||
#[cfg_attr(target_thread_local, thread_local)]
|
||||
//~^ `cfg(target_thread_local)` is experimental and subject to change (see issue #29594)
|
||||
//~^ `cfg(target_thread_local)` is experimental and subject to change
|
||||
|
||||
static FOO: u32;
|
||||
}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: `cfg(target_thread_local)` is experimental and subject to change (see issue #29594)
|
||||
error[E0658]: `cfg(target_thread_local)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg-target-thread-local.rs:9:16
|
||||
|
|
||||
LL | #[cfg_attr(target_thread_local, thread_local)]
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29594
|
||||
= help: add #![feature(cfg_target_thread_local)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change (see issue #29599)
|
||||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-concat_idents.rs:5:13
|
||||
|
|
||||
LL | let a = concat_idents!(X, Y_1);
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29599
|
||||
= help: add #![feature(concat_idents)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change (see issue #29599)
|
||||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-concat_idents.rs:6:13
|
||||
|
|
||||
LL | let b = concat_idents!(X, Y_2);
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29599
|
||||
= help: add #![feature(concat_idents)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change (see issue #29599)
|
||||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-concat_idents2.rs:4:5
|
||||
|
|
||||
LL | concat_idents!(a, b);
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29599
|
||||
= help: add #![feature(concat_idents)] to the crate attributes to enable
|
||||
|
||||
error[E0425]: cannot find value `ab` in this scope
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change (see issue #29599)
|
||||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-concat_idents3.rs:7:20
|
||||
|
|
||||
LL | assert_eq!(10, concat_idents!(X, Y_1));
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29599
|
||||
= help: add #![feature(concat_idents)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change (see issue #29599)
|
||||
error[E0658]: `concat_idents` is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-concat_idents3.rs:8:20
|
||||
|
|
||||
LL | assert_eq!(20, concat_idents!(X, Y_2));
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29599
|
||||
= help: add #![feature(concat_idents)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
|
|
@ -16,20 +16,22 @@ error[E0379]: trait fns cannot be declared const
|
|||
LL | const fn foo() -> u32 { 0 }
|
||||
| ^^^^^ trait fns cannot be const
|
||||
|
||||
error[E0658]: const fn is unstable (see issue #57563)
|
||||
error[E0658]: const fn is unstable
|
||||
--> $DIR/feature-gate-const_fn.rs:6:5
|
||||
|
|
||||
LL | const fn foo() -> u32;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/57563
|
||||
= help: add #![feature(const_fn)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: const fn is unstable (see issue #57563)
|
||||
error[E0658]: const fn is unstable
|
||||
--> $DIR/feature-gate-const_fn.rs:8:5
|
||||
|
|
||||
LL | const fn bar() -> u32 { 0 }
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/57563
|
||||
= help: add #![feature(const_fn)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 5 previous errors
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
error[E0658]: const generics are unstable (see issue #44580)
|
||||
error[E0658]: const generics are unstable
|
||||
--> $DIR/feature-gate-const_generics.rs:1:14
|
||||
|
|
||||
LL | fn foo<const X: ()>() {}
|
||||
| ^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44580
|
||||
= help: add #![feature(const_generics)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: const generics are unstable (see issue #44580)
|
||||
error[E0658]: const generics are unstable
|
||||
--> $DIR/feature-gate-const_generics.rs:3:18
|
||||
|
|
||||
LL | struct Foo<const X: usize>([(); X]);
|
||||
| ^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44580
|
||||
= help: add #![feature(const_generics)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
|
|
@ -4,6 +4,6 @@ use std::mem;
|
|||
struct Foo(u32);
|
||||
|
||||
const TRANSMUTED_U32: u32 = unsafe { mem::transmute(Foo(3)) };
|
||||
//~^ ERROR The use of std::mem::transmute() is gated in constants (see issue #53605)
|
||||
//~^ ERROR The use of std::mem::transmute() is gated in constants
|
||||
|
||||
fn main() {}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: The use of std::mem::transmute() is gated in constants (see issue #53605)
|
||||
error[E0658]: The use of std::mem::transmute() is gated in constants
|
||||
--> $DIR/feature-gate-const_transmute.rs:6:38
|
||||
|
|
||||
LL | const TRANSMUTED_U32: u32 = unsafe { mem::transmute(Foo(3)) };
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/53605
|
||||
= help: add #![feature(const_transmute)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: `crate` visibility modifier is experimental (see issue #53120)
|
||||
error[E0658]: `crate` visibility modifier is experimental
|
||||
--> $DIR/feature-gate-crate_visibility_modifier.rs:1:1
|
||||
|
|
||||
LL | crate struct Bender {
|
||||
| ^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/53120
|
||||
= help: add #![feature(crate_visibility_modifier)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,105 +1,118 @@
|
|||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:7:3
|
||||
|
|
||||
LL | #[fake_attr]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:8:3
|
||||
|
|
||||
LL | #[fake_attr(100)]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:9:3
|
||||
|
|
||||
LL | #[fake_attr(1, 2, 3)]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:10:3
|
||||
|
|
||||
LL | #[fake_attr("hello")]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:11:3
|
||||
|
|
||||
LL | #[fake_attr(name = "hello")]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:12:3
|
||||
|
|
||||
LL | #[fake_attr(1, "hi", key = 12, true, false)]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:13:3
|
||||
|
|
||||
LL | #[fake_attr(key = "hello", val = 10)]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:14:3
|
||||
|
|
||||
LL | #[fake_attr(key("hello"), val(10))]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:15:3
|
||||
|
|
||||
LL | #[fake_attr(enabled = true, disabled = false)]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:16:3
|
||||
|
|
||||
LL | #[fake_attr(true)]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:17:3
|
||||
|
|
||||
LL | #[fake_attr(pi = 3.14159)]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_attr` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:18:3
|
||||
|
|
||||
LL | #[fake_attr(b"hi")]
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `fake_doc` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `fake_doc` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute.rs:19:3
|
||||
|
|
||||
LL | #[fake_doc(r"doc")]
|
||||
| ^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 13 previous errors
|
||||
|
|
|
@ -1,137 +1,154 @@
|
|||
error[E0658]: The attribute `lt_struct` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_struct` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:6:13
|
||||
|
|
||||
LL | struct StLt<#[lt_struct] 'a>(&'a u32);
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `ty_struct` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `ty_struct` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:8:13
|
||||
|
|
||||
LL | struct StTy<#[ty_struct] I>(I);
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `lt_enum` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_enum` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:11:11
|
||||
|
|
||||
LL | enum EnLt<#[lt_enum] 'b> { A(&'b u32), B }
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `ty_enum` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `ty_enum` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:13:11
|
||||
|
|
||||
LL | enum EnTy<#[ty_enum] J> { A(J), B }
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `lt_trait` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_trait` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:16:12
|
||||
|
|
||||
LL | trait TrLt<#[lt_trait] 'c> { fn foo(&self, _: &'c [u32]) -> &'c u32; }
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `ty_trait` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `ty_trait` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:18:12
|
||||
|
|
||||
LL | trait TrTy<#[ty_trait] K> { fn foo(&self, _: K); }
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `lt_type` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_type` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:21:11
|
||||
|
|
||||
LL | type TyLt<#[lt_type] 'd> = &'d u32;
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `ty_type` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `ty_type` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:23:11
|
||||
|
|
||||
LL | type TyTy<#[ty_type] L> = (L, );
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `lt_inherent` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_inherent` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:26:6
|
||||
|
|
||||
LL | impl<#[lt_inherent] 'e> StLt<'e> { }
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `ty_inherent` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `ty_inherent` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:28:6
|
||||
|
|
||||
LL | impl<#[ty_inherent] M> StTy<M> { }
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `lt_impl_for` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_impl_for` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:31:6
|
||||
|
|
||||
LL | impl<#[lt_impl_for] 'f> TrLt<'f> for StLt<'f> {
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `ty_impl_for` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `ty_impl_for` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:35:6
|
||||
|
|
||||
LL | impl<#[ty_impl_for] N> TrTy<N> for StTy<N> {
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `lt_fn` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_fn` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:40:9
|
||||
|
|
||||
LL | fn f_lt<#[lt_fn] 'g>(_: &'g [u32]) -> &'g u32 { loop { } }
|
||||
| ^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `ty_fn` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `ty_fn` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:42:9
|
||||
|
|
||||
LL | fn f_ty<#[ty_fn] O>(_: O) { }
|
||||
| ^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `lt_meth` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_meth` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:46:13
|
||||
|
|
||||
LL | fn m_lt<#[lt_meth] 'h>(_: &'h [u32]) -> &'h u32 { loop { } }
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `ty_meth` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `ty_meth` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:48:13
|
||||
|
|
||||
LL | fn m_ty<#[ty_meth] P>(_: P) { }
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: The attribute `lt_hof` is currently unknown to the compiler and may have meaning added to it in the future (see issue #29642)
|
||||
error[E0658]: The attribute `lt_hof` is currently unknown to the compiler and may have meaning added to it in the future
|
||||
--> $DIR/feature-gate-custom_attribute2.rs:53:19
|
||||
|
|
||||
LL | where Q: for <#[lt_hof] 'i> Fn(&'i [u32]) -> &'i u32
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29642
|
||||
= help: add #![feature(custom_attribute)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 17 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: custom test frameworks are an unstable feature (see issue #50297)
|
||||
error[E0658]: custom test frameworks are an unstable feature
|
||||
--> $DIR/feature-gate-custom_test_frameworks.rs:1:1
|
||||
|
|
||||
LL | #![test_runner(main)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/50297
|
||||
= help: add #![feature(custom_test_frameworks)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#![allow(unused_macros)]
|
||||
|
||||
macro m() {} //~ ERROR `macro` is experimental (see issue #39412)
|
||||
macro m() {} //~ ERROR `macro` is experimental
|
||||
|
||||
fn main() {}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: `macro` is experimental (see issue #39412)
|
||||
error[E0658]: `macro` is experimental
|
||||
--> $DIR/feature-gate-decl_macro.rs:3:1
|
||||
|
|
||||
LL | macro m() {}
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/39412
|
||||
= help: add #![feature(decl_macro)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: #[doc(alias = "...")] is experimental (see issue #50146)
|
||||
error[E0658]: #[doc(alias = "...")] is experimental
|
||||
--> $DIR/feature-gate-doc_alias.rs:1:1
|
||||
|
|
||||
LL | #[doc(alias = "foo")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/50146
|
||||
= help: add #![feature(doc_alias)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: `cfg(rustdoc)` is experimental and subject to change (see issue #43781)
|
||||
error[E0658]: `cfg(rustdoc)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-doc_cfg-cfg-rustdoc.rs:1:7
|
||||
|
|
||||
LL | #[cfg(rustdoc)]
|
||||
| ^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/43781
|
||||
= help: add #![feature(doc_cfg)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: #[doc(cfg(...))] is experimental (see issue #43781)
|
||||
error[E0658]: #[doc(cfg(...))] is experimental
|
||||
--> $DIR/feature-gate-doc_cfg.rs:1:1
|
||||
|
|
||||
LL | #[doc(cfg(unix))]
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/43781
|
||||
= help: add #![feature(doc_cfg)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: #[doc(keyword = "...")] is experimental (see issue #51315)
|
||||
error[E0658]: #[doc(keyword = "...")] is experimental
|
||||
--> $DIR/feature-gate-doc_keyword.rs:1:1
|
||||
|
|
||||
LL | #[doc(keyword = "match")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/51315
|
||||
= help: add #![feature(doc_keyword)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: #[doc(masked)] is experimental (see issue #44027)
|
||||
error[E0658]: #[doc(masked)] is experimental
|
||||
--> $DIR/feature-gate-doc_masked.rs:1:1
|
||||
|
|
||||
LL | #[doc(masked)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44027
|
||||
= help: add #![feature(doc_masked)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: #[doc(spotlight)] is experimental (see issue #45040)
|
||||
error[E0658]: #[doc(spotlight)] is experimental
|
||||
--> $DIR/feature-gate-doc_spotlight.rs:1:1
|
||||
|
|
||||
LL | #[doc(spotlight)]
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/45040
|
||||
= help: add #![feature(doc_spotlight)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: unsafe_destructor_blind_to_params has been replaced by may_dangle and will be removed in the future (see issue #28498)
|
||||
error[E0658]: unsafe_destructor_blind_to_params has been replaced by may_dangle and will be removed in the future
|
||||
--> $DIR/feature-gate-dropck-ugeh.rs:16:5
|
||||
|
|
||||
LL | #[unsafe_destructor_blind_to_params] // This is the UGEH attribute
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/28498
|
||||
= help: add #![feature(dropck_parametricity)] to the crate attributes to enable
|
||||
|
||||
warning: use of deprecated attribute `dropck_parametricity`: unsafe_destructor_blind_to_params has been replaced by may_dangle and will be removed in the future. See https://github.com/rust-lang/rust/issues/34761
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: exclusive range pattern syntax is experimental (see issue #37854)
|
||||
error[E0658]: exclusive range pattern syntax is experimental
|
||||
--> $DIR/feature-gate-exclusive-range-pattern.rs:3:9
|
||||
|
|
||||
LL | 0 .. 3 => {}
|
||||
| ^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/37854
|
||||
= help: add #![feature(exclusive_range_pattern)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,17 +1,19 @@
|
|||
error[E0658]: existential types are unstable (see issue #34511)
|
||||
error[E0658]: existential types are unstable
|
||||
--> $DIR/feature-gate-existential-type.rs:3:1
|
||||
|
|
||||
LL | existential type Foo: std::fmt::Debug;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/34511
|
||||
= help: add #![feature(existential_type)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: existential types are unstable (see issue #34511)
|
||||
error[E0658]: existential types are unstable
|
||||
--> $DIR/feature-gate-existential-type.rs:11:5
|
||||
|
|
||||
LL | existential type Baa: std::fmt::Debug;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/34511
|
||||
= help: add #![feature(existential_type)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: extern types are experimental (see issue #43467)
|
||||
error[E0658]: extern types are experimental
|
||||
--> $DIR/feature-gate-extern_types.rs:2:5
|
||||
|
|
||||
LL | type T;
|
||||
| ^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/43467
|
||||
= help: add #![feature(extern_types)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: #[doc(include = "...")] is experimental (see issue #44732)
|
||||
error[E0658]: #[doc(include = "...")] is experimental
|
||||
--> $DIR/feature-gate-external_doc.rs:1:1
|
||||
|
|
||||
LL | #[doc(include="asdf.md")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44732
|
||||
= help: add #![feature(external_doc)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
#![crate_type = "lib"]
|
||||
|
||||
extern {
|
||||
#[ffi_returns_twice] //~ ERROR the `#[ffi_returns_twice]` attribute is an experimental feature (see issue #58314)
|
||||
#[ffi_returns_twice] //~ ERROR the `#[ffi_returns_twice]` attribute is an experimental feature
|
||||
pub fn foo();
|
||||
}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: the `#[ffi_returns_twice]` attribute is an experimental feature (see issue #58314)
|
||||
error[E0658]: the `#[ffi_returns_twice]` attribute is an experimental feature
|
||||
--> $DIR/feature-gate-ffi_returns_twice.rs:5:5
|
||||
|
|
||||
LL | #[ffi_returns_twice]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/58314
|
||||
= help: add #![feature(ffi_returns_twice)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: the `#[fundamental]` attribute is an experimental feature (see issue #29635)
|
||||
error[E0658]: the `#[fundamental]` attribute is an experimental feature
|
||||
--> $DIR/feature-gate-fundamental.rs:1:1
|
||||
|
|
||||
LL | #[fundamental]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29635
|
||||
= help: add #![feature(fundamental)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: yield syntax is experimental (see issue #43122)
|
||||
error[E0658]: yield syntax is experimental
|
||||
--> $DIR/feature-gate-generators.rs:2:5
|
||||
|
|
||||
LL | yield true;
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/43122
|
||||
= help: add #![feature(generators)] to the crate attributes to enable
|
||||
|
||||
error[E0627]: yield statement outside of generator literal
|
||||
|
|
|
@ -1,57 +1,64 @@
|
|||
error[E0658]: generic associated types are unstable (see issue #44265)
|
||||
error[E0658]: generic associated types are unstable
|
||||
--> $DIR/feature-gate-generic_associated_types.rs:4:5
|
||||
|
|
||||
LL | type Pointer<T>: Deref<Target = T>;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44265
|
||||
= help: add #![feature(generic_associated_types)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: generic associated types are unstable (see issue #44265)
|
||||
error[E0658]: generic associated types are unstable
|
||||
--> $DIR/feature-gate-generic_associated_types.rs:6:5
|
||||
|
|
||||
LL | type Pointer2<T>: Deref<Target = T> where T: Clone, U: Clone;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44265
|
||||
= help: add #![feature(generic_associated_types)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: where clauses on associated types are unstable (see issue #44265)
|
||||
error[E0658]: where clauses on associated types are unstable
|
||||
--> $DIR/feature-gate-generic_associated_types.rs:6:5
|
||||
|
|
||||
LL | type Pointer2<T>: Deref<Target = T> where T: Clone, U: Clone;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44265
|
||||
= help: add #![feature(generic_associated_types)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: generic associated types are unstable (see issue #44265)
|
||||
error[E0658]: generic associated types are unstable
|
||||
--> $DIR/feature-gate-generic_associated_types.rs:14:5
|
||||
|
|
||||
LL | type Pointer<Usize> = Box<Usize>;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44265
|
||||
= help: add #![feature(generic_associated_types)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: generic associated types are unstable (see issue #44265)
|
||||
error[E0658]: generic associated types are unstable
|
||||
--> $DIR/feature-gate-generic_associated_types.rs:16:5
|
||||
|
|
||||
LL | type Pointer2<U32> = Box<U32>;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44265
|
||||
= help: add #![feature(generic_associated_types)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: where clauses on associated types are unstable (see issue #44265)
|
||||
error[E0658]: where clauses on associated types are unstable
|
||||
--> $DIR/feature-gate-generic_associated_types.rs:21:5
|
||||
|
|
||||
LL | type Assoc where Self: Sized;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44265
|
||||
= help: add #![feature(generic_associated_types)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: where clauses on associated types are unstable (see issue #44265)
|
||||
error[E0658]: where clauses on associated types are unstable
|
||||
--> $DIR/feature-gate-generic_associated_types.rs:26:5
|
||||
|
|
||||
LL | type Assoc where Self: Sized = Foo;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/44265
|
||||
= help: add #![feature(generic_associated_types)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 7 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: `global_asm!` is not stable enough for use and is subject to change (see issue #35119)
|
||||
error[E0658]: `global_asm!` is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-global_asm.rs:1:1
|
||||
|
|
||||
LL | global_asm!("");
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/35119
|
||||
= help: add #![feature(global_asm)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,33 +1,37 @@
|
|||
error[E0658]: use of unstable library feature 'is_sorted': new API (see issue #53485)
|
||||
error[E0658]: use of unstable library feature 'is_sorted': new API
|
||||
--> $DIR/feature-gate-is_sorted.rs:3:33
|
||||
|
|
||||
LL | assert!([1, 2, 2, 9].iter().is_sorted());
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/53485
|
||||
= help: add #![feature(is_sorted)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'is_sorted': new API (see issue #53485)
|
||||
error[E0658]: use of unstable library feature 'is_sorted': new API
|
||||
--> $DIR/feature-gate-is_sorted.rs:5:39
|
||||
|
|
||||
LL | assert!(![-2i32, -1, 0, 3].iter().is_sorted_by_key(|n| n.abs()));
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/53485
|
||||
= help: add #![feature(is_sorted)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'is_sorted': new API (see issue #53485)
|
||||
error[E0658]: use of unstable library feature 'is_sorted': new API
|
||||
--> $DIR/feature-gate-is_sorted.rs:9:26
|
||||
|
|
||||
LL | assert!([1, 2, 2, 9].is_sorted());
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/53485
|
||||
= help: add #![feature(is_sorted)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: use of unstable library feature 'is_sorted': new API (see issue #53485)
|
||||
error[E0658]: use of unstable library feature 'is_sorted': new API
|
||||
--> $DIR/feature-gate-is_sorted.rs:11:32
|
||||
|
|
||||
LL | assert!(![-2i32, -1, 0, 3].is_sorted_by_key(|n| n.abs()));
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/53485
|
||||
= help: add #![feature(is_sorted)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 4 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: labels on blocks are unstable (see issue #48594)
|
||||
error[E0658]: labels on blocks are unstable
|
||||
--> $DIR/feature-gate-label_break_value.rs:2:5
|
||||
|
|
||||
LL | 'a: {
|
||||
| ^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/48594
|
||||
= help: add #![feature(label_break_value)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
error[E0658]: the `link_args` attribute is experimental and not portable across platforms, it is recommended to use `#[link(name = "foo")] instead (see issue #29596)
|
||||
error[E0658]: the `link_args` attribute is experimental and not portable across platforms, it is recommended to use `#[link(name = "foo")] instead
|
||||
--> $DIR/feature-gate-link_args.rs:12:1
|
||||
|
|
||||
LL | #[link_args = "-l expected_use_case"]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29596
|
||||
= help: add #![feature(link_args)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: the `link_args` attribute is experimental and not portable across platforms, it is recommended to use `#[link(name = "foo")] instead (see issue #29596)
|
||||
error[E0658]: the `link_args` attribute is experimental and not portable across platforms, it is recommended to use `#[link(name = "foo")] instead
|
||||
--> $DIR/feature-gate-link_args.rs:16:1
|
||||
|
|
||||
LL | #[link_args = "-l unexected_use_on_non_extern_item"]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29596
|
||||
= help: add #![feature(link_args)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: the `link_args` attribute is experimental and not portable across platforms, it is recommended to use `#[link(name = "foo")] instead (see issue #29596)
|
||||
error[E0658]: the `link_args` attribute is experimental and not portable across platforms, it is recommended to use `#[link(name = "foo")] instead
|
||||
--> $DIR/feature-gate-link_args.rs:9:1
|
||||
|
|
||||
LL | #![link_args = "-l unexpected_use_as_inner_attr_on_mod"]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29596
|
||||
= help: add #![feature(link_args)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 3 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: is feature gated (see issue #37406)
|
||||
error[E0658]: is feature gated
|
||||
--> $DIR/feature-gate-link_cfg.rs:1:1
|
||||
|
|
||||
LL | #[link(name = "foo", cfg(foo))]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/37406
|
||||
= help: add #![feature(link_cfg)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: linking to LLVM intrinsics is experimental (see issue #29602)
|
||||
error[E0658]: linking to LLVM intrinsics is experimental
|
||||
--> $DIR/feature-gate-link_llvm_intrinsics.rs:3:5
|
||||
|
|
||||
LL | fn sqrt(x: f32) -> f32;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29602
|
||||
= help: add #![feature(link_llvm_intrinsics)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: the `linkage` attribute is experimental and not portable across platforms (see issue #29603)
|
||||
error[E0658]: the `linkage` attribute is experimental and not portable across platforms
|
||||
--> $DIR/feature-gate-linkage.rs:2:5
|
||||
|
|
||||
LL | #[linkage = "extern_weak"] static foo: isize;
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29603
|
||||
= help: add #![feature(linkage)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: lint reasons are experimental (see issue #54503)
|
||||
error[E0658]: lint reasons are experimental
|
||||
--> $DIR/feature-gate-lint-reasons.rs:1:28
|
||||
|
|
||||
LL | #![warn(nonstandard_style, reason = "the standard should be respected")]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/54503
|
||||
= help: add #![feature(lint_reasons)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: `log_syntax!` is not stable enough for use and is subject to change (see issue #29598)
|
||||
error[E0658]: `log_syntax!` is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-log_syntax.rs:2:5
|
||||
|
|
||||
LL | log_syntax!()
|
||||
| ^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29598
|
||||
= help: add #![feature(log_syntax)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: `log_syntax!` is not stable enough for use and is subject to change (see issue #29598)
|
||||
error[E0658]: `log_syntax!` is not stable enough for use and is subject to change
|
||||
--> $DIR/feature-gate-log_syntax2.rs:4:22
|
||||
|
|
||||
LL | println!("{:?}", log_syntax!());
|
||||
| ^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29598
|
||||
= help: add #![feature(log_syntax)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,25 +1,28 @@
|
|||
error[E0658]: macro invocations in `extern {}` blocks are experimental (see issue #49476)
|
||||
error[E0658]: macro invocations in `extern {}` blocks are experimental
|
||||
--> $DIR/feature-gate-macros_in_extern.rs:19:5
|
||||
|
|
||||
LL | returns_isize!(rust_get_test_int);
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/49476
|
||||
= help: add #![feature(macros_in_extern)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: macro invocations in `extern {}` blocks are experimental (see issue #49476)
|
||||
error[E0658]: macro invocations in `extern {}` blocks are experimental
|
||||
--> $DIR/feature-gate-macros_in_extern.rs:21:5
|
||||
|
|
||||
LL | takes_u32_returns_u32!(rust_dbg_extern_identity_u32);
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/49476
|
||||
= help: add #![feature(macros_in_extern)] to the crate attributes to enable
|
||||
|
||||
error[E0658]: macro invocations in `extern {}` blocks are experimental (see issue #49476)
|
||||
error[E0658]: macro invocations in `extern {}` blocks are experimental
|
||||
--> $DIR/feature-gate-macros_in_extern.rs:23:5
|
||||
|
|
||||
LL | emits_nothing!();
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/49476
|
||||
= help: add #![feature(macros_in_extern)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to 3 previous errors
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: declaration of a nonstandard #[main] function may change over time, for now a top-level `fn main()` is required (see issue #29634)
|
||||
error[E0658]: declaration of a nonstandard #[main] function may change over time, for now a top-level `fn main()` is required
|
||||
--> $DIR/feature-gate-main.rs:2:1
|
||||
|
|
||||
LL | fn foo() {}
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29634
|
||||
= help: add #![feature(main)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
use std::fmt::{Debug, Display};
|
||||
|
||||
#[marker] trait ExplicitMarker {}
|
||||
//~^ ERROR marker traits is an experimental feature (see issue #29864)
|
||||
//~^ ERROR marker traits is an experimental feature
|
||||
|
||||
impl<T: Display> ExplicitMarker for T {}
|
||||
impl<T: Debug> ExplicitMarker for T {}
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: marker traits is an experimental feature (see issue #29864)
|
||||
error[E0658]: marker traits is an experimental feature
|
||||
--> $DIR/feature-gate-marker_trait_attr.rs:3:1
|
||||
|
|
||||
LL | #[marker] trait ExplicitMarker {}
|
||||
| ^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/29864
|
||||
= help: add #![feature(marker_trait_attr)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
error[E0658]: may_dangle has unstable semantics and may be removed in the future (see issue #34761)
|
||||
error[E0658]: may_dangle has unstable semantics and may be removed in the future
|
||||
--> $DIR/feature-gate-may-dangle.rs:6:13
|
||||
|
|
||||
LL | unsafe impl<#[may_dangle] A> Drop for Pt<A> {
|
||||
| ^^^^^^^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/34761
|
||||
= help: add #![feature(dropck_eyepatch)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue