diff options
author | David Walter Seikel | 2012-01-05 08:19:20 +1000 |
---|---|---|
committer | David Walter Seikel | 2012-01-05 08:19:20 +1000 |
commit | a4b910c8c78242ebbc157ceb164e8fadfc805b27 (patch) | |
tree | ca0eb090fc2449e7a8be8685c4e2a06867d417e8 /LuaSL/src/LuaSL_LSL_yaccer.y | |
parent | Added the unadulterated flex and bison source files from the SL viewer. (diff) | |
download | SledjHamr-a4b910c8c78242ebbc157ceb164e8fadfc805b27.zip SledjHamr-a4b910c8c78242ebbc157ceb164e8fadfc805b27.tar.gz SledjHamr-a4b910c8c78242ebbc157ceb164e8fadfc805b27.tar.bz2 SledjHamr-a4b910c8c78242ebbc157ceb164e8fadfc805b27.tar.xz |
Remove most of the constants, we can put them in Lua globals later. Make the LSL parner more like the test one.
Diffstat (limited to 'LuaSL/src/LuaSL_LSL_yaccer.y')
-rw-r--r-- | LuaSL/src/LuaSL_LSL_yaccer.y | 317 |
1 files changed, 0 insertions, 317 deletions
diff --git a/LuaSL/src/LuaSL_LSL_yaccer.y b/LuaSL/src/LuaSL_LSL_yaccer.y index e4b10ff..1583b0b 100644 --- a/LuaSL/src/LuaSL_LSL_yaccer.y +++ b/LuaSL/src/LuaSL_LSL_yaccer.y | |||
@@ -25,26 +25,6 @@ | |||
25 | #endif | 25 | #endif |
26 | %} | 26 | %} |
27 | 27 | ||
28 | %union | ||
29 | { | ||
30 | S32 ival; | ||
31 | F32 fval; | ||
32 | char *sval; | ||
33 | class LLScriptType *type; | ||
34 | class LLScriptConstant *constant; | ||
35 | class LLScriptIdentifier *identifier; | ||
36 | class LLScriptSimpleAssignable *assignable; | ||
37 | class LLScriptGlobalVariable *global; | ||
38 | class LLScriptEvent *event; | ||
39 | class LLScriptEventHandler *handler; | ||
40 | class LLScriptExpression *expression; | ||
41 | class LLScriptStatement *statement; | ||
42 | class LLScriptGlobalFunctions *global_funcs; | ||
43 | class LLScriptFunctionDec *global_decl; | ||
44 | class LLScriptState *state; | ||
45 | class LLScritpGlobalStorage *global_store; | ||
46 | class LLScriptScript *script; | ||
47 | }; | ||
48 | 28 | ||
49 | %token INTEGER | 29 | %token INTEGER |
50 | %token FLOAT_TYPE | 30 | %token FLOAT_TYPE |
@@ -275,13 +255,11 @@ lscript_program | |||
275 | : globals states | 255 | : globals states |
276 | { | 256 | { |
277 | $$ = new LLScriptScript($1, $2); | 257 | $$ = new LLScriptScript($1, $2); |
278 | gAllocationManager->addAllocation($$); | ||
279 | gScriptp = $$; | 258 | gScriptp = $$; |
280 | } | 259 | } |
281 | | states | 260 | | states |
282 | { | 261 | { |
283 | $$ = new LLScriptScript(NULL, $1); | 262 | $$ = new LLScriptScript(NULL, $1); |
284 | gAllocationManager->addAllocation($$); | ||
285 | gScriptp = $$; | 263 | gScriptp = $$; |
286 | } | 264 | } |
287 | ; | 265 | ; |
@@ -302,12 +280,10 @@ global | |||
302 | : global_variable | 280 | : global_variable |
303 | { | 281 | { |
304 | $$ = new LLScritpGlobalStorage($1); | 282 | $$ = new LLScritpGlobalStorage($1); |
305 | gAllocationManager->addAllocation($$); | ||
306 | } | 283 | } |
307 | | global_function | 284 | | global_function |
308 | { | 285 | { |
309 | $$ = new LLScritpGlobalStorage($1); | 286 | $$ = new LLScritpGlobalStorage($1); |
310 | gAllocationManager->addAllocation($$); | ||
311 | } | 287 | } |
312 | ; | 288 | ; |
313 | 289 | ||
@@ -315,7 +291,6 @@ name_type | |||
315 | : typename IDENTIFIER | 291 | : typename IDENTIFIER |
316 | { | 292 | { |
317 | $$ = new LLScriptIdentifier(gLine, gColumn, $2, $1); | 293 | $$ = new LLScriptIdentifier(gLine, gColumn, $2, $1); |
318 | gAllocationManager->addAllocation($$); | ||
319 | } | 294 | } |
320 | ; | 295 | ; |
321 | 296 | ||
@@ -323,12 +298,10 @@ global_variable | |||
323 | : name_type ';' | 298 | : name_type ';' |
324 | { | 299 | { |
325 | $$ = new LLScriptGlobalVariable(gLine, gColumn, $1->mType, $1, NULL); | 300 | $$ = new LLScriptGlobalVariable(gLine, gColumn, $1->mType, $1, NULL); |
326 | gAllocationManager->addAllocation($$); | ||
327 | } | 301 | } |
328 | | name_type '=' simple_assignable ';' | 302 | | name_type '=' simple_assignable ';' |
329 | { | 303 | { |
330 | $$ = new LLScriptGlobalVariable(gLine, gColumn, $1->mType, $1, $3); | 304 | $$ = new LLScriptGlobalVariable(gLine, gColumn, $1->mType, $1, $3); |
331 | gAllocationManager->addAllocation($$); | ||
332 | } | 305 | } |
333 | ; | 306 | ; |
334 | 307 | ||
@@ -347,14 +320,11 @@ simple_assignable_no_list | |||
347 | : IDENTIFIER | 320 | : IDENTIFIER |
348 | { | 321 | { |
349 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); | 322 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); |
350 | gAllocationManager->addAllocation(id); | ||
351 | $$ = new LLScriptSAIdentifier(gLine, gColumn, id); | 323 | $$ = new LLScriptSAIdentifier(gLine, gColumn, id); |
352 | gAllocationManager->addAllocation($$); | ||
353 | } | 324 | } |
354 | | constant | 325 | | constant |
355 | { | 326 | { |
356 | $$ = new LLScriptSAConstant(gLine, gColumn, $1); | 327 | $$ = new LLScriptSAConstant(gLine, gColumn, $1); |
357 | gAllocationManager->addAllocation($$); | ||
358 | } | 328 | } |
359 | | special_constant | 329 | | special_constant |
360 | { | 330 | { |
@@ -366,17 +336,14 @@ constant | |||
366 | : integer_constant | 336 | : integer_constant |
367 | { | 337 | { |
368 | $$ = new LLScriptConstantInteger(gLine, gColumn, $1); | 338 | $$ = new LLScriptConstantInteger(gLine, gColumn, $1); |
369 | gAllocationManager->addAllocation($$); | ||
370 | } | 339 | } |
371 | | fp_constant | 340 | | fp_constant |
372 | { | 341 | { |
373 | $$ = new LLScriptConstantFloat(gLine, gColumn, $1); | 342 | $$ = new LLScriptConstantFloat(gLine, gColumn, $1); |
374 | gAllocationManager->addAllocation($$); | ||
375 | } | 343 | } |
376 | | STRING_CONSTANT | 344 | | STRING_CONSTANT |
377 | { | 345 | { |
378 | $$ = new LLScriptConstantString(gLine, gColumn, $1); | 346 | $$ = new LLScriptConstantString(gLine, gColumn, $1); |
379 | gAllocationManager->addAllocation($$); | ||
380 | } | 347 | } |
381 | ; | 348 | ; |
382 | 349 | ||
@@ -425,58 +392,36 @@ vector_constant | |||
425 | : '<' simple_assignable ',' simple_assignable ',' simple_assignable '>' | 392 | : '<' simple_assignable ',' simple_assignable ',' simple_assignable '>' |
426 | { | 393 | { |
427 | $$ = new LLScriptSAVector(gLine, gColumn, $2, $4, $6); | 394 | $$ = new LLScriptSAVector(gLine, gColumn, $2, $4, $6); |
428 | gAllocationManager->addAllocation($$); | ||
429 | } | 395 | } |
430 | | ZERO_VECTOR | 396 | | ZERO_VECTOR |
431 | { | 397 | { |
432 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 398 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
433 | gAllocationManager->addAllocation(cf0); | ||
434 | LLScriptSAConstant *sa0 = new LLScriptSAConstant(gLine, gColumn, cf0); | 399 | LLScriptSAConstant *sa0 = new LLScriptSAConstant(gLine, gColumn, cf0); |
435 | gAllocationManager->addAllocation(sa0); | ||
436 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 400 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
437 | gAllocationManager->addAllocation(cf1); | ||
438 | LLScriptSAConstant *sa1 = new LLScriptSAConstant(gLine, gColumn, cf1); | 401 | LLScriptSAConstant *sa1 = new LLScriptSAConstant(gLine, gColumn, cf1); |
439 | gAllocationManager->addAllocation(sa1); | ||
440 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 402 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
441 | gAllocationManager->addAllocation(cf2); | ||
442 | LLScriptSAConstant *sa2 = new LLScriptSAConstant(gLine, gColumn, cf2); | 403 | LLScriptSAConstant *sa2 = new LLScriptSAConstant(gLine, gColumn, cf2); |
443 | gAllocationManager->addAllocation(sa2); | ||
444 | $$ = new LLScriptSAVector(gLine, gColumn, sa0, sa1, sa2); | 404 | $$ = new LLScriptSAVector(gLine, gColumn, sa0, sa1, sa2); |
445 | gAllocationManager->addAllocation($$); | ||
446 | } | 405 | } |
447 | | TOUCH_INVALID_VECTOR | 406 | | TOUCH_INVALID_VECTOR |
448 | { | 407 | { |
449 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 408 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
450 | gAllocationManager->addAllocation(cf0); | ||
451 | LLScriptSAConstant *sa0 = new LLScriptSAConstant(gLine, gColumn, cf0); | 409 | LLScriptSAConstant *sa0 = new LLScriptSAConstant(gLine, gColumn, cf0); |
452 | gAllocationManager->addAllocation(sa0); | ||
453 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 410 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
454 | gAllocationManager->addAllocation(cf1); | ||
455 | LLScriptSAConstant *sa1 = new LLScriptSAConstant(gLine, gColumn, cf1); | 411 | LLScriptSAConstant *sa1 = new LLScriptSAConstant(gLine, gColumn, cf1); |
456 | gAllocationManager->addAllocation(sa1); | ||
457 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 412 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
458 | gAllocationManager->addAllocation(cf2); | ||
459 | LLScriptSAConstant *sa2 = new LLScriptSAConstant(gLine, gColumn, cf2); | 413 | LLScriptSAConstant *sa2 = new LLScriptSAConstant(gLine, gColumn, cf2); |
460 | gAllocationManager->addAllocation(sa2); | ||
461 | $$ = new LLScriptSAVector(gLine, gColumn, sa0, sa1, sa2); | 414 | $$ = new LLScriptSAVector(gLine, gColumn, sa0, sa1, sa2); |
462 | gAllocationManager->addAllocation($$); | ||
463 | } | 415 | } |
464 | | TOUCH_INVALID_TEXCOORD | 416 | | TOUCH_INVALID_TEXCOORD |
465 | { | 417 | { |
466 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, -1.f); | 418 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, -1.f); |
467 | gAllocationManager->addAllocation(cf0); | ||
468 | LLScriptSAConstant *sa0 = new LLScriptSAConstant(gLine, gColumn, cf0); | 419 | LLScriptSAConstant *sa0 = new LLScriptSAConstant(gLine, gColumn, cf0); |
469 | gAllocationManager->addAllocation(sa0); | ||
470 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, -1.f); | 420 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, -1.f); |
471 | gAllocationManager->addAllocation(cf1); | ||
472 | LLScriptSAConstant *sa1 = new LLScriptSAConstant(gLine, gColumn, cf1); | 421 | LLScriptSAConstant *sa1 = new LLScriptSAConstant(gLine, gColumn, cf1); |
473 | gAllocationManager->addAllocation(sa1); | ||
474 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 422 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
475 | gAllocationManager->addAllocation(cf2); | ||
476 | LLScriptSAConstant *sa2 = new LLScriptSAConstant(gLine, gColumn, cf2); | 423 | LLScriptSAConstant *sa2 = new LLScriptSAConstant(gLine, gColumn, cf2); |
477 | gAllocationManager->addAllocation(sa2); | ||
478 | $$ = new LLScriptSAVector(gLine, gColumn, sa0, sa1, sa2); | 424 | $$ = new LLScriptSAVector(gLine, gColumn, sa0, sa1, sa2); |
479 | gAllocationManager->addAllocation($$); | ||
480 | } | 425 | } |
481 | ; | 426 | ; |
482 | 427 | ||
@@ -484,28 +429,18 @@ quaternion_constant | |||
484 | : '<' simple_assignable ',' simple_assignable ',' simple_assignable ',' simple_assignable '>' | 429 | : '<' simple_assignable ',' simple_assignable ',' simple_assignable ',' simple_assignable '>' |
485 | { | 430 | { |
486 | $$ = new LLScriptSAQuaternion(gLine, gColumn, $2, $4, $6, $8); | 431 | $$ = new LLScriptSAQuaternion(gLine, gColumn, $2, $4, $6, $8); |
487 | gAllocationManager->addAllocation($$); | ||
488 | } | 432 | } |
489 | | ZERO_ROTATION | 433 | | ZERO_ROTATION |
490 | { | 434 | { |
491 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 435 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
492 | gAllocationManager->addAllocation(cf0); | ||
493 | LLScriptSAConstant *sa0 = new LLScriptSAConstant(gLine, gColumn, cf0); | 436 | LLScriptSAConstant *sa0 = new LLScriptSAConstant(gLine, gColumn, cf0); |
494 | gAllocationManager->addAllocation(sa0); | ||
495 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 437 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
496 | gAllocationManager->addAllocation(cf1); | ||
497 | LLScriptSAConstant *sa1 = new LLScriptSAConstant(gLine, gColumn, cf1); | 438 | LLScriptSAConstant *sa1 = new LLScriptSAConstant(gLine, gColumn, cf1); |
498 | gAllocationManager->addAllocation(sa1); | ||
499 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 439 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
500 | gAllocationManager->addAllocation(cf2); | ||
501 | LLScriptSAConstant *sa2 = new LLScriptSAConstant(gLine, gColumn, cf2); | 440 | LLScriptSAConstant *sa2 = new LLScriptSAConstant(gLine, gColumn, cf2); |
502 | gAllocationManager->addAllocation(sa2); | ||
503 | LLScriptConstantFloat *cf3 = new LLScriptConstantFloat(gLine, gColumn, 1.f); | 441 | LLScriptConstantFloat *cf3 = new LLScriptConstantFloat(gLine, gColumn, 1.f); |
504 | gAllocationManager->addAllocation(cf3); | ||
505 | LLScriptSAConstant *sa3 = new LLScriptSAConstant(gLine, gColumn, cf3); | 442 | LLScriptSAConstant *sa3 = new LLScriptSAConstant(gLine, gColumn, cf3); |
506 | gAllocationManager->addAllocation(sa3); | ||
507 | $$ = new LLScriptSAQuaternion(gLine, gColumn, sa0, sa1, sa2, sa3); | 443 | $$ = new LLScriptSAQuaternion(gLine, gColumn, sa0, sa1, sa2, sa3); |
508 | gAllocationManager->addAllocation($$); | ||
509 | } | 444 | } |
510 | ; | 445 | ; |
511 | 446 | ||
@@ -513,12 +448,10 @@ list_constant | |||
513 | : '[' list_entries ']' | 448 | : '[' list_entries ']' |
514 | { | 449 | { |
515 | $$ = new LLScriptSAList(gLine, gColumn, $2); | 450 | $$ = new LLScriptSAList(gLine, gColumn, $2); |
516 | gAllocationManager->addAllocation($$); | ||
517 | } | 451 | } |
518 | | '[' ']' | 452 | | '[' ']' |
519 | { | 453 | { |
520 | $$ = new LLScriptSAList(gLine, gColumn, NULL); | 454 | $$ = new LLScriptSAList(gLine, gColumn, NULL); |
521 | gAllocationManager->addAllocation($$); | ||
522 | } | 455 | } |
523 | ; | 456 | ; |
524 | 457 | ||
@@ -545,37 +478,30 @@ typename | |||
545 | : INTEGER | 478 | : INTEGER |
546 | { | 479 | { |
547 | $$ = new LLScriptType(gLine, gColumn, LST_INTEGER); | 480 | $$ = new LLScriptType(gLine, gColumn, LST_INTEGER); |
548 | gAllocationManager->addAllocation($$); | ||
549 | } | 481 | } |
550 | | FLOAT_TYPE | 482 | | FLOAT_TYPE |
551 | { | 483 | { |
552 | $$ = new LLScriptType(gLine, gColumn, LST_FLOATINGPOINT); | 484 | $$ = new LLScriptType(gLine, gColumn, LST_FLOATINGPOINT); |
553 | gAllocationManager->addAllocation($$); | ||
554 | } | 485 | } |
555 | | STRING | 486 | | STRING |
556 | { | 487 | { |
557 | $$ = new LLScriptType(gLine, gColumn, LST_STRING); | 488 | $$ = new LLScriptType(gLine, gColumn, LST_STRING); |
558 | gAllocationManager->addAllocation($$); | ||
559 | } | 489 | } |
560 | | LLKEY | 490 | | LLKEY |
561 | { | 491 | { |
562 | $$ = new LLScriptType(gLine, gColumn, LST_KEY); | 492 | $$ = new LLScriptType(gLine, gColumn, LST_KEY); |
563 | gAllocationManager->addAllocation($$); | ||
564 | } | 493 | } |
565 | | VECTOR | 494 | | VECTOR |
566 | { | 495 | { |
567 | $$ = new LLScriptType(gLine, gColumn, LST_VECTOR); | 496 | $$ = new LLScriptType(gLine, gColumn, LST_VECTOR); |
568 | gAllocationManager->addAllocation($$); | ||
569 | } | 497 | } |
570 | | QUATERNION | 498 | | QUATERNION |
571 | { | 499 | { |
572 | $$ = new LLScriptType(gLine, gColumn, LST_QUATERNION); | 500 | $$ = new LLScriptType(gLine, gColumn, LST_QUATERNION); |
573 | gAllocationManager->addAllocation($$); | ||
574 | } | 501 | } |
575 | | LIST | 502 | | LIST |
576 | { | 503 | { |
577 | $$ = new LLScriptType(gLine, gColumn, LST_LIST); | 504 | $$ = new LLScriptType(gLine, gColumn, LST_LIST); |
578 | gAllocationManager->addAllocation($$); | ||
579 | } | 505 | } |
580 | ; | 506 | ; |
581 | 507 | ||
@@ -583,26 +509,20 @@ global_function | |||
583 | : IDENTIFIER '(' ')' compound_statement | 509 | : IDENTIFIER '(' ')' compound_statement |
584 | { | 510 | { |
585 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); | 511 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); |
586 | gAllocationManager->addAllocation(id); | ||
587 | $$ = new LLScriptGlobalFunctions(gLine, gColumn, NULL, id, NULL, $4); | 512 | $$ = new LLScriptGlobalFunctions(gLine, gColumn, NULL, id, NULL, $4); |
588 | gAllocationManager->addAllocation($$); | ||
589 | } | 513 | } |
590 | | name_type '(' ')' compound_statement | 514 | | name_type '(' ')' compound_statement |
591 | { | 515 | { |
592 | $$ = new LLScriptGlobalFunctions(gLine, gColumn, $1->mType, $1, NULL, $4); | 516 | $$ = new LLScriptGlobalFunctions(gLine, gColumn, $1->mType, $1, NULL, $4); |
593 | gAllocationManager->addAllocation($$); | ||
594 | } | 517 | } |
595 | | IDENTIFIER '(' function_parameters ')' compound_statement | 518 | | IDENTIFIER '(' function_parameters ')' compound_statement |
596 | { | 519 | { |
597 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); | 520 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); |
598 | gAllocationManager->addAllocation(id); | ||
599 | $$ = new LLScriptGlobalFunctions(gLine, gColumn, NULL, id, $3, $5); | 521 | $$ = new LLScriptGlobalFunctions(gLine, gColumn, NULL, id, $3, $5); |
600 | gAllocationManager->addAllocation($$); | ||
601 | } | 522 | } |
602 | | name_type '(' function_parameters ')' compound_statement | 523 | | name_type '(' function_parameters ')' compound_statement |
603 | { | 524 | { |
604 | $$ = new LLScriptGlobalFunctions(gLine, gColumn, $1->mType, $1, $3, $5); | 525 | $$ = new LLScriptGlobalFunctions(gLine, gColumn, $1->mType, $1, $3, $5); |
605 | gAllocationManager->addAllocation($$); | ||
606 | } | 526 | } |
607 | ; | 527 | ; |
608 | 528 | ||
@@ -622,9 +542,7 @@ function_parameter | |||
622 | : typename IDENTIFIER | 542 | : typename IDENTIFIER |
623 | { | 543 | { |
624 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); | 544 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); |
625 | gAllocationManager->addAllocation(id); | ||
626 | $$ = new LLScriptFunctionDec(gLine, gColumn, $1, id); | 545 | $$ = new LLScriptFunctionDec(gLine, gColumn, $1, id); |
627 | gAllocationManager->addAllocation($$); | ||
628 | } | 546 | } |
629 | ; | 547 | ; |
630 | 548 | ||
@@ -656,9 +574,7 @@ default | |||
656 | : STATE_DEFAULT '{' state_body '}' | 574 | : STATE_DEFAULT '{' state_body '}' |
657 | { | 575 | { |
658 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); | 576 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); |
659 | gAllocationManager->addAllocation(id); | ||
660 | $$ = new LLScriptState(gLine, gColumn, LSSTYPE_DEFAULT, id, $3); | 577 | $$ = new LLScriptState(gLine, gColumn, LSSTYPE_DEFAULT, id, $3); |
661 | gAllocationManager->addAllocation($$); | ||
662 | } | 578 | } |
663 | ; | 579 | ; |
664 | 580 | ||
@@ -666,9 +582,7 @@ state | |||
666 | : STATE IDENTIFIER '{' state_body '}' | 582 | : STATE IDENTIFIER '{' state_body '}' |
667 | { | 583 | { |
668 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); | 584 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); |
669 | gAllocationManager->addAllocation(id); | ||
670 | $$ = new LLScriptState(gLine, gColumn, LSSTYPE_USER, id, $4); | 585 | $$ = new LLScriptState(gLine, gColumn, LSSTYPE_USER, id, $4); |
671 | gAllocationManager->addAllocation($$); | ||
672 | } | 586 | } |
673 | ; | 587 | ; |
674 | 588 | ||
@@ -688,172 +602,138 @@ event | |||
688 | : state_entry compound_statement | 602 | : state_entry compound_statement |
689 | { | 603 | { |
690 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 604 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
691 | gAllocationManager->addAllocation($$); | ||
692 | } | 605 | } |
693 | | state_exit compound_statement | 606 | | state_exit compound_statement |
694 | { | 607 | { |
695 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 608 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
696 | gAllocationManager->addAllocation($$); | ||
697 | } | 609 | } |
698 | | touch_start compound_statement | 610 | | touch_start compound_statement |
699 | { | 611 | { |
700 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 612 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
701 | gAllocationManager->addAllocation($$); | ||
702 | } | 613 | } |
703 | | touch compound_statement | 614 | | touch compound_statement |
704 | { | 615 | { |
705 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 616 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
706 | gAllocationManager->addAllocation($$); | ||
707 | } | 617 | } |
708 | | touch_end compound_statement | 618 | | touch_end compound_statement |
709 | { | 619 | { |
710 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 620 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
711 | gAllocationManager->addAllocation($$); | ||
712 | } | 621 | } |
713 | | collision_start compound_statement | 622 | | collision_start compound_statement |
714 | { | 623 | { |
715 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 624 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
716 | gAllocationManager->addAllocation($$); | ||
717 | } | 625 | } |
718 | | collision compound_statement | 626 | | collision compound_statement |
719 | { | 627 | { |
720 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 628 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
721 | gAllocationManager->addAllocation($$); | ||
722 | } | 629 | } |
723 | | collision_end compound_statement | 630 | | collision_end compound_statement |
724 | { | 631 | { |
725 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 632 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
726 | gAllocationManager->addAllocation($$); | ||
727 | } | 633 | } |
728 | | land_collision_start compound_statement | 634 | | land_collision_start compound_statement |
729 | { | 635 | { |
730 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 636 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
731 | gAllocationManager->addAllocation($$); | ||
732 | } | 637 | } |
733 | | land_collision compound_statement | 638 | | land_collision compound_statement |
734 | { | 639 | { |
735 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 640 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
736 | gAllocationManager->addAllocation($$); | ||
737 | } | 641 | } |
738 | | land_collision_end compound_statement | 642 | | land_collision_end compound_statement |
739 | { | 643 | { |
740 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 644 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
741 | gAllocationManager->addAllocation($$); | ||
742 | } | 645 | } |
743 | | timer compound_statement | 646 | | timer compound_statement |
744 | { | 647 | { |
745 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 648 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
746 | gAllocationManager->addAllocation($$); | ||
747 | } | 649 | } |
748 | | chat compound_statement | 650 | | chat compound_statement |
749 | { | 651 | { |
750 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 652 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
751 | gAllocationManager->addAllocation($$); | ||
752 | } | 653 | } |
753 | | sensor compound_statement | 654 | | sensor compound_statement |
754 | { | 655 | { |
755 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 656 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
756 | gAllocationManager->addAllocation($$); | ||
757 | } | 657 | } |
758 | | no_sensor compound_statement | 658 | | no_sensor compound_statement |
759 | { | 659 | { |
760 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 660 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
761 | gAllocationManager->addAllocation($$); | ||
762 | } | 661 | } |
763 | | at_target compound_statement | 662 | | at_target compound_statement |
764 | { | 663 | { |
765 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 664 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
766 | gAllocationManager->addAllocation($$); | ||
767 | } | 665 | } |
768 | | not_at_target compound_statement | 666 | | not_at_target compound_statement |
769 | { | 667 | { |
770 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 668 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
771 | gAllocationManager->addAllocation($$); | ||
772 | } | 669 | } |
773 | | at_rot_target compound_statement | 670 | | at_rot_target compound_statement |
774 | { | 671 | { |
775 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 672 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
776 | gAllocationManager->addAllocation($$); | ||
777 | } | 673 | } |
778 | | not_at_rot_target compound_statement | 674 | | not_at_rot_target compound_statement |
779 | { | 675 | { |
780 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 676 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
781 | gAllocationManager->addAllocation($$); | ||
782 | } | 677 | } |
783 | | money compound_statement | 678 | | money compound_statement |
784 | { | 679 | { |
785 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 680 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
786 | gAllocationManager->addAllocation($$); | ||
787 | } | 681 | } |
788 | | email compound_statement | 682 | | email compound_statement |
789 | { | 683 | { |
790 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 684 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
791 | gAllocationManager->addAllocation($$); | ||
792 | } | 685 | } |
793 | | run_time_permissions compound_statement | 686 | | run_time_permissions compound_statement |
794 | { | 687 | { |
795 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 688 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
796 | gAllocationManager->addAllocation($$); | ||
797 | } | 689 | } |
798 | | inventory compound_statement | 690 | | inventory compound_statement |
799 | { | 691 | { |
800 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 692 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
801 | gAllocationManager->addAllocation($$); | ||
802 | } | 693 | } |
803 | | attach compound_statement | 694 | | attach compound_statement |
804 | { | 695 | { |
805 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 696 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
806 | gAllocationManager->addAllocation($$); | ||
807 | } | 697 | } |
808 | | dataserver compound_statement | 698 | | dataserver compound_statement |
809 | { | 699 | { |
810 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 700 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
811 | gAllocationManager->addAllocation($$); | ||
812 | } | 701 | } |
813 | | control compound_statement | 702 | | control compound_statement |
814 | { | 703 | { |
815 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 704 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
816 | gAllocationManager->addAllocation($$); | ||
817 | } | 705 | } |
818 | | moving_start compound_statement | 706 | | moving_start compound_statement |
819 | { | 707 | { |
820 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 708 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
821 | gAllocationManager->addAllocation($$); | ||
822 | } | 709 | } |
823 | | moving_end compound_statement | 710 | | moving_end compound_statement |
824 | { | 711 | { |
825 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 712 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
826 | gAllocationManager->addAllocation($$); | ||
827 | } | 713 | } |
828 | | rez compound_statement | 714 | | rez compound_statement |
829 | { | 715 | { |
830 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 716 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
831 | gAllocationManager->addAllocation($$); | ||
832 | } | 717 | } |
833 | | object_rez compound_statement | 718 | | object_rez compound_statement |
834 | { | 719 | { |
835 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 720 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
836 | gAllocationManager->addAllocation($$); | ||
837 | } | 721 | } |
838 | | link_message compound_statement | 722 | | link_message compound_statement |
839 | { | 723 | { |
840 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 724 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
841 | gAllocationManager->addAllocation($$); | ||
842 | } | 725 | } |
843 | | remote_data compound_statement | 726 | | remote_data compound_statement |
844 | { | 727 | { |
845 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 728 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
846 | gAllocationManager->addAllocation($$); | ||
847 | } | 729 | } |
848 | | http_response compound_statement | 730 | | http_response compound_statement |
849 | { | 731 | { |
850 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 732 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
851 | gAllocationManager->addAllocation($$); | ||
852 | } | 733 | } |
853 | | http_request compound_statement | 734 | | http_request compound_statement |
854 | { | 735 | { |
855 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); | 736 | $$ = new LLScriptEventHandler(gLine, gColumn, $1, $2); |
856 | gAllocationManager->addAllocation($$); | ||
857 | } | 737 | } |
858 | ; | 738 | ; |
859 | 739 | ||
@@ -861,7 +741,6 @@ state_entry | |||
861 | : STATE_ENTRY '(' ')' | 741 | : STATE_ENTRY '(' ')' |
862 | { | 742 | { |
863 | $$ = new LLScriptStateEntryEvent(gLine, gColumn); | 743 | $$ = new LLScriptStateEntryEvent(gLine, gColumn); |
864 | gAllocationManager->addAllocation($$); | ||
865 | } | 744 | } |
866 | ; | 745 | ; |
867 | 746 | ||
@@ -869,7 +748,6 @@ state_exit | |||
869 | : STATE_EXIT '(' ')' | 748 | : STATE_EXIT '(' ')' |
870 | { | 749 | { |
871 | $$ = new LLScriptStateExitEvent(gLine, gColumn); | 750 | $$ = new LLScriptStateExitEvent(gLine, gColumn); |
872 | gAllocationManager->addAllocation($$); | ||
873 | } | 751 | } |
874 | ; | 752 | ; |
875 | 753 | ||
@@ -877,9 +755,7 @@ touch_start | |||
877 | : TOUCH_START '(' INTEGER IDENTIFIER ')' | 755 | : TOUCH_START '(' INTEGER IDENTIFIER ')' |
878 | { | 756 | { |
879 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 757 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
880 | gAllocationManager->addAllocation(id1); | ||
881 | $$ = new LLScriptTouchStartEvent(gLine, gColumn, id1); | 758 | $$ = new LLScriptTouchStartEvent(gLine, gColumn, id1); |
882 | gAllocationManager->addAllocation($$); | ||
883 | } | 759 | } |
884 | ; | 760 | ; |
885 | 761 | ||
@@ -887,9 +763,7 @@ touch | |||
887 | : TOUCH '(' INTEGER IDENTIFIER ')' | 763 | : TOUCH '(' INTEGER IDENTIFIER ')' |
888 | { | 764 | { |
889 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 765 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
890 | gAllocationManager->addAllocation(id1); | ||
891 | $$ = new LLScriptTouchEvent(gLine, gColumn, id1); | 766 | $$ = new LLScriptTouchEvent(gLine, gColumn, id1); |
892 | gAllocationManager->addAllocation($$); | ||
893 | } | 767 | } |
894 | ; | 768 | ; |
895 | 769 | ||
@@ -897,9 +771,7 @@ touch_end | |||
897 | : TOUCH_END '(' INTEGER IDENTIFIER ')' | 771 | : TOUCH_END '(' INTEGER IDENTIFIER ')' |
898 | { | 772 | { |
899 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 773 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
900 | gAllocationManager->addAllocation(id1); | ||
901 | $$ = new LLScriptTouchEndEvent(gLine, gColumn, id1); | 774 | $$ = new LLScriptTouchEndEvent(gLine, gColumn, id1); |
902 | gAllocationManager->addAllocation($$); | ||
903 | } | 775 | } |
904 | ; | 776 | ; |
905 | 777 | ||
@@ -907,9 +779,7 @@ collision_start | |||
907 | : COLLISION_START '(' INTEGER IDENTIFIER ')' | 779 | : COLLISION_START '(' INTEGER IDENTIFIER ')' |
908 | { | 780 | { |
909 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 781 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
910 | gAllocationManager->addAllocation(id1); | ||
911 | $$ = new LLScriptCollisionStartEvent(gLine, gColumn, id1); | 782 | $$ = new LLScriptCollisionStartEvent(gLine, gColumn, id1); |
912 | gAllocationManager->addAllocation($$); | ||
913 | } | 783 | } |
914 | ; | 784 | ; |
915 | 785 | ||
@@ -917,9 +787,7 @@ collision | |||
917 | : COLLISION '(' INTEGER IDENTIFIER ')' | 787 | : COLLISION '(' INTEGER IDENTIFIER ')' |
918 | { | 788 | { |
919 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 789 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
920 | gAllocationManager->addAllocation(id1); | ||
921 | $$ = new LLScriptCollisionEvent(gLine, gColumn, id1); | 790 | $$ = new LLScriptCollisionEvent(gLine, gColumn, id1); |
922 | gAllocationManager->addAllocation($$); | ||
923 | } | 791 | } |
924 | ; | 792 | ; |
925 | 793 | ||
@@ -927,9 +795,7 @@ collision_end | |||
927 | : COLLISION_END '(' INTEGER IDENTIFIER ')' | 795 | : COLLISION_END '(' INTEGER IDENTIFIER ')' |
928 | { | 796 | { |
929 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 797 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
930 | gAllocationManager->addAllocation(id1); | ||
931 | $$ = new LLScriptCollisionEndEvent(gLine, gColumn, id1); | 798 | $$ = new LLScriptCollisionEndEvent(gLine, gColumn, id1); |
932 | gAllocationManager->addAllocation($$); | ||
933 | } | 799 | } |
934 | ; | 800 | ; |
935 | 801 | ||
@@ -937,9 +803,7 @@ land_collision_start | |||
937 | : LAND_COLLISION_START '(' VECTOR IDENTIFIER ')' | 803 | : LAND_COLLISION_START '(' VECTOR IDENTIFIER ')' |
938 | { | 804 | { |
939 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 805 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
940 | gAllocationManager->addAllocation(id1); | ||
941 | $$ = new LLScriptLandCollisionStartEvent(gLine, gColumn, id1); | 806 | $$ = new LLScriptLandCollisionStartEvent(gLine, gColumn, id1); |
942 | gAllocationManager->addAllocation($$); | ||
943 | } | 807 | } |
944 | ; | 808 | ; |
945 | 809 | ||
@@ -947,9 +811,7 @@ land_collision | |||
947 | : LAND_COLLISION '(' VECTOR IDENTIFIER ')' | 811 | : LAND_COLLISION '(' VECTOR IDENTIFIER ')' |
948 | { | 812 | { |
949 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 813 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
950 | gAllocationManager->addAllocation(id1); | ||
951 | $$ = new LLScriptLandCollisionEvent(gLine, gColumn, id1); | 814 | $$ = new LLScriptLandCollisionEvent(gLine, gColumn, id1); |
952 | gAllocationManager->addAllocation($$); | ||
953 | } | 815 | } |
954 | ; | 816 | ; |
955 | 817 | ||
@@ -957,9 +819,7 @@ land_collision_end | |||
957 | : LAND_COLLISION_END '(' VECTOR IDENTIFIER ')' | 819 | : LAND_COLLISION_END '(' VECTOR IDENTIFIER ')' |
958 | { | 820 | { |
959 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 821 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
960 | gAllocationManager->addAllocation(id1); | ||
961 | $$ = new LLScriptLandCollisionEndEvent(gLine, gColumn, id1); | 822 | $$ = new LLScriptLandCollisionEndEvent(gLine, gColumn, id1); |
962 | gAllocationManager->addAllocation($$); | ||
963 | } | 823 | } |
964 | ; | 824 | ; |
965 | 825 | ||
@@ -967,13 +827,9 @@ at_target | |||
967 | : AT_TARGET '(' INTEGER IDENTIFIER ',' VECTOR IDENTIFIER ',' VECTOR IDENTIFIER ')' | 827 | : AT_TARGET '(' INTEGER IDENTIFIER ',' VECTOR IDENTIFIER ',' VECTOR IDENTIFIER ')' |
968 | { | 828 | { |
969 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 829 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
970 | gAllocationManager->addAllocation(id1); | ||
971 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 830 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
972 | gAllocationManager->addAllocation(id2); | ||
973 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 831 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
974 | gAllocationManager->addAllocation(id3); | ||
975 | $$ = new LLScriptAtTarget(gLine, gColumn, id1, id2, id3); | 832 | $$ = new LLScriptAtTarget(gLine, gColumn, id1, id2, id3); |
976 | gAllocationManager->addAllocation($$); | ||
977 | } | 833 | } |
978 | ; | 834 | ; |
979 | 835 | ||
@@ -981,7 +837,6 @@ not_at_target | |||
981 | : NOT_AT_TARGET '(' ')' | 837 | : NOT_AT_TARGET '(' ')' |
982 | { | 838 | { |
983 | $$ = new LLScriptNotAtTarget(gLine, gColumn); | 839 | $$ = new LLScriptNotAtTarget(gLine, gColumn); |
984 | gAllocationManager->addAllocation($$); | ||
985 | } | 840 | } |
986 | ; | 841 | ; |
987 | 842 | ||
@@ -989,13 +844,9 @@ at_rot_target | |||
989 | : AT_ROT_TARGET '(' INTEGER IDENTIFIER ',' QUATERNION IDENTIFIER ',' QUATERNION IDENTIFIER ')' | 844 | : AT_ROT_TARGET '(' INTEGER IDENTIFIER ',' QUATERNION IDENTIFIER ',' QUATERNION IDENTIFIER ')' |
990 | { | 845 | { |
991 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 846 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
992 | gAllocationManager->addAllocation(id1); | ||
993 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 847 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
994 | gAllocationManager->addAllocation(id2); | ||
995 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 848 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
996 | gAllocationManager->addAllocation(id3); | ||
997 | $$ = new LLScriptAtRotTarget(gLine, gColumn, id1, id2, id3); | 849 | $$ = new LLScriptAtRotTarget(gLine, gColumn, id1, id2, id3); |
998 | gAllocationManager->addAllocation($$); | ||
999 | } | 850 | } |
1000 | ; | 851 | ; |
1001 | 852 | ||
@@ -1003,7 +854,6 @@ not_at_rot_target | |||
1003 | : NOT_AT_ROT_TARGET '(' ')' | 854 | : NOT_AT_ROT_TARGET '(' ')' |
1004 | { | 855 | { |
1005 | $$ = new LLScriptNotAtRotTarget(gLine, gColumn); | 856 | $$ = new LLScriptNotAtRotTarget(gLine, gColumn); |
1006 | gAllocationManager->addAllocation($$); | ||
1007 | } | 857 | } |
1008 | ; | 858 | ; |
1009 | 859 | ||
@@ -1011,11 +861,8 @@ money | |||
1011 | : MONEY '(' LLKEY IDENTIFIER ',' INTEGER IDENTIFIER ')' | 861 | : MONEY '(' LLKEY IDENTIFIER ',' INTEGER IDENTIFIER ')' |
1012 | { | 862 | { |
1013 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 863 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1014 | gAllocationManager->addAllocation(id1); | ||
1015 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 864 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1016 | gAllocationManager->addAllocation(id2); | ||
1017 | $$ = new LLScriptMoneyEvent(gLine, gColumn, id1, id2); | 865 | $$ = new LLScriptMoneyEvent(gLine, gColumn, id1, id2); |
1018 | gAllocationManager->addAllocation($$); | ||
1019 | } | 866 | } |
1020 | ; | 867 | ; |
1021 | 868 | ||
@@ -1023,17 +870,11 @@ email | |||
1023 | : EMAIL '(' STRING IDENTIFIER ',' STRING IDENTIFIER ',' STRING IDENTIFIER ',' STRING IDENTIFIER ',' INTEGER IDENTIFIER ')' | 870 | : EMAIL '(' STRING IDENTIFIER ',' STRING IDENTIFIER ',' STRING IDENTIFIER ',' STRING IDENTIFIER ',' INTEGER IDENTIFIER ')' |
1024 | { | 871 | { |
1025 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 872 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1026 | gAllocationManager->addAllocation(id1); | ||
1027 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 873 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1028 | gAllocationManager->addAllocation(id2); | ||
1029 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 874 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
1030 | gAllocationManager->addAllocation(id3); | ||
1031 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); | 875 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); |
1032 | gAllocationManager->addAllocation(id4); | ||
1033 | LLScriptIdentifier *id5 = new LLScriptIdentifier(gLine, gColumn, $16); | 876 | LLScriptIdentifier *id5 = new LLScriptIdentifier(gLine, gColumn, $16); |
1034 | gAllocationManager->addAllocation(id5); | ||
1035 | $$ = new LLScriptEmailEvent(gLine, gColumn, id1, id2, id3, id4, id5); | 877 | $$ = new LLScriptEmailEvent(gLine, gColumn, id1, id2, id3, id4, id5); |
1036 | gAllocationManager->addAllocation($$); | ||
1037 | } | 878 | } |
1038 | ; | 879 | ; |
1039 | 880 | ||
@@ -1041,9 +882,7 @@ run_time_permissions | |||
1041 | : RUN_TIME_PERMISSIONS '(' INTEGER IDENTIFIER ')' | 882 | : RUN_TIME_PERMISSIONS '(' INTEGER IDENTIFIER ')' |
1042 | { | 883 | { |
1043 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 884 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1044 | gAllocationManager->addAllocation(id1); | ||
1045 | $$ = new LLScriptRTPEvent(gLine, gColumn, id1); | 885 | $$ = new LLScriptRTPEvent(gLine, gColumn, id1); |
1046 | gAllocationManager->addAllocation($$); | ||
1047 | } | 886 | } |
1048 | ; | 887 | ; |
1049 | 888 | ||
@@ -1051,9 +890,7 @@ inventory | |||
1051 | : INVENTORY '(' INTEGER IDENTIFIER ')' | 890 | : INVENTORY '(' INTEGER IDENTIFIER ')' |
1052 | { | 891 | { |
1053 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 892 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1054 | gAllocationManager->addAllocation(id1); | ||
1055 | $$ = new LLScriptInventoryEvent(gLine, gColumn, id1); | 893 | $$ = new LLScriptInventoryEvent(gLine, gColumn, id1); |
1056 | gAllocationManager->addAllocation($$); | ||
1057 | } | 894 | } |
1058 | ; | 895 | ; |
1059 | 896 | ||
@@ -1061,9 +898,7 @@ attach | |||
1061 | : ATTACH '(' LLKEY IDENTIFIER ')' | 898 | : ATTACH '(' LLKEY IDENTIFIER ')' |
1062 | { | 899 | { |
1063 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 900 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1064 | gAllocationManager->addAllocation(id1); | ||
1065 | $$ = new LLScriptAttachEvent(gLine, gColumn, id1); | 901 | $$ = new LLScriptAttachEvent(gLine, gColumn, id1); |
1066 | gAllocationManager->addAllocation($$); | ||
1067 | } | 902 | } |
1068 | ; | 903 | ; |
1069 | 904 | ||
@@ -1071,11 +906,8 @@ dataserver | |||
1071 | : DATASERVER '(' LLKEY IDENTIFIER ',' STRING IDENTIFIER')' | 906 | : DATASERVER '(' LLKEY IDENTIFIER ',' STRING IDENTIFIER')' |
1072 | { | 907 | { |
1073 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 908 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1074 | gAllocationManager->addAllocation(id1); | ||
1075 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 909 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1076 | gAllocationManager->addAllocation(id2); | ||
1077 | $$ = new LLScriptDataserverEvent(gLine, gColumn, id1, id2); | 910 | $$ = new LLScriptDataserverEvent(gLine, gColumn, id1, id2); |
1078 | gAllocationManager->addAllocation($$); | ||
1079 | } | 911 | } |
1080 | ; | 912 | ; |
1081 | 913 | ||
@@ -1083,7 +915,6 @@ moving_start | |||
1083 | : MOVING_START '(' ')' | 915 | : MOVING_START '(' ')' |
1084 | { | 916 | { |
1085 | $$ = new LLScriptMovingStartEvent(gLine, gColumn); | 917 | $$ = new LLScriptMovingStartEvent(gLine, gColumn); |
1086 | gAllocationManager->addAllocation($$); | ||
1087 | } | 918 | } |
1088 | ; | 919 | ; |
1089 | 920 | ||
@@ -1091,7 +922,6 @@ moving_end | |||
1091 | : MOVING_END '(' ')' | 922 | : MOVING_END '(' ')' |
1092 | { | 923 | { |
1093 | $$ = new LLScriptMovingEndEvent(gLine, gColumn); | 924 | $$ = new LLScriptMovingEndEvent(gLine, gColumn); |
1094 | gAllocationManager->addAllocation($$); | ||
1095 | } | 925 | } |
1096 | ; | 926 | ; |
1097 | 927 | ||
@@ -1099,7 +929,6 @@ timer | |||
1099 | : TIMER '(' ')' | 929 | : TIMER '(' ')' |
1100 | { | 930 | { |
1101 | $$ = new LLScriptTimerEvent(gLine, gColumn); | 931 | $$ = new LLScriptTimerEvent(gLine, gColumn); |
1102 | gAllocationManager->addAllocation($$); | ||
1103 | } | 932 | } |
1104 | ; | 933 | ; |
1105 | 934 | ||
@@ -1107,15 +936,10 @@ chat | |||
1107 | : CHAT '(' INTEGER IDENTIFIER ',' STRING IDENTIFIER ',' LLKEY IDENTIFIER ',' STRING IDENTIFIER ')' | 936 | : CHAT '(' INTEGER IDENTIFIER ',' STRING IDENTIFIER ',' LLKEY IDENTIFIER ',' STRING IDENTIFIER ')' |
1108 | { | 937 | { |
1109 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 938 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1110 | gAllocationManager->addAllocation(id1); | ||
1111 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 939 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1112 | gAllocationManager->addAllocation(id2); | ||
1113 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 940 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
1114 | gAllocationManager->addAllocation(id3); | ||
1115 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); | 941 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); |
1116 | gAllocationManager->addAllocation(id4); | ||
1117 | $$ = new LLScriptChatEvent(gLine, gColumn, id1, id2, id3, id4); | 942 | $$ = new LLScriptChatEvent(gLine, gColumn, id1, id2, id3, id4); |
1118 | gAllocationManager->addAllocation($$); | ||
1119 | } | 943 | } |
1120 | ; | 944 | ; |
1121 | 945 | ||
@@ -1123,9 +947,7 @@ sensor | |||
1123 | : SENSOR '(' INTEGER IDENTIFIER ')' | 947 | : SENSOR '(' INTEGER IDENTIFIER ')' |
1124 | { | 948 | { |
1125 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 949 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1126 | gAllocationManager->addAllocation(id1); | ||
1127 | $$ = new LLScriptSensorEvent(gLine, gColumn, id1); | 950 | $$ = new LLScriptSensorEvent(gLine, gColumn, id1); |
1128 | gAllocationManager->addAllocation($$); | ||
1129 | } | 951 | } |
1130 | ; | 952 | ; |
1131 | 953 | ||
@@ -1133,7 +955,6 @@ no_sensor | |||
1133 | : NO_SENSOR '(' ')' | 955 | : NO_SENSOR '(' ')' |
1134 | { | 956 | { |
1135 | $$ = new LLScriptNoSensorEvent(gLine, gColumn); | 957 | $$ = new LLScriptNoSensorEvent(gLine, gColumn); |
1136 | gAllocationManager->addAllocation($$); | ||
1137 | } | 958 | } |
1138 | ; | 959 | ; |
1139 | 960 | ||
@@ -1141,13 +962,9 @@ control | |||
1141 | : CONTROL '(' LLKEY IDENTIFIER ',' INTEGER IDENTIFIER ',' INTEGER IDENTIFIER ')' | 962 | : CONTROL '(' LLKEY IDENTIFIER ',' INTEGER IDENTIFIER ',' INTEGER IDENTIFIER ')' |
1142 | { | 963 | { |
1143 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 964 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1144 | gAllocationManager->addAllocation(id1); | ||
1145 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 965 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1146 | gAllocationManager->addAllocation(id2); | ||
1147 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 966 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
1148 | gAllocationManager->addAllocation(id3); | ||
1149 | $$ = new LLScriptControlEvent(gLine, gColumn, id1, id2, id3); | 967 | $$ = new LLScriptControlEvent(gLine, gColumn, id1, id2, id3); |
1150 | gAllocationManager->addAllocation($$); | ||
1151 | } | 968 | } |
1152 | ; | 969 | ; |
1153 | 970 | ||
@@ -1155,9 +972,7 @@ rez | |||
1155 | : REZ '(' INTEGER IDENTIFIER ')' | 972 | : REZ '(' INTEGER IDENTIFIER ')' |
1156 | { | 973 | { |
1157 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 974 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1158 | gAllocationManager->addAllocation(id1); | ||
1159 | $$ = new LLScriptRezEvent(gLine, gColumn, id1); | 975 | $$ = new LLScriptRezEvent(gLine, gColumn, id1); |
1160 | gAllocationManager->addAllocation($$); | ||
1161 | } | 976 | } |
1162 | ; | 977 | ; |
1163 | 978 | ||
@@ -1165,9 +980,7 @@ object_rez | |||
1165 | : OBJECT_REZ '(' LLKEY IDENTIFIER ')' | 980 | : OBJECT_REZ '(' LLKEY IDENTIFIER ')' |
1166 | { | 981 | { |
1167 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 982 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1168 | gAllocationManager->addAllocation(id1); | ||
1169 | $$ = new LLScriptObjectRezEvent(gLine, gColumn, id1); | 983 | $$ = new LLScriptObjectRezEvent(gLine, gColumn, id1); |
1170 | gAllocationManager->addAllocation($$); | ||
1171 | } | 984 | } |
1172 | ; | 985 | ; |
1173 | 986 | ||
@@ -1175,15 +988,10 @@ link_message | |||
1175 | : LINK_MESSAGE '(' INTEGER IDENTIFIER ',' INTEGER IDENTIFIER ',' STRING IDENTIFIER ',' LLKEY IDENTIFIER ')' | 988 | : LINK_MESSAGE '(' INTEGER IDENTIFIER ',' INTEGER IDENTIFIER ',' STRING IDENTIFIER ',' LLKEY IDENTIFIER ')' |
1176 | { | 989 | { |
1177 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 990 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1178 | gAllocationManager->addAllocation(id1); | ||
1179 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 991 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1180 | gAllocationManager->addAllocation(id2); | ||
1181 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 992 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
1182 | gAllocationManager->addAllocation(id3); | ||
1183 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); | 993 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); |
1184 | gAllocationManager->addAllocation(id4); | ||
1185 | $$ = new LLScriptLinkMessageEvent(gLine, gColumn, id1, id2, id3, id4); | 994 | $$ = new LLScriptLinkMessageEvent(gLine, gColumn, id1, id2, id3, id4); |
1186 | gAllocationManager->addAllocation($$); | ||
1187 | } | 995 | } |
1188 | ; | 996 | ; |
1189 | 997 | ||
@@ -1191,19 +999,12 @@ remote_data | |||
1191 | : REMOTE_DATA '(' INTEGER IDENTIFIER ',' LLKEY IDENTIFIER ',' LLKEY IDENTIFIER ',' STRING IDENTIFIER ',' INTEGER IDENTIFIER ',' STRING IDENTIFIER ')' | 999 | : REMOTE_DATA '(' INTEGER IDENTIFIER ',' LLKEY IDENTIFIER ',' LLKEY IDENTIFIER ',' STRING IDENTIFIER ',' INTEGER IDENTIFIER ',' STRING IDENTIFIER ')' |
1192 | { | 1000 | { |
1193 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 1001 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1194 | gAllocationManager->addAllocation(id1); | ||
1195 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 1002 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1196 | gAllocationManager->addAllocation(id2); | ||
1197 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 1003 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
1198 | gAllocationManager->addAllocation(id3); | ||
1199 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); | 1004 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); |
1200 | gAllocationManager->addAllocation(id4); | ||
1201 | LLScriptIdentifier *id5 = new LLScriptIdentifier(gLine, gColumn, $16); | 1005 | LLScriptIdentifier *id5 = new LLScriptIdentifier(gLine, gColumn, $16); |
1202 | gAllocationManager->addAllocation(id4); | ||
1203 | LLScriptIdentifier *id6 = new LLScriptIdentifier(gLine, gColumn, $19); | 1006 | LLScriptIdentifier *id6 = new LLScriptIdentifier(gLine, gColumn, $19); |
1204 | gAllocationManager->addAllocation(id4); | ||
1205 | $$ = new LLScriptRemoteEvent(gLine, gColumn, id1, id2, id3, id4, id5, id6); | 1007 | $$ = new LLScriptRemoteEvent(gLine, gColumn, id1, id2, id3, id4, id5, id6); |
1206 | gAllocationManager->addAllocation($$); | ||
1207 | } | 1008 | } |
1208 | ; | 1009 | ; |
1209 | 1010 | ||
@@ -1211,15 +1012,10 @@ http_response | |||
1211 | : HTTP_RESPONSE '(' LLKEY IDENTIFIER ',' INTEGER IDENTIFIER ',' LIST IDENTIFIER ',' STRING IDENTIFIER ')' | 1012 | : HTTP_RESPONSE '(' LLKEY IDENTIFIER ',' INTEGER IDENTIFIER ',' LIST IDENTIFIER ',' STRING IDENTIFIER ')' |
1212 | { | 1013 | { |
1213 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 1014 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1214 | gAllocationManager->addAllocation(id1); | ||
1215 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 1015 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1216 | gAllocationManager->addAllocation(id2); | ||
1217 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 1016 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
1218 | gAllocationManager->addAllocation(id3); | ||
1219 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); | 1017 | LLScriptIdentifier *id4 = new LLScriptIdentifier(gLine, gColumn, $13); |
1220 | gAllocationManager->addAllocation(id4); | ||
1221 | $$ = new LLScriptHTTPResponseEvent(gLine, gColumn, id1, id2, id3, id4); | 1018 | $$ = new LLScriptHTTPResponseEvent(gLine, gColumn, id1, id2, id3, id4); |
1222 | gAllocationManager->addAllocation($$); | ||
1223 | } | 1019 | } |
1224 | ; | 1020 | ; |
1225 | 1021 | ||
@@ -1227,13 +1023,9 @@ http_request | |||
1227 | : HTTP_REQUEST '(' LLKEY IDENTIFIER ',' STRING IDENTIFIER ',' STRING IDENTIFIER ')' | 1023 | : HTTP_REQUEST '(' LLKEY IDENTIFIER ',' STRING IDENTIFIER ',' STRING IDENTIFIER ')' |
1228 | { | 1024 | { |
1229 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); | 1025 | LLScriptIdentifier *id1 = new LLScriptIdentifier(gLine, gColumn, $4); |
1230 | gAllocationManager->addAllocation(id1); | ||
1231 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); | 1026 | LLScriptIdentifier *id2 = new LLScriptIdentifier(gLine, gColumn, $7); |
1232 | gAllocationManager->addAllocation(id2); | ||
1233 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); | 1027 | LLScriptIdentifier *id3 = new LLScriptIdentifier(gLine, gColumn, $10); |
1234 | gAllocationManager->addAllocation(id3); | ||
1235 | $$ = new LLScriptHTTPRequestEvent(gLine, gColumn, id1, id2, id3); | 1028 | $$ = new LLScriptHTTPRequestEvent(gLine, gColumn, id1, id2, id3); |
1236 | gAllocationManager->addAllocation($$); | ||
1237 | } | 1029 | } |
1238 | ; | 1030 | ; |
1239 | 1031 | ||
@@ -1241,12 +1033,10 @@ compound_statement | |||
1241 | : '{' '}' | 1033 | : '{' '}' |
1242 | { | 1034 | { |
1243 | $$ = new LLScriptCompoundStatement(gLine, gColumn, NULL); | 1035 | $$ = new LLScriptCompoundStatement(gLine, gColumn, NULL); |
1244 | gAllocationManager->addAllocation($$); | ||
1245 | } | 1036 | } |
1246 | | '{' statements '}' | 1037 | | '{' statements '}' |
1247 | { | 1038 | { |
1248 | $$ = new LLScriptCompoundStatement(gLine, gColumn, $2); | 1039 | $$ = new LLScriptCompoundStatement(gLine, gColumn, $2); |
1249 | gAllocationManager->addAllocation($$); | ||
1250 | } | 1040 | } |
1251 | ; | 1041 | ; |
1252 | 1042 | ||
@@ -1258,7 +1048,6 @@ statements | |||
1258 | | statements statement | 1048 | | statements statement |
1259 | { | 1049 | { |
1260 | $$ = new LLScriptStatementSequence(gLine, gColumn, $1, $2); | 1050 | $$ = new LLScriptStatementSequence(gLine, gColumn, $1, $2); |
1261 | gAllocationManager->addAllocation($$); | ||
1262 | } | 1051 | } |
1263 | ; | 1052 | ; |
1264 | 1053 | ||
@@ -1266,50 +1055,38 @@ statement | |||
1266 | : ';' | 1055 | : ';' |
1267 | { | 1056 | { |
1268 | $$ = new LLScriptNOOP(gLine, gColumn); | 1057 | $$ = new LLScriptNOOP(gLine, gColumn); |
1269 | gAllocationManager->addAllocation($$); | ||
1270 | } | 1058 | } |
1271 | | STATE IDENTIFIER ';' | 1059 | | STATE IDENTIFIER ';' |
1272 | { | 1060 | { |
1273 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); | 1061 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); |
1274 | gAllocationManager->addAllocation(id); | ||
1275 | $$ = new LLScriptStateChange(gLine, gColumn, id); | 1062 | $$ = new LLScriptStateChange(gLine, gColumn, id); |
1276 | gAllocationManager->addAllocation($$); | ||
1277 | } | 1063 | } |
1278 | | STATE STATE_DEFAULT ';' | 1064 | | STATE STATE_DEFAULT ';' |
1279 | { | 1065 | { |
1280 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); | 1066 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); |
1281 | gAllocationManager->addAllocation(id); | ||
1282 | $$ = new LLScriptStateChange(gLine, gColumn, id); | 1067 | $$ = new LLScriptStateChange(gLine, gColumn, id); |
1283 | gAllocationManager->addAllocation($$); | ||
1284 | } | 1068 | } |
1285 | | JUMP IDENTIFIER ';' | 1069 | | JUMP IDENTIFIER ';' |
1286 | { | 1070 | { |
1287 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); | 1071 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); |
1288 | gAllocationManager->addAllocation(id); | ||
1289 | $$ = new LLScriptJump(gLine, gColumn, id); | 1072 | $$ = new LLScriptJump(gLine, gColumn, id); |
1290 | gAllocationManager->addAllocation($$); | ||
1291 | } | 1073 | } |
1292 | | '@' IDENTIFIER ';' | 1074 | | '@' IDENTIFIER ';' |
1293 | { | 1075 | { |
1294 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); | 1076 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); |
1295 | gAllocationManager->addAllocation(id); | ||
1296 | $$ = new LLScriptLabel(gLine, gColumn, id); | 1077 | $$ = new LLScriptLabel(gLine, gColumn, id); |
1297 | gAllocationManager->addAllocation($$); | ||
1298 | } | 1078 | } |
1299 | | RETURN expression ';' | 1079 | | RETURN expression ';' |
1300 | { | 1080 | { |
1301 | $$ = new LLScriptReturn(gLine, gColumn, $2); | 1081 | $$ = new LLScriptReturn(gLine, gColumn, $2); |
1302 | gAllocationManager->addAllocation($$); | ||
1303 | } | 1082 | } |
1304 | | RETURN ';' | 1083 | | RETURN ';' |
1305 | { | 1084 | { |
1306 | $$ = new LLScriptReturn(gLine, gColumn, NULL); | 1085 | $$ = new LLScriptReturn(gLine, gColumn, NULL); |
1307 | gAllocationManager->addAllocation($$); | ||
1308 | } | 1086 | } |
1309 | | expression ';' | 1087 | | expression ';' |
1310 | { | 1088 | { |
1311 | $$ = new LLScriptExpressionStatement(gLine, gColumn, $1); | 1089 | $$ = new LLScriptExpressionStatement(gLine, gColumn, $1); |
1312 | gAllocationManager->addAllocation($$); | ||
1313 | } | 1090 | } |
1314 | | declaration ';' | 1091 | | declaration ';' |
1315 | { | 1092 | { |
@@ -1323,32 +1100,27 @@ statement | |||
1323 | { | 1100 | { |
1324 | $$ = new LLScriptIf(gLine, gColumn, $3, $5); | 1101 | $$ = new LLScriptIf(gLine, gColumn, $3, $5); |
1325 | $5->mAllowDeclarations = FALSE; | 1102 | $5->mAllowDeclarations = FALSE; |
1326 | gAllocationManager->addAllocation($$); | ||
1327 | } | 1103 | } |
1328 | | IF '(' expression ')' statement ELSE statement | 1104 | | IF '(' expression ')' statement ELSE statement |
1329 | { | 1105 | { |
1330 | $$ = new LLScriptIfElse(gLine, gColumn, $3, $5, $7); | 1106 | $$ = new LLScriptIfElse(gLine, gColumn, $3, $5, $7); |
1331 | $5->mAllowDeclarations = FALSE; | 1107 | $5->mAllowDeclarations = FALSE; |
1332 | $7->mAllowDeclarations = FALSE; | 1108 | $7->mAllowDeclarations = FALSE; |
1333 | gAllocationManager->addAllocation($$); | ||
1334 | } | 1109 | } |
1335 | | FOR '(' forexpressionlist ';' expression ';' forexpressionlist ')' statement | 1110 | | FOR '(' forexpressionlist ';' expression ';' forexpressionlist ')' statement |
1336 | { | 1111 | { |
1337 | $$ = new LLScriptFor(gLine, gColumn, $3, $5, $7, $9); | 1112 | $$ = new LLScriptFor(gLine, gColumn, $3, $5, $7, $9); |
1338 | $9->mAllowDeclarations = FALSE; | 1113 | $9->mAllowDeclarations = FALSE; |
1339 | gAllocationManager->addAllocation($$); | ||
1340 | } | 1114 | } |
1341 | | DO statement WHILE '(' expression ')' ';' | 1115 | | DO statement WHILE '(' expression ')' ';' |
1342 | { | 1116 | { |
1343 | $$ = new LLScriptDoWhile(gLine, gColumn, $2, $5); | 1117 | $$ = new LLScriptDoWhile(gLine, gColumn, $2, $5); |
1344 | $2->mAllowDeclarations = FALSE; | 1118 | $2->mAllowDeclarations = FALSE; |
1345 | gAllocationManager->addAllocation($$); | ||
1346 | } | 1119 | } |
1347 | | WHILE '(' expression ')' statement | 1120 | | WHILE '(' expression ')' statement |
1348 | { | 1121 | { |
1349 | $$ = new LLScriptWhile(gLine, gColumn, $3, $5); | 1122 | $$ = new LLScriptWhile(gLine, gColumn, $3, $5); |
1350 | $5->mAllowDeclarations = FALSE; | 1123 | $5->mAllowDeclarations = FALSE; |
1351 | gAllocationManager->addAllocation($$); | ||
1352 | } | 1124 | } |
1353 | ; | 1125 | ; |
1354 | 1126 | ||
@@ -1356,16 +1128,12 @@ declaration | |||
1356 | : typename IDENTIFIER | 1128 | : typename IDENTIFIER |
1357 | { | 1129 | { |
1358 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); | 1130 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); |
1359 | gAllocationManager->addAllocation(id); | ||
1360 | $$ = new LLScriptDeclaration(gLine, gColumn, $1, id, NULL); | 1131 | $$ = new LLScriptDeclaration(gLine, gColumn, $1, id, NULL); |
1361 | gAllocationManager->addAllocation($$); | ||
1362 | } | 1132 | } |
1363 | | typename IDENTIFIER '=' expression | 1133 | | typename IDENTIFIER '=' expression |
1364 | { | 1134 | { |
1365 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); | 1135 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $2); |
1366 | gAllocationManager->addAllocation(id); | ||
1367 | $$ = new LLScriptDeclaration(gLine, gColumn, $1, id, $4); | 1136 | $$ = new LLScriptDeclaration(gLine, gColumn, $1, id, $4); |
1368 | gAllocationManager->addAllocation($$); | ||
1369 | } | 1137 | } |
1370 | ; | 1138 | ; |
1371 | 1139 | ||
@@ -1384,12 +1152,10 @@ nextforexpressionlist | |||
1384 | : expression | 1152 | : expression |
1385 | { | 1153 | { |
1386 | $$ = new LLScriptForExpressionList(gLine, gColumn, $1, NULL); | 1154 | $$ = new LLScriptForExpressionList(gLine, gColumn, $1, NULL); |
1387 | gAllocationManager->addAllocation($$); | ||
1388 | } | 1155 | } |
1389 | | expression ',' nextforexpressionlist | 1156 | | expression ',' nextforexpressionlist |
1390 | { | 1157 | { |
1391 | $$ = new LLScriptForExpressionList(gLine, gColumn, $1, $3); | 1158 | $$ = new LLScriptForExpressionList(gLine, gColumn, $1, $3); |
1392 | gAllocationManager->addAllocation($$); | ||
1393 | } | 1159 | } |
1394 | ; | 1160 | ; |
1395 | 1161 | ||
@@ -1408,12 +1174,10 @@ nextfuncexpressionlist | |||
1408 | : expression | 1174 | : expression |
1409 | { | 1175 | { |
1410 | $$ = new LLScriptFuncExpressionList(gLine, gColumn, $1, NULL); | 1176 | $$ = new LLScriptFuncExpressionList(gLine, gColumn, $1, NULL); |
1411 | gAllocationManager->addAllocation($$); | ||
1412 | } | 1177 | } |
1413 | | expression ',' nextfuncexpressionlist | 1178 | | expression ',' nextfuncexpressionlist |
1414 | { | 1179 | { |
1415 | $$ = new LLScriptFuncExpressionList(gLine, gColumn, $1, $3); | 1180 | $$ = new LLScriptFuncExpressionList(gLine, gColumn, $1, $3); |
1416 | gAllocationManager->addAllocation($$); | ||
1417 | } | 1181 | } |
1418 | ; | 1182 | ; |
1419 | 1183 | ||
@@ -1432,12 +1196,10 @@ nextlistexpressionlist | |||
1432 | : expression | 1196 | : expression |
1433 | { | 1197 | { |
1434 | $$ = new LLScriptListExpressionList(gLine, gColumn, $1, NULL); | 1198 | $$ = new LLScriptListExpressionList(gLine, gColumn, $1, NULL); |
1435 | gAllocationManager->addAllocation($$); | ||
1436 | } | 1199 | } |
1437 | | expression ',' nextlistexpressionlist | 1200 | | expression ',' nextlistexpressionlist |
1438 | { | 1201 | { |
1439 | $$ = new LLScriptListExpressionList(gLine, gColumn, $1, $3); | 1202 | $$ = new LLScriptListExpressionList(gLine, gColumn, $1, $3); |
1440 | gAllocationManager->addAllocation($$); | ||
1441 | } | 1203 | } |
1442 | ; | 1204 | ; |
1443 | 1205 | ||
@@ -1449,122 +1211,98 @@ expression | |||
1449 | | lvalue '=' expression | 1211 | | lvalue '=' expression |
1450 | { | 1212 | { |
1451 | $$ = new LLScriptAssignment(gLine, gColumn, $1, $3); | 1213 | $$ = new LLScriptAssignment(gLine, gColumn, $1, $3); |
1452 | gAllocationManager->addAllocation($$); | ||
1453 | } | 1214 | } |
1454 | | lvalue ADD_ASSIGN expression | 1215 | | lvalue ADD_ASSIGN expression |
1455 | { | 1216 | { |
1456 | $$ = new LLScriptAddAssignment(gLine, gColumn, $1, $3); | 1217 | $$ = new LLScriptAddAssignment(gLine, gColumn, $1, $3); |
1457 | gAllocationManager->addAllocation($$); | ||
1458 | } | 1218 | } |
1459 | | lvalue SUB_ASSIGN expression | 1219 | | lvalue SUB_ASSIGN expression |
1460 | { | 1220 | { |
1461 | $$ = new LLScriptSubAssignment(gLine, gColumn, $1, $3); | 1221 | $$ = new LLScriptSubAssignment(gLine, gColumn, $1, $3); |
1462 | gAllocationManager->addAllocation($$); | ||
1463 | } | 1222 | } |
1464 | | lvalue MUL_ASSIGN expression | 1223 | | lvalue MUL_ASSIGN expression |
1465 | { | 1224 | { |
1466 | $$ = new LLScriptMulAssignment(gLine, gColumn, $1, $3); | 1225 | $$ = new LLScriptMulAssignment(gLine, gColumn, $1, $3); |
1467 | gAllocationManager->addAllocation($$); | ||
1468 | } | 1226 | } |
1469 | | lvalue DIV_ASSIGN expression | 1227 | | lvalue DIV_ASSIGN expression |
1470 | { | 1228 | { |
1471 | $$ = new LLScriptDivAssignment(gLine, gColumn, $1, $3); | 1229 | $$ = new LLScriptDivAssignment(gLine, gColumn, $1, $3); |
1472 | gAllocationManager->addAllocation($$); | ||
1473 | } | 1230 | } |
1474 | | lvalue MOD_ASSIGN expression | 1231 | | lvalue MOD_ASSIGN expression |
1475 | { | 1232 | { |
1476 | $$ = new LLScriptModAssignment(gLine, gColumn, $1, $3); | 1233 | $$ = new LLScriptModAssignment(gLine, gColumn, $1, $3); |
1477 | gAllocationManager->addAllocation($$); | ||
1478 | } | 1234 | } |
1479 | | expression EQ expression | 1235 | | expression EQ expression |
1480 | { | 1236 | { |
1481 | $$ = new LLScriptEquality(gLine, gColumn, $1, $3); | 1237 | $$ = new LLScriptEquality(gLine, gColumn, $1, $3); |
1482 | gAllocationManager->addAllocation($$); | ||
1483 | } | 1238 | } |
1484 | | expression NEQ expression | 1239 | | expression NEQ expression |
1485 | { | 1240 | { |
1486 | $$ = new LLScriptNotEquals(gLine, gColumn, $1, $3); | 1241 | $$ = new LLScriptNotEquals(gLine, gColumn, $1, $3); |
1487 | gAllocationManager->addAllocation($$); | ||
1488 | } | 1242 | } |
1489 | | expression LEQ expression | 1243 | | expression LEQ expression |
1490 | { | 1244 | { |
1491 | $$ = new LLScriptLessEquals(gLine, gColumn, $1, $3); | 1245 | $$ = new LLScriptLessEquals(gLine, gColumn, $1, $3); |
1492 | gAllocationManager->addAllocation($$); | ||
1493 | } | 1246 | } |
1494 | | expression GEQ expression | 1247 | | expression GEQ expression |
1495 | { | 1248 | { |
1496 | $$ = new LLScriptGreaterEquals(gLine, gColumn, $1, $3); | 1249 | $$ = new LLScriptGreaterEquals(gLine, gColumn, $1, $3); |
1497 | gAllocationManager->addAllocation($$); | ||
1498 | } | 1250 | } |
1499 | | expression '<' expression | 1251 | | expression '<' expression |
1500 | { | 1252 | { |
1501 | $$ = new LLScriptLessThan(gLine, gColumn, $1, $3); | 1253 | $$ = new LLScriptLessThan(gLine, gColumn, $1, $3); |
1502 | gAllocationManager->addAllocation($$); | ||
1503 | } | 1254 | } |
1504 | | expression '>' expression | 1255 | | expression '>' expression |
1505 | { | 1256 | { |
1506 | $$ = new LLScriptGreaterThan(gLine, gColumn, $1, $3); | 1257 | $$ = new LLScriptGreaterThan(gLine, gColumn, $1, $3); |
1507 | gAllocationManager->addAllocation($$); | ||
1508 | } | 1258 | } |
1509 | | expression '+' expression | 1259 | | expression '+' expression |
1510 | { | 1260 | { |
1511 | $$ = new LLScriptPlus(gLine, gColumn, $1, $3); | 1261 | $$ = new LLScriptPlus(gLine, gColumn, $1, $3); |
1512 | gAllocationManager->addAllocation($$); | ||
1513 | } | 1262 | } |
1514 | | expression '-' expression | 1263 | | expression '-' expression |
1515 | { | 1264 | { |
1516 | $$ = new LLScriptMinus(gLine, gColumn, $1, $3); | 1265 | $$ = new LLScriptMinus(gLine, gColumn, $1, $3); |
1517 | gAllocationManager->addAllocation($$); | ||
1518 | } | 1266 | } |
1519 | | expression '*' expression | 1267 | | expression '*' expression |
1520 | { | 1268 | { |
1521 | $$ = new LLScriptTimes(gLine, gColumn, $1, $3); | 1269 | $$ = new LLScriptTimes(gLine, gColumn, $1, $3); |
1522 | gAllocationManager->addAllocation($$); | ||
1523 | } | 1270 | } |
1524 | | expression '/' expression | 1271 | | expression '/' expression |
1525 | { | 1272 | { |
1526 | $$ = new LLScriptDivide(gLine, gColumn, $1, $3); | 1273 | $$ = new LLScriptDivide(gLine, gColumn, $1, $3); |
1527 | gAllocationManager->addAllocation($$); | ||
1528 | } | 1274 | } |
1529 | | expression '%' expression | 1275 | | expression '%' expression |
1530 | { | 1276 | { |
1531 | $$ = new LLScriptMod(gLine, gColumn, $1, $3); | 1277 | $$ = new LLScriptMod(gLine, gColumn, $1, $3); |
1532 | gAllocationManager->addAllocation($$); | ||
1533 | } | 1278 | } |
1534 | | expression '&' expression | 1279 | | expression '&' expression |
1535 | { | 1280 | { |
1536 | $$ = new LLScriptBitAnd(gLine, gColumn, $1, $3); | 1281 | $$ = new LLScriptBitAnd(gLine, gColumn, $1, $3); |
1537 | gAllocationManager->addAllocation($$); | ||
1538 | } | 1282 | } |
1539 | | expression '|' expression | 1283 | | expression '|' expression |
1540 | { | 1284 | { |
1541 | $$ = new LLScriptBitOr(gLine, gColumn, $1, $3); | 1285 | $$ = new LLScriptBitOr(gLine, gColumn, $1, $3); |
1542 | gAllocationManager->addAllocation($$); | ||
1543 | } | 1286 | } |
1544 | | expression '^' expression | 1287 | | expression '^' expression |
1545 | { | 1288 | { |
1546 | $$ = new LLScriptBitXor(gLine, gColumn, $1, $3); | 1289 | $$ = new LLScriptBitXor(gLine, gColumn, $1, $3); |
1547 | gAllocationManager->addAllocation($$); | ||
1548 | } | 1290 | } |
1549 | | expression BOOLEAN_AND expression | 1291 | | expression BOOLEAN_AND expression |
1550 | { | 1292 | { |
1551 | $$ = new LLScriptBooleanAnd(gLine, gColumn, $1, $3); | 1293 | $$ = new LLScriptBooleanAnd(gLine, gColumn, $1, $3); |
1552 | gAllocationManager->addAllocation($$); | ||
1553 | } | 1294 | } |
1554 | | expression BOOLEAN_OR expression | 1295 | | expression BOOLEAN_OR expression |
1555 | { | 1296 | { |
1556 | $$ = new LLScriptBooleanOr(gLine, gColumn, $1, $3); | 1297 | $$ = new LLScriptBooleanOr(gLine, gColumn, $1, $3); |
1557 | gAllocationManager->addAllocation($$); | ||
1558 | } | 1298 | } |
1559 | | expression SHIFT_LEFT expression | 1299 | | expression SHIFT_LEFT expression |
1560 | { | 1300 | { |
1561 | $$ = new LLScriptShiftLeft(gLine, gColumn, $1, $3); | 1301 | $$ = new LLScriptShiftLeft(gLine, gColumn, $1, $3); |
1562 | gAllocationManager->addAllocation($$); | ||
1563 | } | 1302 | } |
1564 | | expression SHIFT_RIGHT expression | 1303 | | expression SHIFT_RIGHT expression |
1565 | { | 1304 | { |
1566 | $$ = new LLScriptShiftRight(gLine, gColumn, $1, $3); | 1305 | $$ = new LLScriptShiftRight(gLine, gColumn, $1, $3); |
1567 | gAllocationManager->addAllocation($$); | ||
1568 | } | 1306 | } |
1569 | ; | 1307 | ; |
1570 | 1308 | ||
@@ -1572,27 +1310,22 @@ unaryexpression | |||
1572 | : '-' expression | 1310 | : '-' expression |
1573 | { | 1311 | { |
1574 | $$ = new LLScriptUnaryMinus(gLine, gColumn, $2); | 1312 | $$ = new LLScriptUnaryMinus(gLine, gColumn, $2); |
1575 | gAllocationManager->addAllocation($$); | ||
1576 | } | 1313 | } |
1577 | | '!' expression | 1314 | | '!' expression |
1578 | { | 1315 | { |
1579 | $$ = new LLScriptBooleanNot(gLine, gColumn, $2); | 1316 | $$ = new LLScriptBooleanNot(gLine, gColumn, $2); |
1580 | gAllocationManager->addAllocation($$); | ||
1581 | } | 1317 | } |
1582 | | '~' expression | 1318 | | '~' expression |
1583 | { | 1319 | { |
1584 | $$ = new LLScriptBitNot(gLine, gColumn, $2); | 1320 | $$ = new LLScriptBitNot(gLine, gColumn, $2); |
1585 | gAllocationManager->addAllocation($$); | ||
1586 | } | 1321 | } |
1587 | | INC_OP lvalue | 1322 | | INC_OP lvalue |
1588 | { | 1323 | { |
1589 | $$ = new LLScriptPreIncrement(gLine, gColumn, $2); | 1324 | $$ = new LLScriptPreIncrement(gLine, gColumn, $2); |
1590 | gAllocationManager->addAllocation($$); | ||
1591 | } | 1325 | } |
1592 | | DEC_OP lvalue | 1326 | | DEC_OP lvalue |
1593 | { | 1327 | { |
1594 | $$ = new LLScriptPreDecrement(gLine, gColumn, $2); | 1328 | $$ = new LLScriptPreDecrement(gLine, gColumn, $2); |
1595 | gAllocationManager->addAllocation($$); | ||
1596 | } | 1329 | } |
1597 | | typecast | 1330 | | typecast |
1598 | { | 1331 | { |
@@ -1605,7 +1338,6 @@ unaryexpression | |||
1605 | | '(' expression ')' | 1338 | | '(' expression ')' |
1606 | { | 1339 | { |
1607 | $$ = new LLScriptParenthesis(gLine, gColumn, $2); | 1340 | $$ = new LLScriptParenthesis(gLine, gColumn, $2); |
1608 | gAllocationManager->addAllocation($$); | ||
1609 | } | 1341 | } |
1610 | ; | 1342 | ; |
1611 | 1343 | ||
@@ -1613,24 +1345,19 @@ typecast | |||
1613 | : '(' typename ')' lvalue | 1345 | : '(' typename ')' lvalue |
1614 | { | 1346 | { |
1615 | $$ = new LLScriptTypeCast(gLine, gColumn, $2, $4); | 1347 | $$ = new LLScriptTypeCast(gLine, gColumn, $2, $4); |
1616 | gAllocationManager->addAllocation($$); | ||
1617 | } | 1348 | } |
1618 | | '(' typename ')' constant | 1349 | | '(' typename ')' constant |
1619 | { | 1350 | { |
1620 | LLScriptConstantExpression *temp = new LLScriptConstantExpression(gLine, gColumn, $4); | 1351 | LLScriptConstantExpression *temp = new LLScriptConstantExpression(gLine, gColumn, $4); |
1621 | gAllocationManager->addAllocation(temp); | ||
1622 | $$ = new LLScriptTypeCast(gLine, gColumn, $2, temp); | 1352 | $$ = new LLScriptTypeCast(gLine, gColumn, $2, temp); |
1623 | gAllocationManager->addAllocation($$); | ||
1624 | } | 1353 | } |
1625 | | '(' typename ')' unarypostfixexpression | 1354 | | '(' typename ')' unarypostfixexpression |
1626 | { | 1355 | { |
1627 | $$ = new LLScriptTypeCast(gLine, gColumn, $2, $4); | 1356 | $$ = new LLScriptTypeCast(gLine, gColumn, $2, $4); |
1628 | gAllocationManager->addAllocation($$); | ||
1629 | } | 1357 | } |
1630 | | '(' typename ')' '(' expression ')' | 1358 | | '(' typename ')' '(' expression ')' |
1631 | { | 1359 | { |
1632 | $$ = new LLScriptTypeCast(gLine, gColumn, $2, $5); | 1360 | $$ = new LLScriptTypeCast(gLine, gColumn, $2, $5); |
1633 | gAllocationManager->addAllocation($$); | ||
1634 | } | 1361 | } |
1635 | ; | 1362 | ; |
1636 | 1363 | ||
@@ -1654,29 +1381,23 @@ unarypostfixexpression | |||
1654 | | lvalue INC_OP | 1381 | | lvalue INC_OP |
1655 | { | 1382 | { |
1656 | $$ = new LLScriptPostIncrement(gLine, gColumn, $1); | 1383 | $$ = new LLScriptPostIncrement(gLine, gColumn, $1); |
1657 | gAllocationManager->addAllocation($$); | ||
1658 | } | 1384 | } |
1659 | | lvalue DEC_OP | 1385 | | lvalue DEC_OP |
1660 | { | 1386 | { |
1661 | $$ = new LLScriptPostDecrement(gLine, gColumn, $1); | 1387 | $$ = new LLScriptPostDecrement(gLine, gColumn, $1); |
1662 | gAllocationManager->addAllocation($$); | ||
1663 | } | 1388 | } |
1664 | | IDENTIFIER '(' funcexpressionlist ')' | 1389 | | IDENTIFIER '(' funcexpressionlist ')' |
1665 | { | 1390 | { |
1666 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); | 1391 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); |
1667 | gAllocationManager->addAllocation(id); | ||
1668 | $$ = new LLScriptFunctionCall(gLine, gColumn, id, $3); | 1392 | $$ = new LLScriptFunctionCall(gLine, gColumn, id, $3); |
1669 | gAllocationManager->addAllocation($$); | ||
1670 | } | 1393 | } |
1671 | | PRINT '(' expression ')' | 1394 | | PRINT '(' expression ')' |
1672 | { | 1395 | { |
1673 | $$ = new LLScriptPrint(gLine, gColumn, $3); | 1396 | $$ = new LLScriptPrint(gLine, gColumn, $3); |
1674 | gAllocationManager->addAllocation($$); | ||
1675 | } | 1397 | } |
1676 | | constant | 1398 | | constant |
1677 | { | 1399 | { |
1678 | $$ = new LLScriptConstantExpression(gLine, gColumn, $1); | 1400 | $$ = new LLScriptConstantExpression(gLine, gColumn, $1); |
1679 | gAllocationManager->addAllocation($$); | ||
1680 | } | 1401 | } |
1681 | ; | 1402 | ; |
1682 | 1403 | ||
@@ -1684,58 +1405,36 @@ vector_initializer | |||
1684 | : '<' expression ',' expression ',' expression '>' %prec INITIALIZER | 1405 | : '<' expression ',' expression ',' expression '>' %prec INITIALIZER |
1685 | { | 1406 | { |
1686 | $$ = new LLScriptVectorInitializer(gLine, gColumn, $2, $4, $6); | 1407 | $$ = new LLScriptVectorInitializer(gLine, gColumn, $2, $4, $6); |
1687 | gAllocationManager->addAllocation($$); | ||
1688 | } | 1408 | } |
1689 | | ZERO_VECTOR | 1409 | | ZERO_VECTOR |
1690 | { | 1410 | { |
1691 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1411 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1692 | gAllocationManager->addAllocation(cf0); | ||
1693 | LLScriptConstantExpression *sa0 = new LLScriptConstantExpression(gLine, gColumn, cf0); | 1412 | LLScriptConstantExpression *sa0 = new LLScriptConstantExpression(gLine, gColumn, cf0); |
1694 | gAllocationManager->addAllocation(sa0); | ||
1695 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1413 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1696 | gAllocationManager->addAllocation(cf1); | ||
1697 | LLScriptConstantExpression *sa1 = new LLScriptConstantExpression(gLine, gColumn, cf1); | 1414 | LLScriptConstantExpression *sa1 = new LLScriptConstantExpression(gLine, gColumn, cf1); |
1698 | gAllocationManager->addAllocation(sa1); | ||
1699 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1415 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1700 | gAllocationManager->addAllocation(cf2); | ||
1701 | LLScriptConstantExpression *sa2 = new LLScriptConstantExpression(gLine, gColumn, cf2); | 1416 | LLScriptConstantExpression *sa2 = new LLScriptConstantExpression(gLine, gColumn, cf2); |
1702 | gAllocationManager->addAllocation(sa2); | ||
1703 | $$ = new LLScriptVectorInitializer(gLine, gColumn, sa0, sa1, sa2); | 1417 | $$ = new LLScriptVectorInitializer(gLine, gColumn, sa0, sa1, sa2); |
1704 | gAllocationManager->addAllocation($$); | ||
1705 | } | 1418 | } |
1706 | | TOUCH_INVALID_VECTOR | 1419 | | TOUCH_INVALID_VECTOR |
1707 | { | 1420 | { |
1708 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1421 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1709 | gAllocationManager->addAllocation(cf0); | ||
1710 | LLScriptConstantExpression *sa0 = new LLScriptConstantExpression(gLine, gColumn, cf0); | 1422 | LLScriptConstantExpression *sa0 = new LLScriptConstantExpression(gLine, gColumn, cf0); |
1711 | gAllocationManager->addAllocation(sa0); | ||
1712 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1423 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1713 | gAllocationManager->addAllocation(cf1); | ||
1714 | LLScriptConstantExpression *sa1 = new LLScriptConstantExpression(gLine, gColumn, cf1); | 1424 | LLScriptConstantExpression *sa1 = new LLScriptConstantExpression(gLine, gColumn, cf1); |
1715 | gAllocationManager->addAllocation(sa1); | ||
1716 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1425 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1717 | gAllocationManager->addAllocation(cf2); | ||
1718 | LLScriptConstantExpression *sa2 = new LLScriptConstantExpression(gLine, gColumn, cf2); | 1426 | LLScriptConstantExpression *sa2 = new LLScriptConstantExpression(gLine, gColumn, cf2); |
1719 | gAllocationManager->addAllocation(sa2); | ||
1720 | $$ = new LLScriptVectorInitializer(gLine, gColumn, sa0, sa1, sa2); | 1427 | $$ = new LLScriptVectorInitializer(gLine, gColumn, sa0, sa1, sa2); |
1721 | gAllocationManager->addAllocation($$); | ||
1722 | } | 1428 | } |
1723 | | TOUCH_INVALID_TEXCOORD | 1429 | | TOUCH_INVALID_TEXCOORD |
1724 | { | 1430 | { |
1725 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, -1.f); | 1431 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, -1.f); |
1726 | gAllocationManager->addAllocation(cf0); | ||
1727 | LLScriptConstantExpression *sa0 = new LLScriptConstantExpression(gLine, gColumn, cf0); | 1432 | LLScriptConstantExpression *sa0 = new LLScriptConstantExpression(gLine, gColumn, cf0); |
1728 | gAllocationManager->addAllocation(sa0); | ||
1729 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, -1.f); | 1433 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, -1.f); |
1730 | gAllocationManager->addAllocation(cf1); | ||
1731 | LLScriptConstantExpression *sa1 = new LLScriptConstantExpression(gLine, gColumn, cf1); | 1434 | LLScriptConstantExpression *sa1 = new LLScriptConstantExpression(gLine, gColumn, cf1); |
1732 | gAllocationManager->addAllocation(sa1); | ||
1733 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1435 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1734 | gAllocationManager->addAllocation(cf2); | ||
1735 | LLScriptConstantExpression *sa2 = new LLScriptConstantExpression(gLine, gColumn, cf2); | 1436 | LLScriptConstantExpression *sa2 = new LLScriptConstantExpression(gLine, gColumn, cf2); |
1736 | gAllocationManager->addAllocation(sa2); | ||
1737 | $$ = new LLScriptVectorInitializer(gLine, gColumn, sa0, sa1, sa2); | 1437 | $$ = new LLScriptVectorInitializer(gLine, gColumn, sa0, sa1, sa2); |
1738 | gAllocationManager->addAllocation($$); | ||
1739 | } | 1438 | } |
1740 | ; | 1439 | ; |
1741 | 1440 | ||
@@ -1743,28 +1442,18 @@ quaternion_initializer | |||
1743 | : '<' expression ',' expression ',' expression ',' expression '>' %prec INITIALIZER | 1442 | : '<' expression ',' expression ',' expression ',' expression '>' %prec INITIALIZER |
1744 | { | 1443 | { |
1745 | $$ = new LLScriptQuaternionInitializer(gLine, gColumn, $2, $4, $6, $8); | 1444 | $$ = new LLScriptQuaternionInitializer(gLine, gColumn, $2, $4, $6, $8); |
1746 | gAllocationManager->addAllocation($$); | ||
1747 | } | 1445 | } |
1748 | | ZERO_ROTATION | 1446 | | ZERO_ROTATION |
1749 | { | 1447 | { |
1750 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1448 | LLScriptConstantFloat *cf0 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1751 | gAllocationManager->addAllocation(cf0); | ||
1752 | LLScriptConstantExpression *sa0 = new LLScriptConstantExpression(gLine, gColumn, cf0); | 1449 | LLScriptConstantExpression *sa0 = new LLScriptConstantExpression(gLine, gColumn, cf0); |
1753 | gAllocationManager->addAllocation(sa0); | ||
1754 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1450 | LLScriptConstantFloat *cf1 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1755 | gAllocationManager->addAllocation(cf1); | ||
1756 | LLScriptConstantExpression *sa1 = new LLScriptConstantExpression(gLine, gColumn, cf1); | 1451 | LLScriptConstantExpression *sa1 = new LLScriptConstantExpression(gLine, gColumn, cf1); |
1757 | gAllocationManager->addAllocation(sa1); | ||
1758 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); | 1452 | LLScriptConstantFloat *cf2 = new LLScriptConstantFloat(gLine, gColumn, 0.f); |
1759 | gAllocationManager->addAllocation(cf2); | ||
1760 | LLScriptConstantExpression *sa2 = new LLScriptConstantExpression(gLine, gColumn, cf2); | 1453 | LLScriptConstantExpression *sa2 = new LLScriptConstantExpression(gLine, gColumn, cf2); |
1761 | gAllocationManager->addAllocation(sa2); | ||
1762 | LLScriptConstantFloat *cf3 = new LLScriptConstantFloat(gLine, gColumn, 1.f); | 1454 | LLScriptConstantFloat *cf3 = new LLScriptConstantFloat(gLine, gColumn, 1.f); |
1763 | gAllocationManager->addAllocation(cf3); | ||
1764 | LLScriptConstantExpression *sa3 = new LLScriptConstantExpression(gLine, gColumn, cf3); | 1455 | LLScriptConstantExpression *sa3 = new LLScriptConstantExpression(gLine, gColumn, cf3); |
1765 | gAllocationManager->addAllocation(sa3); | ||
1766 | $$ = new LLScriptQuaternionInitializer(gLine, gColumn, sa0, sa1, sa2, sa3); | 1456 | $$ = new LLScriptQuaternionInitializer(gLine, gColumn, sa0, sa1, sa2, sa3); |
1767 | gAllocationManager->addAllocation($$); | ||
1768 | } | 1457 | } |
1769 | ; | 1458 | ; |
1770 | 1459 | ||
@@ -1772,7 +1461,6 @@ list_initializer | |||
1772 | : '[' listexpressionlist ']' %prec INITIALIZER | 1461 | : '[' listexpressionlist ']' %prec INITIALIZER |
1773 | { | 1462 | { |
1774 | $$ = new LLScriptListInitializer(gLine, gColumn, $2); | 1463 | $$ = new LLScriptListInitializer(gLine, gColumn, $2); |
1775 | gAllocationManager->addAllocation($$); | ||
1776 | } | 1464 | } |
1777 | ; | 1465 | ; |
1778 | 1466 | ||
@@ -1780,18 +1468,13 @@ lvalue | |||
1780 | : IDENTIFIER | 1468 | : IDENTIFIER |
1781 | { | 1469 | { |
1782 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); | 1470 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); |
1783 | gAllocationManager->addAllocation(id); | ||
1784 | $$ = new LLScriptLValue(gLine, gColumn, id, NULL); | 1471 | $$ = new LLScriptLValue(gLine, gColumn, id, NULL); |
1785 | gAllocationManager->addAllocation($$); | ||
1786 | } | 1472 | } |
1787 | | IDENTIFIER PERIOD IDENTIFIER | 1473 | | IDENTIFIER PERIOD IDENTIFIER |
1788 | { | 1474 | { |
1789 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); | 1475 | LLScriptIdentifier *id = new LLScriptIdentifier(gLine, gColumn, $1); |
1790 | gAllocationManager->addAllocation(id); | ||
1791 | LLScriptIdentifier *ac = new LLScriptIdentifier(gLine, gColumn, $3); | 1476 | LLScriptIdentifier *ac = new LLScriptIdentifier(gLine, gColumn, $3); |
1792 | gAllocationManager->addAllocation(id); | ||
1793 | $$ = new LLScriptLValue(gLine, gColumn, id, ac); | 1477 | $$ = new LLScriptLValue(gLine, gColumn, id, ac); |
1794 | gAllocationManager->addAllocation($$); | ||
1795 | } | 1478 | } |
1796 | ; | 1479 | ; |
1797 | 1480 | ||