// Copyright 2015 The Rust Project Developers. See the COPYRIGHT // file at the top-level directory of this distribution and at // http://rust-lang.org/COPYRIGHT. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. // ignore-cloudabi networking not available // ignore-wasm32-bare networking not available use std::net::ToSocketAddrs; fn is_sync(_: T) where T: Sync {} fn is_send(_: T) where T: Send {} macro_rules! all_sync_send { ($ctor:expr, $($iter:ident),+) => ({ $( let mut x = $ctor; is_sync(x.$iter()); let mut y = $ctor; is_send(y.$iter()); )+ }) } fn main() { all_sync_send!("localhost:80".to_socket_addrs().unwrap(), next); }