1 2./array.tests: line 28: syntax error near unexpected token `&' 3./array.tests: line 28: `test=(first & second)' 41 5abcde 6abcde 7abcde bdef 8abcde bdef 9declare -a BASH_ARGC=() 10declare -a BASH_ARGV=() 11declare -a BASH_LINENO=([0]="0") 12declare -a BASH_SOURCE=([0]="./array.tests") 13declare -a DIRSTACK=() 14declare -a FUNCNAME 15declare -a a=([0]="abcde" [1]="" [2]="bdef") 16declare -a b 17declare -ar c 18abcde bdef 19abcde bdef 20abcde 21abcde 22abcde 23 24bdef 25hello world 2611 273 28bdef hello world test expression test 2 29./array.tests: line 92: readonly: `a[5]': not a valid identifier 30declare -ar a=([1]="" [2]="bdef" [5]="hello world" [6]="test expression" [15]="test 2") 31declare -ar c 32declare -ar a=([1]="" [2]="bdef" [5]="hello world" [6]="test expression" [15]="test 2") 33declare -ar c 34readonly -a a=([1]="" [2]="bdef" [5]="hello world" [6]="test expression" [15]="test 2") 35readonly -a c 36a test 37declare -a BASH_ARGC=() 38declare -a BASH_ARGV=() 39declare -a BASH_LINENO=([0]="0") 40declare -a BASH_SOURCE=([0]="./array.tests") 41declare -a DIRSTACK=() 42declare -a FUNCNAME 43declare -ar a=([1]="" [2]="bdef" [5]="hello world" [6]="test expression" [15]="test 2") 44declare -a b=([0]="this" [1]="is" [2]="a" [3]="test" [4]="" [5]="/etc/passwd") 45declare -ar c 46declare -a d=([1]="" [2]="bdef" [5]="hello world" [6]="test" [9]="ninth element") 47declare -a e=([0]="test") 48declare -a f=([0]="" [1]="bdef" [2]="hello world" [3]="test" [4]="ninth element") 49./array.tests: line 116: a: readonly variable 50./array.tests: line 118: b[]: bad array subscript 51./array.tests: line 119: b[*]: bad array subscript 52this 53./array.tests: line 122: c[-2]: bad array subscript 54./array.tests: line 123: c: bad array subscript 55 56./array.tests: line 125: d[7]: cannot assign list to array member 57./array.tests: line 127: []=abcde: bad array subscript 58./array.tests: line 127: [*]=last: cannot assign to non-numeric index 59./array.tests: line 127: [-65]=negative: bad array subscript 60declare -a BASH_ARGC=() 61declare -a BASH_ARGV=() 62declare -a BASH_LINENO=([0]="0") 63declare -a BASH_SOURCE=([0]="./array.tests") 64declare -a DIRSTACK=() 65declare -a FUNCNAME 66declare -ar a=([1]="" [2]="bdef" [5]="hello world" [6]="test expression" [15]="test 2") 67declare -a b=([0]="this" [1]="is" [2]="a" [3]="test" [4]="" [5]="/etc/passwd") 68declare -ar c 69declare -a d=([1]="test test") 70declare -a f=([0]="" [1]="bdef" [2]="hello world" [3]="test" [4]="ninth element") 71./array.tests: line 135: unset: ps1: not an array variable 72./array.tests: line 139: declare: c: cannot destroy array variables in this way 73this of 74this is a test of read using arrays 75this test 76this is a test of arrays 77declare -a BASH_ARGC=() 78declare -a BASH_ARGV=() 79declare -a BASH_LINENO=([0]="0") 80declare -a BASH_SOURCE=([0]="./array.tests") 81declare -a DIRSTACK=() 82declare -a FUNCNAME 83declare -ar a=([1]="" [2]="bdef" [5]="hello world" [6]="test expression" [15]="test 2") 84declare -a b=([0]="this" [1]="is" [2]="a" [3]="test" [4]="" [5]="/etc/passwd") 85declare -ar c 86declare -a d=([1]="test test") 87declare -a f=([0]="" [1]="bdef" [2]="hello world" [3]="test" [4]="ninth element") 88declare -a rv=([0]="this" [1]="is" [2]="a" [3]="test" [4]="of" [5]="read" [6]="using" [7]="arrays") 89abde 90abde 91bbb 92efgh 93wxyz 94wxyz 95./array.tests 96a 97b c 98d 99e f g 100h 101./array.tests 102a 103b c 104d 105e f g 106h 107/bin /usr/bin /usr/ucb /usr/local/bin . /sbin /usr/sbin 108bin bin ucb bin . sbin sbin 109bin 110/ / / / / / 111/ 112argv[1] = <bin> 113argv[1] = </> 114argv[1] = <sbin> 115argv[1] = </> 116\bin \usr/bin \usr/ucb \usr/local/bin . \sbin \usr/sbin 117\bin \usr\bin \usr\ucb \usr\local\bin . \sbin \usr\sbin 118\bin \usr\bin \usr\ucb \usr\local\bin . \sbin \usr\sbin 1194 -- 4 1207 -- 7 12155 12249 1236 -- 6 12442 14 44 125grep [ 123 ] * 1266 7 9 1276 7 9 5 128length = 3 129value = new1 new2 new3 130./array.tests: line 255: narray: unbound variable 131./array1.sub: line 1: syntax error near unexpected token `(' 132./array1.sub: line 1: `printf "%s\n" -a a=(a 'b c')' 133./array2.sub: line 1: declare: `[]=asdf': not a valid identifier 134./array2.sub: line 2: a[]: bad array subscript 135./array2.sub: line 4: syntax error near unexpected token `(' 136./array2.sub: line 4: `declare -a ''=(a 'b c')' 1379 1389 139 140 1417 8 9 1428 11 1438 11 1446 1456 146nordholz 1478 1488 1498 150 151a b c d e f g 152for case if then else 153<> < > ! 15412 14 16 18 20 1554414758999202 156aaa bbb 157./array.tests: line 305: syntax error near unexpected token `<>' 158./array.tests: line 305: `metas=( <> < > ! )' 159./array.tests: line 306: syntax error near unexpected token `<>' 160./array.tests: line 306: `metas=( [1]=<> [2]=< [3]=> [4]=! )' 161abc 3 162case 4 163abc case if then else 5 164abc case if then else 5 1650 166case 4 167case if then else 5 168case if then else 5 169argv[1] = <0> 170argv[2] = <1> 171argv[3] = <4> 172argv[4] = <10> 173argv[1] = <0> 174argv[2] = <1> 175argv[3] = <4> 176argv[4] = <10> 177argv[1] = <0> 178argv[2] = <1> 179argv[3] = <4> 180argv[4] = <10> 181argv[1] = <0 1 4 10> 182include null element -- expect one 183one 184include unset element -- expect three five 185three five 186start at unset element -- expect five seven 187five seven 188too many elements -- expect three five seven 189three five seven 190positive offset - expect five seven 191five seven 192negative offset to unset element - expect seven 193seven 194positive offset 2 - expect seven 195seven 196negative offset 2 - expect seven 197seven 198out-of-range offset 199 200e 2014 2021 4 7 10 203'b 204b c 205$0 206declare -a A=([0]="X=a" [1]="b") 207t 208[3]=abcde r s t u v 209e 2109 2112 212a b c 213argv[1] = <-iname 'a> 214argv[2] = <-iname 'b> 215argv[3] = <-iname 'c> 216'hey' 217hey 218''hey 219'hey' 220argv[1] = <c> 221argv[2] = <d> 222argv[3] = <e> 223argv[4] = <f> 224argv[1] = <c d> 225argv[2] = <e f> 226argv[1] = <c d> 227argv[2] = <e f> 228argv[1] = <c d> 229argv[2] = <e f> 230argv[1] = <-iname 'abc> 231argv[2] = <-iname 'def> 232argv[1] = <-iname 'abc> 233argv[2] = <-iname 'def> 234argv[1] = <-iname> 235argv[2] = <abc -iname def> 236argv[1] = <-iname 'abc> 237argv[2] = <-iname 'def> 238argv[1] = <-iname> 239argv[2] = <abc -iname def> 240argv[1] = <-iname 'abc> 241argv[2] = <-iname 'def> 242argv[1] = <-iname 'abc> 243argv[2] = <-iname 'def> 244argv[1] = <-iname> 245argv[2] = <abc -iname def> 246*.* OK 2471 248a1 2 3c 249argv[1] = <var with spaces> 250argv[1] = <var with spaces> 251argv[1] = <var with spacesab> 252argv[2] = <cd> 253argv[3] = <ef> 254argv[1] = <var with spacesab> 255argv[2] = <cd> 256argv[3] = <ef> 257argv[1] = <var with spacesab> 258argv[2] = <cd> 259argv[3] = <ef> 260argv[1] = <var with spacesab> 261argv[2] = <cd> 262argv[3] = <ef> 263argv[1] = <var with spacesab> 264argv[2] = <cd> 265argv[3] = <ef> 266argv[1] = <var with spacesab> 267argv[2] = <cd> 268argv[3] = <ef> 2692 270argv[1] = <element1 with spaces> 271argv[2] = <element2 with spaces> 272argv[1] = <element1 with spaces> 273argv[2] = <element2 with spaces> 274nord!olz 275 276rdholz 277 278rdholz 279rdho 280 281 282argv[1] = <fooq//barq/> 283argv[1] = <fooq> 284argv[2] = <> 285argv[3] = <barq> 286argv[4] = <> 287argv[1] = <foo!//bar!/> 288argv[1] = <foo!> 289argv[2] = <> 290argv[3] = <bar!> 291argv[4] = <> 292argv[1] = <ooq//arq/> 293argv[1] = <ooq> 294argv[2] = <> 295argv[3] = <arq> 296argv[4] = <> 297argv[1] = <Fooq//Barq/> 298argv[1] = <Fooq> 299argv[2] = <> 300argv[3] = <Barq> 301argv[4] = <> 302argv[1] = <FOOQ//BARQ/> 303argv[1] = <FOOQ> 304argv[2] = <> 305argv[3] = <BARQ> 306argv[4] = <> 307126 308127 309128 310argv[1] = <�> 311argv[1] = <~> 312argv[2] = <^?> 313argv[3] = <�> 314argv[1] = <~> 315argv[2] = <^?> 316argv[3] = <�> 317argv[1] = <~> 318argv[2] = <^?> 319argv[3] = <�> 320Monday Tuesday Wednesday Thursday Friday Saturday Sunday 321Monday 322Monday 323Tuesday 324Monday 325Monday 326Tuesday 327Monday 328Tuesday 329Wednesday 330Monday 331Tuesday 332Wednesday 333monday, monday, tuesday 334wednesday, wednesday, thursday 335monday, monday, tuesday 336Wednesday, Wednesday, Thursday 337nday 338esday 339dnesday 340nday 341esday 342dnesday 343onday 344uesday 345ednesday 346onday 347uesday 348ednesday 349version[agent] 350version.agent 351version[agent] 352version.agent 353foo[bar] version[agent] 354bowl version.agent 355foobar] foo foo[bar] 356bleh bbb bleh 357ab] 358bar 3591 3601 3611 3621 3631 3641 365main main 366function function 367function function 368declare -a x=([0]="0" [1]="1" [2]="2" [3]="3" [4]="4" [5]="5") 369declare -a x=([0]="0" [1]="1" [2]="2" [3]="3" [4]="4") 370declare -a x=([0]="0" [1]="1" [2]="2" [4]="4") 371./array14.sub: line 24: unset: [-10]: bad array subscript 372declare -a x=([0]="0" [1]="1" [2]="2" [3]="3" [4]="4") 373declare -a x=([0]="0" [1]="1" [2]="2" [3]="3" [4]="4" [5]="five") 374declare -a x=([0]="0" [1]="1" [2]="2" [3]="3" [4]="4" [5]="5") 375declare -a x=([0]="0" [1]="1" [2]="2" [3]="3" [4]="4" [5]="foo") 376declare -a x=([0]="0" [1]="1" [2]="2" [3]="3" [4]="4" [5]="5") 377declare -a x=([0]="0" [1]="1" [2]="2" [3]="3" [4]="4four" [5]="5") 378strlen(4four) = 5 3791 2 0 3 3801 2 0 3 3811 2 0 3 3821 2 0 3 3831 2 0 3 384foo index 1: ok 385foo index 2: ok 386foo: implicit reference to element 0: ok 387foo: arithmetic evaluation: ok 388bar: array with element zero unset: ok 389bar: element zero: ok 390qux: unset array: ok 391qux: unset array element 0: ok 3922 3932 3942 3952 3960 3970 3981 399./array17.sub: line 43: ~: syntax error: operand expected (error token is "~") 4000 4010 4023 4033 4040 4050 406zero 407zero 408one 409one 410one 411one 412two 413two 414./array17.sub: line 89: ~ : syntax error: operand expected (error token is "~ ") 4151 416argv[1] = <> 417argv[2] = <> 418argv[3] = <> 419argv[1] = <bar> 420argv[1] = <-> 421argv[2] = <-> 422argv[1] = < > 423argv[1] = <qux> 424argv[1] = <-> 425argv[2] = <-> 426argv[1] = < > 427argv[1] = <> 428argv[2] = <> 429argv[3] = <> 430argv[1] = <bar> 431argv[1] = <-> 432argv[2] = <-> 433argv[1] = < > 434argv[1] = <qux> 435argv[1] = <-> 436argv[2] = <-> 437argv[1] = < > 438declare -a foo=([0]="( zeroind )") 439declare -a foo=([0]="zeroind") 440declare -a foo=([0]="zeroind") 441declare -a foo=([0]="[0]=bar") 442declare -a foo=([0]="[0]=bar") 443declare -a foo=([0]="[0]=bar") 444declare -- a="(1 2 3)" 445declare -a a=([0]="1" [1]="2" [2]="3") 446declare -- a="([0]=a [1]=b)" 447declare -a a=([0]="a" [1]="b") 448declare -A a=([1]="b" [0]="a" ) 449declare -a var=([0]="[\$(echo" [1]="total" [2]="0)]=1" [3]="[2]=2]") 450declare -a var=([0]="[\$(echo total 0)]=1 [2]=2]") 451declare -a var=([0]="[\$(echo" [1]="total" [2]="0)]=1" [3]="[2]=2]") 452./array19.sub: line 89: total 0: syntax error in expression (error token is "0") 453declare -a var=() 454declare -al foo=([0]="abcde" [1]="two" [2]="three") 455declare -al foo=([0]="abcde") 456declare -al ar=([0]="one" [1]="two" [2]="three") 457declare -a a=([2]="foo") 458declare -a a=([2]="foo") 459declare -a a=([1]="(var)" [2]="foo") 460./array19.sub: line 128: warning: a[1]=(var): quoted compound array assignment deprecated 461declare -a a=([1]="(var)") 462declare -a a=([0]="1" [1]="2" [2]="(1 2 3)") 463declare -a a=([0]="1" [1]="2" [2]="(1 2 3)") 464declare -a a=([0]="1" [1]="2" [2]="3") 465declare -a a=([0]="1" [1]="2" [2]="3") 466declare -a a=([0]="1" [1]="2" [2]="3") 467declare -- a="a b" 468declare -- b="/scratch/bash" 469declare -- c="(1 2)" 470declare -- d="(\$a)" 471declare -- e="(\$(echo Darwin))" 472declare -a a=([0]="a b") 473declare -a b=([0]="/scratch/bash") 474declare -a c=([0]="1" [1]="2") 475declare -a d=([0]="a" [1]="b") 476declare -a e=([0]="Darwin") 477declare -A a=([0]="a b" ) 478declare -A b=([0]="/scratch/bash" ) 479declare -A c=([1]="2" ) 480declare -A d=(["a b"]="" ) 481declare -A e=([Darwin]="" ) 482a+b+c 483x+b+c 484a+b+c 485x+b+c 486argv[1] = <a+b+c+d+e+f> 487argv[1] = <x+b+c+d+e+f> 488a b c 489x b c 490a b c 491x b c 492declare -a a=([1]="2" [2]="3" [3]="4") 493abcd 494unset 495./array21.sub: line 30: typeset: a: not found 496./array21.sub: line 33: typeset: A: not found 497declare -a a=() 498declare -A A=() 499declare -a foo=([0]="1" [1]="(4 5 6)" [2]="3") 500a1 501argv[1] = <> 502argv[2] = <> 503a2 504argv[1] = <y> 505argv[1] = <z> 506a3 507argv[1] = <> 508argv[2] = <x> 509a4 510argv[1] = <y> 511p1 512argv[1] = <> 513argv[2] = <> 514p2 515argv[1] = <> 516argv[2] = <x> 517p3 518argv[1] = <y> 519<X> <X> <X> <X> 520<X> <X> <X> <X> 521./array23.sub: line 22: $( echo >&2 foo ) : syntax error: operand expected (error token is "$( echo >&2 foo ) ") 522./array23.sub: line 23: $( echo >&2 foo ) : syntax error: operand expected (error token is "$( echo >&2 foo ) ") 523foo 5240 525foo 526foo 527foo 5286 529./array23.sub: line 34: $( echo >&2 foo ): syntax error: operand expected (error token is "$( echo >&2 foo )") 530./array23.sub: line 35: $( echo >&2 foo ): syntax error: operand expected (error token is "$( echo >&2 foo )") 5310 5320 5330 534IFS=: ${var-$*} 535abc 536def ghi 537jkl 538abc 539def ghi 540jkl 541---- 542IFS=: ${var=$*} 543abc 544def ghi 545jkl 546var=abc:def ghi:jkl 547abc 548def ghi 549jkl 550var=abc:def ghi:jkl 551---- 552IFS=: ${var+$*} 553abc 554def ghi 555jkl 556abc 557def ghi 558jkl 559---- 560IFS= ${var-$*} 561abc 562def ghi 563jkl 564abc 565def ghi 566jkl 567---- 568IFS= ${var=$*} 569abcdef ghijkl 570var=abcdef ghijkl 571abcdef ghijkl 572var=abcdef ghijkl 573---- 574IFS= ${var+$*} 575abc 576def ghi 577jkl 578abc 579def ghi 580jkl 5811. indexed: 582reference: 5831. 0 584./array25.sub: line 24: ' ': syntax error: operand expected (error token is "' '") 5853. 0 5864. 0 5875. 0 5886. 0 589assignment: 5901.declare -a a=([0]="10" [1]="1") 5912.declare -a a=([0]="11" [1]="1") 5923.declare -a a=([0]="12" [1]="1") 5934.declare -a a=([0]="13" [1]="1") 594arithmetic: 5951.declare -a a=([0]="10" [1]="1") 5962.declare -a a=([0]="11" [1]="1") 5973.declare -a a=([0]="12" [1]="1") 5984.declare -a a=([0]="13" [1]="1") 5995.declare -a a=([0]="10" [1]="1") 6006.declare -a a=([0]="11" [1]="1") 6017.declare -a a=([0]="12" [1]="1") 6028.declare -a a=([0]="13" [1]="1") 6032. associative: 604reference: 6051. 6062. 6073. 6084. 6095. 6106. 611assignment: 6121.declare -A a=([1]="1" [0]="0" [" "]="10" ) 6132.declare -A a=([1]="1" [0]="0" [" "]="11" ) 6143.declare -A a=([1]="1" [0]="0" [" "]="12" ) 6154.declare -A a=([1]="1" [0]="0" [" "]="13" ) 616arithmetic: 6171.declare -A a=([1]="1" [0]="0" [" "]="10" ) 6182.declare -A a=([1]="1" [0]="0" [" "]="11" ) 6193.declare -A a=([1]="1" [0]="0" [" "]="12" ) 6204.declare -A a=([1]="1" [0]="0" [" "]="13" ) 6215.declare -A a=([1]="1" [0]="0" [" "]="10" ) 6226.declare -A a=([1]="1" [0]="0" [" "]="10" ["\" \""]="11" ) 6237.declare -A a=([1]="1" [0]="0" [" "]="12" ["\" \""]="11" ) 6248.declare -A a=([1]="1" [0]="0" [" "]="12" ["\" \""]="13" ) 625argv[1] = <aa> 626argv[2] = <bb> 627argv[1] = <aa> 628argv[2] = <bb> 629argv[1] = <aa> 630argv[2] = <bb> 631argv[1] = <aa> 632argv[2] = <bb> 633argv[1] = <aa> 634argv[2] = <bb> 635argv[3] = <aa> 636argv[4] = <bb> 637argv[1] = <aa> 638argv[2] = <bb> 639argv[3] = <aa> 640argv[4] = <bb> 641argv[1] = <aa+bb> 642argv[2] = <aa+bb> 643argv[1] = <aa> 644argv[2] = <bb> 645argv[3] = <aa> 646argv[4] = <bb> 647argv[1] = <xa> 648argv[2] = <bb> 649argv[1] = <xa> 650argv[2] = <bb> 651argv[1] = <xa> 652argv[2] = <bb> 653argv[1] = <xa> 654argv[2] = <bb> 655argv[1] = <xa> 656argv[2] = <bb> 657argv[1] = <xa> 658argv[2] = <bb> 659argv[1] = <xa+bb> 660argv[1] = <xa+bb> 661argv[1] = <xa+bb> 662argv[2] = <xa+bb> 663argv[1] = <bb> 664argv[2] = <xa> 665argv[1] = <bb> 666argv[2] = <xa> 667argv[1] = <bb> 668argv[2] = <xa> 669argv[1] = <bb+xa> 670argv[1] = <xa> 671argv[2] = <bb> 672argv[1] = <xa> 673argv[2] = <bb> 674argv[1] = <xa> 675argv[2] = <bb> 676argv[1] = <xa> 677argv[2] = <bb> 678argv[1] = <xa> 679argv[2] = <bb> 680argv[1] = <xa> 681argv[2] = <bb> 682argv[1] = <xabb> 683argv[1] = <xabb> 684argv[1] = <xabb> 685argv[2] = <xabb> 686argv[1] = <bb> 687argv[2] = <xa> 688argv[1] = <bb> 689argv[2] = <xa> 690argv[1] = <bb> 691argv[2] = <xa> 692argv[1] = <bbxa> 693argv[1] = <aa> 694argv[2] = <bb> 695argv[1] = <aa> 696argv[2] = <bb> 697argv[1] = <aa> 698argv[2] = <bb> 699argv[1] = <aa> 700argv[2] = <bb> 701argv[1] = <aa> 702argv[2] = <bb> 703argv[3] = <aa> 704argv[4] = <bb> 705argv[1] = <aa> 706argv[2] = <bb> 707argv[3] = <aa> 708argv[4] = <bb> 709argv[1] = <aa+bb> 710argv[2] = <aa+bb> 711argv[1] = <aa+bb> 712argv[2] = <aa+bb> 713argv[1] = <aa> 714argv[2] = <bb> 715argv[3] = <aa> 716argv[4] = <bb> 717argv[1] = <bb> 718argv[2] = <aa> 719argv[1] = <bb> 720argv[2] = <aa> 721argv[1] = <bb> 722argv[2] = <aa> 723argv[1] = <bb+aa> 724argv[1] = <a> 725argv[2] = <b> 726argv[1] = <a> 727argv[2] = <b> 728argv[1] = <a> 729argv[2] = <b> 730argv[3] = <a> 731argv[4] = <b> 732argv[1] = <a+b> 733argv[2] = <a+b> 734argv[1] = <a> 735argv[2] = <b> 736argv[3] = <a> 737argv[4] = <b> 738argv[1] = <b> 739argv[2] = <a> 740argv[1] = <b> 741argv[2] = <a> 742argv[1] = <b> 743argv[2] = <a> 744argv[1] = <b+a> 7457 746./array27.sub: line 24: a[]]=7 : syntax error: invalid arithmetic operator (error token is "]=7 ") 747declare -A A=([$'\t']="2" [" "]="2" ) 748./array27.sub: line 36: ((: A[]]=2 : syntax error: invalid arithmetic operator (error token is "]=2 ") 749declare -A A=([$'\t']="2" ["*"]="2" [" "]="2" ["@"]="2" ) 750./array27.sub: line 45: A[]]: bad array subscript 751declare -A A=([$'\t']="X" ["*"]="X" [" "]="X" ["@"]="X" ) 752./array27.sub: line 53: A[]]: bad array subscript 753declare -A A=([$'\t']="X" ["*"]="X" [" "]="X" ["@"]="X" ) 754./array27.sub: line 61: declare: `A[]]=X': not a valid identifier 755declare -A A=(["*"]="X" ["@"]="X" ) 756./array27.sub: line 69: declare: `A[]]=X': not a valid identifier 757./array27.sub: line 69: A[*]: bad array subscript 758./array27.sub: line 69: A[@]: bad array subscript 759declare -A A 760declare -a bug4=([0]="" [1]="5" [2]="" [3]="1" [4]="") 761declare -a bug=([0]="" [1]="5" [2]="" [3]="1" [4]="") 762declare -a bug2=([0]="") 763declare -a bug3=([0]="" [1]="5" [2]="" [3]="1" [4]="") 764declare -a not_bug=([0]="no" [1]="nulls") 765declare -a workaround=([0]="") 766