]> git.saurik.com Git - bison.git/blobdiff - src/scan-code.l
Pacify "gcc -Wunused" for the input function from Flex.
[bison.git] / src / scan-code.l
index 71c90768efb4700f2d52d888b4e3a9d604a075bc..d357f0946dea710a41144b6c26aabff05b4013d0 100644 (file)
@@ -17,7 +17,7 @@
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-%option debug nodefault nounput noyywrap never-interactive
+%option debug nodefault noinput nounput noyywrap never-interactive
 %option prefix="code_" outfile="lex.yy.c"
 
 %{
@@ -175,7 +175,9 @@ splice       (\\[ \f\t\v]*\n)*
     /* As an undocumented Bison extension, append `;' before the last
        brace in braced code, so that the user code can omit trailing
        `;'.  But do not append `;' if emulating Yacc, since Yacc does
-       not append one.
+       not append one.  Also, some output languages (like Java) do not
+       accept an extra semicolon, so don't append if the user specified
+       a skeleton or language.
 
        FIXME: Bison should warn if a semicolon seems to be necessary
        here, and should omit the semicolon if it seems unnecessary
@@ -186,7 +188,8 @@ splice       (\\[ \f\t\v]*\n)*
        should also diagnose other Bison extensions like %yacc.
        Perhaps there should also be a GCC-style --pedantic-errors
        option, so that such warnings are diagnosed as errors.  */
-    if (outer_brace && ! yacc_flag)
+    if (outer_brace && !yacc_flag && language_prio == default_prio
+        && skeleton_prio == default_prio)
       obstack_1grow (&obstack_for_string, ';');
 
     STRING_GROW;