10a47c91cSRobert Mustacchi# 20a47c91cSRobert Mustacchi# One of the problems that we can encounter involves trying to typedef a struct 30a47c91cSRobert Mustacchi# that has an error in it. The problem here is that we actually create the type 40a47c91cSRobert Mustacchi# itself for the struct before we add members. So what we need is something that 50a47c91cSRobert Mustacchi# will fail validation. So here we go! 60a47c91cSRobert Mustacchi# 70a47c91cSRobert Mustacchi 8f76ff24cSBryan CantrillTMPFILE="$(mktemp -p /tmp mtest.XXXXXX)" 90a47c91cSRobert Mustacchiif [[ -z "$TMPFILE" ]]; then 100a47c91cSRobert Mustacchi echo "Failed to get a temp file" 2>&1 110a47c91cSRobert Mustacchi exit 1 120a47c91cSRobert Mustacchifi 130a47c91cSRobert Mustacchi 140a47c91cSRobert Mustacchi$MDB <<EOF 150a47c91cSRobert Mustacchi::typedef "struct foo { int r; }" foo_t 160a47c91cSRobert Mustacchi::typedef -l ! cat > $TMPFILE 170a47c91cSRobert MustacchiEOF 180a47c91cSRobert Mustacchi 190a47c91cSRobert MustacchiDATA=$(cat $TMPFILE) 200a47c91cSRobert Mustacchirm -f $TMPFILE 210a47c91cSRobert Mustacchi 220a47c91cSRobert Mustacchi[[ -z $DATA ]] 23