It must be trivial, or our own union wouldn't be valid C++ anyway.
(readgram): Define YYSTYPE_IS_TRIVIAL if it is int.
(reader_output_yylsp): Define YYLTYPE_IS_TRIVIAL if we use our YYLTYPE.
const char *epilogue = "\
yystype;\n\
# define YYSTYPE yystype\n\
const char *epilogue = "\
yystype;\n\
# define YYSTYPE yystype\n\
+# define YYSTYPE_IS_TRIVIAL 1\n\
/* We used to use `unsigned long' as YYSTYPE on MSDOS,
but it seems better to be consistent.
Most programs should declare their own type anyway. */
/* We used to use `unsigned long' as YYSTYPE on MSDOS,
but it seems better to be consistent.
Most programs should declare their own type anyway. */
- obstack_sgrow (&attrs_obstack,
- "#ifndef YYSTYPE\n#define YYSTYPE int\n#endif\n");
+ obstack_sgrow (&attrs_obstack, "\
+#ifndef YYSTYPE\n\
+# define YYSTYPE int\n\
+# define YYSTYPE_IS_TRIVIAL 1\n\
+#endif\n");
if (defines_flag)
obstack_sgrow (&defines_obstack, "\
# ifndef YYSTYPE\n\
# define YYSTYPE int\n\
if (defines_flag)
obstack_sgrow (&defines_obstack, "\
# ifndef YYSTYPE\n\
# define YYSTYPE int\n\
+# define YYSTYPE_IS_TRIVIAL 1\n\
} yyltype;\n\
\n\
# define YYLTYPE yyltype\n\
} yyltype;\n\
\n\
# define YYLTYPE yyltype\n\
+# define YYLTYPE_IS_TRIVIAL 1\n\