Workaround for long macros
Workaround for long macros

For example,
```
%cat b.h
 #define B BBBBBBBBBBBBBBB
```

then,

```
% sudo ./src/bpftrace --include b.h -e 'BEGIN {B}'
flex scanner push-back overflow
```

To cope with this, check flex's buffers length (yyleng) and if we try to
unput more than the length, stop lexer.

Now the above example becomes

```
% sudo ASAN_OPTIONS=detect_leaks=0 ./src/bpftrace --include b.h -e 'BEGIN {B}'
stdin:1:7-9: ERROR: Too deep recursive or long macro is detected: B, BBBBBBBBBBBBBBB
BEGIN {B}
      ~~
stdin:1:7-9: ERROR: syntax error, unexpected end of file, expecting }
BEGIN {B}
      ~~
```

iovisor/bpftrace,iovisor/bpftrace,iovisor/bpftrace,iovisor/bpftrace