Previous: Lexical Tie-ins, Up: Context Dependency   [Contents][Index]


7.3 »ú¶ç²òÀÏ·ë¤ÓÉÕ¤­¤È¥¨¥é¡¼²óÉü

»ú¶ç²òÀÏ·ë¤ÓÉÕ¤­¤Ï¡¢¸·Ì©¤Ê¥¨¥é¡¼²óÉüµ¬Â§¤òÍ׵ᤷ¤Þ¤¹¡£ See Error Recovery¡£

¤½¤ÎÍýͳ¤Ï¡¢¥¨¥é¡¼²óÉüµ¬Â§¤ÎÌÜŪ¤¬¡¢¤¢¤ë¹½À®Êª¤Î¹½Ê¸²òÀϤòÃæÃǤ·¡¢ ¤è¤êÂ礭¤Ê¹½À®Êª¤Î¹½Ê¸²òÀϤòºÆ³«¤¹¤ë¤³¤È¤Ç¤¹¡£ Á°½Ò¤ÎC¸À¸ì¤Ë»÷¤Æ¤¤¤ë¸À¸ì¤ÎÎã¤Ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¡¢ ɸ½àŪ¤Ê¥¨¥é¡¼²óÉüµ¬Â§¤Ï¡¢¼¡¤Î¥»¥ß¥³¥í¥ó¤Þ¤Ç¥È¡¼¥¯¥ó¤òÆÉ¤ß¼Î¤Æ¡¢ ¿·¤·¤¤Ê¸¤Î¹½Ê¸²òÀϤòºÆ³«¤·¤Þ¤¹¡£

stmt:   expr ';'
        | IF '(' expr ')' stmt { … }
        …
        error ';'
                { hexflag = 0; }
        ;

¤â¤·¡¢‘hex (expr)’¤ÎÅÓÃæ¤Ç¹½Ê¸¥¨¥é¡¼¤¬È¯À¸¤¹¤ì¤Ð¡¢ ¤³¤Î¥¨¥é¡¼²óÉüµ¬Â§¤¬Å¬ÍѤµ¤ì¡¢´°Î»¤·¤¿‘hex expr)’¤ËÂФ¹¤ë ¥¢¥¯¥·¥ç¥ó¤Ï·è¤·¤Æ¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡£ ¤¹¤ë¤È¡¢hexflag¤Ï¡¢ÆþÎϤλĤê¤Î´Ö¤º¤Ã¤ÈÀßÄꤵ¤ì¤¿¤Þ¤Þ¤Ç¤¤¤ë¤«¡¢ ¼¡¤ÎhexͽÌó¸ì¤Î½Ð¸½¤Þ¤Ç¤½¤Î¤Þ¤Þ¤Î¾õÂ֤Ǥ¤¤Æ¡¢ ¼±Ê̻Ҥ¬16¿ÊÀ°¿ô¤È¸í²ò¤µ¤ì¤Þ¤¹¡£

¤³¤ÎÌäÂê¤òËɤ°¤¿¤á¤Ë¤Ï¡¢¥¨¥é¡¼²óÉüµ¬Â§¤¬ hexflag¤ò¸µ¤ËÌ᤹¤Ù¤­¤Ç¤¹¡£

¤µ¤é¤Ë¡¢¼°¤ÎÆâÉô¤ÇƯ¤¯¥¨¥é¡¼²óÉüµ¬Â§¤¬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡£ ¤¿¤È¤¨¤Ð¡¢¼¡¤ÎÎã¤Î¤è¤¦¤Ë¡¢¤«¤Ã¤³¤ÎÃæ¤Ç¥¨¥é¡¼¤¬È¯À¸¤¹¤ë¤È¡¢ ÊĤ¸¤«¤Ã¤³¤Þ¤ÇÆÉ¤ß¼Î¤Æ¤ë¤è¤¦¤Ê¥¨¥é¡¼²óÉüµ¬Â§¤¬¹Í¤¨¤é¤ì¤Þ¤¹¡£

expr:   …
        | '(' expr ')'
                { $$ = $2; }
        | '(' error ')'
        …

¤â¤·¡¢¤³¤Îµ¬Â§¤¬hex¹½Â¤¤ÎÃæ¤ÇƯ¤¯¤Ê¤é¤Ð¡¢ ¤½¤Î¹½Â¤¤ÎÃæ¤ÎÆâ¦¤Î¤«¤Ã¤³¤ËŬÍѤµ¤ì¤ë¤Î¤Ç¡¢ ¹½Â¤¤òÃæÃǤ¹¤ë¤Ù¤­¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢¤³¤Î¥¢¥¯¥·¥ç¥ó¤Ç¤Ï¥Õ¥é¥°¤òÌ᤹¤Ù¤­¤Ç¤Ï¤Ê¤¯¡¢ hex¹½Â¤¤Î»Ä¤ê¤Ï¥Õ¥é¥°¤òÍ­¸ú¤Ë¤·¤¿¤Þ¤Þ¹½Ê¸²òÀϤµ¤ì¤ë¤Ù¤­¤Ç¤¹¡£

¾õ¶·¤Ë±þ¤¸¤Æ¡¢hex¹½Â¤¤òÃæÃǤǤ­¤ë¤«¤â¤·¤ì¤Ê¤¤¤·¡¢¤½¤¦¤Ç¤Ê¤¤¤«¤â¤·¤ì¤Ê¤¤ ¥¨¥é¡¼²óÉüµ¬Â§¤¬¤¢¤ì¤Ð¡¢¤É¤¦¤Ê¤ë¤Ç¤·¤ç¤¦¤«¡£ hex¹½Â¤¤òÃæÃǤ¹¤Ù¤­¤«¤É¤¦¤«·èÄê¤Ç¤­¤ë¥¢¥¯¥·¥ç¥ó¤ò½ñ¤±¤Þ¤»¤ó¡£ ¤½¤³¤Ç¡¢¤â¤·¡¢»ú¶ç²òÀÏ·ë¤ÓÉÕ¤­¤ò»È¤Ã¤Æ¤¤¤ë¤Ê¤é¤Ð¡¢ ¤¢¤Ê¤¿¤¬½ñ¤¤¤¿¥¨¥é¡¼²óÉüµ¬Â§¤¬¤½¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¤³¤È¤ò³Î¤«¤á¤ë¤Ù¤­¤Ç¤¹¡£ ¤½¤ì¤¾¤ì¤Îµ¬Â§¤Ï¡¢¾ï¤Ë¥Õ¥é¥°¤òÌ᤹¤Ù¤­¤«¡¢¤¢¤ë¤¤¤Ï¾ï¤Ë¥Õ¥é¥°¤òÌᤵ¤Ê¤¤¤Ù¤­¤«¡¢ ·èÄê¤Ç¤­¤ë¤Ù¤­¤Ç¤¹¡£