FILE@[0; 54) FN_ITEM@[0; 34) ATTR@[0; 19) POUND@[0; 1) L_BRACK@[1; 2) META_ITEM@[2; 17) IDENT@[2; 5) "foo" L_PAREN@[5; 6) META_ITEM@[6; 9) IDENT@[6; 9) "foo" COMMA@[9; 10) err: `expected attribute` ERROR@[10; 12) WHITESPACE@[10; 11) PLUS@[11; 12) err: `expected attribute` ERROR@[12; 14) COMMA@[12; 13) WHITESPACE@[13; 14) LITERAL@[14; 16) INT_NUMBER@[14; 16) R_PAREN@[16; 17) R_BRACK@[17; 18) WHITESPACE@[18; 19) FN_KW@[19; 21) NAME@[21; 25) WHITESPACE@[21; 22) IDENT@[22; 25) "foo" L_PAREN@[25; 26) R_PAREN@[26; 27) BLOCK@[27; 34) WHITESPACE@[27; 28) L_CURLY@[28; 29) WHITESPACE@[29; 30) R_CURLY@[30; 31) WHITESPACE@[31; 34) FN_ITEM@[34; 54) ATTR@[34; 41) POUND@[34; 35) L_BRACK@[35; 36) META_ITEM@[36; 41) IDENT@[36; 39) "foo" L_PAREN@[39; 40) err: `expected attribute` WHITESPACE@[40; 41) err: `expected R_BRACK` FN_KW@[41; 43) NAME@[43; 47) WHITESPACE@[43; 44) IDENT@[44; 47) "foo" L_PAREN@[47; 48) R_PAREN@[48; 49) BLOCK@[49; 54) WHITESPACE@[49; 50) L_CURLY@[50; 51) WHITESPACE@[51; 52) R_CURLY@[52; 53) WHITESPACE@[53; 54)