http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54795
--- Comment #19 from H.J. Lu <hjl.tools at gmail dot com> 2012-11-24 17:03:13 UTC --- The same issue can be reproduced with this patch: diff --git a/gcc/lto-opts.c b/gcc/lto-opts.c index a235f41..cd3730b 100644 --- a/gcc/lto-opts.c +++ b/gcc/lto-opts.c @@ -19,6 +19,7 @@ You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>. */ +#define BAD_LTO #include "config.h" #include "system.h" #include "coretypes.h" diff --git a/gcc/opts.h b/gcc/opts.h index b6a4361..14a31e4 100644 --- a/gcc/opts.h +++ b/gcc/opts.h @@ -122,7 +122,11 @@ struct cl_option_state { char ch; }; +#ifdef BAD_LTO +extern const struct cl_option *cl_options; +#else extern const struct cl_option cl_options[]; +#endif extern const unsigned int cl_options_count; extern const char *const lang_names[]; extern const unsigned int cl_lang_count;