Advertisement
Guest User

Untitled

a guest
May 21st, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.56 KB | None | 0 0
  1. elagazas:
  2.     ha kulonbenha kulonben
  3.     {
  4.     $$ = new utasitas_leiro(d_loc__.first_line,$1->kod + $2->kod + $3->kod);
  5.     }
  6. ;
  7.  
  8. ha:
  9.     HA kifejezes PONT utasitas utasitasok
  10.     {
  11.         if($2->ktip != Logikai) {
  12.             std::cerr << d_loc__.first_line << ": Az elagazas feltetele nem logikai tipusu." << std::endl;
  13.             exit(1);
  14.         }
  15.     $$ = new utasitas_leiro(d_loc__.first_line,$2->kod);
  16.         std::string vegecimke = "vegecimke" + std::to_string(++szamlalo);
  17.     $$->kod.append("cmp al,1\n");
  18.         $$->kod.append("jne near " + vegecimke + "\n");
  19.         $$->kod.append($4->kod + $5->kod);
  20.     $$->kod.append(vegecimke + ":\n");
  21.         delete $2;
  22.     }
  23. ;
  24.  
  25. kulonbenha:
  26.     // ures
  27.     {
  28.     $$ = new utasitas_leiro(d_loc__.first_line,"");
  29.     }
  30. |
  31.     KULONBENHA kifejezes PONT utasitas utasitasok kulonbenha
  32.     {
  33.         if($2->ktip != Logikai) {
  34.             std::cerr << d_loc__.first_line << ": Az elagazas ag feltetele nem logikai tipusu." << std::endl;
  35.             exit(1);
  36.         }
  37.     $$ = new utasitas_leiro(d_loc__.first_line,$2->kod);
  38.         std::string vegecimke = "vegecimke" + std::to_string(++szamlalo);
  39.     $$->kod.append("cmp al,1\n");
  40.         $$->kod.append("jne near " + vegecimke + "\n");
  41.         $$->kod.append($4->kod + $5->kod);
  42.     $$->kod.append(vegecimke + ":\n");
  43.         delete $2;
  44.     }
  45. ;
  46.  
  47. kulonben:
  48.     HA_VEGE PONT
  49.     {
  50.     $$ = new utasitas_leiro(d_loc__.first_line,"");
  51.     }
  52. |
  53.     KULONBEN PONT utasitas utasitasok HA_VEGE PONT
  54.     {
  55.     $$ = new utasitas_leiro(d_loc__.first_line,$3->kod + $4->kod);
  56.     }
  57. ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement