## Test malformed big archive file in Fixed-Length header field.

# RUN: echo    "<bigaf>" >  %t_mal_globalsym.a
# RUN: echo -n "0                   1i28                0                   0                   0                   0                   " >> %t_mal_globalsym.a
# RUN: not llvm-ar tv %t_mal_globalsym.a 2>&1 | FileCheck %s -DFILE=%t_mal_globalsym.a --check-prefixes=GLOBOFFSET

# GLOBOFFSET: llvm-ar{{.*}}: error: unable to load '[[FILE]]': truncated or malformed archive (global symbol table offset of 32-bit members "1i28" is not a number)
 
# RUN: echo    "<bigaf>" >  %t_mal_globalsym64.a
# RUN: echo -n "0                   0                   1i28                0                   0                   0                   " >> %t_mal_globalsym64.a
# RUN: not llvm-ar tv %t_mal_globalsym64.a 2>&1 | FileCheck %s -DFILE=%t_mal_globalsym64.a --check-prefixes=GLOB64OFFSET

# GLOB64OFFSET: llvm-ar{{.*}}: error: unable to load '[[FILE]]': truncated or malformed archive (global symbol table offset of 64-bit members"1i28" is not a number)
