summaryrefslogtreecommitdiffstats
path: root/tests/ui/offset-of/offset-of-arg-count.rs
blob: 31de45bc7567fdd223c9f7d983ea237357a1b1a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#![feature(offset_of)]

use std::mem::offset_of;

fn main() {
    offset_of!(NotEnoughArguments); //~ ERROR unexpected end of macro invocation
    offset_of!(NotEnoughArgumentsWithAComma, ); //~ ERROR unexpected end of macro invocation
    offset_of!(Container, field, too many arguments); //~ ERROR no rules expected the token `too`
    offset_of!(S, f); // compiles fine
    offset_of!(S, f,); // also compiles fine
    offset_of!(S, f.); //~ ERROR unexpected end of macro invocation
    offset_of!(S, f.,); //~ ERROR expected identifier
    offset_of!(S, f..); //~ ERROR no rules expected the token
    offset_of!(S, f..,); //~ ERROR no rules expected the token
    offset_of!(Lt<'static>, bar); // issue #111657
    offset_of!(Lt<'_>, bar); // issue #111678
}

struct S { f: u8, }
struct Lt<'a> {
    bar: &'a (),
}