Merged r175238 through r175420 into branch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/avx2@175530 138bc75d-0d04-0410-961f-82ee72b054a4
diff --git a/ChangeLog b/ChangeLog
index 606f1e8..235c890 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2011-06-22 Hans-Peter Nilsson <hp@axis.com>
+
+ PR regression/47836
+ PR bootstrap/23656
+ PR other/47733
+ PR bootstrap/49247
+ PR c/48825
+ * configure.ac (target_libraries): Remove target-libiberty.
+ Remove case-statement setting skipdirs=target-libiberty for
+ multiple targets. Remove checking target_configdirs and
+ removing target-libiberty but keeping target-libgcc if
+ otherwise empty.
+ * Makefile.def (target_modules): Don't add libiberty.
+ (dependencies): Remove all traces of target-libiberty.
+ * configure, Makefile.in: Regenerate.
+
2011-06-13 Walter Lee <walt@tilera.com>
* configure.ac (tilepro-*-*) New case.
diff --git a/Makefile.def b/Makefile.def
index f499180..b4a8464 100644
--- a/Makefile.def
+++ b/Makefile.def
@@ -131,7 +131,6 @@
missing=maintainer-clean; };
target_modules = { module= winsup; };
target_modules = { module= libgloss; no_check=true; };
-target_modules = { module= libiberty; };
target_modules = { module= libffi; };
target_modules = { module= libjava; raw_cxx=true; };
target_modules = { module= zlib; };
@@ -481,7 +480,6 @@
dependencies = { module=configure-target-boehm-gc; on=all-target-libstdc++-v3; };
dependencies = { module=configure-target-fastjar; on=configure-target-zlib; };
dependencies = { module=all-target-fastjar; on=all-target-zlib; };
-dependencies = { module=all-target-fastjar; on=all-target-libiberty; };
dependencies = { module=configure-target-libgo; on=configure-target-libffi; };
dependencies = { module=configure-target-libgo; on=all-target-libstdc++-v3; };
dependencies = { module=all-target-libgo; on=all-target-libffi; };
@@ -493,9 +491,7 @@
dependencies = { module=all-target-libjava; on=all-target-boehm-gc; };
dependencies = { module=all-target-libjava; on=all-target-libffi; };
dependencies = { module=configure-target-libobjc; on=configure-target-boehm-gc; };
-dependencies = { module=all-target-libobjc; on=all-target-libiberty; };
dependencies = { module=all-target-libobjc; on=all-target-boehm-gc; };
-dependencies = { module=all-target-libstdc++-v3; on=all-target-libiberty; };
dependencies = { module=configure-target-libstdc++-v3; on=configure-target-libgomp; };
// parallel_list.o and parallel_settings.o depend on omp.h, which is
// generated by the libgomp configure. Unfortunately, due to the use of
@@ -508,10 +504,7 @@
lang_env_dependencies = { module=winsup; };
dependencies = { module=all-target-libgloss; on=all-target-newlib; };
-dependencies = { module=all-target-winsup; on=all-target-libiberty; };
dependencies = { module=all-target-winsup; on=all-target-libtermcap; };
-dependencies = { module=configure-target-libiberty; on=all-binutils; };
-dependencies = { module=configure-target-libiberty; on=all-ld; };
dependencies = { module=configure-target-newlib; on=all-binutils; };
dependencies = { module=configure-target-newlib; on=all-ld; };
dependencies = { module=configure-target-libgfortran; on=all-target-libquadmath; };
diff --git a/Makefile.in b/Makefile.in
index 944839b..4f8b396 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -917,7 +917,6 @@
maybe-configure-target-libtermcap \
maybe-configure-target-winsup \
maybe-configure-target-libgloss \
- maybe-configure-target-libiberty \
maybe-configure-target-libffi \
maybe-configure-target-libjava \
maybe-configure-target-zlib \
@@ -1062,7 +1061,6 @@
all-target: maybe-all-target-libtermcap
all-target: maybe-all-target-winsup
all-target: maybe-all-target-libgloss
-all-target: maybe-all-target-libiberty
all-target: maybe-all-target-libffi
all-target: maybe-all-target-libjava
all-target: maybe-all-target-zlib
@@ -1147,7 +1145,6 @@
info-target: maybe-info-target-libtermcap
info-target: maybe-info-target-winsup
info-target: maybe-info-target-libgloss
-info-target: maybe-info-target-libiberty
info-target: maybe-info-target-libffi
info-target: maybe-info-target-libjava
info-target: maybe-info-target-zlib
@@ -1225,7 +1222,6 @@
dvi-target: maybe-dvi-target-libtermcap
dvi-target: maybe-dvi-target-winsup
dvi-target: maybe-dvi-target-libgloss
-dvi-target: maybe-dvi-target-libiberty
dvi-target: maybe-dvi-target-libffi
dvi-target: maybe-dvi-target-libjava
dvi-target: maybe-dvi-target-zlib
@@ -1303,7 +1299,6 @@
pdf-target: maybe-pdf-target-libtermcap
pdf-target: maybe-pdf-target-winsup
pdf-target: maybe-pdf-target-libgloss
-pdf-target: maybe-pdf-target-libiberty
pdf-target: maybe-pdf-target-libffi
pdf-target: maybe-pdf-target-libjava
pdf-target: maybe-pdf-target-zlib
@@ -1381,7 +1376,6 @@
html-target: maybe-html-target-libtermcap
html-target: maybe-html-target-winsup
html-target: maybe-html-target-libgloss
-html-target: maybe-html-target-libiberty
html-target: maybe-html-target-libffi
html-target: maybe-html-target-libjava
html-target: maybe-html-target-zlib
@@ -1459,7 +1453,6 @@
TAGS-target: maybe-TAGS-target-libtermcap
TAGS-target: maybe-TAGS-target-winsup
TAGS-target: maybe-TAGS-target-libgloss
-TAGS-target: maybe-TAGS-target-libiberty
TAGS-target: maybe-TAGS-target-libffi
TAGS-target: maybe-TAGS-target-libjava
TAGS-target: maybe-TAGS-target-zlib
@@ -1537,7 +1530,6 @@
install-info-target: maybe-install-info-target-libtermcap
install-info-target: maybe-install-info-target-winsup
install-info-target: maybe-install-info-target-libgloss
-install-info-target: maybe-install-info-target-libiberty
install-info-target: maybe-install-info-target-libffi
install-info-target: maybe-install-info-target-libjava
install-info-target: maybe-install-info-target-zlib
@@ -1615,7 +1607,6 @@
install-pdf-target: maybe-install-pdf-target-libtermcap
install-pdf-target: maybe-install-pdf-target-winsup
install-pdf-target: maybe-install-pdf-target-libgloss
-install-pdf-target: maybe-install-pdf-target-libiberty
install-pdf-target: maybe-install-pdf-target-libffi
install-pdf-target: maybe-install-pdf-target-libjava
install-pdf-target: maybe-install-pdf-target-zlib
@@ -1693,7 +1684,6 @@
install-html-target: maybe-install-html-target-libtermcap
install-html-target: maybe-install-html-target-winsup
install-html-target: maybe-install-html-target-libgloss
-install-html-target: maybe-install-html-target-libiberty
install-html-target: maybe-install-html-target-libffi
install-html-target: maybe-install-html-target-libjava
install-html-target: maybe-install-html-target-zlib
@@ -1771,7 +1761,6 @@
installcheck-target: maybe-installcheck-target-libtermcap
installcheck-target: maybe-installcheck-target-winsup
installcheck-target: maybe-installcheck-target-libgloss
-installcheck-target: maybe-installcheck-target-libiberty
installcheck-target: maybe-installcheck-target-libffi
installcheck-target: maybe-installcheck-target-libjava
installcheck-target: maybe-installcheck-target-zlib
@@ -1849,7 +1838,6 @@
mostlyclean-target: maybe-mostlyclean-target-libtermcap
mostlyclean-target: maybe-mostlyclean-target-winsup
mostlyclean-target: maybe-mostlyclean-target-libgloss
-mostlyclean-target: maybe-mostlyclean-target-libiberty
mostlyclean-target: maybe-mostlyclean-target-libffi
mostlyclean-target: maybe-mostlyclean-target-libjava
mostlyclean-target: maybe-mostlyclean-target-zlib
@@ -1927,7 +1915,6 @@
clean-target: maybe-clean-target-libtermcap
clean-target: maybe-clean-target-winsup
clean-target: maybe-clean-target-libgloss
-clean-target: maybe-clean-target-libiberty
clean-target: maybe-clean-target-libffi
clean-target: maybe-clean-target-libjava
clean-target: maybe-clean-target-zlib
@@ -2005,7 +1992,6 @@
distclean-target: maybe-distclean-target-libtermcap
distclean-target: maybe-distclean-target-winsup
distclean-target: maybe-distclean-target-libgloss
-distclean-target: maybe-distclean-target-libiberty
distclean-target: maybe-distclean-target-libffi
distclean-target: maybe-distclean-target-libjava
distclean-target: maybe-distclean-target-zlib
@@ -2083,7 +2069,6 @@
maintainer-clean-target: maybe-maintainer-clean-target-libtermcap
maintainer-clean-target: maybe-maintainer-clean-target-winsup
maintainer-clean-target: maybe-maintainer-clean-target-libgloss
-maintainer-clean-target: maybe-maintainer-clean-target-libiberty
maintainer-clean-target: maybe-maintainer-clean-target-libffi
maintainer-clean-target: maybe-maintainer-clean-target-libjava
maintainer-clean-target: maybe-maintainer-clean-target-zlib
@@ -2216,7 +2201,6 @@
maybe-check-target-libtermcap \
maybe-check-target-winsup \
maybe-check-target-libgloss \
- maybe-check-target-libiberty \
maybe-check-target-libffi \
maybe-check-target-libjava \
maybe-check-target-zlib \
@@ -2366,7 +2350,6 @@
maybe-install-target-libtermcap \
maybe-install-target-winsup \
maybe-install-target-libgloss \
- maybe-install-target-libiberty \
maybe-install-target-libffi \
maybe-install-target-libjava \
maybe-install-target-zlib \
@@ -2463,7 +2446,6 @@
maybe-install-strip-target-libtermcap \
maybe-install-strip-target-winsup \
maybe-install-strip-target-libgloss \
- maybe-install-strip-target-libiberty \
maybe-install-strip-target-libffi \
maybe-install-strip-target-libjava \
maybe-install-strip-target-zlib \
@@ -36413,463 +36395,6 @@
-.PHONY: configure-target-libiberty maybe-configure-target-libiberty
-maybe-configure-target-libiberty:
-@if gcc-bootstrap
-configure-target-libiberty: stage_current
-@endif gcc-bootstrap
-@if target-libiberty
-maybe-configure-target-libiberty: configure-target-libiberty
-configure-target-libiberty:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- echo "Checking multilib configuration for libiberty..."; \
- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libiberty ; \
- $(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libiberty/multilib.tmp 2> /dev/null ; \
- if test -r $(TARGET_SUBDIR)/libiberty/multilib.out; then \
- if cmp -s $(TARGET_SUBDIR)/libiberty/multilib.tmp $(TARGET_SUBDIR)/libiberty/multilib.out; then \
- rm -f $(TARGET_SUBDIR)/libiberty/multilib.tmp; \
- else \
- rm -f $(TARGET_SUBDIR)/libiberty/Makefile; \
- mv $(TARGET_SUBDIR)/libiberty/multilib.tmp $(TARGET_SUBDIR)/libiberty/multilib.out; \
- fi; \
- else \
- mv $(TARGET_SUBDIR)/libiberty/multilib.tmp $(TARGET_SUBDIR)/libiberty/multilib.out; \
- fi; \
- test ! -f $(TARGET_SUBDIR)/libiberty/Makefile || exit 0; \
- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libiberty ; \
- $(NORMAL_TARGET_EXPORTS) \
- echo Configuring in $(TARGET_SUBDIR)/libiberty; \
- cd "$(TARGET_SUBDIR)/libiberty" || exit 1; \
- case $(srcdir) in \
- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
- *) topdir=`echo $(TARGET_SUBDIR)/libiberty/ | \
- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
- esac; \
- srcdiroption="--srcdir=$${topdir}/libiberty"; \
- libsrcdir="$$s/libiberty"; \
- rm -f no-such-file || : ; \
- CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
- $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
- --target=${target_alias} $${srcdiroption} \
- || exit 1
-@endif target-libiberty
-
-
-
-
-
-.PHONY: all-target-libiberty maybe-all-target-libiberty
-maybe-all-target-libiberty:
-@if gcc-bootstrap
-all-target-libiberty: stage_current
-@endif gcc-bootstrap
-@if target-libiberty
-TARGET-target-libiberty=all
-maybe-all-target-libiberty: all-target-libiberty
-all-target-libiberty: configure-target-libiberty
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS) \
- $(TARGET-target-libiberty))
-@endif target-libiberty
-
-
-
-
-
-.PHONY: check-target-libiberty maybe-check-target-libiberty
-maybe-check-target-libiberty:
-@if target-libiberty
-maybe-check-target-libiberty: check-target-libiberty
-
-check-target-libiberty:
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) check)
-
-@endif target-libiberty
-
-.PHONY: install-target-libiberty maybe-install-target-libiberty
-maybe-install-target-libiberty:
-@if target-libiberty
-maybe-install-target-libiberty: install-target-libiberty
-
-install-target-libiberty: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) install)
-
-@endif target-libiberty
-
-.PHONY: install-strip-target-libiberty maybe-install-strip-target-libiberty
-maybe-install-strip-target-libiberty:
-@if target-libiberty
-maybe-install-strip-target-libiberty: install-strip-target-libiberty
-
-install-strip-target-libiberty: installdirs
- @: $(MAKE); $(unstage)
- @r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(TARGET_FLAGS_TO_PASS) install-strip)
-
-@endif target-libiberty
-
-# Other targets (info, dvi, pdf, etc.)
-
-.PHONY: maybe-info-target-libiberty info-target-libiberty
-maybe-info-target-libiberty:
-@if target-libiberty
-maybe-info-target-libiberty: info-target-libiberty
-
-info-target-libiberty: \
- configure-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing info in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- info) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-dvi-target-libiberty dvi-target-libiberty
-maybe-dvi-target-libiberty:
-@if target-libiberty
-maybe-dvi-target-libiberty: dvi-target-libiberty
-
-dvi-target-libiberty: \
- configure-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing dvi in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- dvi) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-pdf-target-libiberty pdf-target-libiberty
-maybe-pdf-target-libiberty:
-@if target-libiberty
-maybe-pdf-target-libiberty: pdf-target-libiberty
-
-pdf-target-libiberty: \
- configure-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing pdf in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- pdf) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-html-target-libiberty html-target-libiberty
-maybe-html-target-libiberty:
-@if target-libiberty
-maybe-html-target-libiberty: html-target-libiberty
-
-html-target-libiberty: \
- configure-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing html in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- html) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-TAGS-target-libiberty TAGS-target-libiberty
-maybe-TAGS-target-libiberty:
-@if target-libiberty
-maybe-TAGS-target-libiberty: TAGS-target-libiberty
-
-TAGS-target-libiberty: \
- configure-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing TAGS in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- TAGS) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-install-info-target-libiberty install-info-target-libiberty
-maybe-install-info-target-libiberty:
-@if target-libiberty
-maybe-install-info-target-libiberty: install-info-target-libiberty
-
-install-info-target-libiberty: \
- configure-target-libiberty \
- info-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing install-info in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- install-info) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-install-pdf-target-libiberty install-pdf-target-libiberty
-maybe-install-pdf-target-libiberty:
-@if target-libiberty
-maybe-install-pdf-target-libiberty: install-pdf-target-libiberty
-
-install-pdf-target-libiberty: \
- configure-target-libiberty \
- pdf-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing install-pdf in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- install-pdf) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-install-html-target-libiberty install-html-target-libiberty
-maybe-install-html-target-libiberty:
-@if target-libiberty
-maybe-install-html-target-libiberty: install-html-target-libiberty
-
-install-html-target-libiberty: \
- configure-target-libiberty \
- html-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing install-html in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- install-html) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-installcheck-target-libiberty installcheck-target-libiberty
-maybe-installcheck-target-libiberty:
-@if target-libiberty
-maybe-installcheck-target-libiberty: installcheck-target-libiberty
-
-installcheck-target-libiberty: \
- configure-target-libiberty
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing installcheck in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- installcheck) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-mostlyclean-target-libiberty mostlyclean-target-libiberty
-maybe-mostlyclean-target-libiberty:
-@if target-libiberty
-maybe-mostlyclean-target-libiberty: mostlyclean-target-libiberty
-
-mostlyclean-target-libiberty:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing mostlyclean in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- mostlyclean) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-clean-target-libiberty clean-target-libiberty
-maybe-clean-target-libiberty:
-@if target-libiberty
-maybe-clean-target-libiberty: clean-target-libiberty
-
-clean-target-libiberty:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing clean in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- clean) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-distclean-target-libiberty distclean-target-libiberty
-maybe-distclean-target-libiberty:
-@if target-libiberty
-maybe-distclean-target-libiberty: distclean-target-libiberty
-
-distclean-target-libiberty:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing distclean in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- distclean) \
- || exit 1
-
-@endif target-libiberty
-
-.PHONY: maybe-maintainer-clean-target-libiberty maintainer-clean-target-libiberty
-maybe-maintainer-clean-target-libiberty:
-@if target-libiberty
-maybe-maintainer-clean-target-libiberty: maintainer-clean-target-libiberty
-
-maintainer-clean-target-libiberty:
- @: $(MAKE); $(unstage)
- @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \
- r=`${PWD_COMMAND}`; export r; \
- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
- $(NORMAL_TARGET_EXPORTS) \
- echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libiberty" ; \
- for flag in $(EXTRA_TARGET_FLAGS); do \
- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
- done; \
- (cd $(TARGET_SUBDIR)/libiberty && \
- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
- "RANLIB=$${RANLIB}" \
- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \
- maintainer-clean) \
- || exit 1
-
-@endif target-libiberty
-
-
-
-
-
.PHONY: configure-target-libffi maybe-configure-target-libffi
maybe-configure-target-libffi:
@if gcc-bootstrap
@@ -42665,7 +42190,6 @@
configure-target-libtermcap: stage_last
configure-target-winsup: stage_last
configure-target-libgloss: stage_last
-configure-target-libiberty: stage_last
configure-target-libffi: stage_last
configure-target-libjava: stage_last
configure-target-zlib: stage_last
@@ -42693,7 +42217,6 @@
configure-target-libtermcap: maybe-all-gcc
configure-target-winsup: maybe-all-gcc
configure-target-libgloss: maybe-all-gcc
-configure-target-libiberty: maybe-all-gcc
configure-target-libffi: maybe-all-gcc
configure-target-libjava: maybe-all-gcc
configure-target-zlib: maybe-all-gcc
@@ -43400,7 +42923,6 @@
configure-target-boehm-gc: maybe-all-target-libstdc++-v3
configure-target-fastjar: maybe-configure-target-zlib
all-target-fastjar: maybe-all-target-zlib
-all-target-fastjar: maybe-all-target-libiberty
configure-target-libgo: maybe-configure-target-libffi
configure-target-libgo: maybe-all-target-libstdc++-v3
all-target-libgo: maybe-all-target-libffi
@@ -43412,9 +42934,7 @@
all-target-libjava: maybe-all-target-boehm-gc
all-target-libjava: maybe-all-target-libffi
configure-target-libobjc: maybe-configure-target-boehm-gc
-all-target-libobjc: maybe-all-target-libiberty
all-target-libobjc: maybe-all-target-boehm-gc
-all-target-libstdc++-v3: maybe-all-target-libiberty
configure-target-libstdc++-v3: maybe-configure-target-libgomp
configure-stage1-target-libstdc++-v3: maybe-configure-stage1-target-libgomp
@@ -43432,10 +42952,7 @@
all-stageprofile-target-libstdc++-v3: maybe-configure-stageprofile-target-libgomp
all-stagefeedback-target-libstdc++-v3: maybe-configure-stagefeedback-target-libgomp
all-target-libgloss: maybe-all-target-newlib
-all-target-winsup: maybe-all-target-libiberty
all-target-winsup: maybe-all-target-libtermcap
-configure-target-libiberty: maybe-all-binutils
-configure-target-libiberty: maybe-all-ld
configure-target-newlib: maybe-all-binutils
configure-target-newlib: maybe-all-ld
configure-target-libgfortran: maybe-all-target-libquadmath
@@ -43473,7 +42990,6 @@
configure-target-libtermcap: maybe-all-target-libgcc
configure-target-winsup: maybe-all-target-libgcc
configure-target-libgloss: maybe-all-target-libgcc
-configure-target-libiberty: maybe-all-target-libgcc
configure-target-libffi: maybe-all-target-libgcc
configure-target-libjava: maybe-all-target-libgcc
configure-target-zlib: maybe-all-target-libgcc
@@ -43505,7 +43021,6 @@
configure-target-winsup: maybe-all-target-newlib maybe-all-target-libgloss
-
configure-target-libffi: maybe-all-target-newlib maybe-all-target-libgloss
configure-target-libjava: maybe-all-target-newlib maybe-all-target-libgloss
diff --git a/configure b/configure
index d933ccf..eac5bc7 100755
--- a/configure
+++ b/configure
@@ -2668,9 +2668,8 @@
# these libraries are built for the target environment, and are built after
# the host libraries and the host tools (which may be a cross compiler)
-#
+# Note that libiberty is not a target library.
target_libraries="target-libgcc \
- target-libiberty \
target-libgloss \
target-newlib \
target-libgomp \
@@ -3044,51 +3043,6 @@
;;
esac
-# Disable target libiberty for some systems.
-case "${target}" in
- *-*-kaos*)
- # Remove unsupported stuff on all kaOS configurations.
- skipdirs="target-libiberty"
- ;;
- *-*-netbsd*)
- # Skip some stuff on all NetBSD configurations.
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- *-*-netware*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- *-*-rtems*)
- skipdirs="${skipdirs} target-libiberty"
- ;;
- *-*-tpf*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- *-*-vxworks*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- sh*-*-pe|mips*-*-pe|*arm-wince-pe)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- arm*-*-symbianelf*|arm*-*-linux-androideabi)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- avr-*-*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- picochip-*-*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- mips*-sde-elf*)
- skipdirs="$skipdirs target-libiberty"
- ;;
- ip2k-*-*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
-esac
-
# Disable libstdc++-v3 for some systems.
case "${target}" in
*-*-vxworks*)
@@ -6430,27 +6384,6 @@
fi
done
-# Sometimes the tools are distributed with libiberty but with no other
-# libraries. In that case, we don't want to build target-libiberty.
-# Don't let libgcc imply libiberty either.
-if test -n "${target_configdirs}" ; then
- libgcc=
- others=
- for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
- if test "$i" = "libgcc"; then
- libgcc=target-libgcc
- elif test "$i" != "libiberty" ; then
- if test -r $srcdir/$i/configure ; then
- others=yes;
- break;
- fi
- fi
- done
- if test -z "${others}" ; then
- target_configdirs=$libgcc
- fi
-fi
-
# Quietly strip out all directories which aren't configurable in this tree.
# This relies on all configurable subdirectories being autoconfiscated, which
# is now the case.
diff --git a/configure.ac b/configure.ac
index 6ed08da..b88a821 100644
--- a/configure.ac
+++ b/configure.ac
@@ -149,9 +149,8 @@
# these libraries are built for the target environment, and are built after
# the host libraries and the host tools (which may be a cross compiler)
-#
+# Note that libiberty is not a target library.
target_libraries="target-libgcc \
- target-libiberty \
target-libgloss \
target-newlib \
target-libgomp \
@@ -490,51 +489,6 @@
;;
esac
-# Disable target libiberty for some systems.
-case "${target}" in
- *-*-kaos*)
- # Remove unsupported stuff on all kaOS configurations.
- skipdirs="target-libiberty"
- ;;
- *-*-netbsd*)
- # Skip some stuff on all NetBSD configurations.
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- *-*-netware*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- *-*-rtems*)
- skipdirs="${skipdirs} target-libiberty"
- ;;
- *-*-tpf*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- *-*-vxworks*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- sh*-*-pe|mips*-*-pe|*arm-wince-pe)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- arm*-*-symbianelf*|arm*-*-linux-androideabi)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- avr-*-*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- picochip-*-*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
- mips*-sde-elf*)
- skipdirs="$skipdirs target-libiberty"
- ;;
- ip2k-*-*)
- noconfigdirs="$noconfigdirs target-libiberty"
- ;;
-esac
-
# Disable libstdc++-v3 for some systems.
case "${target}" in
*-*-vxworks*)
@@ -1965,27 +1919,6 @@
fi
done
-# Sometimes the tools are distributed with libiberty but with no other
-# libraries. In that case, we don't want to build target-libiberty.
-# Don't let libgcc imply libiberty either.
-if test -n "${target_configdirs}" ; then
- libgcc=
- others=
- for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do
- if test "$i" = "libgcc"; then
- libgcc=target-libgcc
- elif test "$i" != "libiberty" ; then
- if test -r $srcdir/$i/configure ; then
- others=yes;
- break;
- fi
- fi
- done
- if test -z "${others}" ; then
- target_configdirs=$libgcc
- fi
-fi
-
# Quietly strip out all directories which aren't configurable in this tree.
# This relies on all configurable subdirectories being autoconfiscated, which
# is now the case.
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index cb790da..178a732 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,11 @@
+2011-06-24 Diego Novillo <dnovillo@google.com>
+
+ * repro_fail: New.
+
+2011-06-21 Joseph Myers <joseph@codesourcery.com>
+
+ * gcc_update (gcc/config/avr/avr-tables.opt): New dependencies.
+
2011-05-19 Joseph Myers <joseph@codesourcery.com>
* gcc_update (gcc/config/arm/arm-tables.opt): Also depend on
diff --git a/contrib/gcc_update b/contrib/gcc_update
index 30bf3aa..3eba6c6 100755
--- a/contrib/gcc_update
+++ b/contrib/gcc_update
@@ -81,6 +81,7 @@
gcc/fixinc/fixincl.x: gcc/fixinc/fixincl.tpl gcc/fixinc/inclhack.def
gcc/config/arm/arm-tune.md: gcc/config/arm/arm-cores.def gcc/config/arm/gentune.sh
gcc/config/arm/arm-tables.opt: gcc/config/arm/arm-arches.def gcc/config/arm/arm-cores.def gcc/config/arm/arm-fpus.def gcc/config/arm/genopt.sh
+gcc/config/avr/avr-tables.opt: gcc/config/avr/avr-mcus.def gcc/config/avr/genopt.sh
gcc/config/m68k/m68k-tables.opt: gcc/config/m68k/m68k-devices.def gcc/config/m68k/m68k-isas.def gcc/config/m68k/m68k-microarchs.def gcc/config/m68k/genopt.sh
gcc/config/mips/mips-tables.opt: gcc/config/mips/mips-cpus.def gcc/config/mips/genopt.sh
gcc/config/rs6000/rs6000-tables.opt: gcc/config/rs6000/rs6000-cpus.def gcc/config/rs6000/genopt.sh
diff --git a/contrib/repro_fail b/contrib/repro_fail
new file mode 100755
index 0000000..8100456
--- /dev/null
+++ b/contrib/repro_fail
Binary files differ
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 361b584..76025df 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,4 +1,608 @@
-2011-06-20 Changpeng Fang <changpeng.fang@amd.com>
+2011-06-26 Iain Sandoe <iains@gcc.gnu.org>
+
+ PR target/47997
+ * config/darwin.c (darwin_mergeable_string_section): Place string
+ constants in '.cstring' rather than '.const' when CF/NSStrings are
+ active.
+
+2011-06-26 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config/sparc/sparc.c (save_local_or_in_reg_p): Adjust comment.
+ (emit_save_register_window): Likewise.
+ (sparc_expand_prologue): Use SIZE_INT_RTX and SIZE_RTX variables.
+ (sparc_flat_expand_prologue): Add comment. Always emit blockage.
+ Swap back %o7/%i7 in register naming.
+
+2011-06-25 Iain Sandoe <iains@gcc.gnu.org>
+
+ PR driver/49371
+ * config/darwin.c (darwin_override_options): Improve warning when
+ mdynamic-no-pic is given together with fPIC/fpic, also warn when it
+ is given with fpie/fPIE.
+ * config/darwin.h (PIE_SPEC): New, (LINK_SPEC): Use PIE_SPEC.
+ * config/darwin9.h (PIE_SPEC): New.
+
+2011-06-25 Basile Starynkevitch <basile@starynkevitch.net>
+
+ * timevar.c (timevar_print): Increase width for display of timevar
+ name.
+
+2011-06-24 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/46400
+ * c-decl.c (union lang_tree_node): Use TYPE_NEXT_VARIANT
+ instead of TYPE_CHAIN for chain_next for types.
+
+2011-06-24 Richard Henderson <rth@redhat.com>
+
+ * config/sparc/sparc.md (create_flat_frame_1<P:mode>): Remove.
+ (create_flat_frame_2<P:mode>, create_flat_frame_3<P:mode>): Remove.
+ * config/sparc/sparc.c (gen_create_flat_frame_1): Remove.
+ (gen_create_flat_frame_2, gen_create_flat_frame_3): Remove.
+ (sparc_flat_expand_prologue): Emit individual instructions
+ instead of one of the above.
+
+2011-06-24 Easwaran Raman <eraman@google.com>
+
+ PR rtl-optimization/49429
+ PR target/49454
+ * expr.c (emit_block_move_hints): Mark MEM_EXPR(x) and
+ MEM_EXPR(y) addressable if emit_block_move_via_libcall is
+ used to copy y into x.
+ * calls.c (initialize_argument_information): Mark
+ an argument addressable if it is passed by invisible reference.
+ (emit_library_call_value_1): Mark MEM_EXPR (val) addressable
+ if it is passed by reference.
+
+2011-06-24 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR rtl-optimization/49504
+ * rtlanal.c (nonzero_bits1): Properly handle addition or
+ subtraction of a pointer in Pmode if pointers extend unsigned.
+ (num_sign_bit_copies1): Likewise.
+
+2011-06-24 Martin Jambor <mjambor@suse.cz>
+
+ PR tree-optimizations/49516
+ * tree-sra.c (sra_modify_assign): Choose the safe path for
+ aggregate copies if we also did scalar replacements.
+
+2011-06-24 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
+
+ PR target/49335
+ * config/arm/predicates.md (add_operator): New.
+ * config/arm/arm.md ("*arith_shiftsi"): Fix for SP reg usage
+ in Thumb2.
+
+2011-06-24 Andi Kleen <ak@linux.intel.com>
+
+ * tree-sra.c (type_internals_preclude_sra_p): Add msg
+ parameter. Split up ifs and report reason in *msg.
+ (reject): Add.
+ (find_var_candiate): Add msg variable.
+ Split up ifs and report reason to reject.
+ (find_param_candidates): Add msg variable.
+ Pass msg to type_internals_preclude_sra_p.
+
+2011-06-23 Jeff Law <law@redhat.com>
+
+ PR middle-end/48770
+ * reload.h (reload): Change to return a bool.
+ * ira.c (ira): If requested by reload, run a fast DCE pass after
+ reload has completed. Fix comment typo.
+ * reload1.c (need_dce): New file scoped static.
+ (reload): Set reload_completed here. Return whether or not a DCE
+ pass after reload is needed.
+ (delete_dead_insn): Set need_dce as needed.
+
+ PR middle-end/49465
+ * tree-ssa-threadupate.c (fix_duplicate_block_edges): Fix condition
+ to detect threading through joiner block. If there was already
+ an edge to the new target, then do not change the PHI nodes.
+
+2011-06-23 Jakub Jelinek <jakub@redhat.com>
+
+ * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Use
+ get_pointer_alignment to see if base isn't sufficiently aligned.
+
+2011-06-23 Jan Hubicka <jh@suse.cz>
+
+ PR tree-optimize/49373
+ * tree-pass.h (all_late_ipa_passes): Declare.
+ * cgraphunit.c (init_lowered_empty_function): Fix properties.
+ (cgraph_optimize): Execute late passes; remove unreachable funcions after
+ materialization.
+ * ipa-inline.c (gate_ipa_inline): Enable only when optimizing or LTOing.
+ * passes.c (all_late_ipa_passes): Declare.
+ (dump_passes, register_pass): Handle late ipa passes.
+ (init_optimization_passes): Move ipa_pta to late passes; schedule fixup_cfg
+ at beggining of all_passes.
+ (apply_ipa_transforms): New function.
+ (execute_one_pass): When doing simple ipa pass, apply all transforms.
+
+2011-06-23 Joseph Myers <joseph@codesourcery.com>
+
+ * params.c: Include common/common-target.h. Don't include tm.h.
+ (lang_independent_params): Move from toplev.c.
+ (global_init_params): New.
+ * params.h (global_init_params): Declare.
+ * target.def (default_params): Move to common-target.def.
+ * toplev.c (lang_independent_options): Remove.
+ (lang_independent_params): Move to params.c.
+ (general_init): Use global_init_params.
+ * common/common-target.def (option_default_params): Move from
+ target.def.
+ * common/config/ia64/ia64-common.c: Include params.h.
+ (ia64_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): Move
+ from ia64.c.
+ * common/config/rs6000/rs6000-common.c: Include params.h.
+ (rs6000_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): Move
+ from rs6000.c.
+ * common/config/sh/sh-common.c: Include params.h.
+ (sh_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): Move
+ from sh.c.
+ * common/config/spu/spu-common.c: Include params.h.
+ (spu_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): Move
+ from spu.c.
+ * config/ia64/ia64.c (ia64_option_default_params,
+ TARGET_OPTION_DEFAULT_PARAMS): Move to ia64-common.c.
+ * config/rs6000/rs6000.c (rs6000_option_default_params,
+ TARGET_OPTION_DEFAULT_PARAMS): Move to rs6000-common.c.
+ * config/sh/sh.c (sh_option_default_params,
+ TARGET_OPTION_DEFAULT_PARAMS): Move to sh-common.c.
+ * config/spu/spu.c (spu_option_default_params,
+ TARGET_OPTION_DEFAULT_PARAMS): Move to spu-common.c.
+ * Makefile.in (OBJS): Remove params.o.
+ (OBJS-libcommon-target): Add params.o.
+ (params.o, $(common_out_object_file)): Update dependencies.
+ * doc/tm.texi: Regenerate.
+
+2011-06-23 Alan Modra <amodra@gmail.com>
+
+ PR bootstrap/49383
+ * config/rs6000/rs6000.c (call_ABI_of_interest): Adjust cgraph
+ invocation for 2011-06-09 changes.
+
+2011-06-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR libgomp/49490
+ * omp-low.c (expand_omp_for_static_nochunk): Only
+ use n ceil/ nthreads size for the first
+ n % nthreads threads in the team instead of
+ all threads except for the last few ones which
+ get less work or none at all.
+
+ PR debug/49496
+ * tree-vect-patterns.c (vect_recog_widen_mult_pattern): Ignore debug
+ uses.
+
+2011-06-22 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49493
+ * tree-ssa-structalias.c (get_constraint_for_ssa_var):
+ Refer to the alias target of variables.
+ (associate_varinfo_to_alias_1): Remove.
+ (ipa_pta_execute): Do not associate aliases with anything.
+ * cgraph.h (varpool_alias_aliased_node): Fix cut&paste errors.
+ (cgraph_function_node): Likewise.
+ (cgraph_function_or_thunk_node): Likewise.
+ (varpool_variable_node): Likewise.
+
+2011-06-22 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/arm/arm.h (OPTION_DEFAULT_SPECS): Fix -mtls-dialect
+ typo.
+ * config.gcc (arm*-*-linux*): Default to gnu tls.
+ (arm*-*-*): Add --with-tls option.
+ (all_defaults): Add 'tls'.
+
+2011-06-22 Richard Henderson <rth@redhat.com>
+
+ * reg-notes.def (REG_CFA_WINDOW_SAVE): New.
+ * dwarf2out.c (dwarf2out_frame_debug): Handle it.
+ (dwarf2out_frame_debug_cfa_window_save): Rename from
+ dwarf2out_window_save; make static.
+ * tree.h (dwarf2out_window_save): Don't declare.
+
+ * config/sparc/sparc.c (sparc_dwarf_handle_frame_unspec): Remove.
+ (TARGET_DWARF_HANDLE_FRAME_UNSPEC): Remove.
+ (emit_save_register_window): Rename from gen_save_register_window;
+ emit the insn and add REG_CFA_* notes.
+ (sparc_expand_prologue): Update to match.
+ * config/sparc/sparc.md (save_register_window_1): Simplify from
+ save_register_window<P:mode>.
+
+2011-06-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/49497
+ * config/i386/i386.md (*lea_general_2): Always allow SImode.
+ (*lea_general_2_zext): Likewise.
+ (imul to lea peepholes): Use const359_operand and check
+ TARGET_PARTIAL_REG_STALL.
+
+ * config/i386/predicates.md (const359_operand): New.
+
+2011-06-22 Michael Matz <matz@suse.de>
+
+ * cgraphunit.c (assemble_thunk): Use correct return type.
+
+2011-06-22 Dmitry Plotnikov <dplotnikov@ispras.ru>
+ Dmitry Melnik <dm@ispras.ru>
+
+ * config/arm/arm.c (neon_immediate_valid_for_shift): New function.
+ (neon_output_shift_immediate): Ditto.
+ * config/arm/arm-protos.h (neon_immediate_valid_for_shift): New
+ prototype.
+ (neon_output_shift_immediate): Ditto.
+ * config/arm/neon.md (vashl<mode>3): Modified constraint.
+ (vashr<mode>3_imm): New insn pattern.
+ (vlshr<mode>3_imm): Ditto.
+ (vashr<mode>3): Modified constraint.
+ (vlshr<mode>3): Ditto.
+ * config/arm/predicates.md (imm_for_neon_lshift_operand): New
+ predicate.
+ (imm_for_neon_rshift_operand): Ditto.
+ (imm_lshift_or_reg_neon): Ditto.
+ (imm_rshift_or_reg_neon): Ditto.
+
+ * optabs.c (init_optabs): Init optab codes for vashl, vashr, vlshr.
+
+2011-06-22 Jakub Jelinek <jakub@redhat.com>
+
+ * tree-ssa-ccp.c (evaluate_stmt): Try bitwise tracking for
+ builtin calls even if likelyvalue is not CONSTANT.
+ Handle BUILT_IN_STRDUP and BUILT_IN_STRNDUP like BUILT_IN_MALLOC.
+ Return get_value_for_expr of first operand
+ for BUILT_IN_{MEM{CPY,MOVE,SET},STR{,N}CPY}{,_CHK}.
+ * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle
+ BUILT_IN_{MEM{{,P}CPY,MOVE,SET},STR{,N}C{PY,AT},STPCPY}_CHK like
+ their non-checking counterparts.
+ (call_may_clobber_ref_p_1): Likewise.
+ (stmt_kills_ref_p_1): Handle BUILT_IN_MEM{{,P}CPY,MOVE,SET}_CHK
+ like their non-checking counterparts.
+ * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
+ Handle BUILT_IN_{MEM{{,P}CPY,MOVE,SET},STR{,N}C{PY,AT},STPCPY}_CHK
+ like their non-checking counterparts.
+ (find_func_clobbers): Likewise.
+ * tree-ssa-dce.c (propagate_necessity): Handle BUILT_IN_MEMSET_CHK
+ like BUILT_IN_MEMSET and BUILT_IN_CALLOC like BUILT_IN_MALLOC.
+
+ * dwarf2out.c (size_of_loc_descr, output_loc_operands,
+ mark_base_types, hash_loc_operands, compare_loc_operands): Allow
+ DW_OP_GNU_convert and DW_OP_GNU_reinterpret to use constant instead
+ of base type reference as argument.
+ (resolve_addr_in_expr): Likewise. Fix keep computation.
+ (convert_descriptor_to_signed): Renamed to...
+ (convert_descriptor_to_mode): ... this. For wider types convert
+ to unsigned instead of signed, for <= DWARF2_ADDR_SIZE convert to
+ untyped.
+ (typed_binop): New function.
+ (scompare_loc_descriptor, ucompare_loc_descriptor,
+ minmax_loc_descriptor, mem_loc_descriptor): For wider integer modes
+ default to unsigned type instead of signed.
+
+ PR debug/47858
+ * gimple.h (enum gimple_debug_subcode): Add GIMPLE_DEBUG_SOURCE_BIND.
+ (gimple_build_debug_source_bind_stat): New prototype.
+ (gimple_build_debug_source_bind): Define.
+ (gimple_debug_source_bind_p, gimple_debug_source_bind_get_var,
+ gimple_debug_source_bind_get_value,
+ gimple_debug_source_bind_get_value_ptr,
+ gimple_debug_source_bind_set_var,
+ gimple_debug_source_bind_set_value): New inlines.
+ * gimple.c (gimple_build_debug_source_bind_stat): New function.
+ * gimple-pretty-print.c (dump_gimple_debug): Handle
+ GIMPLE_DEBUG_SOURCE_BIND.
+ * sese.c (rename_uses): Handle gimple_debug_source_bind_p.
+ * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
+ * tree-parloops.c (eliminate_local_variables,
+ separate_decls_in_region): Likewise.
+ (separate_decls_in_region_debug): Renamed from
+ separate_decls_in_region_debug_bind. Handle
+ gimple_debug_source_bind_p.
+ * tree.h (decl_debug_args_lookup, decl_debug_args_insert): New
+ prototypes.
+ (DECL_HAS_DEBUG_ARGS_P): Define.
+ (struct tree_function_decl): Add has_debug_args_flag field.
+ * tree.c (debug_args_for_decl): New variable.
+ (decl_debug_args_lookup, decl_debug_args_insert): New functions.
+ * tree-into-ssa.c (mark_def_sites): Handle uses in debug stmts.
+ (rewrite_debug_stmt_uses): New function.
+ (rewrite_stmt): Use it to rewrite debug stmt uses.
+ * rtl.def (DEBUG_PARAMETER_REF): New.
+ * rtl.h (DEBUG_PARAMETER_REF_DECL): Define.
+ * cselib.c (rtx_equal_for_cselib_1, cselib_hash_rtx): Handle
+ DEBUG_PARAMETER_REF.
+ * rtl.c (rtx_equal_p_cb, rtx_equal_p, iterative_hash_rtx): Likewise.
+ * print-rtl.c (print_rtx): Likewise.
+ * tree-sra.c (sra_ipa_reset_debug_stmts): Prefer replacing of
+ SSA_NAMEs with DEBUG_EXPR_DECLs initialized in source bind
+ debug stmts in the first bb.
+ * tree-inline.c (remap_ssa_name): If remapping default def
+ of a PARM_DECL fails, map to a DEBUG_EXPR_DECL set in
+ a source bind debug stmt.
+ (remap_gimple_stmt): Handle gimple_debug_source_bind_p.
+ (maybe_move_debug_stmts_to_successors): Likewise.
+ (copy_debug_stmt): Likewise. Avoid shadowing a variable.
+ (tree_function_versioning): If DECL_HAS_DEBUG_ARGS_P, copy
+ debug args vector from old_decl to new_decl.
+ * ipa-prop.c (ipa_modify_call_arguments): For optimized away
+ or modified parameters, add debug bind stmts before call
+ setting DEBUG_EXPR_DECL which is remembered in debug args
+ vector.
+ * cfgexpand.c (expand_call_stmt): Call expand_debug_expr
+ on DECL_DEBUG_EXPRs from debug args vector.
+ (expand_debug_source_expr): New function.
+ (expand_debug_locations): Use it for source bind insns.
+ (expand_gimple_basic_block): Handle gimple_debug_source_bind_p.
+ * var-tracking.c (prepare_call_arguments): Add debug args
+ to call_arguments if any.
+ * dwarf2out.c (dwarf_stack_op_name, size_of_loc_descr,
+ output_loc_operands, output_loc_operands_raw,
+ resolve_addr_in_expr, compare_loc_operands): Handle
+ DW_OP_GNU_parameter_ref.
+ (get_ref_die_offset, parameter_ref_descriptor): New functions.
+ (mem_loc_descriptor): Handle DEBUG_PARAMETER_REF.
+ (gen_subprogram_die): Handle parameters identified by
+ DEBUG_PARAMETER_REF.
+
+2011-06-22 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/invoke.texi (ARM Options): Document -mtls-dialect option.
+ * doc/install.texi (Configuration): Document --with-tls.
+ * config/arm/arm.c (enum tls_reloc): Add TLS_DESCSEQ.
+ (arm_call_tls_get_addr): Clean up. Assert not tls descriptor.
+ (arm_tls_descseq_addr): New.
+ (legitimize_tls_address): Add tlsdesc support.
+ (arm_cannot_copy_insn_p): Check for tlscall.
+ (arm_emit_tls_decoration): Likewise.
+ * config/arm/arm.h (TARGET_GNU2_TLS): New.
+ (OPTION_DEFAULT_SPECS): Add with-tls support.
+ * config/arm/arm.md (R1_REGNUM): Define.
+ (tlscall): New.
+ * config/arm/arm.opt (tls_type): New enumeration type and values.
+ (mtls-dialect): New switch.
+ * config/arm/arm-opts.h (enum tls_type): New.
+
+2011-06-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * attribs.c (register_attribute): Added assert to check that all
+ attribute specs are registered with a name that is not empty and
+ does not start with '_'.
+ (decl_attributes): Avoid the lookup of the "naked" attribute spec
+ if the function has no attributes.
+ * tree.c (is_attribute_with_length_p): Removed.
+ (is_attribute_p): Removed.
+ (private_is_attribute_p): New.
+ (private_lookup_attribute): New.
+ (lookup_attribute): Removed.
+ (lookup_ident_attribute): New.
+ (remove_attribute): Require the first argument to be in the form
+ 'text', not '__text__'. Updated asserts.
+ (merge_attributes): Use lookup_ident_attributes instead of
+ lookup_attribute.
+ (merge_dllimport_decl_attributes): Use remove_attribute.
+ (attribute_list_contained): Likewise.
+ (attribute_list_equal): Immediately return 1 if the arguments are
+ identical pointers.
+ * tree.h (is_attribute_p): Made inline. Return a 'bool', not an
+ 'int'. Require the first argument to be in the form 'text', not
+ '__text__'. Require the second argument to be an identifier.
+ (lookup_attribute): Made inline. Require the first argument to be
+ in the form 'text', not '__text__'.
+ (private_is_attribute_p, private_lookup_attribute): New.
+ Updated comments.
+
+2011-06-21 Andrew MacLeod <amacleod@redhat.com>
+
+ * builtins.c: Add sync_ or SYNC__ to builtin names.
+ * sync-builtins.def: Add sync_ or SYNC__ to builtin names.
+ * omp-low.c: Add sync_ or SYNC__ to builtin names.
+
+2011-06-21 Georg-Johann Lay <avr@gjlay.de>
+
+ PR target/33049
+ * config/avr/avr.md (extzv): New expander.
+ (*extzv): New insn.
+ (*extzv.qihi1, *extzv.qihi2): New insn-and-split.
+ * config/avr/constraints.md (C04): New constraint.
+ * doc/md.texi (Machine Constraints): Document it.
+
+2011-06-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/49489
+ * builtins.c (expand_builtin_unop): Call expand_unop with 0 as
+ unsignedp argument instead of 1 for clrsb_optab.
+ (fold_builtin_bitop): Fix masking for width > HOST_BITS_PER_WIDE_INT
+ and < 2 * HOST_BITS_PER_WIDE_INT. Optimize BUILT_IN_CLRSB*.
+ (fold_builtin_1): Call fold_builtin_binop for BUILT_IN_CLRSB*.
+ * optabs.c (widen_leading): Call widen_operand and expand_unop
+ with 0 as unsignedp argument instead of 1 for clrsb_optab.
+ (expand_unop): Subtract difference of mode sizes also for clrsb_optab.
+
+2011-06-21 Georg-Johann Lay <avr@gjlay.de>
+
+ * config/avr/avr.md (*jcindirect_jump): Fix build warning.
+
+2011-06-21 Bernd Schmidt <bernds@codesourcery.com>
+
+ * gensupport.c (add_define_attr): New static function.
+ (is_predicable): Allow multi-alternative lists for the "predicable"
+ attribute.
+ (modify_attr_enabled_ce, alter_attrs_for_insn): New static functions.
+ (process_one_cond_exec): Call alter_attrs_for_insn.
+ * doc/md.texi (Defining Attributes): Mention some standard names.
+ (Conditional Execution): Update documentation for "predicable".
+
+ * doc/extend.texi (__builtin_clrsb, __builtin_clrsbl,
+ __builtin_clrsbll): Document.
+ * doc/rtl.texi (clrsb): New entry.
+ * optabs.c (widen_leading): Renamed from widen_clz. New argument
+ UNOPTAB. All callers changed. Use UNOPTAB instead of clz_optab.
+ (expand_unop): Handle clrsb_optab.
+ (init_optabs): Initialize it.
+ * optabs.h (enum optab_index): New entry OTI_clrsb.
+ (clrsb_optab): Define.
+ * genopinit.c (optabs): Add an entry for it.
+ * builtins.c (expand_builtin): Handle clrsb builtin functions.
+ * builtins.def (BUILT_IN_CLRSB, BUILT_IN_CLRSBIMAX, BUILT_IN_CLRSBL,
+ BUILT_IN_CLRSBLL): New.
+ * rtl.def (CLRSB): New code.
+ * dwarf2out.c (mem_loc_descriptor): Handle it.
+ * simplify-rtx.c (simplify_const_unary_operation): Likewise.
+ Use op_mode rather than mode when optimizing ffs, clz, ctz, parity
+ and popcount.
+ * libgcc2.c (__clrsbSI2, __clrsbDI2): New functions.
+ * libgcc2.h (__clrsbSI2, __clrsbDI2): Define and declare.
+ (__ctzDI2): Move declaration.
+ * config/bfin/bfin.md (clrsbsi2): New expander.
+ (signbitssi2): Use the CLRSB rtx.
+ (clrsbhi2): Renamed from signbitshi2. Use the CLRSB rtx.
+ * config/bfin/bfin.c (bdesc_1arg): Changed accordingly.
+
+2011-06-21 Richard Guenther <rguenther@suse.de>
+
+ * ipa-inline-transform.c (inline_transform): Fix previous change.
+
+2011-06-21 Ira Rosen <ira.rosen@linaro.org>
+
+ PR tree-optimization/49478
+ * tree-vect-loop.c (vectorizable_reduction): Handle DOT_PROD_EXPR
+ with constant operand.
+
+2011-06-21 Richard Guenther <rguenther@suse.de>
+
+ * ipa-inline-transform.c (inline_transform): Fix typo.
+
+2011-06-21 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49483
+ * tree-vect-stmts.c (vectorizable_assignment): Also handle
+ VIEW_CONVERT_EXPR conversions.
+
+2011-06-21 Joseph Myers <joseph@codesourcery.com>
+
+ * config/avr/avr-mcus.def, config/avr/genopt.sh: New files.
+ * config/avr/avr-tables.opt: New file (generated).
+ * config.gcc (avr-*-*): Use avr/avr-tables.opt.
+ * config/avr/avr-devices.c (avr_mcu_types): Move contents to
+ avr-mcus.def.
+ * config/avr/avr.c (avr_help, TARGET_HELP): Remove.
+ (avr_option_override): Don't process -mmcu= argument here. Set
+ avr_current_device using avr_mcu_index.
+ (avr_file_start): Use avr_current_device->name instead of avr_mcu_name.
+ * config/avr/avr.opt (mmcu=): Use Enum.
+ * config/avr/t-avr (avr-devices.o): Update dependencies.
+ ($(srcdir)/config/avr/avr-tables.opt): New.
+ * target.def (help): Remove.
+ * doc/tm.texi.in (TARGET_HELP): Remove.
+ * doc/tm.texi: Regenerate.
+ * opts.c: Don't include target.h.
+ (common_handle_option): Don't call targetm.help.
+ * system.h (TARGET_HELP): Poison.
+ * Makefile.in (opts.o): Update dependencies.
+
+2011-06-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config/usegld.h: New file.
+ * config/sol2.h (PREFERRED_DEBUGGING_TYPE): Remove.
+ (CPP_SUBTARGET_SPEC): Remove -compat-bsd support.
+ (LIB_SPEC): Likewise. Search /lib.
+ (LINK_ARCH32_SPEC_BASE): Remove -compat-bsd support.
+ (RDYNAMIC_SPEC): Handle GNU ld.
+ [HAVE_LD_EH_FRAME_HDR && TARGET_DL_ITERATE_PHDR] (LINK_EH_SPEC):
+ Define.
+ (SUPPORTS_INIT_PRIORITY): Only disable for Sun ld.
+ (SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Define.
+ [!USE_GAS] (NO_DBX_BNSYM_ENSYM): Redefine.
+ (STACK_CHECK_STATIC_BUILTIN): Define.
+ * config/sol2.opt (compat-bsd): Remove.
+ * config/sol2-10.h (TARGET_C99_FUNCTIONS): Remove undef.
+ * config/sol2-bi.h: New file.
+ * config/sol2-gld.h: Remove.
+ * config/i386/sol2.h (TLS_COMMON_ASM_OP): Only define if !USE_GAS.
+ (NO_DBX_BNSYM_ENSYM): Remove.
+ (SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Remove.
+ (STACK_CHECK_STATIC_BUILTIN): Remove.
+ Test USE_GLD instead of TARGET_GNU_LD.
+ * config/i386/sol2-10.h: Rename to ...
+ * config/i386/sol2-bi.h .. this.
+ (SUBTARGET_EXTRA_SPECS): Redefine.
+ (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE): Remove.
+ (MULTILIB_DEFAULTS): Remove.
+ (DEFAULT_ARCH32_P): Define.
+ (LINK_ARCH64_SPEC_BASE, LINK_ARCH64_SPEC): Remove.
+ (ARCH64_SUBDIR): Define.
+ Test USE_GLD instead of TARGET_GNU_LD.
+ (I386_EMULATION): Rename to ...
+ (ARCH32_EMULATION): ... this.
+ (X86_64_EMULATION): Rename to ...
+ (ARCH64_EMULATION): ... this.
+ (TARGET_LD_EMULATION): Remove.
+ (LINK_ARCH_SPEC): Remove.
+ * config/i386/sol2-gas.h: Remove.
+ * config/i386/t-sol2-10: Rename to ...
+ * config/i386/t-sol2-64: ... this.
+ * config/sparc/sol2.h (SPARC_DEFAULT_CMODEL): Redefine.
+ (AS_SPARC64_FLAG): Define.
+ (ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Redefine.
+ (CPP_CPU64_DEFAULT_SPEC, ASM_CPU32_DEFAULT_SPEC): Redefine
+ depending on TARGET_CPU_DEFAULT.
+ (CPP_CPU_SPEC): Redefine.
+ (ASM_CPU_SPEC): Handle DEFAULT_ARCH32_P.
+ (CPP_CPU_DEFAULT_SPEC, ASM_CPU_DEFAULT_SPEC): Redefine.
+ (CPP_ARCH32_SPEC, CPP_ARCH64_SPEC, CPP_ARCH_SPEC): Redefine.
+ (ASM_ARCH_SPEC, ASM_ARCH32_SPEC, ASM_ARCH64_SPEC,
+ ASM_ARCH_DEFAULT_SPEC): Redefine.
+ (SUBTARGET_EXTRA_SPECS): Add LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
+ LINK_ARCH_DEFAULT_SPEC.
+ [USE_GLD] (ARCH32_EMULATION, ARCH64_EMULATION): Define.
+ [USE_GLD] (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC): Redefine.
+ (ARCH64_SUBDIR): Define.
+ (LINK_ARCH64_SPEC): Redefine.
+ (CC1_SPEC): Redefine.
+ (OPTION_DEFAULT_SPECS): Redefine.
+ (MULTILIB_DEFAULTS): Define.
+ (WCHAR_TYPE, WCHAR_TYPE_SIZE, WINT_TYPE, WINT_TYPE_SIZE): Redefine.
+ [USE_GAS && HAVE_AS_TLS] (TARGET_SUN_TLS, TARGET_GNU_TLS): Redefine.
+ [USE_GLD] (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Undef.
+ (NO_DBX_BNSYM_ENSYM): Remove.
+ (SUBTARGET_INSERT_ATTRIBUTES, SUBTARGET_ATTRIBUTE_TABLE): Remove.
+ (ASM_OUTPUT_ALIGN_WITH_NOP): Only define if !USE_GAS.
+ (TARGET_ASM_NAMED_SECTION): Likewise.
+ (STACK_CHECK_STATIC_BUILTIN): Remove.
+ * config/sparc/sol2-bi.h: Remove.
+ * config/sparc/sol2-gas-bi.h: Remove.
+ * config/sparc/sol2-gas.h: Remove.
+ * config/sparc/sol2-gld-bi.h: Remove.
+ * config.gcc (i[34567]86-*-solaris2*, sparc*-*-solaris2*): Move
+ common parts ...
+ (*-*-solaris2*): ... here.
+
+2011-06-21 Christian Bruel <christian.bruel@st.com>
+
+ PR other/43564
+ * ipa-inline.c (can_inline_edge_p): Check
+ !DECL_DISREGARD_INLINE_LIMITS.
+
+2011-06-21 Christian Bruel <christian.bruel@st.com>
+
+ PR middle-end/49139
+ * cgraphunit.c (process_function_and_variable_attributes): warn when
+ always_inline functions that are not inline.
+ * ipa-inline-transform.c (inline_transform): Always call
+ optimize_inline.
+ * tree-inline.c (tree_inlinable_function_p): Use error instead
+ of sorry.
+ (expand_call_inline): Likewise.
+
+2011-06-21 Jakub Jelinek <jakub@redhat.com>
+
+ * Makefile.in (dg_target_exps): Set.
+ (check_gcc_parallelize): Parallelize gcc testing into 10 jobs
+ instead of 7, try to divide it more evenly.
+
+2011-06-20 Changpeng Fang <changpeng.fang@amd.com>
PR i386/49089
* config/i386/i386.c (avx256_split_unaligned_load): New definition.
@@ -38,9 +642,8 @@
2011-06-20 Kai Tietz <ktietz@redhat.com>
- * fold-const.c (fold_binary_loc): Add missing
- folding for truth-not operations in combination
- with binary and.
+ * fold-const.c (fold_binary_loc): Add missing folding for truth-not
+ operations in combination with binary and.
2011-06-20 Bernd Schmidt <bernds@codesourcery.com>
@@ -60,8 +663,7 @@
2011-06-18 H.J. Lu <hongjiu.lu@intel.com>
- * longlong.h (count_leading_zeros): Use long long builtin for
- x86-64.
+ * longlong.h (count_leading_zeros): Use long long builtin for x86-64.
(count_trailing_zeros): Likewise.
2011-06-18 H.J. Lu <hongjiu.lu@intel.com>
@@ -142,8 +744,7 @@
* tree-ssa-threadupdate.c (struct redirection_data): New field
intermediate_edge.
(THREAD_TARGET2): Define.
- (redirection_data_eq): Also check that the intermediate edge is
- equal.
+ (redirection_data_eq): Also check that the intermediate edge is equal.
(lookup_redirection_data): Drop useless argument. Extract the
outgoing_edge and intermediate edge from E. Callers updated.
(copy_phi_args, update_destination_phis): New functions.
@@ -156,14 +757,13 @@
edge to the duplicate of the joiner block.
(thread_block): Don't muck up loops when threading through a joiner
block.
- (thread_through_loop_header): Handle threading through a joiner
- block.
+ (thread_through_loop_header): Handle threading through a joiner block.
(mark_threaded_blocks, register_jump_thread): Likewise.
* tree-flow.h (register_jump_thread): Add new argument. Callers
updated.
* tree-ssa-threadedge.c (phi_args_equal_on_edges): New function.
(thread_across_edge): Handle threading through a joiner block.
-
+
2011-06-16 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/49343
@@ -178,8 +778,8 @@
2011-06-16 Tom de Vries <tom@codesourcery.com>
PR target/45098
- * tree-ssa-loop-niter.c (infer_loop_bounds_from_pointer_arith): Disallow
- NULL pointer for pointer arithmetic.
+ * tree-ssa-loop-niter.c (infer_loop_bounds_from_pointer_arith):
+ Disallow NULL pointer for pointer arithmetic.
2011-06-16 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
@@ -288,7 +888,8 @@
* config/xtensa/xtensa.c (xtensa_function_arg_advance): Likewise.
(xtensa_function_arg, xtensa_function_incoming_arg): Likewise.
(xtensa_function_arg_1): Likewise.
- * config/stormy16/stormy16.c (xstormy16_function_arg_advance): Likewise.
+ * config/stormy16/stormy16.c (xstormy16_function_arg_advance):
+ Likewise.
(xstormy16_function_arg): Likewise.
* config/fr30/fr30.c (fr30_setup_incoming_varargs): Likewise.
(fr30_arg_partial_bytes, fr30_function_arg): Likewise.
@@ -369,7 +970,8 @@
* config/mips/mips.c (mips_output_args_xfer): Likewise.
* config/s390/s390.c (s390_call_saved_register_used): Likewise.
* config/sh/sh.c (sh_output_mi_thunk): Likewise.
- * config/microblaze/microblaze.c (microblaze_expand_prologue): Likewise.
+ * config/microblaze/microblaze.c (microblaze_expand_prologue):
+ Likewise.
* config/m32r/m32r.c (m32r_return_in_memory): Adjust for changed
m32r_pass_by_reference.
@@ -377,19 +979,17 @@
* tree-vectorizer.h (vect_recog_func_ptr): Change the first
argument to be a VEC of statements.
- * tree-vect-loop.c (vect_determine_vectorization_factor):
- Remove the assert that pattern statements have to have their
- vector type set.
+ * tree-vect-loop.c (vect_determine_vectorization_factor): Remove the
+ assert that pattern statements have to have their vector type set.
* tree-vect-patterns.c (vect_recog_widen_sum_pattern):
Change the first argument to be a VEC of statements. Update
documentation.
(vect_recog_dot_prod_pattern, vect_recog_pow_pattern): Likewise.
(vect_handle_widen_mult_by_const): New function.
- (vect_recog_widen_mult_pattern): Change the first argument to
- be a VEC of statements. Update documentation. Check that the
- constant is INTEGER_CST. Support multiplication by a constant
- that fits an intermediate type - call
- vect_handle_widen_mult_by_const.
+ (vect_recog_widen_mult_pattern): Change the first argument to be a
+ VEC of statements. Update documentation. Check that the constant is
+ INTEGER_CST. Support multiplication by a constant that fits an
+ intermediate type - call vect_handle_widen_mult_by_const.
(vect_pattern_recog_1): Update vect_recog_func_ptr and its
call. Handle additional pattern statements if necessary.
@@ -414,13 +1014,10 @@
(count_leading_zeros): New macro.
(count_trailing_zeros): New macro.
(COUNT_LEADING_ZEROS_0): New macro.
- * config/avr/t-avr (LIB1ASMFUNCS): Add
- _ffssi2, _ffshi2, _loop_ffsqi2,
- _ctzsi2, _ctzhi2, _clzdi2, _clzsi2, _clzhi2,
- _paritydi2, _paritysi2, _parityhi2,
- _popcounthi2,_popcountsi2, _popcountdi2, _popcountqi2,
- _bswapsi2, _bswapdi2,
- _ashldi3, _ashrdi3, _lshrdi3
+ * config/avr/t-avr (LIB1ASMFUNCS): Add _ffssi2, _ffshi2, _loop_ffsqi2,
+ _ctzsi2, _ctzhi2, _clzdi2, _clzsi2, _clzhi2, _paritydi2, _paritysi2,
+ _parityhi2, _popcounthi2,_popcountsi2, _popcountdi2, _popcountqi2,
+ _bswapsi2, _bswapdi2, _ashldi3, _ashrdi3, _lshrdi3.
(LIB2FUNCS_EXCLUDE): Add _clz.
* config/avr/libgcc.S (XCALL): Move up in file.
(XJMP): New C Macro.
@@ -453,8 +1050,8 @@
* gimple.c (canonicalize_cond_expr_cond): (bool)x is not
the same as x != 0.
- * fold-const.c (fold_binary_loc): Do not fold X & 1 != 0 to
- (bool) X & 1.
+ * fold-const.c (fold_binary_loc): Do not fold X & 1 != 0
+ to (bool) X & 1.
* ipa-prop.c (ipa_analyze_indirect_call_uses): Also allow
equality compares against zero for the lower bit.
@@ -516,12 +1113,10 @@
PR debug/49382
* dwarf2out.c (dw_loc_list_node): Add force field.
- (add_var_loc_to_decl): For PARM_DECL, attempt to keep
- the incoming location in the list, even if it is modified
- before first real insn.
+ (add_var_loc_to_decl): For PARM_DECL, attempt to keep the incoming
+ location in the list, even if it is modified before first real insn.
(output_loc_list): Emit empty ranges with force flag set.
- (dw_loc_list): If first range of a PARM_DECL is empty,
- set force flag.
+ (dw_loc_list): If first range of a PARM_DECL is empty, set force flag.
2011-06-15 Alexander Monakov <amonakov@ispras.ru>
@@ -605,8 +1200,7 @@
cfglayout.o, $(out_object_file), $(common_out_object_file)):
Update dependencies.
(common/common-targhooks.o): New.
- * common/config/default-common.c: Include tm.h. Add FIXME
- comment.
+ * common/config/default-common.c: Include tm.h. Add FIXME comment.
* common/config/pa/pa-common.c: Include more headers. Take
copyright dates from pa.c.
(pa_option_optimization_table, pa_handle_option,
@@ -800,8 +1394,7 @@
v850_option_optimization_table, TARGET_DEFAULT_TARGET_FLAGS,
TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE): Move to
v850-common.c.
- * config/vax/vax.c (TARGET_DEFAULT_TARGET_FLAGS): Move to
- vax-common.c.
+ * config/vax/vax.c (TARGET_DEFAULT_TARGET_FLAGS): Move to vax-common.c.
* config/xtensa/xtensa.c (xtensa_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE):
Move to xtensa-common.c.
@@ -823,17 +1416,14 @@
(init_eh, finish_eh_generation,
output_one_function_exception_table): Use
targetm_common.except_unwind_info.
- (switch_to_exception_section): Use
- targetm_common.have_named_sections.
+ (switch_to_exception_section): Use targetm_common.have_named_sections.
* explow.c: Include common/common-target.h.
* expr.c: Include common/common-target.h.
- (build_personality_function): Use
- targetm_common.except_unwind_info.
+ (build_personality_function): Use targetm_common.except_unwind_info.
* function.c: Include common/common-target.h.
(expand_function_end): Use targetm_common.except_unwind_info.
* haifa-sched.c: Include common/common-target.h.
- (sched_create_recovery_edges): Use
- targetm_common.have_named_sections.
+ (sched_create_recovery_edges): Use targetm_common.have_named_sections.
* lto-opts.c: Include common/common-target.h instead of target.h.
(lto_reissue_options): Use targetm_common.handle_option.
* opts.c: Include common/common-target.h.
@@ -852,11 +1442,9 @@
* toplev.c: Include common/common-target.h.
(process_options): Use targetm_common.have_named_sections.
* tree-tailcall.c: Include common/common-target.h.
- (suitable_for_tail_call_opt_p): Use
- targetm_common.except_unwind_info.
+ (suitable_for_tail_call_opt_p): Use targetm_common.except_unwind_info.
* tree.c: Include common/common-target.h.
- (build_common_builtin_nodes): Use
- targetm_common.except_unwind_info.
+ (build_common_builtin_nodes): Use targetm_common.except_unwind_info.
* varasm.c: Include common/common-target.h.
(resolve_unique_section, hot_function_section,
default_function_section): Use targetm_common.have_named_sections.
@@ -873,8 +1461,7 @@
(can_escape): New function.
(set_usage_bits): Add additional parameter; record information
about escaped locations.
- (record_store): Pass EXPR corresponding to MEM to
- set_usage_bits.
+ (record_store): Pass EXPR corresponding to MEM to set_usage_bits.
(dse_step2_nospill): Set kill_on_calls based on
group->escaped_n and group->escaped_n.
(add_wild_read): Refactor into...
@@ -882,12 +1469,10 @@
(free_read_records): ... New function.
(add_non_frame_wild_read): New function.
(scan_insn): Call add_non_frame_wild_read on non-const calls.
- (scan_reads_nospill): Handle instructions with
- non_frame_wild_read.
+ (scan_reads_nospill): Handle instructions with non_frame_wild_read.
(dse_step5_nospill): Call scan_reads_nospill for instructions
marked as non_frame_wild_read.
- (dse_step7): Free escaped_n, escaped_p and kill_on_calls
- bitmaps.
+ (dse_step7): Free escaped_n, escaped_p and kill_on_calls bitmaps.
2011-06-14 Joseph Myers <joseph@codesourcery.com>
@@ -1232,13 +1817,13 @@
2011-06-11 Jan Hubicka <jh@suse.cz>
- * lto-streamer-out.c (produce_symtab): Stream out the newly represented
- aliases.
+ * lto-streamer-out.c (produce_symtab): Stream out the newly
+ represented aliases.
2011-06-11 Jan Hubicka <jh@suse.cz>
- * ipa-prop.c (ipa_make_edge_direct_to_target): Fix code setting varying
- args.
+ * ipa-prop.c (ipa_make_edge_direct_to_target): Fix code setting
+ varying args.
(ipa_update_after_lto_read): Likewise.
(ipa_write_node_info): Do not sream call_with_var_arguments.
(ipa_read_node_info): Likewise.
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 8a9a318..cfc263e 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20110621
+20110627
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 09f8e8e..9685880 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -501,6 +501,10 @@
xm_defines=@xm_defines@
lang_checks=check-gcc
lang_checks_parallelized=check-gcc
+dg_target_exps:=alpha.exp,arm.exp,avr.exp,bfin.exp,cris.exp,frv.exp
+dg_target_exps:=$(dg_target_exps),i386.exp,ia64.exp,m68k.exp,microblaze.exp
+dg_target_exps:=$(dg_target_exps),mips.exp,powerpc.exp,rx.exp,s390.exp,sh.exp
+dg_target_exps:=$(dg_target_exps),sparc.exp,spu.exp,xstormy16.exp
# This lists a couple of test files that take most time during check-gcc.
# When doing parallelized check-gcc, these can run in parallel with the
# remaining tests. Each word in this variable stands for work for one
@@ -514,10 +518,14 @@
# */ prefixed to it in runtest_file_p, it is usually desirable to include
# a subdirectory name.
check_gcc_parallelize=execute.exp=execute/2* \
- execute.exp=execute/\[013-9a-zA-Z\]* \
- compile.exp dg.exp \
- dg-torture.exp,builtins.exp \
- struct-layout-1.exp,unsorted.exp,stackalign.exp,i386.exp
+ execute.exp=execute/\[013-9a-fA-F\]* \
+ execute.exp=execute/\[pP\]*,dg.exp \
+ execute.exp=execute/\[g-oq-zG-OQ-Z\]*,compile.exp=compile/2* \
+ compile.exp=compile/\[9pP\]*,builtins.exp \
+ compile.exp=compile/\[013-8a-oq-zA-OQ-Z\]* \
+ dg-torture.exp,ieee.exp \
+ vect.exp,guality.exp,unsorted.exp \
+ struct-layout-1.exp,stackalign.exp,$(dg_target_exps)
lang_opt_files=@lang_opt_files@ $(srcdir)/c-family/c.opt $(srcdir)/common.opt
lang_specs_files=@lang_specs_files@
lang_tree_files=@lang_tree_files@
@@ -1347,7 +1355,6 @@
options-save.o \
opts-global.o \
opts.o \
- params.o \
passes.o \
plugin.o \
pointer-set.o \
@@ -1496,8 +1503,8 @@
# Objects in libcommon-target.a, used by drivers and by the core
# compiler and containing target-dependent code.
-OBJS-libcommon-target = $(common_out_object_file) prefix.o opts-common.o \
- options.o vec.o hooks.o common/common-targhooks.o
+OBJS-libcommon-target = $(common_out_object_file) prefix.o params.o \
+ opts-common.o options.o vec.o hooks.o common/common-targhooks.o
# This lists all host objects for the front ends.
ALL_HOST_FRONTEND_OBJS = $(C_OBJS) \
@@ -2842,7 +2849,7 @@
version.h $(INPUT_H) intl.h $(DIAGNOSTIC_H) diagnostic.def
opts.o : opts.c $(OPTS_H) $(OPTIONS_H) $(DIAGNOSTIC_CORE_H) $(CONFIG_H) $(SYSTEM_H) \
coretypes.h $(TM_H) $(RTL_H) \
- $(DIAGNOSTIC_H) $(INSN_ATTR_H) intl.h $(TARGET_H) $(COMMON_TARGET_H) \
+ $(DIAGNOSTIC_H) $(INSN_ATTR_H) intl.h $(COMMON_TARGET_H) \
$(FLAGS_H) $(PARAMS_H) opts-diagnostic.h
opts-global.o : opts-global.c $(CONFIG_H) $(SYSTEM_H) coretypes.h \
$(DIAGNOSTIC_H) $(OPTS_H) $(FLAGS_H) $(GGC_H) $(TREE_H) langhooks.h \
@@ -3530,8 +3537,8 @@
$(TARGET_H) $(BASIC_BLOCK_H) $(EXPR_H) output.h $(EXCEPT_H) $(TM_P_H) \
$(OPTABS_H) $(CFGLOOP_H) hard-reg-set.h $(TIMEVAR_H) \
$(TREE_PASS_H) $(DF_H) $(DBGCNT_H)
-params.o : params.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(PARAMS_H) \
- $(DIAGNOSTIC_CORE_H)
+params.o : params.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(COMMON_TARGET_H) \
+ $(PARAMS_H) $(DIAGNOSTIC_CORE_H)
pointer-set.o: pointer-set.c pointer-set.h $(CONFIG_H) $(SYSTEM_H)
hooks.o: hooks.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(HOOKS_H)
pretty-print.o: $(CONFIG_H) $(SYSTEM_H) coretypes.h intl.h $(PRETTY_PRINT_H)
@@ -3556,7 +3563,7 @@
$(out_file) $(OUTPUT_OPTION)
$(common_out_object_file): $(common_out_file) $(CONFIG_H) $(SYSTEM_H) \
- coretypes.h $(COMMON_TARGET_H) $(COMMON_TARGET_DEF_H) \
+ coretypes.h $(COMMON_TARGET_H) $(COMMON_TARGET_DEF_H) $(PARAMS_H) \
$(DIAGNOSTIC_CORE_H) $(FLAGS_H) $(OPTS_H) $(TM_H) $(TM_P_H) $(MACHMODE_H)
$(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
$< $(OUTPUT_OPTION)
diff --git a/gcc/attribs.c b/gcc/attribs.c
index ce977d4..98a6310 100644
--- a/gcc/attribs.c
+++ b/gcc/attribs.c
@@ -198,6 +198,11 @@
str.str = attr->name;
str.length = strlen (str.str);
+
+ /* Attribute names in the table must be in the form 'text' and not
+ in the form '__text__'. */
+ gcc_assert (str.length > 0 && str.str[0] != '_');
+
slot = htab_find_slot_with_hash (attribute_hash, &str,
substring_hash (str.str, str.length),
INSERT);
@@ -279,6 +284,7 @@
/* A "naked" function attribute implies "noinline" and "noclone" for
those targets that support it. */
if (TREE_CODE (*node) == FUNCTION_DECL
+ && attributes
&& lookup_attribute_spec (get_identifier ("naked"))
&& lookup_attribute ("naked", attributes) != NULL)
{
diff --git a/gcc/builtins.c b/gcc/builtins.c
index cf975e5..4e8a95f 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -4578,7 +4578,7 @@
/* Compute op, into TARGET if possible.
Set TARGET to wherever the result comes back. */
target = expand_unop (TYPE_MODE (TREE_TYPE (CALL_EXPR_ARG (exp, 0))),
- op_optab, op0, target, 1);
+ op_optab, op0, target, op_optab != clrsb_optab);
gcc_assert (target);
return convert_to_mode (target_mode, target, 0);
@@ -5083,30 +5083,30 @@
switch (fcode)
{
- case BUILT_IN_FETCH_AND_NAND_1:
- case BUILT_IN_FETCH_AND_NAND_2:
- case BUILT_IN_FETCH_AND_NAND_4:
- case BUILT_IN_FETCH_AND_NAND_8:
- case BUILT_IN_FETCH_AND_NAND_16:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_1:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_2:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_4:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_8:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_16:
if (warned_f_a_n)
break;
- fndecl = implicit_built_in_decls[BUILT_IN_FETCH_AND_NAND_N];
+ fndecl = implicit_built_in_decls[BUILT_IN_SYNC_FETCH_AND_NAND_N];
inform (loc, "%qD changed semantics in GCC 4.4", fndecl);
warned_f_a_n = true;
break;
- case BUILT_IN_NAND_AND_FETCH_1:
- case BUILT_IN_NAND_AND_FETCH_2:
- case BUILT_IN_NAND_AND_FETCH_4:
- case BUILT_IN_NAND_AND_FETCH_8:
- case BUILT_IN_NAND_AND_FETCH_16:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_1:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_2:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_4:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_8:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_16:
if (warned_n_a_f)
break;
- fndecl = implicit_built_in_decls[BUILT_IN_NAND_AND_FETCH_N];
+ fndecl = implicit_built_in_decls[BUILT_IN_SYNC_NAND_AND_FETCH_N];
inform (loc, "%qD changed semantics in GCC 4.4", fndecl);
warned_n_a_f = true;
break;
@@ -5180,7 +5180,7 @@
the results. */
static rtx
-expand_builtin_lock_test_and_set (enum machine_mode mode, tree exp,
+expand_builtin_sync_lock_test_and_set (enum machine_mode mode, tree exp,
rtx target)
{
rtx val, mem;
@@ -5202,7 +5202,7 @@
/* Expand the __sync_synchronize intrinsic. */
static void
-expand_builtin_synchronize (void)
+expand_builtin_sync_synchronize (void)
{
gimple x;
VEC (tree, gc) *v_clobbers;
@@ -5234,7 +5234,7 @@
/* Expand the __sync_lock_release intrinsic. EXP is the CALL_EXPR. */
static void
-expand_builtin_lock_release (enum machine_mode mode, tree exp)
+expand_builtin_sync_lock_release (enum machine_mode mode, tree exp)
{
struct expand_operand ops[2];
enum insn_code icode;
@@ -5255,7 +5255,7 @@
/* Otherwise we can implement this operation by emitting a barrier
followed by a store of zero. */
- expand_builtin_synchronize ();
+ expand_builtin_sync_synchronize ();
emit_move_insn (mem, const0_rtx);
}
@@ -5580,6 +5580,14 @@
return target;
break;
+ CASE_INT_FN (BUILT_IN_CLRSB):
+ case BUILT_IN_CLRSBIMAX:
+ target = expand_builtin_unop (target_mode, exp, target,
+ subtarget, clrsb_optab);
+ if (target)
+ return target;
+ break;
+
CASE_INT_FN (BUILT_IN_POPCOUNT):
case BUILT_IN_POPCOUNTIMAX:
target = expand_builtin_unop (target_mode, exp, target,
@@ -5836,199 +5844,201 @@
return target;
break;
- case BUILT_IN_FETCH_AND_ADD_1:
- case BUILT_IN_FETCH_AND_ADD_2:
- case BUILT_IN_FETCH_AND_ADD_4:
- case BUILT_IN_FETCH_AND_ADD_8:
- case BUILT_IN_FETCH_AND_ADD_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_FETCH_AND_ADD_1);
+ case BUILT_IN_SYNC_FETCH_AND_ADD_1:
+ case BUILT_IN_SYNC_FETCH_AND_ADD_2:
+ case BUILT_IN_SYNC_FETCH_AND_ADD_4:
+ case BUILT_IN_SYNC_FETCH_AND_ADD_8:
+ case BUILT_IN_SYNC_FETCH_AND_ADD_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_FETCH_AND_ADD_1);
target = expand_builtin_sync_operation (mode, exp, PLUS,
false, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_FETCH_AND_SUB_1:
- case BUILT_IN_FETCH_AND_SUB_2:
- case BUILT_IN_FETCH_AND_SUB_4:
- case BUILT_IN_FETCH_AND_SUB_8:
- case BUILT_IN_FETCH_AND_SUB_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_FETCH_AND_SUB_1);
+ case BUILT_IN_SYNC_FETCH_AND_SUB_1:
+ case BUILT_IN_SYNC_FETCH_AND_SUB_2:
+ case BUILT_IN_SYNC_FETCH_AND_SUB_4:
+ case BUILT_IN_SYNC_FETCH_AND_SUB_8:
+ case BUILT_IN_SYNC_FETCH_AND_SUB_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_FETCH_AND_SUB_1);
target = expand_builtin_sync_operation (mode, exp, MINUS,
false, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_FETCH_AND_OR_1:
- case BUILT_IN_FETCH_AND_OR_2:
- case BUILT_IN_FETCH_AND_OR_4:
- case BUILT_IN_FETCH_AND_OR_8:
- case BUILT_IN_FETCH_AND_OR_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_FETCH_AND_OR_1);
+ case BUILT_IN_SYNC_FETCH_AND_OR_1:
+ case BUILT_IN_SYNC_FETCH_AND_OR_2:
+ case BUILT_IN_SYNC_FETCH_AND_OR_4:
+ case BUILT_IN_SYNC_FETCH_AND_OR_8:
+ case BUILT_IN_SYNC_FETCH_AND_OR_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_FETCH_AND_OR_1);
target = expand_builtin_sync_operation (mode, exp, IOR,
false, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_FETCH_AND_AND_1:
- case BUILT_IN_FETCH_AND_AND_2:
- case BUILT_IN_FETCH_AND_AND_4:
- case BUILT_IN_FETCH_AND_AND_8:
- case BUILT_IN_FETCH_AND_AND_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_FETCH_AND_AND_1);
+ case BUILT_IN_SYNC_FETCH_AND_AND_1:
+ case BUILT_IN_SYNC_FETCH_AND_AND_2:
+ case BUILT_IN_SYNC_FETCH_AND_AND_4:
+ case BUILT_IN_SYNC_FETCH_AND_AND_8:
+ case BUILT_IN_SYNC_FETCH_AND_AND_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_FETCH_AND_AND_1);
target = expand_builtin_sync_operation (mode, exp, AND,
false, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_FETCH_AND_XOR_1:
- case BUILT_IN_FETCH_AND_XOR_2:
- case BUILT_IN_FETCH_AND_XOR_4:
- case BUILT_IN_FETCH_AND_XOR_8:
- case BUILT_IN_FETCH_AND_XOR_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_FETCH_AND_XOR_1);
+ case BUILT_IN_SYNC_FETCH_AND_XOR_1:
+ case BUILT_IN_SYNC_FETCH_AND_XOR_2:
+ case BUILT_IN_SYNC_FETCH_AND_XOR_4:
+ case BUILT_IN_SYNC_FETCH_AND_XOR_8:
+ case BUILT_IN_SYNC_FETCH_AND_XOR_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_FETCH_AND_XOR_1);
target = expand_builtin_sync_operation (mode, exp, XOR,
false, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_FETCH_AND_NAND_1:
- case BUILT_IN_FETCH_AND_NAND_2:
- case BUILT_IN_FETCH_AND_NAND_4:
- case BUILT_IN_FETCH_AND_NAND_8:
- case BUILT_IN_FETCH_AND_NAND_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_FETCH_AND_NAND_1);
+ case BUILT_IN_SYNC_FETCH_AND_NAND_1:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_2:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_4:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_8:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_FETCH_AND_NAND_1);
target = expand_builtin_sync_operation (mode, exp, NOT,
false, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_ADD_AND_FETCH_1:
- case BUILT_IN_ADD_AND_FETCH_2:
- case BUILT_IN_ADD_AND_FETCH_4:
- case BUILT_IN_ADD_AND_FETCH_8:
- case BUILT_IN_ADD_AND_FETCH_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_ADD_AND_FETCH_1);
+ case BUILT_IN_SYNC_ADD_AND_FETCH_1:
+ case BUILT_IN_SYNC_ADD_AND_FETCH_2:
+ case BUILT_IN_SYNC_ADD_AND_FETCH_4:
+ case BUILT_IN_SYNC_ADD_AND_FETCH_8:
+ case BUILT_IN_SYNC_ADD_AND_FETCH_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_ADD_AND_FETCH_1);
target = expand_builtin_sync_operation (mode, exp, PLUS,
true, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_SUB_AND_FETCH_1:
- case BUILT_IN_SUB_AND_FETCH_2:
- case BUILT_IN_SUB_AND_FETCH_4:
- case BUILT_IN_SUB_AND_FETCH_8:
- case BUILT_IN_SUB_AND_FETCH_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_SUB_AND_FETCH_1);
+ case BUILT_IN_SYNC_SUB_AND_FETCH_1:
+ case BUILT_IN_SYNC_SUB_AND_FETCH_2:
+ case BUILT_IN_SYNC_SUB_AND_FETCH_4:
+ case BUILT_IN_SYNC_SUB_AND_FETCH_8:
+ case BUILT_IN_SYNC_SUB_AND_FETCH_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_SUB_AND_FETCH_1);
target = expand_builtin_sync_operation (mode, exp, MINUS,
true, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_OR_AND_FETCH_1:
- case BUILT_IN_OR_AND_FETCH_2:
- case BUILT_IN_OR_AND_FETCH_4:
- case BUILT_IN_OR_AND_FETCH_8:
- case BUILT_IN_OR_AND_FETCH_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_OR_AND_FETCH_1);
+ case BUILT_IN_SYNC_OR_AND_FETCH_1:
+ case BUILT_IN_SYNC_OR_AND_FETCH_2:
+ case BUILT_IN_SYNC_OR_AND_FETCH_4:
+ case BUILT_IN_SYNC_OR_AND_FETCH_8:
+ case BUILT_IN_SYNC_OR_AND_FETCH_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_OR_AND_FETCH_1);
target = expand_builtin_sync_operation (mode, exp, IOR,
true, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_AND_AND_FETCH_1:
- case BUILT_IN_AND_AND_FETCH_2:
- case BUILT_IN_AND_AND_FETCH_4:
- case BUILT_IN_AND_AND_FETCH_8:
- case BUILT_IN_AND_AND_FETCH_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_AND_AND_FETCH_1);
+ case BUILT_IN_SYNC_AND_AND_FETCH_1:
+ case BUILT_IN_SYNC_AND_AND_FETCH_2:
+ case BUILT_IN_SYNC_AND_AND_FETCH_4:
+ case BUILT_IN_SYNC_AND_AND_FETCH_8:
+ case BUILT_IN_SYNC_AND_AND_FETCH_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_AND_AND_FETCH_1);
target = expand_builtin_sync_operation (mode, exp, AND,
true, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_XOR_AND_FETCH_1:
- case BUILT_IN_XOR_AND_FETCH_2:
- case BUILT_IN_XOR_AND_FETCH_4:
- case BUILT_IN_XOR_AND_FETCH_8:
- case BUILT_IN_XOR_AND_FETCH_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_XOR_AND_FETCH_1);
+ case BUILT_IN_SYNC_XOR_AND_FETCH_1:
+ case BUILT_IN_SYNC_XOR_AND_FETCH_2:
+ case BUILT_IN_SYNC_XOR_AND_FETCH_4:
+ case BUILT_IN_SYNC_XOR_AND_FETCH_8:
+ case BUILT_IN_SYNC_XOR_AND_FETCH_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_XOR_AND_FETCH_1);
target = expand_builtin_sync_operation (mode, exp, XOR,
true, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_NAND_AND_FETCH_1:
- case BUILT_IN_NAND_AND_FETCH_2:
- case BUILT_IN_NAND_AND_FETCH_4:
- case BUILT_IN_NAND_AND_FETCH_8:
- case BUILT_IN_NAND_AND_FETCH_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_NAND_AND_FETCH_1);
+ case BUILT_IN_SYNC_NAND_AND_FETCH_1:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_2:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_4:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_8:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_NAND_AND_FETCH_1);
target = expand_builtin_sync_operation (mode, exp, NOT,
true, target, ignore);
if (target)
return target;
break;
- case BUILT_IN_BOOL_COMPARE_AND_SWAP_1:
- case BUILT_IN_BOOL_COMPARE_AND_SWAP_2:
- case BUILT_IN_BOOL_COMPARE_AND_SWAP_4:
- case BUILT_IN_BOOL_COMPARE_AND_SWAP_8:
- case BUILT_IN_BOOL_COMPARE_AND_SWAP_16:
+ case BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_1:
+ case BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_2:
+ case BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_4:
+ case BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_8:
+ case BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_16:
if (mode == VOIDmode)
mode = TYPE_MODE (boolean_type_node);
if (!target || !register_operand (target, mode))
target = gen_reg_rtx (mode);
- mode = get_builtin_sync_mode (fcode - BUILT_IN_BOOL_COMPARE_AND_SWAP_1);
+ mode = get_builtin_sync_mode
+ (fcode - BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_1);
target = expand_builtin_compare_and_swap (mode, exp, true, target);
if (target)
return target;
break;
- case BUILT_IN_VAL_COMPARE_AND_SWAP_1:
- case BUILT_IN_VAL_COMPARE_AND_SWAP_2:
- case BUILT_IN_VAL_COMPARE_AND_SWAP_4:
- case BUILT_IN_VAL_COMPARE_AND_SWAP_8:
- case BUILT_IN_VAL_COMPARE_AND_SWAP_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_VAL_COMPARE_AND_SWAP_1);
+ case BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_1:
+ case BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_2:
+ case BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_4:
+ case BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_8:
+ case BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_16:
+ mode = get_builtin_sync_mode
+ (fcode - BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_1);
target = expand_builtin_compare_and_swap (mode, exp, false, target);
if (target)
return target;
break;
- case BUILT_IN_LOCK_TEST_AND_SET_1:
- case BUILT_IN_LOCK_TEST_AND_SET_2:
- case BUILT_IN_LOCK_TEST_AND_SET_4:
- case BUILT_IN_LOCK_TEST_AND_SET_8:
- case BUILT_IN_LOCK_TEST_AND_SET_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_LOCK_TEST_AND_SET_1);
- target = expand_builtin_lock_test_and_set (mode, exp, target);
+ case BUILT_IN_SYNC_LOCK_TEST_AND_SET_1:
+ case BUILT_IN_SYNC_LOCK_TEST_AND_SET_2:
+ case BUILT_IN_SYNC_LOCK_TEST_AND_SET_4:
+ case BUILT_IN_SYNC_LOCK_TEST_AND_SET_8:
+ case BUILT_IN_SYNC_LOCK_TEST_AND_SET_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_LOCK_TEST_AND_SET_1);
+ target = expand_builtin_sync_lock_test_and_set (mode, exp, target);
if (target)
return target;
break;
- case BUILT_IN_LOCK_RELEASE_1:
- case BUILT_IN_LOCK_RELEASE_2:
- case BUILT_IN_LOCK_RELEASE_4:
- case BUILT_IN_LOCK_RELEASE_8:
- case BUILT_IN_LOCK_RELEASE_16:
- mode = get_builtin_sync_mode (fcode - BUILT_IN_LOCK_RELEASE_1);
- expand_builtin_lock_release (mode, exp);
+ case BUILT_IN_SYNC_LOCK_RELEASE_1:
+ case BUILT_IN_SYNC_LOCK_RELEASE_2:
+ case BUILT_IN_SYNC_LOCK_RELEASE_4:
+ case BUILT_IN_SYNC_LOCK_RELEASE_8:
+ case BUILT_IN_SYNC_LOCK_RELEASE_16:
+ mode = get_builtin_sync_mode (fcode - BUILT_IN_SYNC_LOCK_RELEASE_1);
+ expand_builtin_sync_lock_release (mode, exp);
return const0_rtx;
- case BUILT_IN_SYNCHRONIZE:
- expand_builtin_synchronize ();
+ case BUILT_IN_SYNC_SYNCHRONIZE:
+ expand_builtin_sync_synchronize ();
return const0_rtx;
case BUILT_IN_OBJECT_SIZE:
@@ -7257,7 +7267,8 @@
{
hi = TREE_INT_CST_HIGH (arg);
if (width < 2 * HOST_BITS_PER_WIDE_INT)
- hi &= ~((HOST_WIDE_INT) (-1) >> (width - HOST_BITS_PER_WIDE_INT));
+ hi &= ~((unsigned HOST_WIDE_INT) (-1)
+ << (width - HOST_BITS_PER_WIDE_INT));
}
else
{
@@ -7295,6 +7306,26 @@
result = width;
break;
+ CASE_INT_FN (BUILT_IN_CLRSB):
+ if (width > HOST_BITS_PER_WIDE_INT
+ && (hi & ((unsigned HOST_WIDE_INT) 1
+ << (width - HOST_BITS_PER_WIDE_INT - 1))) != 0)
+ {
+ hi = ~hi & ~((unsigned HOST_WIDE_INT) (-1)
+ << (width - HOST_BITS_PER_WIDE_INT - 1));
+ lo = ~lo;
+ }
+ else if (width <= HOST_BITS_PER_WIDE_INT
+ && (lo & ((unsigned HOST_WIDE_INT) 1 << (width - 1))) != 0)
+ lo = ~lo & ~((unsigned HOST_WIDE_INT) (-1) << (width - 1));
+ if (hi != 0)
+ result = width - floor_log2 (hi) - 2 - HOST_BITS_PER_WIDE_INT;
+ else if (lo != 0)
+ result = width - floor_log2 (lo) - 2;
+ else
+ result = width - 1;
+ break;
+
CASE_INT_FN (BUILT_IN_POPCOUNT):
result = 0;
while (lo)
@@ -9729,6 +9760,7 @@
CASE_INT_FN (BUILT_IN_FFS):
CASE_INT_FN (BUILT_IN_CLZ):
CASE_INT_FN (BUILT_IN_CTZ):
+ CASE_INT_FN (BUILT_IN_CLRSB):
CASE_INT_FN (BUILT_IN_POPCOUNT):
CASE_INT_FN (BUILT_IN_PARITY):
return fold_builtin_bitop (fndecl, arg0);
diff --git a/gcc/builtins.def b/gcc/builtins.def
index 3e102e3..30699f3 100644
--- a/gcc/builtins.def
+++ b/gcc/builtins.def
@@ -620,6 +620,10 @@
DEF_GCC_BUILTIN (BUILT_IN_CTZIMAX, "ctzimax", BT_FN_INT_UINTMAX, ATTR_CONST_NOTHROW_LEAF_LIST)
DEF_GCC_BUILTIN (BUILT_IN_CTZL, "ctzl", BT_FN_INT_ULONG, ATTR_CONST_NOTHROW_LEAF_LIST)
DEF_GCC_BUILTIN (BUILT_IN_CTZLL, "ctzll", BT_FN_INT_ULONGLONG, ATTR_CONST_NOTHROW_LEAF_LIST)
+DEF_GCC_BUILTIN (BUILT_IN_CLRSB, "clrsb", BT_FN_INT_INT, ATTR_CONST_NOTHROW_LEAF_LIST)
+DEF_GCC_BUILTIN (BUILT_IN_CLRSBIMAX, "clrsbimax", BT_FN_INT_INTMAX, ATTR_CONST_NOTHROW_LEAF_LIST)
+DEF_GCC_BUILTIN (BUILT_IN_CLRSBL, "clrsbl", BT_FN_INT_LONG, ATTR_CONST_NOTHROW_LEAF_LIST)
+DEF_GCC_BUILTIN (BUILT_IN_CLRSBLL, "clrsbll", BT_FN_INT_LONGLONG, ATTR_CONST_NOTHROW_LEAF_LIST)
DEF_EXT_LIB_BUILTIN (BUILT_IN_DCGETTEXT, "dcgettext", BT_FN_STRING_CONST_STRING_CONST_STRING_INT, ATTR_FORMAT_ARG_2)
DEF_EXT_LIB_BUILTIN (BUILT_IN_DGETTEXT, "dgettext", BT_FN_STRING_CONST_STRING_CONST_STRING, ATTR_FORMAT_ARG_2)
DEF_GCC_BUILTIN (BUILT_IN_DWARF_CFA, "dwarf_cfa", BT_FN_PTR, ATTR_NULL)
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index e42a3c5..1c7552b 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -238,7 +238,7 @@
/* The resulting tree type. */
union GTY((desc ("TREE_CODE (&%h.generic) == IDENTIFIER_NODE"),
- chain_next ("TREE_CODE (&%h.generic) == INTEGER_TYPE ? (union lang_tree_node *) TYPE_NEXT_VARIANT (&%h.generic) : CODE_CONTAINS_STRUCT (TREE_CODE (&%h.generic), TS_COMMON) ? ((union lang_tree_node *) TREE_CHAIN (&%h.generic)) : NULL"))) lang_tree_node
+ chain_next ("CODE_CONTAINS_STRUCT (TREE_CODE (&%h.generic), TS_TYPE_COMMON) ? (union lang_tree_node *) TYPE_NEXT_VARIANT (&%h.generic) : CODE_CONTAINS_STRUCT (TREE_CODE (&%h.generic), TS_COMMON) ? ((union lang_tree_node *) TREE_CHAIN (&%h.generic)) : NULL"))) lang_tree_node
{
union tree_node GTY ((tag ("0"),
desc ("tree_node_structure (&%h)")))
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index afa31de..29cc719 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,7 @@
+2011-06-21 Andrew MacLeod <amacleod@redhat.com>
+
+ * c-common.c: Add sync_ or SYNC__ to builtin names.
+ * c-omp.c: Add sync_ or SYNC__ to builtin names.
2011-06-20 Pierre Vittet <piervit@pvittet.com>
diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c
index e5849ef..3607694 100644
--- a/gcc/c-family/c-common.c
+++ b/gcc/c-family/c-common.c
@@ -9044,22 +9044,22 @@
/* Handle BUILT_IN_NORMAL here. */
switch (orig_code)
{
- case BUILT_IN_FETCH_AND_ADD_N:
- case BUILT_IN_FETCH_AND_SUB_N:
- case BUILT_IN_FETCH_AND_OR_N:
- case BUILT_IN_FETCH_AND_AND_N:
- case BUILT_IN_FETCH_AND_XOR_N:
- case BUILT_IN_FETCH_AND_NAND_N:
- case BUILT_IN_ADD_AND_FETCH_N:
- case BUILT_IN_SUB_AND_FETCH_N:
- case BUILT_IN_OR_AND_FETCH_N:
- case BUILT_IN_AND_AND_FETCH_N:
- case BUILT_IN_XOR_AND_FETCH_N:
- case BUILT_IN_NAND_AND_FETCH_N:
- case BUILT_IN_BOOL_COMPARE_AND_SWAP_N:
- case BUILT_IN_VAL_COMPARE_AND_SWAP_N:
- case BUILT_IN_LOCK_TEST_AND_SET_N:
- case BUILT_IN_LOCK_RELEASE_N:
+ case BUILT_IN_SYNC_FETCH_AND_ADD_N:
+ case BUILT_IN_SYNC_FETCH_AND_SUB_N:
+ case BUILT_IN_SYNC_FETCH_AND_OR_N:
+ case BUILT_IN_SYNC_FETCH_AND_AND_N:
+ case BUILT_IN_SYNC_FETCH_AND_XOR_N:
+ case BUILT_IN_SYNC_FETCH_AND_NAND_N:
+ case BUILT_IN_SYNC_ADD_AND_FETCH_N:
+ case BUILT_IN_SYNC_SUB_AND_FETCH_N:
+ case BUILT_IN_SYNC_OR_AND_FETCH_N:
+ case BUILT_IN_SYNC_AND_AND_FETCH_N:
+ case BUILT_IN_SYNC_XOR_AND_FETCH_N:
+ case BUILT_IN_SYNC_NAND_AND_FETCH_N:
+ case BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_N:
+ case BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_N:
+ case BUILT_IN_SYNC_LOCK_TEST_AND_SET_N:
+ case BUILT_IN_SYNC_LOCK_RELEASE_N:
{
int n = sync_resolve_size (function, params);
tree new_function, first_param, result;
@@ -9073,8 +9073,8 @@
first_param = VEC_index (tree, params, 0);
result = build_function_call_vec (loc, new_function, params, NULL);
- if (orig_code != BUILT_IN_BOOL_COMPARE_AND_SWAP_N
- && orig_code != BUILT_IN_LOCK_RELEASE_N)
+ if (orig_code != BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_N
+ && orig_code != BUILT_IN_SYNC_LOCK_RELEASE_N)
result = sync_resolve_return (first_param, result);
return result;
diff --git a/gcc/c-family/c-omp.c b/gcc/c-family/c-omp.c
index b9b1448..1ee0bf0 100644
--- a/gcc/c-family/c-omp.c
+++ b/gcc/c-family/c-omp.c
@@ -169,7 +169,7 @@
{
tree x;
- x = built_in_decls[BUILT_IN_SYNCHRONIZE];
+ x = built_in_decls[BUILT_IN_SYNC_SYNCHRONIZE];
x = build_call_expr_loc (loc, x, 0);
add_stmt (x);
}
diff --git a/gcc/calls.c b/gcc/calls.c
index 3d9a03f..bba477c 100644
--- a/gcc/calls.c
+++ b/gcc/calls.c
@@ -1084,6 +1084,8 @@
&& TREE_CODE (base) != SSA_NAME
&& (!DECL_P (base) || MEM_P (DECL_RTL (base)))))
{
+ mark_addressable (args[i].tree_value);
+
/* We can't use sibcalls if a callee-copied argument is
stored in the current function's frame. */
if (!call_from_thunk_p && DECL_P (base) && !TREE_STATIC (base))
@@ -3524,7 +3526,12 @@
}
if (MEM_P (val) && !must_copy)
- slot = val;
+ {
+ tree val_expr = MEM_EXPR (val);
+ if (val_expr)
+ mark_addressable (val_expr);
+ slot = val;
+ }
else
{
slot = assign_temp (lang_hooks.types.type_for_mode (mode, 0),
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index efd3ed9..000a790 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -57,6 +57,8 @@
of comminucating the profile info to the builtin expanders. */
gimple currently_expanding_gimple_stmt;
+static rtx expand_debug_expr (tree);
+
/* Return an expression tree corresponding to the RHS of GIMPLE
statement STMT. */
@@ -1863,6 +1865,21 @@
SET_EXPR_LOCATION (exp, gimple_location (stmt));
TREE_BLOCK (exp) = gimple_block (stmt);
+ /* Ensure RTL is created for debug args. */
+ if (decl && DECL_HAS_DEBUG_ARGS_P (decl))
+ {
+ VEC(tree, gc) **debug_args = decl_debug_args_lookup (decl);
+ unsigned int ix;
+ tree dtemp;
+
+ if (debug_args)
+ for (ix = 1; VEC_iterate (tree, *debug_args, ix, dtemp); ix += 2)
+ {
+ gcc_assert (TREE_CODE (dtemp) == DEBUG_EXPR_DECL);
+ expand_debug_expr (dtemp);
+ }
+ }
+
lhs = gimple_call_lhs (stmt);
if (lhs)
expand_assignment (lhs, exp, false);
@@ -3297,6 +3314,120 @@
}
}
+/* Return an RTX equivalent to the source bind value of the tree expression
+ EXP. */
+
+static rtx
+expand_debug_source_expr (tree exp)
+{
+ rtx op0 = NULL_RTX;
+ enum machine_mode mode = VOIDmode, inner_mode;
+
+ switch (TREE_CODE (exp))
+ {
+ case PARM_DECL:
+ {
+ rtx incoming = DECL_INCOMING_RTL (exp);
+ mode = DECL_MODE (exp);
+ if (incoming
+ && GET_MODE (incoming) != BLKmode
+ && ((REG_P (incoming) && HARD_REGISTER_P (incoming))
+ || (MEM_P (incoming)
+ && REG_P (XEXP (incoming, 0))
+ && HARD_REGISTER_P (XEXP (incoming, 0)))))
+ {
+ op0 = gen_rtx_ENTRY_VALUE (GET_MODE (incoming));
+ ENTRY_VALUE_EXP (op0) = incoming;
+ break;
+ }
+ if (incoming
+ && MEM_P (incoming)
+ && !TREE_ADDRESSABLE (exp)
+ && GET_MODE (incoming) != BLKmode
+ && (XEXP (incoming, 0) == virtual_incoming_args_rtx
+ || (GET_CODE (XEXP (incoming, 0)) == PLUS
+ && XEXP (XEXP (incoming, 0), 0)
+ == virtual_incoming_args_rtx
+ && CONST_INT_P (XEXP (XEXP (incoming, 0), 1)))))
+ {
+ op0 = incoming;
+ break;
+ }
+ /* See if this isn't an argument that has been completely
+ optimized out. */
+ if (!DECL_RTL_SET_P (exp)
+ && incoming == NULL_RTX
+ && DECL_ABSTRACT_ORIGIN (current_function_decl))
+ {
+ tree aexp = exp;
+ if (DECL_ABSTRACT_ORIGIN (exp))
+ aexp = DECL_ABSTRACT_ORIGIN (exp);
+ if (DECL_CONTEXT (aexp)
+ == DECL_ABSTRACT_ORIGIN (current_function_decl))
+ {
+ VEC(tree, gc) **debug_args;
+ unsigned int ix;
+ tree ddecl;
+#ifdef ENABLE_CHECKING
+ tree parm;
+ for (parm = DECL_ARGUMENTS (current_function_decl);
+ parm; parm = DECL_CHAIN (parm))
+ gcc_assert (parm != exp
+ && DECL_ABSTRACT_ORIGIN (parm) != aexp);
+#endif
+ debug_args = decl_debug_args_lookup (current_function_decl);
+ if (debug_args != NULL)
+ {
+ for (ix = 0; VEC_iterate (tree, *debug_args, ix, ddecl);
+ ix += 2)
+ if (ddecl == aexp)
+ return gen_rtx_DEBUG_PARAMETER_REF (mode, aexp);
+ }
+ }
+ }
+ break;
+ }
+ default:
+ break;
+ }
+
+ if (op0 == NULL_RTX)
+ return NULL_RTX;
+
+ inner_mode = GET_MODE (op0);
+ if (mode == inner_mode)
+ return op0;
+
+ if (FLOAT_MODE_P (mode) && FLOAT_MODE_P (inner_mode))
+ {
+ if (GET_MODE_BITSIZE (mode) == GET_MODE_BITSIZE (inner_mode))
+ op0 = simplify_gen_subreg (mode, op0, inner_mode, 0);
+ else if (GET_MODE_BITSIZE (mode) < GET_MODE_BITSIZE (inner_mode))
+ op0 = simplify_gen_unary (FLOAT_TRUNCATE, mode, op0, inner_mode);
+ else
+ op0 = simplify_gen_unary (FLOAT_EXTEND, mode, op0, inner_mode);
+ }
+ else if (FLOAT_MODE_P (mode))
+ gcc_unreachable ();
+ else if (FLOAT_MODE_P (inner_mode))
+ {
+ if (TYPE_UNSIGNED (TREE_TYPE (exp)))
+ op0 = simplify_gen_unary (UNSIGNED_FIX, mode, op0, inner_mode);
+ else
+ op0 = simplify_gen_unary (FIX, mode, op0, inner_mode);
+ }
+ else if (CONSTANT_P (op0)
+ || GET_MODE_BITSIZE (mode) <= GET_MODE_BITSIZE (inner_mode))
+ op0 = simplify_gen_subreg (mode, op0, inner_mode,
+ subreg_lowpart_offset (mode, inner_mode));
+ else if (TYPE_UNSIGNED (TREE_TYPE (exp)))
+ op0 = simplify_gen_unary (ZERO_EXTEND, mode, op0, inner_mode);
+ else
+ op0 = simplify_gen_unary (SIGN_EXTEND, mode, op0, inner_mode);
+
+ return op0;
+}
+
/* Expand the _LOCs in debug insns. We run this after expanding all
regular insns, so that any variables referenced in the function
will have their DECL_RTLs set. */
@@ -3324,7 +3455,11 @@
val = NULL_RTX;
else
{
- val = expand_debug_expr (value);
+ if (INSN_VAR_LOCATION_STATUS (insn)
+ == VAR_INIT_STATUS_UNINITIALIZED)
+ val = expand_debug_source_expr (value);
+ else
+ val = expand_debug_expr (value);
gcc_assert (last == get_last_insn ());
}
@@ -3606,6 +3741,39 @@
set_curr_insn_source_location (sloc);
set_curr_insn_block (sblock);
}
+ else if (gimple_debug_source_bind_p (stmt))
+ {
+ location_t sloc = get_curr_insn_source_location ();
+ tree sblock = get_curr_insn_block ();
+ tree var = gimple_debug_source_bind_get_var (stmt);
+ tree value = gimple_debug_source_bind_get_value (stmt);
+ rtx val;
+ enum machine_mode mode;
+
+ last = get_last_insn ();
+
+ set_curr_insn_source_location (gimple_location (stmt));
+ set_curr_insn_block (gimple_block (stmt));
+
+ mode = DECL_MODE (var);
+
+ val = gen_rtx_VAR_LOCATION (mode, var, (rtx)value,
+ VAR_INIT_STATUS_UNINITIALIZED);
+
+ emit_debug_insn (val);
+
+ if (dump_file && (dump_flags & TDF_DETAILS))
+ {
+ /* We can't dump the insn with a TREE where an RTX
+ is expected. */
+ PAT_VAR_LOCATION_LOC (val) = const0_rtx;
+ maybe_dump_rtl_for_gimple_stmt (stmt, last);
+ PAT_VAR_LOCATION_LOC (val) = (rtx)value;
+ }
+
+ set_curr_insn_source_location (sloc);
+ set_curr_insn_block (sblock);
+ }
else
{
if (is_gimple_call (stmt) && gimple_call_tail_p (stmt))
diff --git a/gcc/cgraph.h b/gcc/cgraph.h
index dd08feb..f912af2 100644
--- a/gcc/cgraph.h
+++ b/gcc/cgraph.h
@@ -981,7 +981,7 @@
ipa_ref_list_reference_iterate (&n->ref_list, 0, ref);
gcc_checking_assert (ref->use == IPA_REF_ALIAS);
- if (ref->refered_type == IPA_REF_CGRAPH)
+ if (ref->refered_type == IPA_REF_VARPOOL)
return ipa_ref_varpool_node (ref);
return NULL;
}
@@ -1011,7 +1011,7 @@
*availability = a;
}
}
- if (*availability)
+ if (availability)
*availability = AVAIL_NOT_AVAILABLE;
return NULL;
}
@@ -1039,7 +1039,7 @@
*availability = a;
}
}
- if (*availability)
+ if (availability)
*availability = AVAIL_NOT_AVAILABLE;
return NULL;
}
@@ -1067,7 +1067,7 @@
*availability = a;
}
}
- if (*availability)
+ if (availability)
*availability = AVAIL_NOT_AVAILABLE;
return NULL;
}
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 6683d2a..e470d85 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -986,6 +986,14 @@
DECL_ATTRIBUTES (decl) = remove_attribute ("weakref",
DECL_ATTRIBUTES (decl));
}
+
+ if (lookup_attribute ("always_inline", DECL_ATTRIBUTES (decl))
+ && !DECL_DECLARED_INLINE_P (decl)
+ /* redefining extern inline function makes it DECL_UNINLINABLE. */
+ && !DECL_UNINLINABLE (decl))
+ warning_at (DECL_SOURCE_LOCATION (decl), OPT_Wattributes,
+ "always_inline function might not be inlinable");
+
process_common_attributes (decl);
}
for (vnode = varpool_nodes; vnode != first_var; vnode = vnode->next)
@@ -1412,7 +1420,7 @@
DECL_SAVED_TREE (decl) = error_mark_node;
cfun->curr_properties |=
(PROP_gimple_lcf | PROP_gimple_leh | PROP_cfg | PROP_referenced_vars |
- PROP_ssa);
+ PROP_ssa | PROP_gimple_any);
/* Create BB for body of the function and connect it properly. */
bb = create_basic_block (NULL, (void *) 0, ENTRY_BLOCK_PTR);
@@ -1573,10 +1581,11 @@
{
const char *fnname;
tree fn_block;
+ tree restype = TREE_TYPE (TREE_TYPE (thunk_fndecl));
DECL_RESULT (thunk_fndecl)
= build_decl (DECL_SOURCE_LOCATION (thunk_fndecl),
- RESULT_DECL, 0, integer_type_node);
+ RESULT_DECL, 0, restype);
fnname = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (thunk_fndecl));
/* The back end expects DECL_INITIAL to contain a BLOCK, so we
@@ -2093,6 +2102,13 @@
#endif
cgraph_materialize_all_clones ();
+ bitmap_obstack_initialize (NULL);
+ execute_ipa_pass_list (all_late_ipa_passes);
+ cgraph_remove_unreachable_nodes (true, dump_file);
+#ifdef ENABLE_CHECKING
+ verify_cgraph ();
+#endif
+ bitmap_obstack_release (NULL);
cgraph_mark_functions_to_output ();
cgraph_state = CGRAPH_STATE_EXPANSION;
diff --git a/gcc/common/common-target.def b/gcc/common/common-target.def
index ab89758..d8ede82 100644
--- a/gcc/common/common-target.def
+++ b/gcc/common/common-target.def
@@ -50,6 +50,13 @@
"",
const struct default_options *, empty_optimization_table)
+DEFHOOK
+(option_default_params,
+"Set target-dependent default values for @option{--param} settings, using\
+ calls to @code{set_default_param_value}.",
+ void, (void),
+ hook_void_void)
+
/* The initial value of target_flags. */
DEFHOOKPOD
(default_target_flags,
diff --git a/gcc/common/config/ia64/ia64-common.c b/gcc/common/config/ia64/ia64-common.c
index 8c86ff4..1168253 100644
--- a/gcc/common/config/ia64/ia64-common.c
+++ b/gcc/common/config/ia64/ia64-common.c
@@ -29,6 +29,7 @@
#include "common/common-target-def.h"
#include "opts.h"
#include "flags.h"
+#include "params.h"
/* Implement overriding of the optimization options. */
static const struct default_options ia64_option_optimization_table[] =
@@ -83,8 +84,25 @@
return UI_TARGET;
}
+/* Implement TARGET_OPTION_DEFAULT_PARAMS. */
+
+static void
+ia64_option_default_params (void)
+{
+ /* Let the scheduler form additional regions. */
+ set_default_param_value (PARAM_MAX_SCHED_EXTEND_REGIONS_ITERS, 2);
+
+ /* Set the default values for cache-related parameters. */
+ set_default_param_value (PARAM_SIMULTANEOUS_PREFETCHES, 6);
+ set_default_param_value (PARAM_L1_CACHE_LINE_SIZE, 32);
+
+ set_default_param_value (PARAM_SCHED_MEM_TRUE_DEP_COST, 4);
+}
+
#undef TARGET_OPTION_OPTIMIZATION_TABLE
#define TARGET_OPTION_OPTIMIZATION_TABLE ia64_option_optimization_table
+#undef TARGET_OPTION_DEFAULT_PARAMS
+#define TARGET_OPTION_DEFAULT_PARAMS ia64_option_default_params
#undef TARGET_EXCEPT_UNWIND_INFO
#define TARGET_EXCEPT_UNWIND_INFO ia64_except_unwind_info
diff --git a/gcc/common/config/rs6000/rs6000-common.c b/gcc/common/config/rs6000/rs6000-common.c
index 0482c07..683240f 100644
--- a/gcc/common/config/rs6000/rs6000-common.c
+++ b/gcc/common/config/rs6000/rs6000-common.c
@@ -28,6 +28,7 @@
#include "common/common-target-def.h"
#include "opts.h"
#include "flags.h"
+#include "params.h"
/* Implement TARGET_OPTION_OPTIMIZATION_TABLE. */
static const struct default_options rs6000_option_optimization_table[] =
@@ -51,6 +52,15 @@
opts->x_flag_section_anchors = 1;
}
+/* Implement TARGET_OPTION_DEFAULT_PARAMS. */
+
+static void
+rs6000_option_default_params (void)
+{
+ /* Double growth factor to counter reduced min jump length. */
+ set_default_param_value (PARAM_MAX_GROW_COPY_BB_INSNS, 16);
+}
+
/* If not otherwise specified by a target, make 'long double' equivalent to
'double'. */
@@ -316,6 +326,9 @@
#undef TARGET_OPTION_INIT_STRUCT
#define TARGET_OPTION_INIT_STRUCT rs6000_option_init_struct
+#undef TARGET_OPTION_DEFAULT_PARAMS
+#define TARGET_OPTION_DEFAULT_PARAMS rs6000_option_default_params
+
#undef TARGET_OPTION_OPTIMIZATION_TABLE
#define TARGET_OPTION_OPTIMIZATION_TABLE rs6000_option_optimization_table
diff --git a/gcc/common/config/sh/sh-common.c b/gcc/common/config/sh/sh-common.c
index 8677fd4..5a0c062 100644
--- a/gcc/common/config/sh/sh-common.c
+++ b/gcc/common/config/sh/sh-common.c
@@ -27,6 +27,7 @@
#include "common/common-target-def.h"
#include "opts.h"
#include "flags.h"
+#include "params.h"
/* Set default optimization options. */
static const struct default_options sh_option_optimization_table[] =
@@ -196,10 +197,19 @@
opts->x_flag_finite_math_only = 2;
}
+/* Implement TARGET_OPTION_DEFAULT_PARAMS. */
+static void
+sh_option_default_params (void)
+{
+ set_default_param_value (PARAM_SIMULTANEOUS_PREFETCHES, 2);
+}
+
#undef TARGET_OPTION_OPTIMIZATION_TABLE
#define TARGET_OPTION_OPTIMIZATION_TABLE sh_option_optimization_table
#undef TARGET_OPTION_INIT_STRUCT
#define TARGET_OPTION_INIT_STRUCT sh_option_init_struct
+#undef TARGET_OPTION_DEFAULT_PARAMS
+#define TARGET_OPTION_DEFAULT_PARAMS sh_option_default_params
#undef TARGET_DEFAULT_TARGET_FLAGS
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
#undef TARGET_HANDLE_OPTION
diff --git a/gcc/common/config/spu/spu-common.c b/gcc/common/config/spu/spu-common.c
index d4a9f3c..421de7e 100644
--- a/gcc/common/config/spu/spu-common.c
+++ b/gcc/common/config/spu/spu-common.c
@@ -24,6 +24,7 @@
#include "common/common-target-def.h"
#include "opts.h"
#include "flags.h"
+#include "params.h"
static void
spu_option_init_struct (struct gcc_options *opts)
@@ -32,12 +33,24 @@
opts->x_flag_rename_registers = 1;
}
+/* Implement TARGET_OPTION_DEFAULT_PARAMS. */
+static void
+spu_option_default_params (void)
+{
+ /* Override some of the default param values. With so many registers
+ larger values are better for these params. */
+ set_default_param_value (PARAM_MAX_PENDING_LIST_LENGTH, 128);
+}
+
#undef TARGET_DEFAULT_TARGET_FLAGS
#define TARGET_DEFAULT_TARGET_FLAGS (TARGET_DEFAULT)
#undef TARGET_OPTION_INIT_STRUCT
#define TARGET_OPTION_INIT_STRUCT spu_option_init_struct
+#undef TARGET_OPTION_DEFAULT_PARAMS
+#define TARGET_OPTION_DEFAULT_PARAMS spu_option_default_params
+
#undef TARGET_EXCEPT_UNWIND_INFO
#define TARGET_EXCEPT_UNWIND_INFO sjlj_except_unwind_info
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 6c208ab..90d7d03 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -318,6 +318,7 @@
cpu_type=avr
c_target_objs="avr-c.o"
cxx_target_objs="avr-c.o"
+ extra_options="${extra_options} avr/avr-tables.opt"
;;
bfin*-*)
cpu_type=bfin
@@ -686,7 +687,35 @@
tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC"
;;
*-*-solaris2*)
+ # i?86-*-solaris2* needs to insert headers between cpu default and
+ # Solaris 2 specific ones.
+ sol2_tm_file="dbxelf.h elfos.h ${cpu_type}/sysv4.h sol2.h ${cpu_type}/sol2.h"
+ case ${target} in
+ *-*-solaris2.1[0-9]*)
+ sol2_tm_file="${sol2_tm_file} sol2-10.h"
+ use_gcc_stdint=wrap
+ ;;
+ *)
+ use_gcc_stdint=provide
+ ;;
+ esac
+ if test x$gnu_ld = xyes; then
+ tm_file="usegld.h ${tm_file}"
+ fi
+ if test x$gas = xyes; then
+ tm_file="usegas.h ${tm_file}"
+ fi
+ tm_p_file="${tm_p_file} sol2-protos.h"
+ tmake_file="${tmake_file} t-sol2 t-slibgcc-dummy"
+ c_target_objs="${c_target_objs} sol2-c.o"
+ cxx_target_objs="${cxx_target_objs} sol2-c.o"
+ extra_objs="sol2.o"
extra_options="${extra_options} sol2.opt"
+ case ${enable_threads}:${have_pthread_h}:${have_thread_h} in
+ "":yes:* | yes:yes:* )
+ thread_file=posix
+ ;;
+ esac
;;
*-*-*vms*)
extra_options="${extra_options} vms/vms.opt"
@@ -834,6 +863,7 @@
tmake_file="$tmake_file arm/t-linux"
;;
esac
+ with_tls=${with_tls:-gnu}
tm_file="$tm_file arm/aout.h arm/arm.h"
tmake_file="${tmake_file} arm/t-arm-softfp soft-fp/t-softfp"
;;
@@ -1335,7 +1365,7 @@
tmake_file="${tmake_file} i386/t-rtems t-rtems"
;;
i[34567]86-*-solaris2*)
- tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/sysv4.h sol2.h"
+ tm_file="${tm_file} i386/unix.h i386/att.h ${sol2_tm_file}"
# Set default arch_32 to pentium4, tune_32 to generic like the other
# i386 targets, although config.guess defaults to i386-pc-solaris2*.
case ${target} in
@@ -1351,36 +1381,11 @@
with_tune_32=${with_tune_32:-generic}
case ${target} in
*-*-solaris2.1[0-9]*)
- tm_file="${tm_file} sol2-10.h"
- ;;
- esac
- tm_file="${tm_file} i386/sol2.h"
- if test x$gnu_ld = xyes; then
- tm_file="${tm_file} sol2-gld.h"
- fi
- if test x$gas = xyes; then
- tm_file="${tm_file} i386/sol2-gas.h"
- fi
- tmake_file="${tmake_file} t-sol2 t-slibgcc-dummy"
- c_target_objs="${c_target_objs} sol2-c.o"
- cxx_target_objs="${cxx_target_objs} sol2-c.o"
- extra_objs="sol2.o"
- tm_p_file="${tm_p_file} sol2-protos.h"
- if test x$gnu_ld = xyes; then
- tm_defines="${tm_defines} TARGET_GNU_LD=1"
- fi
- if test x$gas = xyes; then
- tm_file="usegas.h ${tm_file}"
- fi
- tm_file="$tm_file tm-dwarf2.h"
- case ${target} in
- *-*-solaris2.1[0-9]*)
- tm_file="${tm_file} i386/x86-64.h i386/sol2-10.h"
+ tm_file="${tm_file} i386/x86-64.h i386/sol2-bi.h sol2-bi.h"
tm_defines="${tm_defines} TARGET_BI_ARCH=1"
- tmake_file="$tmake_file i386/t-sol2-10"
+ tmake_file="$tmake_file i386/t-sol2-64"
need_64bit_hwint=yes
need_64bit_isa=yes
- use_gcc_stdint=wrap
case X"${with_cpu}" in
Xgeneric|Xatom|Xcore2|Xcorei7|Xcorei7-avx|Xnocona|Xx86-64|Xbdver1|Xbtver1|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx|Xathlon64-sse3|Xk8-sse3|Xopteron-sse3)
;;
@@ -1396,14 +1401,6 @@
;;
esac
;;
- *)
- use_gcc_stdint=provide
- ;;
- esac
- case ${enable_threads}:${have_pthread_h}:${have_thread_h} in
- "":yes:* | yes:yes:* )
- thread_file=posix
- ;;
esac
;;
i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae)
@@ -2479,17 +2476,7 @@
extra_options="${extra_options} sparc/long-double-switch.opt"
;;
sparc*-*-solaris2*)
- tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h sol2.h"
- case ${target} in
- *-*-solaris2.1[0-9]*)
- tm_file="${tm_file} sol2-10.h"
- use_gcc_stdint=wrap
- ;;
- *)
- use_gcc_stdint=provide
- ;;
- esac
- tm_file="${tm_file} sparc/sol2.h"
+ tm_file="sparc/biarch64.h ${tm_file} ${sol2_tm_file} sol2-bi.h"
case ${target} in
sparc64-*-* | sparcv9-*-*)
tm_file="${tm_file} sparc/sol2-64.h"
@@ -2498,27 +2485,7 @@
test x$with_cpu != x || with_cpu=v9
;;
esac
- tm_file="${tm_file} sparc/sol2-bi.h"
- if test x$gas = xyes; then
- tm_file="${tm_file} sparc/sol2-gas.h sparc/sol2-gas-bi.h"
- fi
- if test x$gnu_ld = xyes; then
- tm_file="${tm_file} sol2-gld.h sparc/sol2-gld-bi.h"
- fi
- tm_file="${tm_file} tm-dwarf2.h"
- tmake_file="t-sol2 t-slibgcc-dummy sparc/t-sol2-64"
- if test x$gas = xyes; then
- tm_file="usegas.h ${tm_file}"
- fi
- c_target_objs="sol2-c.o"
- cxx_target_objs="sol2-c.o"
- extra_objs="sol2.o"
- tm_p_file="${tm_p_file} sol2-protos.h"
- case ${enable_threads}:${have_pthread_h}:${have_thread_h} in
- "":yes:* | yes:yes:* )
- thread_file=posix
- ;;
- esac
+ tmake_file="${tmake_file} sparc/t-sol2-64"
;;
sparc-wrs-vxworks)
tm_file="${tm_file} elfos.h sparc/sysv4.h vx-common.h vxworks.h sparc/vxworks.h"
@@ -3073,7 +3040,7 @@
;;
arm*-*-*)
- supported_defaults="arch cpu float tune fpu abi mode"
+ supported_defaults="arch cpu float tune fpu abi mode tls"
for which in cpu tune; do
# See if it matches any of the entries in arm-cores.def
eval "val=\$with_$which"
@@ -3156,6 +3123,17 @@
;;
esac
+ case "$with_tls" in
+ "" \
+ | gnu | gnu2)
+ # OK
+ ;;
+ *)
+ echo "Unknown TLS method used in --with-tls=$with_tls" 1>&2
+ exit 1
+ ;;
+ esac
+
if test "x$with_arch" != x && test "x$with_cpu" != x; then
echo "Warning: --with-arch overrides --with-cpu=$with_cpu" 1>&2
fi
@@ -3635,7 +3613,7 @@
esac
t=
-all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu divide llsc mips-plt synci"
+all_defaults="abi cpu cpu_32 cpu_64 arch arch_32 arch_64 tune tune_32 tune_64 schedule float mode fpu divide llsc mips-plt synci tls"
for option in $all_defaults
do
eval "val=\$with_"`echo $option | sed s/-/_/g`
diff --git a/gcc/config/arm/arm-opts.h b/gcc/config/arm/arm-opts.h
index c35224e..6e604db 100644
--- a/gcc/config/arm/arm-opts.h
+++ b/gcc/config/arm/arm-opts.h
@@ -68,4 +68,9 @@
TP_CP15
};
+/* Which TLS scheme to use. */
+enum arm_tls_type {
+ TLS_GNU,
+ TLS_GNU2
+};
#endif
diff --git a/gcc/config/arm/arm-protos.h b/gcc/config/arm/arm-protos.h
index 2fd75fb..3eb2177 100644
--- a/gcc/config/arm/arm-protos.h
+++ b/gcc/config/arm/arm-protos.h
@@ -66,8 +66,12 @@
extern int neon_immediate_valid_for_move (rtx, enum machine_mode, rtx *, int *);
extern int neon_immediate_valid_for_logic (rtx, enum machine_mode, int, rtx *,
int *);
+extern int neon_immediate_valid_for_shift (rtx, enum machine_mode, rtx *,
+ int *, bool);
extern char *neon_output_logic_immediate (const char *, rtx *,
enum machine_mode, int, int);
+extern char *neon_output_shift_immediate (const char *, char, rtx *,
+ enum machine_mode, int, bool);
extern void neon_pairwise_reduce (rtx, rtx, enum machine_mode,
rtx (*) (rtx, rtx, rtx));
extern rtx neon_make_constant (rtx);
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 547acc8..efffcf8 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -1009,7 +1009,8 @@
TLS_LDM32,
TLS_LDO32,
TLS_IE32,
- TLS_LE32
+ TLS_LE32,
+ TLS_DESCSEQ /* GNU scheme */
};
/* The maximum number of insns to be used when loading a constant. */
@@ -5881,6 +5882,7 @@
{
rtx insns, label, labelno, sum;
+ gcc_assert (reloc != TLS_DESCSEQ);
start_sequence ();
labelno = GEN_INT (pic_labelno++);
@@ -5895,20 +5897,42 @@
if (TARGET_ARM)
emit_insn (gen_pic_add_dot_plus_eight (reg, reg, labelno));
- else if (TARGET_THUMB2)
+ else
emit_insn (gen_pic_add_dot_plus_four (reg, reg, labelno));
- else /* TARGET_THUMB1 */
- emit_insn (gen_pic_add_dot_plus_four (reg, reg, labelno));
-
- *valuep = emit_library_call_value (get_tls_get_addr (), NULL_RTX, LCT_PURE, /* LCT_CONST? */
+
+ *valuep = emit_library_call_value (get_tls_get_addr (), NULL_RTX,
+ LCT_PURE, /* LCT_CONST? */
Pmode, 1, reg, Pmode);
-
+
insns = get_insns ();
end_sequence ();
return insns;
}
+static rtx
+arm_tls_descseq_addr (rtx x, rtx reg)
+{
+ rtx labelno = GEN_INT (pic_labelno++);
+ rtx label = gen_rtx_UNSPEC (Pmode, gen_rtvec (1, labelno), UNSPEC_PIC_LABEL);
+ rtx sum = gen_rtx_UNSPEC (Pmode,
+ gen_rtvec (4, x, GEN_INT (TLS_DESCSEQ),
+ gen_rtx_CONST (VOIDmode, label),
+ GEN_INT (!TARGET_ARM)),
+ UNSPEC_TLS);
+ rtx reg0 = load_tls_operand (sum, gen_rtx_REG (SImode, 0));
+
+ emit_insn (gen_tlscall (x, labelno));
+ if (!reg)
+ reg = gen_reg_rtx (SImode);
+ else
+ gcc_assert (REGNO (reg) != 0);
+
+ emit_move_insn (reg, reg0);
+
+ return reg;
+}
+
rtx
legitimize_tls_address (rtx x, rtx reg)
{
@@ -5918,26 +5942,51 @@
switch (model)
{
case TLS_MODEL_GLOBAL_DYNAMIC:
- insns = arm_call_tls_get_addr (x, reg, &ret, TLS_GD32);
- dest = gen_reg_rtx (Pmode);
- emit_libcall_block (insns, dest, ret, x);
+ if (TARGET_GNU2_TLS)
+ {
+ reg = arm_tls_descseq_addr (x, reg);
+
+ tp = arm_load_tp (NULL_RTX);
+
+ dest = gen_rtx_PLUS (Pmode, tp, reg);
+ }
+ else
+ {
+ /* Original scheme */
+ insns = arm_call_tls_get_addr (x, reg, &ret, TLS_GD32);
+ dest = gen_reg_rtx (Pmode);
+ emit_libcall_block (insns, dest, ret, x);
+ }
return dest;
case TLS_MODEL_LOCAL_DYNAMIC:
- insns = arm_call_tls_get_addr (x, reg, &ret, TLS_LDM32);
+ if (TARGET_GNU2_TLS)
+ {
+ reg = arm_tls_descseq_addr (x, reg);
- /* Attach a unique REG_EQUIV, to allow the RTL optimizers to
- share the LDM result with other LD model accesses. */
- eqv = gen_rtx_UNSPEC (Pmode, gen_rtvec (1, const1_rtx),
- UNSPEC_TLS);
- dest = gen_reg_rtx (Pmode);
- emit_libcall_block (insns, dest, ret, eqv);
-
- /* Load the addend. */
- addend = gen_rtx_UNSPEC (Pmode, gen_rtvec (2, x, GEN_INT (TLS_LDO32)),
- UNSPEC_TLS);
- addend = force_reg (SImode, gen_rtx_CONST (SImode, addend));
- return gen_rtx_PLUS (Pmode, dest, addend);
+ tp = arm_load_tp (NULL_RTX);
+
+ dest = gen_rtx_PLUS (Pmode, tp, reg);
+ }
+ else
+ {
+ insns = arm_call_tls_get_addr (x, reg, &ret, TLS_LDM32);
+
+ /* Attach a unique REG_EQUIV, to allow the RTL optimizers to
+ share the LDM result with other LD model accesses. */
+ eqv = gen_rtx_UNSPEC (Pmode, gen_rtvec (1, const1_rtx),
+ UNSPEC_TLS);
+ dest = gen_reg_rtx (Pmode);
+ emit_libcall_block (insns, dest, ret, eqv);
+
+ /* Load the addend. */
+ addend = gen_rtx_UNSPEC (Pmode, gen_rtvec (2, x,
+ GEN_INT (TLS_LDO32)),
+ UNSPEC_TLS);
+ addend = force_reg (SImode, gen_rtx_CONST (SImode, addend));
+ dest = gen_rtx_PLUS (Pmode, dest, addend);
+ }
+ return dest;
case TLS_MODEL_INITIAL_EXEC:
labelno = GEN_INT (pic_labelno++);
@@ -8559,6 +8608,66 @@
return 1;
}
+/* Return TRUE if rtx OP is legal for use in a VSHR or VSHL instruction. If
+ the immediate is valid, write a constant suitable for using as an operand
+ to VSHR/VSHL to *MODCONST and the corresponding element width to
+ *ELEMENTWIDTH. ISLEFTSHIFT is for determine left or right shift,
+ because they have different limitations. */
+
+int
+neon_immediate_valid_for_shift (rtx op, enum machine_mode mode,
+ rtx *modconst, int *elementwidth,
+ bool isleftshift)
+{
+ unsigned int innersize = GET_MODE_SIZE (GET_MODE_INNER (mode));
+ unsigned int n_elts = CONST_VECTOR_NUNITS (op), i;
+ unsigned HOST_WIDE_INT last_elt = 0;
+ unsigned HOST_WIDE_INT maxshift;
+
+ /* Split vector constant out into a byte vector. */
+ for (i = 0; i < n_elts; i++)
+ {
+ rtx el = CONST_VECTOR_ELT (op, i);
+ unsigned HOST_WIDE_INT elpart;
+
+ if (GET_CODE (el) == CONST_INT)
+ elpart = INTVAL (el);
+ else if (GET_CODE (el) == CONST_DOUBLE)
+ return 0;
+ else
+ gcc_unreachable ();
+
+ if (i != 0 && elpart != last_elt)
+ return 0;
+
+ last_elt = elpart;
+ }
+
+ /* Shift less than element size. */
+ maxshift = innersize * 8;
+
+ if (isleftshift)
+ {
+ /* Left shift immediate value can be from 0 to <size>-1. */
+ if (last_elt >= maxshift)
+ return 0;
+ }
+ else
+ {
+ /* Right shift immediate value can be from 1 to <size>. */
+ if (last_elt == 0 || last_elt > maxshift)
+ return 0;
+ }
+
+ if (elementwidth)
+ *elementwidth = innersize * 8;
+
+ if (modconst)
+ *modconst = CONST_VECTOR_ELT (op, 0);
+
+ return 1;
+}
+
/* Return a string suitable for output of Neon immediate logic operation
MNEM. */
@@ -8581,6 +8690,28 @@
return templ;
}
+/* Return a string suitable for output of Neon immediate shift operation
+ (VSHR or VSHL) MNEM. */
+
+char *
+neon_output_shift_immediate (const char *mnem, char sign, rtx *op2,
+ enum machine_mode mode, int quad,
+ bool isleftshift)
+{
+ int width, is_valid;
+ static char templ[40];
+
+ is_valid = neon_immediate_valid_for_shift (*op2, mode, op2, &width, isleftshift);
+ gcc_assert (is_valid != 0);
+
+ if (quad)
+ sprintf (templ, "%s.%c%d\t%%q0, %%q1, %%2", mnem, sign, width);
+ else
+ sprintf (templ, "%s.%c%d\t%%P0, %%P1, %%2", mnem, sign, width);
+
+ return templ;
+}
+
/* Output a sequence of pairwise operations to implement a reduction.
NOTE: We do "too much work" here, because pairwise operations work on two
registers-worth of operands in one go. Unfortunately we can't exploit those
@@ -9384,6 +9515,11 @@
static bool
arm_cannot_copy_insn_p (rtx insn)
{
+ /* The tls call insn cannot be copied, as it is paired with a data
+ word. */
+ if (recog_memoized (insn) == CODE_FOR_tlscall)
+ return true;
+
return for_each_rtx (&PATTERN (insn), arm_note_pic_base, NULL);
}
@@ -22912,6 +23048,9 @@
case TLS_LE32:
fputs ("(tpoff)", fp);
break;
+ case TLS_DESCSEQ:
+ fputs ("(tlsdesc)", fp);
+ break;
default:
gcc_unreachable ();
}
@@ -22921,9 +23060,11 @@
case TLS_GD32:
case TLS_LDM32:
case TLS_IE32:
+ case TLS_DESCSEQ:
fputs (" + (. - ", fp);
output_addr_const (fp, XVECEXP (x, 0, 2));
- fputs (" - ", fp);
+ /* For DESCSEQ the 3rd operand encodes thumbness, and is added */
+ fputs (reloc == TLS_DESCSEQ ? " + " : " - ", fp);
output_addr_const (fp, XVECEXP (x, 0, 3));
fputc (')', fp);
break;
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
index c32ef1a..b0d26259 100644
--- a/gcc/config/arm/arm.h
+++ b/gcc/config/arm/arm.h
@@ -220,6 +220,7 @@
#define TARGET_HARD_TP (target_thread_pointer == TP_CP15)
#define TARGET_SOFT_TP (target_thread_pointer == TP_SOFT)
+#define TARGET_GNU2_TLS (target_tls_dialect == TLS_GNU2)
/* Only 16-bit thumb code. */
#define TARGET_THUMB1 (TARGET_THUMB && !arm_arch_thumb2)
@@ -313,7 +314,8 @@
by -march).
--with-float is ignored if -mfloat-abi is specified.
--with-fpu is ignored if -mfpu is specified.
- --with-abi is ignored is -mabi is specified. */
+ --with-abi is ignored if -mabi is specified.
+ --with-tls is ignored if -mtls-dialect is specified. */
#define OPTION_DEFAULT_SPECS \
{"arch", "%{!march=*:%{!mcpu=*:-march=%(VALUE)}}" }, \
{"cpu", "%{!march=*:%{!mcpu=*:-mcpu=%(VALUE)}}" }, \
@@ -321,7 +323,8 @@
{"float", "%{!mfloat-abi=*:-mfloat-abi=%(VALUE)}" }, \
{"fpu", "%{!mfpu=*:-mfpu=%(VALUE)}"}, \
{"abi", "%{!mabi=*:-mabi=%(VALUE)}"}, \
- {"mode", "%{!marm:%{!mthumb:-m%(VALUE)}}"},
+ {"mode", "%{!marm:%{!mthumb:-m%(VALUE)}}"}, \
+ {"tls", "%{!mtls-dialect=*:-mtls-dialect=%(VALUE)}"},
/* Which floating point model to use. */
enum arm_fp_model
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md
index 70f703c..26291af 100644
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
@@ -31,6 +31,7 @@
;; Register numbers
(define_constants
[(R0_REGNUM 0) ; First CORE register
+ (R1_REGNUM 1) ; Second CORE register
(IP_REGNUM 12) ; Scratch register
(SP_REGNUM 13) ; Stack pointer
(LR_REGNUM 14) ; Return address register
@@ -8631,18 +8632,22 @@
;; Patterns to allow combination of arithmetic, cond code and shifts
(define_insn "*arith_shiftsi"
- [(set (match_operand:SI 0 "s_register_operand" "=r,r")
+ [(set (match_operand:SI 0 "s_register_operand" "=r,r,r,r")
(match_operator:SI 1 "shiftable_operator"
[(match_operator:SI 3 "shift_operator"
- [(match_operand:SI 4 "s_register_operand" "r,r")
- (match_operand:SI 5 "shift_amount_operand" "M,r")])
- (match_operand:SI 2 "s_register_operand" "rk,rk")]))]
+ [(match_operand:SI 4 "s_register_operand" "r,r,r,r")
+ (match_operand:SI 5 "shift_amount_operand" "M,M,M,r")])
+ (match_operand:SI 2 "s_register_operand" "rk,rk,r,rk")]))]
"TARGET_32BIT"
"%i1%?\\t%0, %2, %4%S3"
[(set_attr "predicable" "yes")
(set_attr "shift" "4")
- (set_attr "arch" "32,a")
- ;; We have to make sure to disable the second alternative if
+ (set_attr "arch" "a,t2,t2,a")
+ ;; Thumb2 doesn't allow the stack pointer to be used for
+ ;; operand1 for all operations other than add and sub. In this case
+ ;; the minus operation is a candidate for an rsub and hence needs
+ ;; to be disabled.
+ ;; We have to make sure to disable the fourth alternative if
;; the shift_operator is MULT, since otherwise the insn will
;; also match a multiply_accumulate pattern and validate_change
;; will allow a replacement of the constant with a register
@@ -8650,9 +8655,13 @@
(set_attr_alternative "insn_enabled"
[(const_string "yes")
(if_then_else
+ (match_operand:SI 1 "add_operator" "")
+ (const_string "yes") (const_string "no"))
+ (const_string "yes")
+ (if_then_else
(match_operand:SI 3 "mult_operator" "")
(const_string "no") (const_string "yes"))])
- (set_attr "type" "alu_shift,alu_shift_reg")])
+ (set_attr "type" "alu_shift,alu_shift,alu_shift,alu_shift_reg")])
(define_split
[(set (match_operand:SI 0 "s_register_operand" "")
@@ -10719,6 +10728,27 @@
[(set_attr "conds" "clob")]
)
+;; tls descriptor call
+(define_insn "tlscall"
+ [(set (reg:SI R0_REGNUM)
+ (unspec:SI [(reg:SI R0_REGNUM)
+ (match_operand:SI 0 "" "X")
+ (match_operand 1 "" "")] UNSPEC_TLS))
+ (clobber (reg:SI R1_REGNUM))
+ (clobber (reg:SI LR_REGNUM))
+ (clobber (reg:SI CC_REGNUM))]
+ "TARGET_GNU2_TLS"
+ {
+ targetm.asm_out.internal_label (asm_out_file, "LPIC",
+ INTVAL (operands[1]));
+ return "bl\\t%c0(tlscall)";
+ }
+ [(set_attr "conds" "clob")
+ (set_attr "length" "4")]
+)
+
+;;
+
;; We only care about the lower 16 bits of the constant
;; being inserted into the upper 16 bits of the register.
(define_insn "*arm_movtas_ze"
diff --git a/gcc/config/arm/arm.opt b/gcc/config/arm/arm.opt
index c45bc77..48a5cb3 100644
--- a/gcc/config/arm/arm.opt
+++ b/gcc/config/arm/arm.opt
@@ -21,6 +21,16 @@
HeaderInclude
config/arm/arm-opts.h
+Enum
+Name(tls_type) Type(enum arm_tls_type)
+TLS dialect to use:
+
+EnumValue
+Enum(tls_type) String(gnu) Value(TLS_GNU)
+
+EnumValue
+Enum(tls_type) String(gnu2) Value(TLS_GNU2)
+
mabi=
Target RejectNegative Joined Enum(arm_abi_type) Var(arm_abi) Init(ARM_DEFAULT_ABI)
Specify an ABI
@@ -190,6 +200,10 @@
Target Report Mask(INTERWORK)
Support calls between Thumb and ARM instruction sets
+mtls-dialect=
+Target RejectNegative Joined Enum(tls_type) Var(target_tls_dialect) Init(TLS_GNU)
+Specify thread local storage scheme
+
mtp=
Target RejectNegative Joined Enum(arm_tp_type) Var(target_thread_pointer) Init(TP_AUTO)
Specify how to access the thread pointer
diff --git a/gcc/config/arm/neon.md b/gcc/config/arm/neon.md
index a8c1b87..2c109e0 100644
--- a/gcc/config/arm/neon.md
+++ b/gcc/config/arm/neon.md
@@ -969,17 +969,59 @@
; SImode elements.
(define_insn "vashl<mode>3"
- [(set (match_operand:VDQIW 0 "s_register_operand" "=w")
- (ashift:VDQIW (match_operand:VDQIW 1 "s_register_operand" "w")
- (match_operand:VDQIW 2 "s_register_operand" "w")))]
+ [(set (match_operand:VDQIW 0 "s_register_operand" "=w,w")
+ (ashift:VDQIW (match_operand:VDQIW 1 "s_register_operand" "w,w")
+ (match_operand:VDQIW 2 "imm_lshift_or_reg_neon" "w,Dn")))]
"TARGET_NEON"
- "vshl.<V_s_elem>\t%<V_reg>0, %<V_reg>1, %<V_reg>2"
+ {
+ switch (which_alternative)
+ {
+ case 0: return "vshl.<V_s_elem>\t%<V_reg>0, %<V_reg>1, %<V_reg>2";
+ case 1: return neon_output_shift_immediate ("vshl", 'i', &operands[2],
+ <MODE>mode,
+ VALID_NEON_QREG_MODE (<MODE>mode),
+ true);
+ default: gcc_unreachable ();
+ }
+ }
[(set (attr "neon_type")
(if_then_else (ne (symbol_ref "<Is_d_reg>") (const_int 0))
(const_string "neon_vshl_ddd")
(const_string "neon_shift_3")))]
)
+(define_insn "vashr<mode>3_imm"
+ [(set (match_operand:VDQIW 0 "s_register_operand" "=w")
+ (ashiftrt:VDQIW (match_operand:VDQIW 1 "s_register_operand" "w")
+ (match_operand:VDQIW 2 "imm_for_neon_rshift_operand" "Dn")))]
+ "TARGET_NEON"
+ {
+ return neon_output_shift_immediate ("vshr", 's', &operands[2],
+ <MODE>mode, VALID_NEON_QREG_MODE (<MODE>mode),
+ false);
+ }
+ [(set (attr "neon_type")
+ (if_then_else (ne (symbol_ref "<Is_d_reg>") (const_int 0))
+ (const_string "neon_vshl_ddd")
+ (const_string "neon_shift_3")))]
+)
+
+(define_insn "vlshr<mode>3_imm"
+ [(set (match_operand:VDQIW 0 "s_register_operand" "=w")
+ (lshiftrt:VDQIW (match_operand:VDQIW 1 "s_register_operand" "w")
+ (match_operand:VDQIW 2 "imm_for_neon_rshift_operand" "Dn")))]
+ "TARGET_NEON"
+ {
+ return neon_output_shift_immediate ("vshr", 'u', &operands[2],
+ <MODE>mode, VALID_NEON_QREG_MODE (<MODE>mode),
+ false);
+ }
+ [(set (attr "neon_type")
+ (if_then_else (ne (symbol_ref "<Is_d_reg>") (const_int 0))
+ (const_string "neon_vshl_ddd")
+ (const_string "neon_shift_3")))]
+)
+
; Used for implementing logical shift-right, which is a left-shift by a negative
; amount, with signed operands. This is essentially the same as ashl<mode>3
; above, but using an unspec in case GCC tries anything tricky with negative
@@ -1017,28 +1059,34 @@
(define_expand "vashr<mode>3"
[(set (match_operand:VDQIW 0 "s_register_operand" "")
(ashiftrt:VDQIW (match_operand:VDQIW 1 "s_register_operand" "")
- (match_operand:VDQIW 2 "s_register_operand" "")))]
+ (match_operand:VDQIW 2 "imm_rshift_or_reg_neon" "")))]
"TARGET_NEON"
{
rtx neg = gen_reg_rtx (<MODE>mode);
-
- emit_insn (gen_neg<mode>2 (neg, operands[2]));
- emit_insn (gen_ashl<mode>3_signed (operands[0], operands[1], neg));
-
+ if (REG_P (operands[2]))
+ {
+ emit_insn (gen_neg<mode>2 (neg, operands[2]));
+ emit_insn (gen_ashl<mode>3_signed (operands[0], operands[1], neg));
+ }
+ else
+ emit_insn (gen_vashr<mode>3_imm (operands[0], operands[1], operands[2]));
DONE;
})
(define_expand "vlshr<mode>3"
[(set (match_operand:VDQIW 0 "s_register_operand" "")
(lshiftrt:VDQIW (match_operand:VDQIW 1 "s_register_operand" "")
- (match_operand:VDQIW 2 "s_register_operand" "")))]
+ (match_operand:VDQIW 2 "imm_rshift_or_reg_neon" "")))]
"TARGET_NEON"
{
rtx neg = gen_reg_rtx (<MODE>mode);
-
- emit_insn (gen_neg<mode>2 (neg, operands[2]));
- emit_insn (gen_ashl<mode>3_unsigned (operands[0], operands[1], neg));
-
+ if (REG_P (operands[2]))
+ {
+ emit_insn (gen_neg<mode>2 (neg, operands[2]));
+ emit_insn (gen_ashl<mode>3_unsigned (operands[0], operands[1], neg));
+ }
+ else
+ emit_insn (gen_vlshr<mode>3_imm (operands[0], operands[1], operands[2]));
DONE;
})
diff --git a/gcc/config/arm/predicates.md b/gcc/config/arm/predicates.md
index 891a974..4bd8af1 100644
--- a/gcc/config/arm/predicates.md
+++ b/gcc/config/arm/predicates.md
@@ -585,6 +585,26 @@
return neon_immediate_valid_for_move (op, mode, NULL, NULL);
})
+(define_predicate "imm_for_neon_lshift_operand"
+ (match_code "const_vector")
+{
+ return neon_immediate_valid_for_shift (op, mode, NULL, NULL, true);
+})
+
+(define_predicate "imm_for_neon_rshift_operand"
+ (match_code "const_vector")
+{
+ return neon_immediate_valid_for_shift (op, mode, NULL, NULL, false);
+})
+
+(define_predicate "imm_lshift_or_reg_neon"
+ (ior (match_operand 0 "s_register_operand")
+ (match_operand 0 "imm_for_neon_lshift_operand")))
+
+(define_predicate "imm_rshift_or_reg_neon"
+ (ior (match_operand 0 "s_register_operand")
+ (match_operand 0 "imm_for_neon_rshift_operand")))
+
(define_predicate "imm_for_neon_logic_operand"
(match_code "const_vector")
{
@@ -687,3 +707,6 @@
(define_special_predicate "neon_struct_operand"
(and (match_code "mem")
(match_test "TARGET_32BIT && neon_vector_mem_operand (op, 2)")))
+
+(define_special_predicate "add_operator"
+ (match_code "plus"))
diff --git a/gcc/config/avr/avr-devices.c b/gcc/config/avr/avr-devices.c
index d2884f6..bc326e3 100755
--- a/gcc/config/avr/avr-devices.c
+++ b/gcc/config/avr/avr-devices.c
@@ -39,190 +39,11 @@
{ 0, 1, 1, 1, 1, 1, 1, 0, 0, 0x0060, "__AVR_ARCH__=6", "avr6" }
};
-/* List of all known AVR MCU types - if updated, it has to be kept
- in sync in several places (FIXME: is there a better way?):
- - here;
- - t-avr (MULTILIB_MATCHES);
- - gas/config/tc-avr.c;
- - avr-libc. */
-
const struct mcu_type_s avr_mcu_types[] = {
- /* Classic, <= 8K. */
- { "avr2", ARCH_AVR2, NULL, 0, 0x0060, "s8515" },
- { "at90s2313", ARCH_AVR2, "__AVR_AT90S2313__", 1, 0x0060, "s2313" },
- { "at90s2323", ARCH_AVR2, "__AVR_AT90S2323__", 1, 0x0060, "s2323" },
- { "at90s2333", ARCH_AVR2, "__AVR_AT90S2333__", 1, 0x0060, "s2333" },
- { "at90s2343", ARCH_AVR2, "__AVR_AT90S2343__", 1, 0x0060, "s2343" },
- { "attiny22", ARCH_AVR2, "__AVR_ATtiny22__", 1, 0x0060, "tn22" },
- { "attiny26", ARCH_AVR2, "__AVR_ATtiny26__", 1, 0x0060, "tn26" },
- { "at90s4414", ARCH_AVR2, "__AVR_AT90S4414__", 0, 0x0060, "s4414" },
- { "at90s4433", ARCH_AVR2, "__AVR_AT90S4433__", 1, 0x0060, "s4433" },
- { "at90s4434", ARCH_AVR2, "__AVR_AT90S4434__", 0, 0x0060, "s4434" },
- { "at90s8515", ARCH_AVR2, "__AVR_AT90S8515__", 0, 0x0060, "s8515" },
- { "at90c8534", ARCH_AVR2, "__AVR_AT90C8534__", 0, 0x0060, "c8534" },
- { "at90s8535", ARCH_AVR2, "__AVR_AT90S8535__", 0, 0x0060, "s8535" },
- /* Classic + MOVW, <= 8K. */
- { "avr25", ARCH_AVR25, NULL, 0, 0x0060, "tn85" },
- { "ata6289", ARCH_AVR25, "__AVR_ATA6289__", 0, 0x0100, "a6289" },
- { "attiny13", ARCH_AVR25, "__AVR_ATtiny13__", 1, 0x0060, "tn13" },
- { "attiny13a", ARCH_AVR25, "__AVR_ATtiny13A__", 1, 0x0060, "tn13a" },
- { "attiny2313", ARCH_AVR25, "__AVR_ATtiny2313__", 1, 0x0060, "tn2313" },
- { "attiny2313a", ARCH_AVR25, "__AVR_ATtiny2313A__", 1, 0x0060, "tn2313a" },
- { "attiny24", ARCH_AVR25, "__AVR_ATtiny24__", 1, 0x0060, "tn24" },
- { "attiny24a", ARCH_AVR25, "__AVR_ATtiny24A__", 1, 0x0060, "tn24a" },
- { "attiny4313", ARCH_AVR25, "__AVR_ATtiny4313__", 1, 0x0060, "tn4313" },
- { "attiny44", ARCH_AVR25, "__AVR_ATtiny44__", 0, 0x0060, "tn44" },
- { "attiny44a", ARCH_AVR25, "__AVR_ATtiny44A__", 0, 0x0060, "tn44a" },
- { "attiny84", ARCH_AVR25, "__AVR_ATtiny84__", 0, 0x0060, "tn84" },
- { "attiny84a", ARCH_AVR25, "__AVR_ATtiny84A__", 0, 0x0060, "tn84" },
- { "attiny25", ARCH_AVR25, "__AVR_ATtiny25__", 1, 0x0060, "tn25" },
- { "attiny45", ARCH_AVR25, "__AVR_ATtiny45__", 0, 0x0060, "tn45" },
- { "attiny85", ARCH_AVR25, "__AVR_ATtiny85__", 0, 0x0060, "tn85" },
- { "attiny261", ARCH_AVR25, "__AVR_ATtiny261__", 1, 0x0060, "tn261" },
- { "attiny261a", ARCH_AVR25, "__AVR_ATtiny261A__", 1, 0x0060, "tn261a" },
- { "attiny461", ARCH_AVR25, "__AVR_ATtiny461__", 0, 0x0060, "tn461" },
- { "attiny461a", ARCH_AVR25, "__AVR_ATtiny461A__", 0, 0x0060, "tn461a" },
- { "attiny861", ARCH_AVR25, "__AVR_ATtiny861__", 0, 0x0060, "tn861" },
- { "attiny861a", ARCH_AVR25, "__AVR_ATtiny861A__", 0, 0x0060, "tn861a" },
- { "attiny43u", ARCH_AVR25, "__AVR_ATtiny43U__", 0, 0x0060, "tn43u" },
- { "attiny87", ARCH_AVR25, "__AVR_ATtiny87__", 0, 0x0100, "tn87" },
- { "attiny48", ARCH_AVR25, "__AVR_ATtiny48__", 0, 0x0100, "tn48" },
- { "attiny88", ARCH_AVR25, "__AVR_ATtiny88__", 0, 0x0100, "tn88" },
- { "at86rf401", ARCH_AVR25, "__AVR_AT86RF401__", 1, 0x0060, "86401" },
- /* Classic, > 8K, <= 64K. */
- { "avr3", ARCH_AVR3, NULL, 0, 0x0060, "43355" },
- { "at43usb355", ARCH_AVR3, "__AVR_AT43USB355__", 0, 0x0060, "43355" },
- { "at76c711", ARCH_AVR3, "__AVR_AT76C711__", 0, 0x0060, "76711" },
- /* Classic, == 128K. */
- { "avr31", ARCH_AVR31, NULL, 0, 0x0060, "m103" },
- { "atmega103", ARCH_AVR31, "__AVR_ATmega103__", 0, 0x0060, "m103" },
- { "at43usb320", ARCH_AVR31, "__AVR_AT43USB320__", 0, 0x0060, "43320" },
- /* Classic + MOVW + JMP/CALL. */
- { "avr35", ARCH_AVR35, NULL, 0, 0x0100, "usb162" },
- { "at90usb82", ARCH_AVR35, "__AVR_AT90USB82__", 0, 0x0100, "usb82" },
- { "at90usb162", ARCH_AVR35, "__AVR_AT90USB162__", 0, 0x0100, "usb162" },
- { "atmega8u2", ARCH_AVR35, "__AVR_ATmega8U2__", 0, 0x0100, "m8u2" },
- { "atmega16u2", ARCH_AVR35, "__AVR_ATmega16U2__", 0, 0x0100, "m16u2" },
- { "atmega32u2", ARCH_AVR35, "__AVR_ATmega32U2__", 0, 0x0100, "m32u2" },
- { "attiny167", ARCH_AVR35, "__AVR_ATtiny167__", 0, 0x0100, "tn167" },
- /* Enhanced, <= 8K. */
- { "avr4", ARCH_AVR4, NULL, 0, 0x0060, "m8" },
- { "atmega8", ARCH_AVR4, "__AVR_ATmega8__", 0, 0x0060, "m8" },
- { "atmega48", ARCH_AVR4, "__AVR_ATmega48__", 0, 0x0100, "m48" },
- { "atmega48a", ARCH_AVR4, "__AVR_ATmega48A__", 0, 0x0100, "m48a" },
- { "atmega48p", ARCH_AVR4, "__AVR_ATmega48P__", 0, 0x0100, "m48p" },
- { "atmega88", ARCH_AVR4, "__AVR_ATmega88__", 0, 0x0100, "m88" },
- { "atmega88a", ARCH_AVR4, "__AVR_ATmega88A__", 0, 0x0100, "m88a" },
- { "atmega88p", ARCH_AVR4, "__AVR_ATmega88P__", 0, 0x0100, "m88p" },
- { "atmega88pa", ARCH_AVR4, "__AVR_ATmega88PA__", 0, 0x0100, "m88pa" },
- { "atmega8515", ARCH_AVR4, "__AVR_ATmega8515__", 0, 0x0060, "m8515" },
- { "atmega8535", ARCH_AVR4, "__AVR_ATmega8535__", 0, 0x0060, "m8535" },
- { "atmega8hva", ARCH_AVR4, "__AVR_ATmega8HVA__", 0, 0x0100, "m8hva" },
- { "at90pwm1", ARCH_AVR4, "__AVR_AT90PWM1__", 0, 0x0100, "90pwm1" },
- { "at90pwm2", ARCH_AVR4, "__AVR_AT90PWM2__", 0, 0x0100, "90pwm2" },
- { "at90pwm2b", ARCH_AVR4, "__AVR_AT90PWM2B__", 0, 0x0100, "90pwm2b" },
- { "at90pwm3", ARCH_AVR4, "__AVR_AT90PWM3__", 0, 0x0100, "90pwm3" },
- { "at90pwm3b", ARCH_AVR4, "__AVR_AT90PWM3B__", 0, 0x0100, "90pwm3b" },
- { "at90pwm81", ARCH_AVR4, "__AVR_AT90PWM81__", 0, 0x0100, "90pwm81" },
- /* Enhanced, > 8K, <= 64K. */
- { "avr5", ARCH_AVR5, NULL, 0, 0x0060, "m16" },
- { "atmega16", ARCH_AVR5, "__AVR_ATmega16__", 0, 0x0060, "m16" },
- { "atmega16a", ARCH_AVR5, "__AVR_ATmega16A__", 0, 0x0060, "m16a" },
- { "atmega161", ARCH_AVR5, "__AVR_ATmega161__", 0, 0x0060, "m161" },
- { "atmega162", ARCH_AVR5, "__AVR_ATmega162__", 0, 0x0100, "m162" },
- { "atmega163", ARCH_AVR5, "__AVR_ATmega163__", 0, 0x0060, "m163" },
- { "atmega164a", ARCH_AVR5, "__AVR_ATmega164A__", 0, 0x0060, "m164a" },
- { "atmega164p", ARCH_AVR5, "__AVR_ATmega164P__", 0, 0x0100, "m164p" },
- { "atmega165", ARCH_AVR5, "__AVR_ATmega165__", 0, 0x0100, "m165" },
- { "atmega165a", ARCH_AVR5, "__AVR_ATmega165A__", 0, 0x0100, "m165a" },
- { "atmega165p", ARCH_AVR5, "__AVR_ATmega165P__", 0, 0x0100, "m165p" },
- { "atmega168", ARCH_AVR5, "__AVR_ATmega168__", 0, 0x0100, "m168" },
- { "atmega168a", ARCH_AVR5, "__AVR_ATmega168A__", 0, 0x0100, "m168a" },
- { "atmega168p", ARCH_AVR5, "__AVR_ATmega168P__", 0, 0x0100, "m168p" },
- { "atmega169", ARCH_AVR5, "__AVR_ATmega169__", 0, 0x0100, "m169" },
- { "atmega169a", ARCH_AVR5, "__AVR_ATmega169A__", 0, 0x0100, "m169a" },
- { "atmega169p", ARCH_AVR5, "__AVR_ATmega169P__", 0, 0x0100, "m169p" },
- { "atmega169pa", ARCH_AVR5, "__AVR_ATmega169PA__", 0, 0x0100, "m169pa" },
- { "atmega32", ARCH_AVR5, "__AVR_ATmega32__", 0, 0x0060, "m32" },
- { "atmega323", ARCH_AVR5, "__AVR_ATmega323__", 0, 0x0060, "m323" },
- { "atmega324a", ARCH_AVR5, "__AVR_ATmega324A__", 0, 0x0100, "m324a" },
- { "atmega324p", ARCH_AVR5, "__AVR_ATmega324P__", 0, 0x0100, "m324p" },
- { "atmega324pa", ARCH_AVR5, "__AVR_ATmega324PA__", 0, 0x0100, "m324pa" },
- { "atmega325", ARCH_AVR5, "__AVR_ATmega325__", 0, 0x0100, "m325" },
- { "atmega325a", ARCH_AVR5, "__AVR_ATmega325A__", 0, 0x0100, "m325a" },
- { "atmega325p", ARCH_AVR5, "__AVR_ATmega325P__", 0, 0x0100, "m325p" },
- { "atmega3250", ARCH_AVR5, "__AVR_ATmega3250__", 0, 0x0100, "m3250" },
- { "atmega3250a", ARCH_AVR5, "__AVR_ATmega3250A__", 0, 0x0100, "m3250a" },
- { "atmega3250p", ARCH_AVR5, "__AVR_ATmega3250P__", 0, 0x0100, "m3250p" },
- { "atmega328", ARCH_AVR5, "__AVR_ATmega328__", 0, 0x0100, "m328" },
- { "atmega328p", ARCH_AVR5, "__AVR_ATmega328P__", 0, 0x0100, "m328p" },
- { "atmega329", ARCH_AVR5, "__AVR_ATmega329__", 0, 0x0100, "m329" },
- { "atmega329a", ARCH_AVR5, "__AVR_ATmega329A__", 0, 0x0100, "m329a" },
- { "atmega329p", ARCH_AVR5, "__AVR_ATmega329P__", 0, 0x0100, "m329p" },
- { "atmega329pa", ARCH_AVR5, "__AVR_ATmega329PA__", 0, 0x0100, "m329pa" },
- { "atmega3290", ARCH_AVR5, "__AVR_ATmega3290__", 0, 0x0100, "m3290" },
- { "atmega3290a", ARCH_AVR5, "__AVR_ATmega3290A__", 0, 0x0100, "m3290a" },
- { "atmega3290p", ARCH_AVR5, "__AVR_ATmega3290P__", 0, 0x0100, "m3290p" },
- { "atmega406", ARCH_AVR5, "__AVR_ATmega406__", 0, 0x0100, "m406" },
- { "atmega64", ARCH_AVR5, "__AVR_ATmega64__", 0, 0x0100, "m64" },
- { "atmega640", ARCH_AVR5, "__AVR_ATmega640__", 0, 0x0200, "m640" },
- { "atmega644", ARCH_AVR5, "__AVR_ATmega644__", 0, 0x0100, "m644" },
- { "atmega644a", ARCH_AVR5, "__AVR_ATmega644A__", 0, 0x0100, "m644a" },
- { "atmega644p", ARCH_AVR5, "__AVR_ATmega644P__", 0, 0x0100, "m644p" },
- { "atmega644pa", ARCH_AVR5, "__AVR_ATmega644PA__", 0, 0x0100, "m644pa" },
- { "atmega645", ARCH_AVR5, "__AVR_ATmega645__", 0, 0x0100, "m645" },
- { "atmega645a", ARCH_AVR5, "__AVR_ATmega645A__", 0, 0x0100, "m645a" },
- { "atmega645p", ARCH_AVR5, "__AVR_ATmega645P__", 0, 0x0100, "m645p" },
- { "atmega6450", ARCH_AVR5, "__AVR_ATmega6450__", 0, 0x0100, "m6450" },
- { "atmega6450a", ARCH_AVR5, "__AVR_ATmega6450A__", 0, 0x0100, "m6450a" },
- { "atmega6450p", ARCH_AVR5, "__AVR_ATmega6450P__", 0, 0x0100, "m6450p" },
- { "atmega649", ARCH_AVR5, "__AVR_ATmega649__", 0, 0x0100, "m649" },
- { "atmega649a", ARCH_AVR5, "__AVR_ATmega649A__", 0, 0x0100, "m649a" },
- { "atmega649p", ARCH_AVR5, "__AVR_ATmega649P__", 0, 0x0100, "m649p" },
- { "atmega6490", ARCH_AVR5, "__AVR_ATmega6490__", 0, 0x0100, "m6490" },
- { "atmega16hva", ARCH_AVR5, "__AVR_ATmega16HVA__", 0, 0x0100, "m16hva" },
- { "atmega16hva2", ARCH_AVR5, "__AVR_ATmega16HVA2__", 0, 0x0100, "m16hva2" },
- { "atmega16hvb", ARCH_AVR5, "__AVR_ATmega16HVB__", 0, 0x0100, "m16hvb" },
- { "atmega32hvb", ARCH_AVR5, "__AVR_ATmega32HVB__", 0, 0x0100, "m32hvb" },
- { "atmega64hve", ARCH_AVR5, "__AVR_ATmega64HVE__", 0, 0x0100, "m64hve" },
- { "at90can32", ARCH_AVR5, "__AVR_AT90CAN32__", 0, 0x0100, "can32" },
- { "at90can64", ARCH_AVR5, "__AVR_AT90CAN64__", 0, 0x0100, "can64" },
- { "at90pwm216", ARCH_AVR5, "__AVR_AT90PWM216__", 0, 0x0100, "90pwm216" },
- { "at90pwm316", ARCH_AVR5, "__AVR_AT90PWM316__", 0, 0x0100, "90pwm316" },
- { "atmega32c1", ARCH_AVR5, "__AVR_ATmega32C1__", 0, 0x0100, "m32c1" },
- { "atmega64c1", ARCH_AVR5, "__AVR_ATmega64C1__", 0, 0x0100, "m64c1" },
- { "atmega16m1", ARCH_AVR5, "__AVR_ATmega16M1__", 0, 0x0100, "m16m1" },
- { "atmega32m1", ARCH_AVR5, "__AVR_ATmega32M1__", 0, 0x0100, "m32m1" },
- { "atmega64m1", ARCH_AVR5, "__AVR_ATmega64M1__", 0, 0x0100, "m64m1" },
- { "atmega16u4", ARCH_AVR5, "__AVR_ATmega16U4__", 0, 0x0100, "m16u4" },
- { "atmega32u4", ARCH_AVR5, "__AVR_ATmega32U4__", 0, 0x0100, "m32u4" },
- { "atmega32u6", ARCH_AVR5, "__AVR_ATmega32U6__", 0, 0x0100, "m32u6" },
- { "at90scr100", ARCH_AVR5, "__AVR_AT90SCR100__", 0, 0x0100, "90scr100" },
- { "at90usb646", ARCH_AVR5, "__AVR_AT90USB646__", 0, 0x0100, "usb646" },
- { "at90usb647", ARCH_AVR5, "__AVR_AT90USB647__", 0, 0x0100, "usb647" },
- { "at94k", ARCH_AVR5, "__AVR_AT94K__", 0, 0x0060, "at94k" },
- { "m3000", ARCH_AVR5, "__AVR_M3000__", 0, 0x1000, "m3000" },
- /* Enhanced, == 128K. */
- { "avr51", ARCH_AVR51, NULL, 0, 0x0100, "m128" },
- { "atmega128", ARCH_AVR51, "__AVR_ATmega128__", 0, 0x0100, "m128" },
- { "atmega1280", ARCH_AVR51, "__AVR_ATmega1280__", 0, 0x0200, "m1280" },
- { "atmega1281", ARCH_AVR51, "__AVR_ATmega1281__", 0, 0x0200, "m1281" },
- { "atmega1284p", ARCH_AVR51, "__AVR_ATmega1284P__", 0, 0x0100, "m1284p" },
- { "atmega128rfa1", ARCH_AVR51, "__AVR_ATmega128RFA1__", 0, 0x0200, "m128rfa1" },
- { "at90can128", ARCH_AVR51, "__AVR_AT90CAN128__", 0, 0x0100, "can128" },
- { "at90usb1286", ARCH_AVR51, "__AVR_AT90USB1286__", 0, 0x0100, "usb1286" },
- { "at90usb1287", ARCH_AVR51, "__AVR_AT90USB1287__", 0, 0x0100, "usb1286" },
- /* 3-Byte PC. */
- { "avr6", ARCH_AVR6, NULL, 0, 0x0200, "m2561" },
- { "atmega2560", ARCH_AVR6, "__AVR_ATmega2560__", 0, 0x0200, "m2560" },
- { "atmega2561", ARCH_AVR6, "__AVR_ATmega2561__", 0, 0x0200, "m2561" },
- /* Assembler only. */
- { "avr1", ARCH_AVR1, NULL, 0, 0x0060, "s1200" },
- { "at90s1200", ARCH_AVR1, "__AVR_AT90S1200__", 0, 0x0060, "s1200" },
- { "attiny11", ARCH_AVR1, "__AVR_ATtiny11__", 0, 0x0060, "tn11" },
- { "attiny12", ARCH_AVR1, "__AVR_ATtiny12__", 0, 0x0060, "tn12" },
- { "attiny15", ARCH_AVR1, "__AVR_ATtiny15__", 0, 0x0060, "tn15" },
- { "attiny28", ARCH_AVR1, "__AVR_ATtiny28__", 0, 0x0060, "tn28" },
+#define AVR_MCU(NAME, ARCH, MACRO, SHORT_SP, DATA_SEC, LIBRARY_NAME) \
+ { NAME, ARCH, MACRO, SHORT_SP, DATA_SEC, LIBRARY_NAME },
+#include "avr-mcus.def"
+#undef AVR_MCU
/* End of list. */
{ NULL, ARCH_UNKNOWN, NULL, 0, 0, NULL }
};
diff --git a/gcc/config/avr/avr-mcus.def b/gcc/config/avr/avr-mcus.def
new file mode 100644
index 0000000..d2c6e7a
--- /dev/null
+++ b/gcc/config/avr/avr-mcus.def
@@ -0,0 +1,211 @@
+/* AVR MCUs.
+ Copyright (C) 2009, 2010, 2011
+ Free Software Foundation, Inc.
+
+ This file is part of GCC.
+
+ GCC is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3, or (at your option)
+ any later version.
+
+ GCC is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ 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/>. */
+
+/* List of all known AVR MCU types - if updated, it has to be kept
+ in sync in several places (FIXME: is there a better way?):
+ - here;
+ - t-avr (MULTILIB_MATCHES);
+ - gas/config/tc-avr.c;
+ - avr-libc.
+
+ Before including this file, define a macro:
+
+ AVR_MCU (NAME, ARCH, MACRO, SHORT_SP, DATA_SEC, LIBRARY_NAME)
+
+ where the arguments are the fields of struct mcu_type_s. */
+
+/* "avr2" must be first for the "0" default to work as intended. */
+
+/* Classic, <= 8K. */
+AVR_MCU ("avr2", ARCH_AVR2, NULL, 0, 0x0060, "s8515")
+AVR_MCU ("at90s2313", ARCH_AVR2, "__AVR_AT90S2313__", 1, 0x0060, "s2313")
+AVR_MCU ("at90s2323", ARCH_AVR2, "__AVR_AT90S2323__", 1, 0x0060, "s2323")
+AVR_MCU ("at90s2333", ARCH_AVR2, "__AVR_AT90S2333__", 1, 0x0060, "s2333")
+AVR_MCU ("at90s2343", ARCH_AVR2, "__AVR_AT90S2343__", 1, 0x0060, "s2343")
+AVR_MCU ("attiny22", ARCH_AVR2, "__AVR_ATtiny22__", 1, 0x0060, "tn22")
+AVR_MCU ("attiny26", ARCH_AVR2, "__AVR_ATtiny26__", 1, 0x0060, "tn26")
+AVR_MCU ("at90s4414", ARCH_AVR2, "__AVR_AT90S4414__", 0, 0x0060, "s4414")
+AVR_MCU ("at90s4433", ARCH_AVR2, "__AVR_AT90S4433__", 1, 0x0060, "s4433")
+AVR_MCU ("at90s4434", ARCH_AVR2, "__AVR_AT90S4434__", 0, 0x0060, "s4434")
+AVR_MCU ("at90s8515", ARCH_AVR2, "__AVR_AT90S8515__", 0, 0x0060, "s8515")
+AVR_MCU ("at90c8534", ARCH_AVR2, "__AVR_AT90C8534__", 0, 0x0060, "c8534")
+AVR_MCU ("at90s8535", ARCH_AVR2, "__AVR_AT90S8535__", 0, 0x0060, "s8535")
+/* Classic + MOVW, <= 8K. */
+AVR_MCU ("avr25", ARCH_AVR25, NULL, 0, 0x0060, "tn85")
+AVR_MCU ("ata6289", ARCH_AVR25, "__AVR_ATA6289__", 0, 0x0100, "a6289")
+AVR_MCU ("attiny13", ARCH_AVR25, "__AVR_ATtiny13__", 1, 0x0060, "tn13")
+AVR_MCU ("attiny13a", ARCH_AVR25, "__AVR_ATtiny13A__", 1, 0x0060, "tn13a")
+AVR_MCU ("attiny2313", ARCH_AVR25, "__AVR_ATtiny2313__", 1, 0x0060, "tn2313")
+AVR_MCU ("attiny2313a", ARCH_AVR25, "__AVR_ATtiny2313A__", 1, 0x0060, "tn2313a")
+AVR_MCU ("attiny24", ARCH_AVR25, "__AVR_ATtiny24__", 1, 0x0060, "tn24")
+AVR_MCU ("attiny24a", ARCH_AVR25, "__AVR_ATtiny24A__", 1, 0x0060, "tn24a")
+AVR_MCU ("attiny4313", ARCH_AVR25, "__AVR_ATtiny4313__", 1, 0x0060, "tn4313")
+AVR_MCU ("attiny44", ARCH_AVR25, "__AVR_ATtiny44__", 0, 0x0060, "tn44")
+AVR_MCU ("attiny44a", ARCH_AVR25, "__AVR_ATtiny44A__", 0, 0x0060, "tn44a")
+AVR_MCU ("attiny84", ARCH_AVR25, "__AVR_ATtiny84__", 0, 0x0060, "tn84")
+AVR_MCU ("attiny84a", ARCH_AVR25, "__AVR_ATtiny84A__", 0, 0x0060, "tn84")
+AVR_MCU ("attiny25", ARCH_AVR25, "__AVR_ATtiny25__", 1, 0x0060, "tn25")
+AVR_MCU ("attiny45", ARCH_AVR25, "__AVR_ATtiny45__", 0, 0x0060, "tn45")
+AVR_MCU ("attiny85", ARCH_AVR25, "__AVR_ATtiny85__", 0, 0x0060, "tn85")
+AVR_MCU ("attiny261", ARCH_AVR25, "__AVR_ATtiny261__", 1, 0x0060, "tn261")
+AVR_MCU ("attiny261a", ARCH_AVR25, "__AVR_ATtiny261A__", 1, 0x0060, "tn261a")
+AVR_MCU ("attiny461", ARCH_AVR25, "__AVR_ATtiny461__", 0, 0x0060, "tn461")
+AVR_MCU ("attiny461a", ARCH_AVR25, "__AVR_ATtiny461A__", 0, 0x0060, "tn461a")
+AVR_MCU ("attiny861", ARCH_AVR25, "__AVR_ATtiny861__", 0, 0x0060, "tn861")
+AVR_MCU ("attiny861a", ARCH_AVR25, "__AVR_ATtiny861A__", 0, 0x0060, "tn861a")
+AVR_MCU ("attiny43u", ARCH_AVR25, "__AVR_ATtiny43U__", 0, 0x0060, "tn43u")
+AVR_MCU ("attiny87", ARCH_AVR25, "__AVR_ATtiny87__", 0, 0x0100, "tn87")
+AVR_MCU ("attiny48", ARCH_AVR25, "__AVR_ATtiny48__", 0, 0x0100, "tn48")
+AVR_MCU ("attiny88", ARCH_AVR25, "__AVR_ATtiny88__", 0, 0x0100, "tn88")
+AVR_MCU ("at86rf401", ARCH_AVR25, "__AVR_AT86RF401__", 1, 0x0060, "86401")
+/* Classic, > 8K, <= 64K. */
+AVR_MCU ("avr3", ARCH_AVR3, NULL, 0, 0x0060, "43355")
+AVR_MCU ("at43usb355", ARCH_AVR3, "__AVR_AT43USB355__", 0, 0x0060, "43355")
+AVR_MCU ("at76c711", ARCH_AVR3, "__AVR_AT76C711__", 0, 0x0060, "76711")
+/* Classic, == 128K. */
+AVR_MCU ("avr31", ARCH_AVR31, NULL, 0, 0x0060, "m103")
+AVR_MCU ("atmega103", ARCH_AVR31, "__AVR_ATmega103__", 0, 0x0060, "m103")
+AVR_MCU ("at43usb320", ARCH_AVR31, "__AVR_AT43USB320__", 0, 0x0060, "43320")
+/* Classic + MOVW + JMP/CALL. */
+AVR_MCU ("avr35", ARCH_AVR35, NULL, 0, 0x0100, "usb162")
+AVR_MCU ("at90usb82", ARCH_AVR35, "__AVR_AT90USB82__", 0, 0x0100, "usb82")
+AVR_MCU ("at90usb162", ARCH_AVR35, "__AVR_AT90USB162__", 0, 0x0100, "usb162")
+AVR_MCU ("atmega8u2", ARCH_AVR35, "__AVR_ATmega8U2__", 0, 0x0100, "m8u2")
+AVR_MCU ("atmega16u2", ARCH_AVR35, "__AVR_ATmega16U2__", 0, 0x0100, "m16u2")
+AVR_MCU ("atmega32u2", ARCH_AVR35, "__AVR_ATmega32U2__", 0, 0x0100, "m32u2")
+AVR_MCU ("attiny167", ARCH_AVR35, "__AVR_ATtiny167__", 0, 0x0100, "tn167")
+/* Enhanced, <= 8K. */
+AVR_MCU ("avr4", ARCH_AVR4, NULL, 0, 0x0060, "m8")
+AVR_MCU ("atmega8", ARCH_AVR4, "__AVR_ATmega8__", 0, 0x0060, "m8")
+AVR_MCU ("atmega48", ARCH_AVR4, "__AVR_ATmega48__", 0, 0x0100, "m48")
+AVR_MCU ("atmega48a", ARCH_AVR4, "__AVR_ATmega48A__", 0, 0x0100, "m48a")
+AVR_MCU ("atmega48p", ARCH_AVR4, "__AVR_ATmega48P__", 0, 0x0100, "m48p")
+AVR_MCU ("atmega88", ARCH_AVR4, "__AVR_ATmega88__", 0, 0x0100, "m88")
+AVR_MCU ("atmega88a", ARCH_AVR4, "__AVR_ATmega88A__", 0, 0x0100, "m88a")
+AVR_MCU ("atmega88p", ARCH_AVR4, "__AVR_ATmega88P__", 0, 0x0100, "m88p")
+AVR_MCU ("atmega88pa", ARCH_AVR4, "__AVR_ATmega88PA__", 0, 0x0100, "m88pa")
+AVR_MCU ("atmega8515", ARCH_AVR4, "__AVR_ATmega8515__", 0, 0x0060, "m8515")
+AVR_MCU ("atmega8535", ARCH_AVR4, "__AVR_ATmega8535__", 0, 0x0060, "m8535")
+AVR_MCU ("atmega8hva", ARCH_AVR4, "__AVR_ATmega8HVA__", 0, 0x0100, "m8hva")
+AVR_MCU ("at90pwm1", ARCH_AVR4, "__AVR_AT90PWM1__", 0, 0x0100, "90pwm1")
+AVR_MCU ("at90pwm2", ARCH_AVR4, "__AVR_AT90PWM2__", 0, 0x0100, "90pwm2")
+AVR_MCU ("at90pwm2b", ARCH_AVR4, "__AVR_AT90PWM2B__", 0, 0x0100, "90pwm2b")
+AVR_MCU ("at90pwm3", ARCH_AVR4, "__AVR_AT90PWM3__", 0, 0x0100, "90pwm3")
+AVR_MCU ("at90pwm3b", ARCH_AVR4, "__AVR_AT90PWM3B__", 0, 0x0100, "90pwm3b")
+AVR_MCU ("at90pwm81", ARCH_AVR4, "__AVR_AT90PWM81__", 0, 0x0100, "90pwm81")
+/* Enhanced, > 8K, <= 64K. */
+AVR_MCU ("avr5", ARCH_AVR5, NULL, 0, 0x0060, "m16")
+AVR_MCU ("atmega16", ARCH_AVR5, "__AVR_ATmega16__", 0, 0x0060, "m16")
+AVR_MCU ("atmega16a", ARCH_AVR5, "__AVR_ATmega16A__", 0, 0x0060, "m16a")
+AVR_MCU ("atmega161", ARCH_AVR5, "__AVR_ATmega161__", 0, 0x0060, "m161")
+AVR_MCU ("atmega162", ARCH_AVR5, "__AVR_ATmega162__", 0, 0x0100, "m162")
+AVR_MCU ("atmega163", ARCH_AVR5, "__AVR_ATmega163__", 0, 0x0060, "m163")
+AVR_MCU ("atmega164a", ARCH_AVR5, "__AVR_ATmega164A__", 0, 0x0060, "m164a")
+AVR_MCU ("atmega164p", ARCH_AVR5, "__AVR_ATmega164P__", 0, 0x0100, "m164p")
+AVR_MCU ("atmega165", ARCH_AVR5, "__AVR_ATmega165__", 0, 0x0100, "m165")
+AVR_MCU ("atmega165a", ARCH_AVR5, "__AVR_ATmega165A__", 0, 0x0100, "m165a")
+AVR_MCU ("atmega165p", ARCH_AVR5, "__AVR_ATmega165P__", 0, 0x0100, "m165p")
+AVR_MCU ("atmega168", ARCH_AVR5, "__AVR_ATmega168__", 0, 0x0100, "m168")
+AVR_MCU ("atmega168a", ARCH_AVR5, "__AVR_ATmega168A__", 0, 0x0100, "m168a")
+AVR_MCU ("atmega168p", ARCH_AVR5, "__AVR_ATmega168P__", 0, 0x0100, "m168p")
+AVR_MCU ("atmega169", ARCH_AVR5, "__AVR_ATmega169__", 0, 0x0100, "m169")
+AVR_MCU ("atmega169a", ARCH_AVR5, "__AVR_ATmega169A__", 0, 0x0100, "m169a")
+AVR_MCU ("atmega169p", ARCH_AVR5, "__AVR_ATmega169P__", 0, 0x0100, "m169p")
+AVR_MCU ("atmega169pa", ARCH_AVR5, "__AVR_ATmega169PA__", 0, 0x0100, "m169pa")
+AVR_MCU ("atmega32", ARCH_AVR5, "__AVR_ATmega32__", 0, 0x0060, "m32")
+AVR_MCU ("atmega323", ARCH_AVR5, "__AVR_ATmega323__", 0, 0x0060, "m323")
+AVR_MCU ("atmega324a", ARCH_AVR5, "__AVR_ATmega324A__", 0, 0x0100, "m324a")
+AVR_MCU ("atmega324p", ARCH_AVR5, "__AVR_ATmega324P__", 0, 0x0100, "m324p")
+AVR_MCU ("atmega324pa", ARCH_AVR5, "__AVR_ATmega324PA__", 0, 0x0100, "m324pa")
+AVR_MCU ("atmega325", ARCH_AVR5, "__AVR_ATmega325__", 0, 0x0100, "m325")
+AVR_MCU ("atmega325a", ARCH_AVR5, "__AVR_ATmega325A__", 0, 0x0100, "m325a")
+AVR_MCU ("atmega325p", ARCH_AVR5, "__AVR_ATmega325P__", 0, 0x0100, "m325p")
+AVR_MCU ("atmega3250", ARCH_AVR5, "__AVR_ATmega3250__", 0, 0x0100, "m3250")
+AVR_MCU ("atmega3250a", ARCH_AVR5, "__AVR_ATmega3250A__", 0, 0x0100, "m3250a")
+AVR_MCU ("atmega3250p", ARCH_AVR5, "__AVR_ATmega3250P__", 0, 0x0100, "m3250p")
+AVR_MCU ("atmega328", ARCH_AVR5, "__AVR_ATmega328__", 0, 0x0100, "m328")
+AVR_MCU ("atmega328p", ARCH_AVR5, "__AVR_ATmega328P__", 0, 0x0100, "m328p")
+AVR_MCU ("atmega329", ARCH_AVR5, "__AVR_ATmega329__", 0, 0x0100, "m329")
+AVR_MCU ("atmega329a", ARCH_AVR5, "__AVR_ATmega329A__", 0, 0x0100, "m329a")
+AVR_MCU ("atmega329p", ARCH_AVR5, "__AVR_ATmega329P__", 0, 0x0100, "m329p")
+AVR_MCU ("atmega329pa", ARCH_AVR5, "__AVR_ATmega329PA__", 0, 0x0100, "m329pa")
+AVR_MCU ("atmega3290", ARCH_AVR5, "__AVR_ATmega3290__", 0, 0x0100, "m3290")
+AVR_MCU ("atmega3290a", ARCH_AVR5, "__AVR_ATmega3290A__", 0, 0x0100, "m3290a")
+AVR_MCU ("atmega3290p", ARCH_AVR5, "__AVR_ATmega3290P__", 0, 0x0100, "m3290p")
+AVR_MCU ("atmega406", ARCH_AVR5, "__AVR_ATmega406__", 0, 0x0100, "m406")
+AVR_MCU ("atmega64", ARCH_AVR5, "__AVR_ATmega64__", 0, 0x0100, "m64")
+AVR_MCU ("atmega640", ARCH_AVR5, "__AVR_ATmega640__", 0, 0x0200, "m640")
+AVR_MCU ("atmega644", ARCH_AVR5, "__AVR_ATmega644__", 0, 0x0100, "m644")
+AVR_MCU ("atmega644a", ARCH_AVR5, "__AVR_ATmega644A__", 0, 0x0100, "m644a")
+AVR_MCU ("atmega644p", ARCH_AVR5, "__AVR_ATmega644P__", 0, 0x0100, "m644p")
+AVR_MCU ("atmega644pa", ARCH_AVR5, "__AVR_ATmega644PA__", 0, 0x0100, "m644pa")
+AVR_MCU ("atmega645", ARCH_AVR5, "__AVR_ATmega645__", 0, 0x0100, "m645")
+AVR_MCU ("atmega645a", ARCH_AVR5, "__AVR_ATmega645A__", 0, 0x0100, "m645a")
+AVR_MCU ("atmega645p", ARCH_AVR5, "__AVR_ATmega645P__", 0, 0x0100, "m645p")
+AVR_MCU ("atmega6450", ARCH_AVR5, "__AVR_ATmega6450__", 0, 0x0100, "m6450")
+AVR_MCU ("atmega6450a", ARCH_AVR5, "__AVR_ATmega6450A__", 0, 0x0100, "m6450a")
+AVR_MCU ("atmega6450p", ARCH_AVR5, "__AVR_ATmega6450P__", 0, 0x0100, "m6450p")
+AVR_MCU ("atmega649", ARCH_AVR5, "__AVR_ATmega649__", 0, 0x0100, "m649")
+AVR_MCU ("atmega649a", ARCH_AVR5, "__AVR_ATmega649A__", 0, 0x0100, "m649a")
+AVR_MCU ("atmega649p", ARCH_AVR5, "__AVR_ATmega649P__", 0, 0x0100, "m649p")
+AVR_MCU ("atmega6490", ARCH_AVR5, "__AVR_ATmega6490__", 0, 0x0100, "m6490")
+AVR_MCU ("atmega16hva", ARCH_AVR5, "__AVR_ATmega16HVA__", 0, 0x0100, "m16hva")
+AVR_MCU ("atmega16hva2", ARCH_AVR5, "__AVR_ATmega16HVA2__", 0, 0x0100, "m16hva2")
+AVR_MCU ("atmega16hvb", ARCH_AVR5, "__AVR_ATmega16HVB__", 0, 0x0100, "m16hvb")
+AVR_MCU ("atmega32hvb", ARCH_AVR5, "__AVR_ATmega32HVB__", 0, 0x0100, "m32hvb")
+AVR_MCU ("atmega64hve", ARCH_AVR5, "__AVR_ATmega64HVE__", 0, 0x0100, "m64hve")
+AVR_MCU ("at90can32", ARCH_AVR5, "__AVR_AT90CAN32__", 0, 0x0100, "can32")
+AVR_MCU ("at90can64", ARCH_AVR5, "__AVR_AT90CAN64__", 0, 0x0100, "can64")
+AVR_MCU ("at90pwm216", ARCH_AVR5, "__AVR_AT90PWM216__", 0, 0x0100, "90pwm216")
+AVR_MCU ("at90pwm316", ARCH_AVR5, "__AVR_AT90PWM316__", 0, 0x0100, "90pwm316")
+AVR_MCU ("atmega32c1", ARCH_AVR5, "__AVR_ATmega32C1__", 0, 0x0100, "m32c1")
+AVR_MCU ("atmega64c1", ARCH_AVR5, "__AVR_ATmega64C1__", 0, 0x0100, "m64c1")
+AVR_MCU ("atmega16m1", ARCH_AVR5, "__AVR_ATmega16M1__", 0, 0x0100, "m16m1")
+AVR_MCU ("atmega32m1", ARCH_AVR5, "__AVR_ATmega32M1__", 0, 0x0100, "m32m1")
+AVR_MCU ("atmega64m1", ARCH_AVR5, "__AVR_ATmega64M1__", 0, 0x0100, "m64m1")
+AVR_MCU ("atmega16u4", ARCH_AVR5, "__AVR_ATmega16U4__", 0, 0x0100, "m16u4")
+AVR_MCU ("atmega32u4", ARCH_AVR5, "__AVR_ATmega32U4__", 0, 0x0100, "m32u4")
+AVR_MCU ("atmega32u6", ARCH_AVR5, "__AVR_ATmega32U6__", 0, 0x0100, "m32u6")
+AVR_MCU ("at90scr100", ARCH_AVR5, "__AVR_AT90SCR100__", 0, 0x0100, "90scr100")
+AVR_MCU ("at90usb646", ARCH_AVR5, "__AVR_AT90USB646__", 0, 0x0100, "usb646")
+AVR_MCU ("at90usb647", ARCH_AVR5, "__AVR_AT90USB647__", 0, 0x0100, "usb647")
+AVR_MCU ("at94k", ARCH_AVR5, "__AVR_AT94K__", 0, 0x0060, "at94k")
+AVR_MCU ("m3000", ARCH_AVR5, "__AVR_M3000__", 0, 0x1000, "m3000")
+/* Enhanced, == 128K. */
+AVR_MCU ("avr51", ARCH_AVR51, NULL, 0, 0x0100, "m128")
+AVR_MCU ("atmega128", ARCH_AVR51, "__AVR_ATmega128__", 0, 0x0100, "m128")
+AVR_MCU ("atmega1280", ARCH_AVR51, "__AVR_ATmega1280__", 0, 0x0200, "m1280")
+AVR_MCU ("atmega1281", ARCH_AVR51, "__AVR_ATmega1281__", 0, 0x0200, "m1281")
+AVR_MCU ("atmega1284p", ARCH_AVR51, "__AVR_ATmega1284P__", 0, 0x0100, "m1284p")
+AVR_MCU ("atmega128rfa1", ARCH_AVR51, "__AVR_ATmega128RFA1__", 0, 0x0200, "m128rfa1")
+AVR_MCU ("at90can128", ARCH_AVR51, "__AVR_AT90CAN128__", 0, 0x0100, "can128")
+AVR_MCU ("at90usb1286", ARCH_AVR51, "__AVR_AT90USB1286__", 0, 0x0100, "usb1286")
+AVR_MCU ("at90usb1287", ARCH_AVR51, "__AVR_AT90USB1287__", 0, 0x0100, "usb1286")
+/* 3-Byte PC. */
+AVR_MCU ("avr6", ARCH_AVR6, NULL, 0, 0x0200, "m2561")
+AVR_MCU ("atmega2560", ARCH_AVR6, "__AVR_ATmega2560__", 0, 0x0200, "m2560")
+AVR_MCU ("atmega2561", ARCH_AVR6, "__AVR_ATmega2561__", 0, 0x0200, "m2561")
+/* Assembler only. */
+AVR_MCU ("avr1", ARCH_AVR1, NULL, 0, 0x0060, "s1200")
+AVR_MCU ("at90s1200", ARCH_AVR1, "__AVR_AT90S1200__", 0, 0x0060, "s1200")
+AVR_MCU ("attiny11", ARCH_AVR1, "__AVR_ATtiny11__", 0, 0x0060, "tn11")
+AVR_MCU ("attiny12", ARCH_AVR1, "__AVR_ATtiny12__", 0, 0x0060, "tn12")
+AVR_MCU ("attiny15", ARCH_AVR1, "__AVR_ATtiny15__", 0, 0x0060, "tn15")
+AVR_MCU ("attiny28", ARCH_AVR1, "__AVR_ATtiny28__", 0, 0x0060, "tn28")
diff --git a/gcc/config/avr/avr-tables.opt b/gcc/config/avr/avr-tables.opt
new file mode 100644
index 0000000..90b41d5
--- /dev/null
+++ b/gcc/config/avr/avr-tables.opt
@@ -0,0 +1,523 @@
+; -*- buffer-read-only: t -*-
+; Generated automatically by genopt.sh from avr-mcus.def.
+
+; Copyright (C) 2011 Free Software Foundation, Inc.
+;
+; This file is part of GCC.
+;
+; GCC is free software; you can redistribute it and/or modify it under
+; the terms of the GNU General Public License as published by the Free
+; Software Foundation; either version 3, or (at your option) any later
+; version.
+;
+; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+; WARRANTY; without even the implied warranty of MERCHANTABILITY or
+; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+; for more details.
+;
+; 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/>.
+
+Enum
+Name(avr_mcu) Type(int)
+Known MCU names:
+
+EnumValue
+Enum(avr_mcu) String(avr2) Value(0)
+
+EnumValue
+Enum(avr_mcu) String(at90s2313) Value(1)
+
+EnumValue
+Enum(avr_mcu) String(at90s2323) Value(2)
+
+EnumValue
+Enum(avr_mcu) String(at90s2333) Value(3)
+
+EnumValue
+Enum(avr_mcu) String(at90s2343) Value(4)
+
+EnumValue
+Enum(avr_mcu) String(attiny22) Value(5)
+
+EnumValue
+Enum(avr_mcu) String(attiny26) Value(6)
+
+EnumValue
+Enum(avr_mcu) String(at90s4414) Value(7)
+
+EnumValue
+Enum(avr_mcu) String(at90s4433) Value(8)
+
+EnumValue
+Enum(avr_mcu) String(at90s4434) Value(9)
+
+EnumValue
+Enum(avr_mcu) String(at90s8515) Value(10)
+
+EnumValue
+Enum(avr_mcu) String(at90c8534) Value(11)
+
+EnumValue
+Enum(avr_mcu) String(at90s8535) Value(12)
+
+EnumValue
+Enum(avr_mcu) String(avr25) Value(13)
+
+EnumValue
+Enum(avr_mcu) String(ata6289) Value(14)
+
+EnumValue
+Enum(avr_mcu) String(attiny13) Value(15)
+
+EnumValue
+Enum(avr_mcu) String(attiny13a) Value(16)
+
+EnumValue
+Enum(avr_mcu) String(attiny2313) Value(17)
+
+EnumValue
+Enum(avr_mcu) String(attiny2313a) Value(18)
+
+EnumValue
+Enum(avr_mcu) String(attiny24) Value(19)
+
+EnumValue
+Enum(avr_mcu) String(attiny24a) Value(20)
+
+EnumValue
+Enum(avr_mcu) String(attiny4313) Value(21)
+
+EnumValue
+Enum(avr_mcu) String(attiny44) Value(22)
+
+EnumValue
+Enum(avr_mcu) String(attiny44a) Value(23)
+
+EnumValue
+Enum(avr_mcu) String(attiny84) Value(24)
+
+EnumValue
+Enum(avr_mcu) String(attiny84a) Value(25)
+
+EnumValue
+Enum(avr_mcu) String(attiny25) Value(26)
+
+EnumValue
+Enum(avr_mcu) String(attiny45) Value(27)
+
+EnumValue
+Enum(avr_mcu) String(attiny85) Value(28)
+
+EnumValue
+Enum(avr_mcu) String(attiny261) Value(29)
+
+EnumValue
+Enum(avr_mcu) String(attiny261a) Value(30)
+
+EnumValue
+Enum(avr_mcu) String(attiny461) Value(31)
+
+EnumValue
+Enum(avr_mcu) String(attiny461a) Value(32)
+
+EnumValue
+Enum(avr_mcu) String(attiny861) Value(33)
+
+EnumValue
+Enum(avr_mcu) String(attiny861a) Value(34)
+
+EnumValue
+Enum(avr_mcu) String(attiny43u) Value(35)
+
+EnumValue
+Enum(avr_mcu) String(attiny87) Value(36)
+
+EnumValue
+Enum(avr_mcu) String(attiny48) Value(37)
+
+EnumValue
+Enum(avr_mcu) String(attiny88) Value(38)
+
+EnumValue
+Enum(avr_mcu) String(at86rf401) Value(39)
+
+EnumValue
+Enum(avr_mcu) String(avr3) Value(40)
+
+EnumValue
+Enum(avr_mcu) String(at43usb355) Value(41)
+
+EnumValue
+Enum(avr_mcu) String(at76c711) Value(42)
+
+EnumValue
+Enum(avr_mcu) String(avr31) Value(43)
+
+EnumValue
+Enum(avr_mcu) String(atmega103) Value(44)
+
+EnumValue
+Enum(avr_mcu) String(at43usb320) Value(45)
+
+EnumValue
+Enum(avr_mcu) String(avr35) Value(46)
+
+EnumValue
+Enum(avr_mcu) String(at90usb82) Value(47)
+
+EnumValue
+Enum(avr_mcu) String(at90usb162) Value(48)
+
+EnumValue
+Enum(avr_mcu) String(atmega8u2) Value(49)
+
+EnumValue
+Enum(avr_mcu) String(atmega16u2) Value(50)
+
+EnumValue
+Enum(avr_mcu) String(atmega32u2) Value(51)
+
+EnumValue
+Enum(avr_mcu) String(attiny167) Value(52)
+
+EnumValue
+Enum(avr_mcu) String(avr4) Value(53)
+
+EnumValue
+Enum(avr_mcu) String(atmega8) Value(54)
+
+EnumValue
+Enum(avr_mcu) String(atmega48) Value(55)
+
+EnumValue
+Enum(avr_mcu) String(atmega48a) Value(56)
+
+EnumValue
+Enum(avr_mcu) String(atmega48p) Value(57)
+
+EnumValue
+Enum(avr_mcu) String(atmega88) Value(58)
+
+EnumValue
+Enum(avr_mcu) String(atmega88a) Value(59)
+
+EnumValue
+Enum(avr_mcu) String(atmega88p) Value(60)
+
+EnumValue
+Enum(avr_mcu) String(atmega88pa) Value(61)
+
+EnumValue
+Enum(avr_mcu) String(atmega8515) Value(62)
+
+EnumValue
+Enum(avr_mcu) String(atmega8535) Value(63)
+
+EnumValue
+Enum(avr_mcu) String(atmega8hva) Value(64)
+
+EnumValue
+Enum(avr_mcu) String(at90pwm1) Value(65)
+
+EnumValue
+Enum(avr_mcu) String(at90pwm2) Value(66)
+
+EnumValue
+Enum(avr_mcu) String(at90pwm2b) Value(67)
+
+EnumValue
+Enum(avr_mcu) String(at90pwm3) Value(68)
+
+EnumValue
+Enum(avr_mcu) String(at90pwm3b) Value(69)
+
+EnumValue
+Enum(avr_mcu) String(at90pwm81) Value(70)
+
+EnumValue
+Enum(avr_mcu) String(avr5) Value(71)
+
+EnumValue
+Enum(avr_mcu) String(atmega16) Value(72)
+
+EnumValue
+Enum(avr_mcu) String(atmega16a) Value(73)
+
+EnumValue
+Enum(avr_mcu) String(atmega161) Value(74)
+
+EnumValue
+Enum(avr_mcu) String(atmega162) Value(75)
+
+EnumValue
+Enum(avr_mcu) String(atmega163) Value(76)
+
+EnumValue
+Enum(avr_mcu) String(atmega164a) Value(77)
+
+EnumValue
+Enum(avr_mcu) String(atmega164p) Value(78)
+
+EnumValue
+Enum(avr_mcu) String(atmega165) Value(79)
+
+EnumValue
+Enum(avr_mcu) String(atmega165a) Value(80)
+
+EnumValue
+Enum(avr_mcu) String(atmega165p) Value(81)
+
+EnumValue
+Enum(avr_mcu) String(atmega168) Value(82)
+
+EnumValue
+Enum(avr_mcu) String(atmega168a) Value(83)
+
+EnumValue
+Enum(avr_mcu) String(atmega168p) Value(84)
+
+EnumValue
+Enum(avr_mcu) String(atmega169) Value(85)
+
+EnumValue
+Enum(avr_mcu) String(atmega169a) Value(86)
+
+EnumValue
+Enum(avr_mcu) String(atmega169p) Value(87)
+
+EnumValue
+Enum(avr_mcu) String(atmega169pa) Value(88)
+
+EnumValue
+Enum(avr_mcu) String(atmega32) Value(89)
+
+EnumValue
+Enum(avr_mcu) String(atmega323) Value(90)
+
+EnumValue
+Enum(avr_mcu) String(atmega324a) Value(91)
+
+EnumValue
+Enum(avr_mcu) String(atmega324p) Value(92)
+
+EnumValue
+Enum(avr_mcu) String(atmega324pa) Value(93)
+
+EnumValue
+Enum(avr_mcu) String(atmega325) Value(94)
+
+EnumValue
+Enum(avr_mcu) String(atmega325a) Value(95)
+
+EnumValue
+Enum(avr_mcu) String(atmega325p) Value(96)
+
+EnumValue
+Enum(avr_mcu) String(atmega3250) Value(97)
+
+EnumValue
+Enum(avr_mcu) String(atmega3250a) Value(98)
+
+EnumValue
+Enum(avr_mcu) String(atmega3250p) Value(99)
+
+EnumValue
+Enum(avr_mcu) String(atmega328) Value(100)
+
+EnumValue
+Enum(avr_mcu) String(atmega328p) Value(101)
+
+EnumValue
+Enum(avr_mcu) String(atmega329) Value(102)
+
+EnumValue
+Enum(avr_mcu) String(atmega329a) Value(103)
+
+EnumValue
+Enum(avr_mcu) String(atmega329p) Value(104)
+
+EnumValue
+Enum(avr_mcu) String(atmega329pa) Value(105)
+
+EnumValue
+Enum(avr_mcu) String(atmega3290) Value(106)
+
+EnumValue
+Enum(avr_mcu) String(atmega3290a) Value(107)
+
+EnumValue
+Enum(avr_mcu) String(atmega3290p) Value(108)
+
+EnumValue
+Enum(avr_mcu) String(atmega406) Value(109)
+
+EnumValue
+Enum(avr_mcu) String(atmega64) Value(110)
+
+EnumValue
+Enum(avr_mcu) String(atmega640) Value(111)
+
+EnumValue
+Enum(avr_mcu) String(atmega644) Value(112)
+
+EnumValue
+Enum(avr_mcu) String(atmega644a) Value(113)
+
+EnumValue
+Enum(avr_mcu) String(atmega644p) Value(114)
+
+EnumValue
+Enum(avr_mcu) String(atmega644pa) Value(115)
+
+EnumValue
+Enum(avr_mcu) String(atmega645) Value(116)
+
+EnumValue
+Enum(avr_mcu) String(atmega645a) Value(117)
+
+EnumValue
+Enum(avr_mcu) String(atmega645p) Value(118)
+
+EnumValue
+Enum(avr_mcu) String(atmega6450) Value(119)
+
+EnumValue
+Enum(avr_mcu) String(atmega6450a) Value(120)
+
+EnumValue
+Enum(avr_mcu) String(atmega6450p) Value(121)
+
+EnumValue
+Enum(avr_mcu) String(atmega649) Value(122)
+
+EnumValue
+Enum(avr_mcu) String(atmega649a) Value(123)
+
+EnumValue
+Enum(avr_mcu) String(atmega649p) Value(124)
+
+EnumValue
+Enum(avr_mcu) String(atmega6490) Value(125)
+
+EnumValue
+Enum(avr_mcu) String(atmega16hva) Value(126)
+
+EnumValue
+Enum(avr_mcu) String(atmega16hva2) Value(127)
+
+EnumValue
+Enum(avr_mcu) String(atmega16hvb) Value(128)
+
+EnumValue
+Enum(avr_mcu) String(atmega32hvb) Value(129)
+
+EnumValue
+Enum(avr_mcu) String(atmega64hve) Value(130)
+
+EnumValue
+Enum(avr_mcu) String(at90can32) Value(131)
+
+EnumValue
+Enum(avr_mcu) String(at90can64) Value(132)
+
+EnumValue
+Enum(avr_mcu) String(at90pwm216) Value(133)
+
+EnumValue
+Enum(avr_mcu) String(at90pwm316) Value(134)
+
+EnumValue
+Enum(avr_mcu) String(atmega32c1) Value(135)
+
+EnumValue
+Enum(avr_mcu) String(atmega64c1) Value(136)
+
+EnumValue
+Enum(avr_mcu) String(atmega16m1) Value(137)
+
+EnumValue
+Enum(avr_mcu) String(atmega32m1) Value(138)
+
+EnumValue
+Enum(avr_mcu) String(atmega64m1) Value(139)
+
+EnumValue
+Enum(avr_mcu) String(atmega16u4) Value(140)
+
+EnumValue
+Enum(avr_mcu) String(atmega32u4) Value(141)
+
+EnumValue
+Enum(avr_mcu) String(atmega32u6) Value(142)
+
+EnumValue
+Enum(avr_mcu) String(at90scr100) Value(143)
+
+EnumValue
+Enum(avr_mcu) String(at90usb646) Value(144)
+
+EnumValue
+Enum(avr_mcu) String(at90usb647) Value(145)
+
+EnumValue
+Enum(avr_mcu) String(at94k) Value(146)
+
+EnumValue
+Enum(avr_mcu) String(m3000) Value(147)
+
+EnumValue
+Enum(avr_mcu) String(avr51) Value(148)
+
+EnumValue
+Enum(avr_mcu) String(atmega128) Value(149)
+
+EnumValue
+Enum(avr_mcu) String(atmega1280) Value(150)
+
+EnumValue
+Enum(avr_mcu) String(atmega1281) Value(151)
+
+EnumValue
+Enum(avr_mcu) String(atmega1284p) Value(152)
+
+EnumValue
+Enum(avr_mcu) String(atmega128rfa1) Value(153)
+
+EnumValue
+Enum(avr_mcu) String(at90can128) Value(154)
+
+EnumValue
+Enum(avr_mcu) String(at90usb1286) Value(155)
+
+EnumValue
+Enum(avr_mcu) String(at90usb1287) Value(156)
+
+EnumValue
+Enum(avr_mcu) String(avr6) Value(157)
+
+EnumValue
+Enum(avr_mcu) String(atmega2560) Value(158)
+
+EnumValue
+Enum(avr_mcu) String(atmega2561) Value(159)
+
+EnumValue
+Enum(avr_mcu) String(avr1) Value(160)
+
+EnumValue
+Enum(avr_mcu) String(at90s1200) Value(161)
+
+EnumValue
+Enum(avr_mcu) String(attiny11) Value(162)
+
+EnumValue
+Enum(avr_mcu) String(attiny12) Value(163)
+
+EnumValue
+Enum(avr_mcu) String(attiny15) Value(164)
+
+EnumValue
+Enum(avr_mcu) String(attiny28) Value(165)
+
diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c
index e46ccd3..2b1aaf0 100644
--- a/gcc/config/avr/avr.c
+++ b/gcc/config/avr/avr.c
@@ -106,7 +106,6 @@
const_tree, bool);
static void avr_function_arg_advance (cumulative_args_t, enum machine_mode,
const_tree, bool);
-static void avr_help (void);
static bool avr_function_ok_for_sibcall (tree, tree);
static void avr_asm_named_section (const char *name, unsigned int flags, tree decl);
@@ -250,9 +249,6 @@
#undef TARGET_CANNOT_MODIFY_JUMPS_P
#define TARGET_CANNOT_MODIFY_JUMPS_P avr_cannot_modify_jumps_p
-#undef TARGET_HELP
-#define TARGET_HELP avr_help
-
#undef TARGET_FUNCTION_OK_FOR_SIBCALL
#define TARGET_FUNCTION_OK_FOR_SIBCALL avr_function_ok_for_sibcall
@@ -268,21 +264,9 @@
static void
avr_option_override (void)
{
- const struct mcu_type_s *t;
-
flag_delete_null_pointer_checks = 0;
- for (t = avr_mcu_types; t->name; t++)
- if (strcmp (t->name, avr_mcu_name) == 0)
- break;
-
- if (!t->name)
- {
- error ("unrecognized argument to -mmcu= option: %qs", avr_mcu_name);
- inform (input_location, "See --target-help for supported MCUs");
- }
-
- avr_current_device = t;
+ avr_current_device = &avr_mcu_types[avr_mcu_index];
avr_current_arch = &avr_arch_types[avr_current_device->arch];
avr_extra_arch_macro = avr_current_device->macro;
@@ -292,42 +276,6 @@
init_machine_status = avr_init_machine_status;
}
-/* Implement TARGET_HELP */
-/* Report extra information for --target-help */
-
-static void
-avr_help (void)
-{
- const struct mcu_type_s *t;
- const char * const indent = " ";
- int len;
-
- /* Give a list of MCUs that are accepted by -mmcu=* .
- Note that MCUs supported by the compiler might differ from
- MCUs supported by binutils. */
-
- len = strlen (indent);
- printf ("Known MCU names:\n%s", indent);
-
- /* Print a blank-separated list of all supported MCUs */
-
- for (t = avr_mcu_types; t->name; t++)
- {
- printf ("%s ", t->name);
- len += 1 + strlen (t->name);
-
- /* Break long lines */
-
- if (len > 66 && (t+1)->name)
- {
- printf ("\n%s", indent);
- len = strlen (indent);
- }
- }
-
- printf ("\n\n");
-}
-
/* return register class from register number. */
static const enum reg_class reg_class_tab[]={
@@ -5320,11 +5268,11 @@
avr_file_start (void)
{
if (avr_current_arch->asm_only)
- error ("MCU %qs supported for assembler only", avr_mcu_name);
+ error ("MCU %qs supported for assembler only", avr_current_device->name);
default_file_start ();
-/* fprintf (asm_out_file, "\t.arch %s\n", avr_mcu_name);*/
+/* fprintf (asm_out_file, "\t.arch %s\n", avr_current_device->name);*/
fputs ("__SREG__ = 0x3f\n"
"__SP_H__ = 0x3e\n"
"__SP_L__ = 0x3d\n", asm_out_file);
diff --git a/gcc/config/avr/avr.md b/gcc/config/avr/avr.md
index 4138f2b..b7799be 100644
--- a/gcc/config/avr/avr.md
+++ b/gcc/config/avr/avr.md
@@ -2763,8 +2763,7 @@
(define_insn "*jcindirect_jump"
[(set (pc) (match_operand:HI 0 "immediate_operand" "i"))]
""
- "@
- %~jmp %x0"
+ "%~jmp %x0"
[(set_attr "length" "2")
(set_attr "cc" "none")])
@@ -3540,3 +3539,65 @@
int byteno = INTVAL(operands[2]) / BITS_PER_UNIT;
operands[4] = simplify_gen_subreg (QImode, operands[0], <MODE>mode, byteno);
})
+
+(define_expand "extzv"
+ [(set (match_operand:QI 0 "register_operand" "")
+ (zero_extract:QI (match_operand:QI 1 "register_operand" "")
+ (match_operand:QI 2 "const1_operand" "")
+ (match_operand:QI 3 "const_0_to_7_operand" "")))]
+ ""
+ "")
+
+(define_insn "*extzv"
+ [(set (match_operand:QI 0 "register_operand" "=*d,*d,*d,*d,r")
+ (zero_extract:QI (match_operand:QI 1 "register_operand" "0,r,0,0,r")
+ (const_int 1)
+ (match_operand:QI 2 "const_0_to_7_operand" "L,L,P,C04,n")))]
+ ""
+ "@
+ andi %0,1
+ mov %0,%1\;andi %0,1
+ lsr %0\;andi %0,1
+ swap %0\;andi %0,1
+ bst %1,%2\;clr %0\;bld %0,0"
+ [(set_attr "length" "1,2,2,2,3")
+ (set_attr "cc" "set_zn,set_zn,set_zn,set_zn,clobber")])
+
+(define_insn_and_split "*extzv.qihi1"
+ [(set (match_operand:HI 0 "register_operand" "=r")
+ (zero_extract:HI (match_operand:QI 1 "register_operand" "r")
+ (const_int 1)
+ (match_operand:QI 2 "const_0_to_7_operand" "n")))]
+ ""
+ "#"
+ ""
+ [(set (match_dup 3)
+ (zero_extract:QI (match_dup 1)
+ (const_int 1)
+ (match_dup 2)))
+ (set (match_dup 4)
+ (const_int 0))]
+ {
+ operands[3] = simplify_gen_subreg (QImode, operands[0], HImode, 0);
+ operands[4] = simplify_gen_subreg (QImode, operands[0], HImode, 1);
+ })
+
+(define_insn_and_split "*extzv.qihi2"
+ [(set (match_operand:HI 0 "register_operand" "=r")
+ (zero_extend:HI
+ (zero_extract:QI (match_operand:QI 1 "register_operand" "r")
+ (const_int 1)
+ (match_operand:QI 2 "const_0_to_7_operand" "n"))))]
+ ""
+ "#"
+ ""
+ [(set (match_dup 3)
+ (zero_extract:QI (match_dup 1)
+ (const_int 1)
+ (match_dup 2)))
+ (set (match_dup 4)
+ (const_int 0))]
+ {
+ operands[3] = simplify_gen_subreg (QImode, operands[0], HImode, 0);
+ operands[4] = simplify_gen_subreg (QImode, operands[0], HImode, 1);
+ })
diff --git a/gcc/config/avr/avr.opt b/gcc/config/avr/avr.opt
index d9c3c0f..59d6393 100644
--- a/gcc/config/avr/avr.opt
+++ b/gcc/config/avr/avr.opt
@@ -1,6 +1,6 @@
; Options for the ATMEL AVR port of the compiler.
-; Copyright (C) 2005, 2007, 2008, 2010 Free Software Foundation, Inc.
+; Copyright (C) 2005, 2007, 2008, 2010, 2011 Free Software Foundation, Inc.
;
; This file is part of GCC.
;
@@ -23,7 +23,7 @@
Use subroutines for function prologues and epilogues
mmcu=
-Target RejectNegative Joined Var(avr_mcu_name) Init("avr2")
+Target RejectNegative Joined Var(avr_mcu_index) Init(0) Enum(avr_mcu)
-mmcu=MCU Select the target MCU
mdeb
diff --git a/gcc/config/avr/constraints.md b/gcc/config/avr/constraints.md
index 2ac8833..e754c79 100644
--- a/gcc/config/avr/constraints.md
+++ b/gcc/config/avr/constraints.md
@@ -107,3 +107,8 @@
"A memory address based on Y or Z pointer with displacement."
(and (match_code "mem")
(match_test "extra_constraint_Q (op)")))
+
+(define_constraint "C04"
+ "Constant integer 4."
+ (and (match_code "const_int")
+ (match_test "ival == 4")))
diff --git a/gcc/config/avr/genopt.sh b/gcc/config/avr/genopt.sh
new file mode 100644
index 0000000..d2dcfad
--- /dev/null
+++ b/gcc/config/avr/genopt.sh
@@ -0,0 +1,59 @@
+#!/bin/sh
+# Generate avr-tables.opt from the list in avr-mcus.def.
+# Copyright (C) 2011 Free Software Foundation, Inc.
+#
+# This file is part of GCC.
+#
+# GCC is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3, or (at your option)
+# any later version.
+#
+# GCC is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# 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/>.
+
+cat <<EOF
+; -*- buffer-read-only: t -*-
+; Generated automatically by genopt.sh from avr-mcus.def.
+
+; Copyright (C) 2011 Free Software Foundation, Inc.
+;
+; This file is part of GCC.
+;
+; GCC is free software; you can redistribute it and/or modify it under
+; the terms of the GNU General Public License as published by the Free
+; Software Foundation; either version 3, or (at your option) any later
+; version.
+;
+; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+; WARRANTY; without even the implied warranty of MERCHANTABILITY or
+; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+; for more details.
+;
+; 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/>.
+
+Enum
+Name(avr_mcu) Type(int)
+Known MCU names:
+
+EOF
+
+awk -F'[(, ]+' 'BEGIN {
+ value = 0
+}
+/^AVR_MCU/ {
+ name = $2
+ gsub("\"", "", name)
+ print "EnumValue"
+ print "Enum(avr_mcu) String(" name ") Value(" value ")"
+ print ""
+ value++
+}' $1/avr-mcus.def
diff --git a/gcc/config/avr/t-avr b/gcc/config/avr/t-avr
index 4186178..f941962 100644
--- a/gcc/config/avr/t-avr
+++ b/gcc/config/avr/t-avr
@@ -1,5 +1,5 @@
# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-# 2009, 2010 Free Software Foundation, Inc.
+# 2009, 2010, 2011 Free Software Foundation, Inc.
#
# This file is part of GCC.
#
@@ -22,6 +22,7 @@
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $<
avr-devices.o: $(srcdir)/config/avr/avr-devices.c \
+ $(srcdir)/config/avr/avr-mcus.def \
$(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H)
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $<
@@ -29,6 +30,10 @@
$(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(C_COMMON_H)
$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $<
+$(srcdir)/config/avr/avr-tables.opt: $(srcdir)/config/avr/genopt.sh \
+ $(srcdir)/config/avr/avr-mcus.def
+ $(SHELL) $(srcdir)/config/avr/genopt.sh $(srcdir)/config/avr > \
+ $(srcdir)/config/avr/avr-tables.opt
LIB1ASMSRC = avr/libgcc.S
LIB1ASMFUNCS = \
diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c
index 72fc423..22fdfb7 100644
--- a/gcc/config/bfin/bfin.c
+++ b/gcc/config/bfin/bfin.c
@@ -5879,11 +5879,11 @@
{ CODE_FOR_ones, "__builtin_bfin_ones", BFIN_BUILTIN_ONES, 0 },
- { CODE_FOR_signbitshi2, "__builtin_bfin_norm_fr1x16", BFIN_BUILTIN_NORM_1X16, 0 },
+ { CODE_FOR_clrsbhi2, "__builtin_bfin_norm_fr1x16", BFIN_BUILTIN_NORM_1X16, 0 },
{ CODE_FOR_ssneghi2, "__builtin_bfin_negate_fr1x16", BFIN_BUILTIN_NEG_1X16, 0 },
{ CODE_FOR_abshi2, "__builtin_bfin_abs_fr1x16", BFIN_BUILTIN_ABS_1X16, 0 },
- { CODE_FOR_signbitssi2, "__builtin_bfin_norm_fr1x32", BFIN_BUILTIN_NORM_1X32, 0 },
+ { CODE_FOR_clrsbsi2, "__builtin_bfin_norm_fr1x32", BFIN_BUILTIN_NORM_1X32, 0 },
{ CODE_FOR_ssroundsi2, "__builtin_bfin_round_fr1x32", BFIN_BUILTIN_ROUND_1X32, 0 },
{ CODE_FOR_ssnegsi2, "__builtin_bfin_negate_fr1x32", BFIN_BUILTIN_NEG_1X32, 0 },
{ CODE_FOR_ssabssi2, "__builtin_bfin_abs_fr1x32", BFIN_BUILTIN_ABS_1X32, 0 },
diff --git a/gcc/config/bfin/bfin.md b/gcc/config/bfin/bfin.md
index 903c8bb..a96d1a7 100644
--- a/gcc/config/bfin/bfin.md
+++ b/gcc/config/bfin/bfin.md
@@ -1461,12 +1461,19 @@
"%0 = ~%1;"
[(set_attr "type" "alu0")])
+(define_expand "clrsbsi2"
+ [(set (match_dup 2)
+ (clrsb:HI (match_operand:SI 1 "register_operand" "d")))
+ (set (match_operand:SI 0 "register_operand")
+ (zero_extend:SI (match_dup 2)))]
+ ""
+{
+ operands[2] = gen_reg_rtx (HImode);
+})
+
(define_insn "signbitssi2"
[(set (match_operand:HI 0 "register_operand" "=d")
- (if_then_else:HI
- (lt (match_operand:SI 1 "register_operand" "d") (const_int 0))
- (clz:HI (not:SI (match_dup 1)))
- (clz:HI (match_dup 1))))]
+ (clrsb:HI (match_operand:SI 1 "register_operand" "d")))]
""
"%h0 = signbits %1%!"
[(set_attr "type" "dsp32")])
@@ -1518,12 +1525,9 @@
"%0 = -%1 (V)%!"
[(set_attr "type" "dsp32")])
-(define_insn "signbitshi2"
+(define_insn "clrsbhi2"
[(set (match_operand:HI 0 "register_operand" "=d")
- (if_then_else:HI
- (lt (match_operand:HI 1 "register_operand" "d") (const_int 0))
- (clz:HI (not:HI (match_dup 1)))
- (clz:HI (match_dup 1))))]
+ (clrsb:HI (match_operand:HI 1 "register_operand" "d")))]
""
"%h0 = signbits %h1%!"
[(set_attr "type" "dsp32")])
diff --git a/gcc/config/darwin.c b/gcc/config/darwin.c
index 5e358b1..bedda1e 100644
--- a/gcc/config/darwin.c
+++ b/gcc/config/darwin.c
@@ -1195,7 +1195,11 @@
darwin_mergeable_string_section (tree exp,
unsigned HOST_WIDE_INT align)
{
- if (flag_merge_constants
+ /* Darwin's ld expects to see non-writable string literals in the .cstring
+ section. Later versions of ld check and complain when CFStrings are
+ enabled. Therefore we shall force the strings into .cstring since we
+ don't support writable ones anyway. */
+ if ((darwin_constant_cfstrings || flag_merge_constants)
&& TREE_CODE (exp) == STRING_CST
&& TREE_CODE (TREE_TYPE (exp)) == ARRAY_TYPE
&& align <= 256
@@ -2932,7 +2936,9 @@
if (MACHO_DYNAMIC_NO_PIC_P)
{
if (flag_pic)
- warning (0, "-mdynamic-no-pic overrides -fpic or -fPIC");
+ warning_at (UNKNOWN_LOCATION, 0,
+ "%<-mdynamic-no-pic%> overrides %<-fpic%>, %<-fPIC%>,"
+ " %<-fpie%> or %<-fPIE%>");
flag_pic = 0;
}
else if (flag_pic == 1)
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 41c0d74..762a460 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -226,6 +226,8 @@
#define LINK_SYSROOT_SPEC "%{isysroot*:-syslibroot %*}"
#endif
+#define PIE_SPEC "%{fpie|pie|fPIE:}"
+
/* Please keep the random linker options in alphabetical order (modulo
'Z' and 'no' prefixes). Note that options taking arguments may appear
multiple times on a command line with different arguments each time,
@@ -290,7 +292,7 @@
%:version-compare(< 10.5 mmacosx-version-min= -multiply_defined) \
%:version-compare(< 10.5 mmacosx-version-min= suppress)}} \
%{Zmultiplydefinedunused*:-multiply_defined_unused %*} \
- %{fpie:-pie} \
+ " PIE_SPEC " \
%{prebind} %{noprebind} %{nofixprebinding} %{prebind_all_twolevel_modules} \
%{read_only_relocs} \
%{sectcreate*} %{sectorder*} %{seg1addr*} %{segprot*} \
diff --git a/gcc/config/darwin9.h b/gcc/config/darwin9.h
index bb62dd4..2e835c3 100644
--- a/gcc/config/darwin9.h
+++ b/gcc/config/darwin9.h
@@ -35,6 +35,12 @@
/* Tell collect2 to run dsymutil for us as necessary. */
#define COLLECT_RUN_DSYMUTIL 1
+#undef PIE_SPEC
+#define PIE_SPEC \
+ "%{fpie|pie|fPIE: \
+ %{mdynamic-no-pic: %n'-mdynamic-no-pic' overrides '-pie', '-fpie' or '-fPIE'; \
+ :-pie}}"
+
#undef ASM_OUTPUT_ALIGNED_COMMON
#define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGN) \
do { \
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index e85f157..3c6025f 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -6295,7 +6295,9 @@
(match_operand 3 "nonmemory_operand" "ri")))]
"(GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode
|| (TARGET_64BIT && GET_MODE (operands[0]) == SImode))
- && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
+ && (!TARGET_PARTIAL_REG_STALL
+ || GET_MODE (operands[0]) == SImode
+ || optimize_function_for_size_p (cfun))
&& GET_MODE (operands[0]) == GET_MODE (operands[1])
&& (GET_MODE (operands[0]) == GET_MODE (operands[3])
|| GET_MODE (operands[3]) == VOIDmode)"
@@ -6346,7 +6348,9 @@
(match_operand 4 "immediate_operand" "i")))]
"(GET_MODE (operands[0]) == QImode || GET_MODE (operands[0]) == HImode
|| (TARGET_64BIT && GET_MODE (operands[0]) == SImode))
- && (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
+ && (!TARGET_PARTIAL_REG_STALL
+ || GET_MODE (operands[0]) == SImode
+ || optimize_function_for_size_p (cfun))
&& GET_MODE (operands[0]) == GET_MODE (operands[1])
&& GET_MODE (operands[0]) == GET_MODE (operands[3])"
"#"
@@ -17207,11 +17211,11 @@
[(parallel
[(set (match_operand:SWI48 0 "register_operand" "")
(mult:SWI48 (match_operand:SWI48 1 "register_operand" "")
- (match_operand:SWI48 2 "const_int_operand" "")))
+ (match_operand:SWI48 2 "const359_operand" "")))
(clobber (reg:CC FLAGS_REG))])]
- "INTVAL (operands[2]) == 3
- || INTVAL (operands[2]) == 5
- || INTVAL (operands[2]) == 9"
+ "!TARGET_PARTIAL_REG_STALL
+ || <MODE>mode == SImode
+ || optimize_function_for_size_p (cfun)"
[(set (match_dup 0)
(plus:SWI48 (mult:SWI48 (match_dup 1) (match_dup 2))
(match_dup 1)))]
@@ -17221,12 +17225,10 @@
[(parallel
[(set (match_operand:SWI48 0 "register_operand" "")
(mult:SWI48 (match_operand:SWI48 1 "nonimmediate_operand" "")
- (match_operand:SWI48 2 "const_int_operand" "")))
+ (match_operand:SWI48 2 "const359_operand" "")))
(clobber (reg:CC FLAGS_REG))])]
"optimize_insn_for_speed_p ()
- && (INTVAL (operands[2]) == 3
- || INTVAL (operands[2]) == 5
- || INTVAL (operands[2]) == 9)"
+ && (!TARGET_PARTIAL_REG_STALL || <MODE>mode == SImode)"
[(set (match_dup 0) (match_dup 1))
(set (match_dup 0)
(plus:SWI48 (mult:SWI48 (match_dup 0) (match_dup 2))
diff --git a/gcc/config/i386/predicates.md b/gcc/config/i386/predicates.md
index 7a52e12..ac96534 100644
--- a/gcc/config/i386/predicates.md
+++ b/gcc/config/i386/predicates.md
@@ -614,6 +614,14 @@
return i == 1 || i == 2 || i == 4 || i == 8;
})
+;; Match 3, 5, or 9. Used for leal multiplicands.
+(define_predicate "const359_operand"
+ (match_code "const_int")
+{
+ HOST_WIDE_INT i = INTVAL (op);
+ return i == 3 || i == 5 || i == 9;
+})
+
;; Match 0 or 1.
(define_predicate "const_0_to_1_operand"
(and (match_code "const_int")
diff --git a/gcc/config/i386/sol2-10.h b/gcc/config/i386/sol2-bi.h
similarity index 69%
rename from gcc/config/i386/sol2-10.h
rename to gcc/config/i386/sol2-bi.h
index 04a7132..394ca58 100644
--- a/gcc/config/i386/sol2-10.h
+++ b/gcc/config/i386/sol2-bi.h
@@ -1,4 +1,4 @@
-/* Solaris 10 configuration.
+/* Definitions of target machine for GCC, for bi-arch Solaris 2/x86.
Copyright (C) 2004, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by CodeSourcery, LLC.
@@ -19,10 +19,17 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
-#undef ASM_COMMENT_START
-#define ASM_COMMENT_START "/"
+/* Override i386/sol2.h version: return 8-byte vectors in MMX registers if
+ possible, matching Sun Studio 12 Update 1+ compilers and other x86
+ targets. */
+#undef TARGET_SUBTARGET_DEFAULT
+#define TARGET_SUBTARGET_DEFAULT \
+ (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS)
-/* binutils' GNU as understands --32 and --64, but the native Solaris
+#define SUBTARGET_OPTIMIZATION_OPTIONS \
+ { OPT_LEVELS_1_PLUS, OPT_momit_leaf_frame_pointer, NULL, 1 }
+
+/* GNU as understands --32 and --64, but the native Solaris
assembler requires -xarch=generic or -xarch=generic64 instead. */
#undef ASM_SPEC
#ifdef USE_GAS
@@ -33,6 +40,29 @@
"-s %(asm_cpu)"
#endif
+/* We do not need to search a special directory for startup files. */
+#undef MD_STARTFILE_PREFIX
+
+/* No 64-bit default configurations. */
+#define DEFAULT_ARCH32_P 1
+
+#define ARCH64_SUBDIR "amd64"
+
+#ifdef USE_GLD
+/* Since binutils 2.21, GNU ld supports new *_sol2 emulations to strictly
+ follow the Solaris 2 ABI. Prefer them if present. */
+#ifdef HAVE_LD_SOL2_EMULATION
+#define ARCH32_EMULATION "elf_i386_sol2"
+#define ARCH64_EMULATION "elf_x86_64_sol2"
+#else
+#define ARCH32_EMULATION "elf_i386"
+#define ARCH64_EMULATION "elf_x86_64"
+#endif
+#endif
+
+#undef ASM_COMMENT_START
+#define ASM_COMMENT_START "/"
+
/* The native Solaris assembler can't calculate the difference between
symbols in different sections, which causes problems for -fPIC jump
tables in .rodata. */
@@ -64,72 +94,10 @@
} \
while (0)
+#define USE_IX86_FRAME_POINTER 1
+#define USE_X86_64_FRAME_POINTER 1
+
#undef NO_PROFILE_COUNTERS
#undef MCOUNT_NAME
#define MCOUNT_NAME "_mcount"
-
-#undef WCHAR_TYPE
-#define WCHAR_TYPE (TARGET_64BIT ? "int" : "long int")
-#undef WCHAR_TYPE_SIZE
-#define WCHAR_TYPE_SIZE 32
-
-#undef WINT_TYPE
-#define WINT_TYPE (TARGET_64BIT ? "int" : "long int")
-#undef WINT_TYPE_SIZE
-#define WINT_TYPE_SIZE 32
-
-#define USE_IX86_FRAME_POINTER 1
-#define USE_X86_64_FRAME_POINTER 1
-
-/* Override i386/sol2.h version: return 8-byte vectors in MMX registers if
- possible, matching Sun Studio 12 Update 1+ compilers and other x86
- targets. */
-#undef TARGET_SUBTARGET_DEFAULT
-#define TARGET_SUBTARGET_DEFAULT \
- (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS)
-
-#define SUBTARGET_OPTIMIZATION_OPTIONS \
- { OPT_LEVELS_1_PLUS, OPT_momit_leaf_frame_pointer, NULL, 1 }
-
-#define MULTILIB_DEFAULTS { "m32" }
-
-#undef LINK_ARCH64_SPEC_BASE
-#define LINK_ARCH64_SPEC_BASE \
- "%{G:-G} \
- %{YP,*} \
- %{R*} \
- %{compat-bsd: \
- %{!YP,*:%{p|pg:-Y P,/usr/ucblib/64:/usr/lib/libp/64:/lib/64:/usr/lib/64} \
- %{!p:%{!pg:-Y P,/usr/ucblib/64:/lib:/usr/lib/64}}} \
- -R /usr/ucblib/64} \
- %{!compat-bsd: \
- %{!YP,*:%{p|pg:-Y P,/usr/lib/libp/64:/lib/64:/usr/lib/64} \
- %{!p:%{!pg:-Y P,/lib/64:/usr/lib/64}}}}"
-
-#undef LINK_ARCH64_SPEC
-#define LINK_ARCH64_SPEC LINK_ARCH64_SPEC_BASE
-
-#ifdef TARGET_GNU_LD
-/* Since binutils 2.21, GNU ld supports new *_sol2 emulations to strictly
- follow the Solaris 2 ABI. Prefer them if present. */
-#ifdef HAVE_LD_SOL2_EMULATION
-#define I386_EMULATION "elf_i386_sol2"
-#define X86_64_EMULATION "elf_x86_64_sol2"
-#else
-#define I386_EMULATION "elf_i386"
-#define X86_64_EMULATION "elf_x86_64"
-#endif
-
-#define TARGET_LD_EMULATION "%{m64:-m " X86_64_EMULATION "}" \
- "%{!m64:-m " I386_EMULATION "} "
-#else
-#define TARGET_LD_EMULATION ""
-#endif
-
-#undef LINK_ARCH_SPEC
-#define LINK_ARCH_SPEC TARGET_LD_EMULATION \
- "%{m64:" LINK_ARCH64_SPEC "}%{!m64:" LINK_ARCH32_SPEC "}"
-
-/* We do not need to search a special directory for startup files. */
-#undef MD_STARTFILE_PREFIX
diff --git a/gcc/config/i386/sol2-gas.h b/gcc/config/i386/sol2-gas.h
deleted file mode 100644
index 8d15b9d..0000000
--- a/gcc/config/i386/sol2-gas.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Definitions of target machine for GCC, for x86 running Solaris 2
- using the GNU assembler.
-
-Copyright (C) 2010 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* Undefine this so that BNSYM/ENSYM pairs are emitted by STABS+. */
-#undef NO_DBX_BNSYM_ENSYM
-
-/* Restore default; gas doesn't understand Sun as .tcomm. */
-#undef TLS_COMMON_ASM_OP
diff --git a/gcc/config/i386/sol2.h b/gcc/config/i386/sol2.h
index e466b03..f5e5c76 100644
--- a/gcc/config/i386/sol2.h
+++ b/gcc/config/i386/sol2.h
@@ -19,6 +19,13 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+/* Augment i386/unix.h version to return 8-byte vectors in memory, matching
+ Sun Studio compilers until version 12, the only ones supported on
+ Solaris 8 and 9. */
+#undef TARGET_SUBTARGET_DEFAULT
+#define TARGET_SUBTARGET_DEFAULT \
+ (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS | MASK_VECT8_RETURNS)
+
/* Old versions of the Solaris assembler can not handle the difference of
labels in different sections, so force DW_EH_PE_datarel. */
#undef ASM_PREFERRED_EH_DATA_FORMAT
@@ -37,23 +44,42 @@
#undef EH_TABLES_CAN_BE_READ_ONLY
#define EH_TABLES_CAN_BE_READ_ONLY (TARGET_64BIT)
-/* Solaris 2/Intel as chokes on #line directives. */
+/* Follow Sun requirements for TLS code sequences and use Sun assembler TLS
+ syntax. */
+#undef TARGET_SUN_TLS
+#define TARGET_SUN_TLS 1
+
+#undef SIZE_TYPE
+#define SIZE_TYPE "unsigned int"
+
+#undef PTRDIFF_TYPE
+#define PTRDIFF_TYPE "int"
+
+/* Solaris 2/Intel as chokes on #line directives before Solaris 10. */
#undef CPP_SPEC
#define CPP_SPEC "%{,assembler-with-cpp:-P} %(cpp_subtarget)"
-/* FIXME: Removed -K PIC from generic Solaris 2 ASM_SPEC: the native assembler
- gives many warnings: R_386_32 relocation is used for symbol ".text". */
+#define ASM_CPU_SPEC ""
+
+/* Removed -K PIC from generic sol2.h ASM_SPEC: the Solaris 8 and 9 assembler
+ gives many warnings: R_386_32 relocation is used for symbol ".text", and
+ GNU as doesn't recognize -K at all. */
+/* FIXME: Perhaps split between common and CPU-specific parts? */
#undef ASM_SPEC
#define ASM_SPEC "%{v:-V} %{Qy:} %{!Qn:-Qy} %{Ym,*} -s %(asm_cpu)"
-#define ASM_CPU_SPEC ""
-
+#define SUBTARGET_CPU_EXTRA_SPECS \
+ { "cpp_subtarget", CPP_SUBTARGET_SPEC }, \
+ { "asm_cpu", ASM_CPU_SPEC }
+
#undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \
- { "cpp_subtarget", CPP_SUBTARGET_SPEC }, \
- { "asm_cpu", ASM_CPU_SPEC }, \
- { "startfile_arch", STARTFILE_ARCH_SPEC }, \
- { "link_arch", LINK_ARCH_SPEC }
+ { "startfile_arch", STARTFILE_ARCH_SPEC }, \
+ { "link_arch", LINK_ARCH_SPEC }, \
+ SUBTARGET_CPU_EXTRA_SPECS
+
+/* Register the Solaris-specific #pragma directives. */
+#define REGISTER_SUBTARGET_PRAGMAS() solaris_register_pragmas ()
#undef LOCAL_LABEL_PREFIX
#define LOCAL_LABEL_PREFIX "."
@@ -78,18 +104,13 @@
} \
} while (0)
-/* Follow Sun requirements for TLS code sequences and use Sun assembler TLS
- syntax. */
-#undef TARGET_SUN_TLS
-#define TARGET_SUN_TLS 1
-
+#ifndef USE_GAS
/* The Sun assembler uses .tcomm for TLS common sections. */
#define TLS_COMMON_ASM_OP ".tcomm"
/* Similar to the Sun assembler on SPARC, the native assembler requires
TLS objects to be declared as @tls_obj (not @tls_object). Unlike SPARC,
gas doesn't understand this variant. */
-#ifndef USE_GAS
#undef ASM_DECLARE_OBJECT_NAME
#define ASM_DECLARE_OBJECT_NAME(FILE, NAME, DECL) \
do \
@@ -113,26 +134,7 @@
ASM_OUTPUT_LABEL (FILE, NAME); \
} \
while (0)
-#endif
-
-/* The Solaris assembler cannot grok .stabd directives. */
-#undef NO_DBX_BNSYM_ENSYM
-#define NO_DBX_BNSYM_ENSYM 1
-
-/* Solaris-specific #pragmas are implemented on top of attributes. Hook in
- the bits from config/sol2.c. */
-#define SUBTARGET_INSERT_ATTRIBUTES solaris_insert_attributes
-#define SUBTARGET_ATTRIBUTE_TABLE SOLARIS_ATTRIBUTE_TABLE
-
-/* Register the Solaris-specific #pragma directives. */
-#define REGISTER_SUBTARGET_PRAGMAS() solaris_register_pragmas ()
-
-/* Augment i386/unix.h version to return 8-byte vectors in memory, matching
- Sun Studio compilers until version 12, the only ones supported on
- Solaris 8 and 9. */
-#undef TARGET_SUBTARGET_DEFAULT
-#define TARGET_SUBTARGET_DEFAULT \
- (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS | MASK_VECT8_RETURNS)
+#endif /* !USE_GAS */
/* Output a simple call for .init/.fini. */
#define ASM_OUTPUT_CALL(FILE, FN) \
@@ -151,12 +153,9 @@
#undef X86_FILE_START_VERSION_DIRECTIVE
#define X86_FILE_START_VERSION_DIRECTIVE false
-/* Static stack checking is supported by means of probes. */
-#define STACK_CHECK_STATIC_BUILTIN 1
-
/* Only recent versions of Solaris 11 ld properly support hidden .gnu.linkonce
sections, so don't use them. */
-#ifndef TARGET_GNU_LD
+#ifndef USE_GLD
#define USE_HIDDEN_LINKONCE 0
#endif
@@ -165,9 +164,3 @@
#define LIBGCC2_HAS_TF_MODE 1
#define LIBGCC2_TF_CEXT q
#define TF_SIZE 113
-
-#undef SIZE_TYPE
-#define SIZE_TYPE "unsigned int"
-
-#undef PTRDIFF_TYPE
-#define PTRDIFF_TYPE "int"
diff --git a/gcc/config/i386/t-sol2-10 b/gcc/config/i386/t-sol2-64
similarity index 100%
rename from gcc/config/i386/t-sol2-10
rename to gcc/config/i386/t-sol2-64
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index 78d2441..9014813 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -192,7 +192,6 @@
static rtx gen_fr_restore_x (rtx, rtx, rtx);
static void ia64_option_override (void);
-static void ia64_option_default_params (void);
static bool ia64_can_eliminate (const int, const int);
static enum machine_mode hfa_element_mode (const_tree, bool);
static void ia64_setup_incoming_varargs (cumulative_args_t, enum machine_mode,
@@ -377,8 +376,6 @@
#undef TARGET_OPTION_OVERRIDE
#define TARGET_OPTION_OVERRIDE ia64_option_override
-#undef TARGET_OPTION_DEFAULT_PARAMS
-#define TARGET_OPTION_DEFAULT_PARAMS ia64_option_default_params
#undef TARGET_ASM_FUNCTION_PROLOGUE
#define TARGET_ASM_FUNCTION_PROLOGUE ia64_output_function_prologue
@@ -10859,20 +10856,6 @@
return NULL;
}
-/* Implement TARGET_OPTION_DEFAULT_PARAMS. */
-static void
-ia64_option_default_params (void)
-{
- /* Let the scheduler form additional regions. */
- set_default_param_value (PARAM_MAX_SCHED_EXTEND_REGIONS_ITERS, 2);
-
- /* Set the default values for cache-related parameters. */
- set_default_param_value (PARAM_SIMULTANEOUS_PREFETCHES, 6);
- set_default_param_value (PARAM_L1_CACHE_LINE_SIZE, 32);
-
- set_default_param_value (PARAM_SCHED_MEM_TRUE_DEP_COST, 4);
-}
-
/* HP-UX version_id attribute.
For object foo, if the version_id is set to 1234 put out an alias
of '.alias foo "foo{1234}" We can't use "foo{1234}" in anything
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index cea1650..a87280c 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -1045,7 +1045,6 @@
static rtx altivec_expand_vec_ext_builtin (tree, rtx);
static int get_element_number (tree, tree);
static void rs6000_option_override (void);
-static void rs6000_option_default_params (void);
static int rs6000_loop_align_max_skip (rtx);
static int first_altivec_reg_to_save (void);
static unsigned int compute_vrsave_mask (void);
@@ -1528,9 +1527,6 @@
#undef TARGET_OPTION_OVERRIDE
#define TARGET_OPTION_OVERRIDE rs6000_option_override
-#undef TARGET_OPTION_DEFAULT_PARAMS
-#define TARGET_OPTION_DEFAULT_PARAMS rs6000_option_default_params
-
#undef TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION
#define TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION \
rs6000_builtin_vectorized_function
@@ -3678,15 +3674,6 @@
return word_mode;
}
-/* Implement TARGET_OPTION_DEFAULT_PARAMS. */
-
-static void
-rs6000_option_default_params (void)
-{
- /* Double growth factor to counter reduced min jump length. */
- set_default_param_value (PARAM_MAX_GROW_COPY_BB_INSNS, 16);
-}
-
/* Handler for the Mathematical Acceleration Subsystem (mass) interface to a
library with vectorized intrinsics. */
@@ -7430,6 +7417,7 @@
/* Interesting functions that we are emitting in this object file. */
c_node = cgraph_get_node (fndecl);
+ c_node = cgraph_function_or_thunk_node (c_node, NULL);
return !cgraph_only_called_directly_p (c_node);
}
return false;
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 327a236..d945156 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -182,7 +182,6 @@
static rtx gen_block_redirect (rtx, int, int);
static void sh_reorg (void);
static void sh_option_override (void);
-static void sh_option_default_params (void);
static void output_stack_adjust (int, rtx, int, HARD_REG_SET *, bool);
static rtx frame_insn (rtx);
static rtx push (int);
@@ -345,8 +344,6 @@
#undef TARGET_OPTION_OVERRIDE
#define TARGET_OPTION_OVERRIDE sh_option_override
-#undef TARGET_OPTION_DEFAULT_PARAMS
-#define TARGET_OPTION_DEFAULT_PARAMS sh_option_default_params
#undef TARGET_PRINT_OPERAND
#define TARGET_PRINT_OPERAND sh_print_operand
@@ -578,14 +575,6 @@
struct gcc_target targetm = TARGET_INITIALIZER;
-
-/* Implement TARGET_OPTION_DEFAULT_PARAMS. */
-static void
-sh_option_default_params (void)
-{
- set_default_param_value (PARAM_SIMULTANEOUS_PREFETCHES, 2);
-}
-
/* Implement TARGET_OPTION_OVERRIDE macro. Validate and override
various options, and do some machine dependent initialization. */
static void
diff --git a/gcc/config/sol2-10.h b/gcc/config/sol2-10.h
index 92aeabe..edea655 100644
--- a/gcc/config/sol2-10.h
+++ b/gcc/config/sol2-10.h
@@ -1,6 +1,6 @@
/* Operating system specific defines to be used when targeting GCC for any
Solaris 2 system starting from Solaris 10.
- Copyright 2006, 2007 Free Software Foundation, Inc.
+ Copyright 2006, 2007, 2011 Free Software Foundation, Inc.
This file is part of GCC.
@@ -19,5 +19,4 @@
<http://www.gnu.org/licenses/>. */
/* Solaris 10 has the float and long double forms of math functions. */
-#undef TARGET_C99_FUNCTIONS
#define TARGET_C99_FUNCTIONS 1
diff --git a/gcc/config/sol2-bi.h b/gcc/config/sol2-bi.h
new file mode 100644
index 0000000..371cdd6
--- /dev/null
+++ b/gcc/config/sol2-bi.h
@@ -0,0 +1,119 @@
+/* Definitions of target machine for GCC, for bi-arch Solaris 2.
+ Copyright (C) 2011 Free Software Foundation, Inc.
+
+ This file is part of GCC.
+
+ GCC is free software; you can redistribute it and/or modify it under
+ the terms of the GNU General Public License as published by the Free
+ Software Foundation; either version 3, or (at your option) any later
+ version.
+
+ GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ for more details.
+
+ Under Section 7 of GPL version 3, you are granted additional
+ permissions described in the GCC Runtime Library Exception, version
+ 3.1, as published by the Free Software Foundation.
+
+ You should have received a copy of the GNU General Public License and
+ a copy of the GCC Runtime Library Exception along with this program;
+ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* wchar_t is called differently in <wchar.h> for 32 and 64-bit
+ compilations. This is called for by SCD 2.4.1, p. 6-83, Figure 6-65
+ (32-bit) and p. 6P-10, Figure 6.38 (64-bit). */
+
+#undef WCHAR_TYPE
+#define WCHAR_TYPE (TARGET_64BIT ? "int" : "long int")
+
+#undef WCHAR_TYPE_SIZE
+#define WCHAR_TYPE_SIZE 32
+
+/* Same for wint_t. See SCD 2.4.1, p. 6-83, Figure 6-66 (32-bit). There's
+ no corresponding 64-bit definition, but this is what Solaris 8
+ <iso/wchar_iso.h> uses. */
+
+#undef WINT_TYPE
+#define WINT_TYPE (TARGET_64BIT ? "int" : "long int")
+
+#undef WINT_TYPE_SIZE
+#define WINT_TYPE_SIZE 32
+
+#if DEFAULT_ARCH32_P
+#define MULTILIB_DEFAULTS { "m32" }
+#else
+#define MULTILIB_DEFAULTS { "m64" }
+#endif
+
+#if DEFAULT_ARCH32_P
+#define DEF_ARCH32_SPEC(__str) "%{!m64:" __str "}"
+#define DEF_ARCH64_SPEC(__str) "%{m64:" __str "}"
+#else
+#define DEF_ARCH32_SPEC(__str) "%{m32:" __str "}"
+#define DEF_ARCH64_SPEC(__str) "%{!m32:" __str "}"
+#endif
+
+/* This should be the same as LINK_ARCH32_SPEC_BASE, except with
+ ARCH64_SUBDIR appended to the paths and /usr/ccs/lib is no longer
+ necessary. */
+#undef LINK_ARCH64_SPEC_BASE
+#define LINK_ARCH64_SPEC_BASE \
+ "%{G:-G} \
+ %{YP,*} \
+ %{R*} \
+ %{!YP,*:%{p|pg:-Y P,%R/usr/lib/libp/" ARCH64_SUBDIR ":%R/lib/" ARCH64_SUBDIR ":%R/usr/lib/" ARCH64_SUBDIR "} \
+ %{!p:%{!pg:-Y P,%R/lib/" ARCH64_SUBDIR ":%R/usr/lib/" ARCH64_SUBDIR "}}}"
+
+#undef LINK_ARCH64_SPEC
+#ifndef USE_GLD
+/* FIXME: Used to be SPARC-only. Not SPARC-specfic but for the model name! */
+#define LINK_ARCH64_SPEC \
+ "%{mcmodel=medlow:-M /usr/lib/ld/" ARCH64_SUBDIR "/map.below4G} " \
+ LINK_ARCH64_SPEC_BASE
+#else
+#define LINK_ARCH64_SPEC LINK_ARCH64_SPEC_BASE
+#endif
+
+#ifdef USE_GLD
+#define TARGET_LD_EMULATION "%{m32:-m " ARCH32_EMULATION "}" \
+ "%{m64:-m " ARCH64_EMULATION "} "
+#else
+#define TARGET_LD_EMULATION ""
+#endif
+
+#undef LINK_ARCH_SPEC
+#if DISABLE_MULTILIB
+#if DEFAULT_ARCH32_P
+#define LINK_ARCH_SPEC TARGET_LD_EMULATION " \
+%{m32:%(link_arch32)} \
+%{m64:%edoes not support multilib} \
+%{!m32:%{!m64:%(link_arch_default)}} \
+"
+#else
+#define LINK_ARCH_SPEC TARGET_LD_EMULATION " \
+%{m32:%edoes not support multilib} \
+%{m64:%(link_arch64)} \
+%{!m32:%{!m64:%(link_arch_default)}} \
+"
+#endif
+#else
+#define LINK_ARCH_SPEC TARGET_LD_EMULATION " \
+%{m32:%(link_arch32)} \
+%{m64:%(link_arch64)} \
+%{!m32:%{!m64:%(link_arch_default)}}"
+#endif
+
+#define LINK_ARCH_DEFAULT_SPEC \
+(DEFAULT_ARCH32_P ? LINK_ARCH32_SPEC : LINK_ARCH64_SPEC)
+
+#undef SUBTARGET_EXTRA_SPECS
+#define SUBTARGET_EXTRA_SPECS \
+ { "startfile_arch", STARTFILE_ARCH_SPEC }, \
+ { "link_arch32", LINK_ARCH32_SPEC }, \
+ { "link_arch64", LINK_ARCH64_SPEC }, \
+ { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
+ { "link_arch", LINK_ARCH_SPEC }, \
+ SUBTARGET_CPU_EXTRA_SPECS
diff --git a/gcc/config/sol2-gld.h b/gcc/config/sol2-gld.h
deleted file mode 100644
index 5ab1582..0000000
--- a/gcc/config/sol2-gld.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Definitions of target machine for GCC, for any machine running Solaris 2
- using the GNU linker.
-
- Copyright (C) 2002, 2010 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GCC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-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/>. */
-
-/* Undefine this so that attribute((init_priority)) works. */
-#undef CTORS_SECTION_ASM_OP
-#undef DTORS_SECTION_ASM_OP
-
-#undef SUPPORTS_INIT_PRIORITY
-#define SUPPORTS_INIT_PRIORITY 1
-
-/* GNU ld needs --export-dynamic to implement -rdynamic. */
-#undef RDYNAMIC_SPEC
-#define RDYNAMIC_SPEC "--export-dynamic"
-
-/* Solaris 11 build 135+ implements dl_iterate_phdr. */
-#if defined(HAVE_LD_EH_FRAME_HDR) && defined(TARGET_DL_ITERATE_PHDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
-#endif /* HAVE_LD_EH_FRAME && TARGET_DL_ITERATE_PHDR */
diff --git a/gcc/config/sol2.h b/gcc/config/sol2.h
index d1e98e4..d898c2e 100644
--- a/gcc/config/sol2.h
+++ b/gcc/config/sol2.h
@@ -22,11 +22,6 @@
/* We are compiling for Solaris 2 now. */
#define TARGET_SOLARIS 1
-/* We use stabs-in-elf for debugging, because that is what the native
- toolchain uses. */
-#undef PREFERRED_DEBUGGING_TYPE
-#define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
-
/* Solaris 2 (at least as of 2.5.1) uses a 32-bit wchar_t. */
#undef WCHAR_TYPE
#define WCHAR_TYPE "long int"
@@ -76,15 +71,9 @@
#define INTPTR_TYPE (LONG_TYPE_SIZE == 64 ? "long int" : "int")
#define UINTPTR_TYPE (LONG_TYPE_SIZE == 64 ? "long unsigned int" : "unsigned int")
-/* ??? Note: in order for -compat-bsd to work fully,
- we must somehow arrange to fixincludes /usr/ucbinclude
- and put the result in $(libsubdir)/ucbinclude. */
-
#undef CPP_SUBTARGET_SPEC
#define CPP_SUBTARGET_SPEC "\
-%{pthreads|pthread:-D_REENTRANT -D_PTHREADS} \
-%{compat-bsd:-iwithprefixbefore ucbinclude -I/usr/ucbinclude} \
-"
+%{pthreads|pthread:-D_REENTRANT -D_PTHREADS}"
/* Names to predefine in the preprocessor for this target machine. */
#define TARGET_SUB_OS_CPP_BUILTINS()
@@ -110,9 +99,6 @@
TARGET_SUB_OS_CPP_BUILTINS(); \
} while (0)
-/* The system headers under Solaris 2 are C++-aware since 2.0. */
-#define NO_IMPLICIT_EXTERN_C
-
/* It's safe to pass -s always, even if -g is not used. */
#undef ASM_SPEC
#define ASM_SPEC "\
@@ -121,6 +107,15 @@
%(asm_cpu) \
"
+#undef LIB_SPEC
+#define LIB_SPEC \
+ "%{!symbolic:\
+ %{pthreads|pthread:" \
+ LIB_THREAD_LDFLAGS_SPEC " -lpthread " LIB_TLS_SPEC "} \
+ %{fprofile-generate*:" \
+ LIB_THREAD_LDFLAGS_SPEC " " LIB_TLS_SPEC "} \
+ %{p|pg:-ldl} -lc}"
+
#ifndef CROSS_DIRECTORY_STRUCTURE
#undef MD_EXEC_PREFIX
#define MD_EXEC_PREFIX "/usr/ccs/bin/"
@@ -129,21 +124,12 @@
#define MD_STARTFILE_PREFIX "/usr/ccs/lib/"
#endif
-/* We don't use the standard LIB_SPEC only because we don't yet support c++. */
-#undef LIB_SPEC
-#define LIB_SPEC \
- "%{compat-bsd:-lucb -lsocket -lnsl -lelf -laio} \
- %{!symbolic:\
- %{pthreads|pthread:" \
- LIB_THREAD_LDFLAGS_SPEC " -lpthread " LIB_TLS_SPEC "} \
- %{fprofile-generate*:" \
- LIB_THREAD_LDFLAGS_SPEC " " LIB_TLS_SPEC "} \
- %{p|pg:-ldl} -lc}"
+#undef STARTFILE_ARCH32_SPEC
+#define STARTFILE_ARCH32_SPEC "%{ansi:values-Xc.o%s} \
+ %{!ansi:values-Xa.o%s}"
-#undef ENDFILE_SPEC
-#define ENDFILE_SPEC \
- "%{Ofast|ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
- crtend.o%s crtn.o%s"
+#undef STARTFILE_ARCH_SPEC
+#define STARTFILE_ARCH_SPEC STARTFILE_ARCH32_SPEC
/* We don't use the standard svr4 STARTFILE_SPEC because it's wrong for us. */
#undef STARTFILE_SPEC
@@ -156,25 +142,18 @@
crti.o%s %(startfile_arch) \
crtbegin.o%s"
-#undef STARTFILE_ARCH32_SPEC
-#define STARTFILE_ARCH32_SPEC "%{ansi:values-Xc.o%s} \
- %{!ansi:values-Xa.o%s}"
-
-#undef STARTFILE_ARCH_SPEC
-#define STARTFILE_ARCH_SPEC STARTFILE_ARCH32_SPEC
+#undef ENDFILE_SPEC
+#define ENDFILE_SPEC \
+ "%{Ofast|ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
+ crtend.o%s crtn.o%s"
#undef LINK_ARCH32_SPEC_BASE
#define LINK_ARCH32_SPEC_BASE \
"%{G:-G} \
%{YP,*} \
%{R*} \
- %{compat-bsd: \
- %{!YP,*:%{p|pg:-Y P,%R/usr/ucblib:%R/usr/ccs/lib/libp:%R/usr/lib/libp:%R/usr/ccs/lib:%R/usr/lib} \
- %{!p:%{!pg:-Y P,%R/usr/ucblib:%R/usr/ccs/lib:%R/usr/lib}}} \
- -R %R/usr/ucblib} \
- %{!compat-bsd: \
- %{!YP,*:%{p|pg:-Y P,%R/usr/ccs/lib/libp:%R/usr/lib/libp:%R/usr/ccs/lib:%R/usr/lib} \
- %{!p:%{!pg:-Y P,%R/usr/ccs/lib:%R/usr/lib}}}}"
+ %{!YP,*:%{p|pg:-Y P,%R/usr/ccs/lib/libp:%R/usr/lib/libp:%R/usr/ccs/lib:%R/lib:%R/usr/lib} \
+ %{!p:%{!pg:-Y P,%R/usr/ccs/lib:%R/lib:%R/usr/lib}}}"
#undef LINK_ARCH32_SPEC
#define LINK_ARCH32_SPEC LINK_ARCH32_SPEC_BASE
@@ -182,6 +161,14 @@
#undef LINK_ARCH_SPEC
#define LINK_ARCH_SPEC LINK_ARCH32_SPEC
+#ifndef USE_GLD
+/* With Sun ld, -rdynamic is a no-op. */
+#define RDYNAMIC_SPEC ""
+#else
+/* GNU ld needs --export-dynamic to implement -rdynamic. */
+#define RDYNAMIC_SPEC "--export-dynamic"
+#endif
+
#undef LINK_SPEC
#define LINK_SPEC \
"%{h*} %{v:-V} \
@@ -192,22 +179,22 @@
%(link_arch) \
%{Qy:} %{!Qn:-Qy}"
-/* With Sun ld, -rdynamic is a no-op. */
-#define RDYNAMIC_SPEC ""
-
-/* The Solaris linker doesn't understand constructor priorities. (The
- GNU linker does support constructor priorities, so GNU ld
- configuration files for Solaris override this setting.) */
-#undef SUPPORTS_INIT_PRIORITY
-#define SUPPORTS_INIT_PRIORITY 0
+#ifdef USE_GLD
+/* Solaris 11 build 135+ implements dl_iterate_phdr. GNU ld needs
+ --eh-frame-hdr to create the required .eh_frame_hdr sections. */
+#if defined(HAVE_LD_EH_FRAME_HDR) && defined(TARGET_DL_ITERATE_PHDR)
+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+#endif /* HAVE_LD_EH_FRAME && TARGET_DL_ITERATE_PHDR */
+#endif
/* collect2.c can only parse GNU nm -n output. Solaris nm needs -png to
produce the same format. */
#define NM_FLAGS "-png"
+
+/* The system headers under Solaris 2 are C++-aware since 2.0. */
+#define NO_IMPLICIT_EXTERN_C
#define STDC_0_IN_SYSTEM_HEADERS 1
-
-#define HAVE_ENABLE_EXECUTE_STACK
/* Support Solaris-specific format checking for cmn_err. */
#define TARGET_N_FORMAT_TYPES 1
@@ -219,6 +206,14 @@
{ "init", 0, 0, true, false, false, NULL, false }, \
{ "fini", 0, 0, true, false, false, NULL, false }
+/* Solaris-specific #pragmas are implemented on top of attributes. Hook in
+ the bits from config/sol2.c. */
+#define SUBTARGET_INSERT_ATTRIBUTES solaris_insert_attributes
+#define SUBTARGET_ATTRIBUTE_TABLE SOLARIS_ATTRIBUTE_TABLE
+
+/* Allow macro expansion in #pragma pack. */
+#define HANDLE_PRAGMA_PACK_WITH_EXPANSION
+
/* Solaris/x86 as and gas support unquoted section names. */
#define SECTION_NAME_FORMAT "%s"
@@ -234,7 +229,7 @@
} \
while (0)
-/* Solaris 'as' has a bug: a .common directive in .tbss or .tdata section
+/* Solaris as has a bug: a .common directive in .tbss or .tdata section
behaves as .tls_common rather than normal non-TLS .common. */
#undef ASM_OUTPUT_ALIGNED_COMMON
#define ASM_OUTPUT_ALIGNED_COMMON(FILE, NAME, SIZE, ALIGN) \
@@ -257,13 +252,25 @@
#define AS_NEEDS_DASH_FOR_PIPED_INPUT
+/* The Solaris assembler cannot grok .stabd directives. */
+#undef NO_DBX_BNSYM_ENSYM
+#define NO_DBX_BNSYM_ENSYM 1
#endif
+#ifndef USE_GLD
+/* The Solaris linker doesn't understand constructor priorities. */
+#undef SUPPORTS_INIT_PRIORITY
+#define SUPPORTS_INIT_PRIORITY 0
+#endif
+
+/* Solaris has an implementation of __enable_execute_stack. */
+#define HAVE_ENABLE_EXECUTE_STACK
+
+/* Static stack checking is supported by means of probes. */
+#define STACK_CHECK_STATIC_BUILTIN 1
+
+#define TARGET_POSIX_IO
+
extern GTY(()) tree solaris_pending_aligns;
extern GTY(()) tree solaris_pending_inits;
extern GTY(()) tree solaris_pending_finis;
-
-/* Allow macro expansion in #pragma pack. */
-#define HANDLE_PRAGMA_PACK_WITH_EXPANSION
-
-#define TARGET_POSIX_IO
diff --git a/gcc/config/sol2.opt b/gcc/config/sol2.opt
index e600111..37a3139 100644
--- a/gcc/config/sol2.opt
+++ b/gcc/config/sol2.opt
@@ -27,9 +27,6 @@
Ym,
Driver Joined
-compat-bsd
-Driver
-
mimpure-text
Target Report
Pass -z text to linker
diff --git a/gcc/config/sparc/sol2-bi.h b/gcc/config/sparc/sol2-bi.h
deleted file mode 100644
index d1d62eb..0000000
--- a/gcc/config/sparc/sol2-bi.h
+++ /dev/null
@@ -1,271 +0,0 @@
-/* Definitions of target machine for GCC, for bi-arch SPARC
- running Solaris 2 using the system assembler and linker.
- Copyright (C) 2002, 2003, 2004, 2006, 2007, 2009, 2010, 2011
- Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* The default code model used to be CM_MEDANY on Solaris
- but even Sun eventually found it to be quite wasteful
- and changed it to CM_MEDMID in the Studio 9 compiler. */
-#undef SPARC_DEFAULT_CMODEL
-#define SPARC_DEFAULT_CMODEL CM_MEDMID
-
-#define AS_SPARC64_FLAG "-xarch=v9"
-
-#undef ASM_CPU32_DEFAULT_SPEC
-#define ASM_CPU32_DEFAULT_SPEC ""
-#undef ASM_CPU64_DEFAULT_SPEC
-#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG
-
-#if TARGET_CPU_DEFAULT == TARGET_CPU_v9
-#undef CPP_CPU64_DEFAULT_SPEC
-#define CPP_CPU64_DEFAULT_SPEC ""
-#undef ASM_CPU32_DEFAULT_SPEC
-#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plus"
-#endif
-
-#if TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc
-#undef CPP_CPU64_DEFAULT_SPEC
-#define CPP_CPU64_DEFAULT_SPEC ""
-#undef ASM_CPU32_DEFAULT_SPEC
-#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusa"
-#undef ASM_CPU64_DEFAULT_SPEC
-#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "a"
-#endif
-
-#if TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3
-#undef CPP_CPU64_DEFAULT_SPEC
-#define CPP_CPU64_DEFAULT_SPEC ""
-#undef ASM_CPU32_DEFAULT_SPEC
-#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
-#undef ASM_CPU64_DEFAULT_SPEC
-#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
-#endif
-
-#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara
-#undef CPP_CPU64_DEFAULT_SPEC
-#define CPP_CPU64_DEFAULT_SPEC ""
-#undef ASM_CPU32_DEFAULT_SPEC
-#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
-#undef ASM_CPU64_DEFAULT_SPEC
-#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
-#endif
-
-#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
-#undef CPP_CPU64_DEFAULT_SPEC
-#define CPP_CPU64_DEFAULT_SPEC ""
-#undef ASM_CPU32_DEFAULT_SPEC
-#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
-#undef ASM_CPU64_DEFAULT_SPEC
-#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
-#endif
-
-#if DEFAULT_ARCH32_P
-#define DEF_ARCH32_SPEC(__str) "%{!m64:" __str "}"
-#define DEF_ARCH64_SPEC(__str) "%{m64:" __str "}"
-#else
-#define DEF_ARCH32_SPEC(__str) "%{m32:" __str "}"
-#define DEF_ARCH64_SPEC(__str) "%{!m32:" __str "}"
-#endif
-
-#undef CPP_CPU_SPEC
-#define CPP_CPU_SPEC "\
-%{mcpu=sparclet|mcpu=tsc701:-D__sparclet__} \
-%{mcpu=sparclite|mcpu-f930|mcpu=f934:-D__sparclite__} \
-%{mcpu=v8:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
-%{mcpu=supersparc:-D__supersparc__ " DEF_ARCH32_SPEC("-D__sparcv8") "} \
-%{mcpu=v9|mcpu=ultrasparc|mcpu=ultrasparc3|mcpu=niagara|mcpu=niagara2:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
-%{!mcpu*:%(cpp_cpu_default)} \
-"
-
-#undef ASM_CPU_SPEC
-#define ASM_CPU_SPEC "\
-%{mcpu=v9:" DEF_ARCH32_SPEC("-xarch=v8plus") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "} \
-%{mcpu=ultrasparc:" DEF_ARCH32_SPEC("-xarch=v8plusa") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "a") "} \
-%{mcpu=ultrasparc3:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
-%{mcpu=niagara:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
-%{mcpu=niagara2:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
-%{!mcpu=niagara2:%{!mcpu=niagara:%{!mcpu=ultrasparc3:%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:" DEF_ARCH32_SPEC("-xarch=v8") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "}}}}}} \
-%{!mcpu*:%(asm_cpu_default)} \
-"
-
-#undef CPP_CPU_DEFAULT_SPEC
-#define CPP_CPU_DEFAULT_SPEC \
-(DEFAULT_ARCH32_P ? "\
-%{m64:" CPP_CPU64_DEFAULT_SPEC "} \
-%{!m64:" CPP_CPU32_DEFAULT_SPEC "} \
-" : "\
-%{m32:" CPP_CPU32_DEFAULT_SPEC "} \
-%{!m32:" CPP_CPU64_DEFAULT_SPEC "} \
-")
-
-#undef ASM_CPU_DEFAULT_SPEC
-#define ASM_CPU_DEFAULT_SPEC \
-(DEFAULT_ARCH32_P ? "\
-%{m64:" ASM_CPU64_DEFAULT_SPEC "} \
-%{!m64:" ASM_CPU32_DEFAULT_SPEC "} \
-" : "\
-%{m32:" ASM_CPU32_DEFAULT_SPEC "} \
-%{!m32:" ASM_CPU64_DEFAULT_SPEC "} \
-")
-
-/* wchar_t is called differently in <wchar.h> for 32 and 64-bit
- compilations. This is called for by SCD 2.4.1, p. 6-83, Figure 6-65
- (32-bit) and p. 6P-10, Figure 6.38 (64-bit). */
-
-#undef WCHAR_TYPE
-#define WCHAR_TYPE (TARGET_ARCH64 ? "int" : "long int")
-
-#undef WCHAR_TYPE_SIZE
-#define WCHAR_TYPE_SIZE 32
-
-/* Same for wint_t. See SCD 2.4.1, p. 6-83, Figure 6-66 (32-bit). There's
- no corresponding 64-bit definition, but this is what Solaris 8
- <iso/wchar_iso.h> uses. */
-
-#undef WINT_TYPE
-#define WINT_TYPE (TARGET_ARCH64 ? "int" : "long int")
-
-#undef WINT_TYPE_SIZE
-#define WINT_TYPE_SIZE 32
-
-#undef CPP_ARCH32_SPEC
-#define CPP_ARCH32_SPEC ""
-#undef CPP_ARCH64_SPEC
-#define CPP_ARCH64_SPEC "-D__arch64__ -D__sparcv9"
-
-#undef CPP_ARCH_SPEC
-#define CPP_ARCH_SPEC "\
-%{m32:%(cpp_arch32)} \
-%{m64:%(cpp_arch64)} \
-%{!m32:%{!m64:%(cpp_arch_default)}} \
-"
-
-#undef ASM_ARCH_SPEC
-#define ASM_ARCH_SPEC ""
-
-#undef ASM_ARCH32_SPEC
-#define ASM_ARCH32_SPEC ""
-
-#undef ASM_ARCH64_SPEC
-#define ASM_ARCH64_SPEC ""
-
-#undef ASM_ARCH_DEFAULT_SPEC
-#define ASM_ARCH_DEFAULT_SPEC ""
-
-#undef SUBTARGET_EXTRA_SPECS
-#define SUBTARGET_EXTRA_SPECS \
- { "startfile_arch", STARTFILE_ARCH_SPEC }, \
- { "link_arch32", LINK_ARCH32_SPEC }, \
- { "link_arch64", LINK_ARCH64_SPEC }, \
- { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
- { "link_arch", LINK_ARCH_SPEC },
-
-/*
- * This should be the same as in sol2.h, except with "/sparcv9"
- * appended to the paths and /usr/ccs/lib is no longer necessary
- */
-#define LINK_ARCH64_SPEC_BASE \
- "%{mcmodel=medlow:-M /usr/lib/ld/sparcv9/map.below4G} \
- %{G:-G} \
- %{YP,*} \
- %{R*} \
- %{compat-bsd: \
- %{!YP,*:%{p|pg:-Y P,%R/usr/ucblib/sparcv9:%R/usr/lib/libp/sparcv9:%R/usr/lib/sparcv9} \
- %{!p:%{!pg:-Y P,%R/usr/ucblib/sparcv9:%R/usr/lib/sparcv9}}} \
- -R %R/usr/ucblib/sparcv9} \
- %{!compat-bsd: \
- %{!YP,*:%{p|pg:-Y P,%R/usr/lib/libp/sparcv9:%R/usr/lib/sparcv9} \
- %{!p:%{!pg:-Y P,%R/usr/lib/sparcv9}}}}"
-
-#define LINK_ARCH64_SPEC LINK_ARCH64_SPEC_BASE
-
-#undef LINK_ARCH_SPEC
-#if DISABLE_MULTILIB
-#if DEFAULT_ARCH32_P
-#define LINK_ARCH_SPEC "\
-%{m32:%(link_arch32)} \
-%{m64:%edoes not support multilib} \
-%{!m32:%{!m64:%(link_arch_default)}} \
-"
-#else
-#define LINK_ARCH_SPEC "\
-%{m32:%edoes not support multilib} \
-%{m64:%(link_arch64)} \
-%{!m32:%{!m64:%(link_arch_default)}} \
-"
-#endif
-#else
-#define LINK_ARCH_SPEC "\
-%{m32:%(link_arch32)} \
-%{m64:%(link_arch64)} \
-%{!m32:%{!m64:%(link_arch_default)}} \
-"
-#endif
-
-#define LINK_ARCH_DEFAULT_SPEC \
-(DEFAULT_ARCH32_P ? LINK_ARCH32_SPEC : LINK_ARCH64_SPEC)
-
-#undef CC1_SPEC
-#if DEFAULT_ARCH32_P
-#define CC1_SPEC "\
-%{m64:%{m32:%emay not use both -m32 and -m64}} \
-%{m64:-mptr64 -mstack-bias -mno-v8plus \
- %{!mcpu*:-%{!mv8plus:mcpu=v9}}} \
-"
-#else
-#define CC1_SPEC "\
-%{m32:%{m64:%emay not use both -m32 and -m64}} \
-%{m32:-mptr32 -mno-stack-bias \
- %{!mcpu*:%{!mv8plus:-mcpu=v9}}} \
-%{mv8plus:-m32 -mptr32 -mno-stack-bias \
- %{!mcpu*:-mcpu=v9}} \
-"
-#endif
-
-/* Support for a compile-time default CPU, et cetera. The rules are:
- --with-cpu is ignored if -mcpu is specified.
- --with-tune is ignored if -mtune is specified.
- --with-float is ignored if -mhard-float, -msoft-float, -mfpu, or -mno-fpu
- are specified.
- In the SPARC_BI_ARCH compiler we cannot pass %{!mcpu=*:-mcpu=%(VALUE)}
- here, otherwise say -mcpu=v7 would be passed even when -m64.
- CC1_SPEC above takes care of this instead. */
-#undef OPTION_DEFAULT_SPECS
-#if DEFAULT_ARCH32_P
-#define OPTION_DEFAULT_SPECS \
- {"cpu", "%{!m64:%{!mcpu=*:-mcpu=%(VALUE)}}" }, \
- {"tune", "%{!mtune=*:-mtune=%(VALUE)}" }, \
- {"float", "%{!msoft-float:%{!mhard-float:%{!mfpu:%{!mno-fpu:-m%(VALUE)-float}}}}" }
-#else
-#define OPTION_DEFAULT_SPECS \
- {"cpu", "%{!m32:%{!mcpu=*:-mcpu=%(VALUE)}}" }, \
- {"tune", "%{!mtune=*:-mtune=%(VALUE)}" }, \
- {"float", "%{!msoft-float:%{!mhard-float:%{!mfpu:%{!mno-fpu:-m%(VALUE)-float}}}}" }
-#endif
-
-#if DEFAULT_ARCH32_P
-#define MULTILIB_DEFAULTS { "m32" }
-#else
-#define MULTILIB_DEFAULTS { "m64" }
-#endif
diff --git a/gcc/config/sparc/sol2-gas-bi.h b/gcc/config/sparc/sol2-gas-bi.h
deleted file mode 100644
index 001f978..0000000
--- a/gcc/config/sparc/sol2-gas-bi.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Definitions of target machine for GCC, for bi-arch SPARC
- running Solaris 2 using the GNU assembler.
-
- Copyright (C) 2002, 2010 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3, or (at your option)
-any later version.
-
-GCC is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-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/>. */
-
-#undef AS_SPARC64_FLAG
-#define AS_SPARC64_FLAG "-TSO -64 -Av9"
diff --git a/gcc/config/sparc/sol2-gas.h b/gcc/config/sparc/sol2-gas.h
deleted file mode 100644
index d83e7b9..0000000
--- a/gcc/config/sparc/sol2-gas.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Definitions of target machine for GCC, for SPARC running Solaris 2
- using the GNU assembler.
- Copyright (C) 2004, 2005, 2010 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-/* Undefine this as the filler pattern doesn't work with GNU as. */
-#undef ASM_OUTPUT_ALIGN_WITH_NOP
-
-/* Undefine this so that BNSYM/ENSYM pairs are emitted by STABS+. */
-#undef NO_DBX_BNSYM_ENSYM
-
-/* Use GNU extensions to TLS support. */
-#ifdef HAVE_AS_TLS
-#undef TARGET_SUN_TLS
-#undef TARGET_GNU_TLS
-#define TARGET_SUN_TLS 0
-#define TARGET_GNU_TLS 1
-#endif
-
-/* Use default ELF section syntax. */
-#undef TARGET_ASM_NAMED_SECTION
-#define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section
-
-/* And standard pushsection syntax. While GNU as supports the non-standard
- variant too, we prefer the former. */
-#undef PUSHSECTION_FORMAT
-#define PUSHSECTION_FORMAT "\t.pushsection\t%s\n"
diff --git a/gcc/config/sparc/sol2-gld-bi.h b/gcc/config/sparc/sol2-gld-bi.h
deleted file mode 100644
index 3be20b2..0000000
--- a/gcc/config/sparc/sol2-gld-bi.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Definitions of target machine for GCC, for bi-arch SPARC
- running Solaris 2 using the GNU linker.
-
-Copyright (C) 2002, 2003, 2010 Free Software Foundation, Inc.
-
-This file is part of GCC.
-
-GCC is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 3, or (at your option) any later
-version.
-
-GCC is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
-for more details.
-
-Under Section 7 of GPL version 3, you are granted additional
-permissions described in the GCC Runtime Library Exception, version
-3.1, as published by the Free Software Foundation.
-
-You should have received a copy of the GNU General Public License and
-a copy of the GCC Runtime Library Exception along with this program;
-see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-<http://www.gnu.org/licenses/>. */
-
-#undef LINK_ARCH32_SPEC
-#define LINK_ARCH32_SPEC \
- LINK_ARCH32_SPEC_BASE "%{!static: -rpath-link %R/usr/lib}"
-
-#undef LINK_ARCH64_SPEC
-#define LINK_ARCH64_SPEC \
- LINK_ARCH64_SPEC_BASE "%{!static: -rpath-link %R/usr/lib/sparcv9}"
-
-/* Since binutils 2.21, GNU ld supports new *_sol2 emulations to strictly
- follow the Solaris 2 ABI. Prefer them if present. */
-#ifdef HAVE_LD_SOL2_EMULATION
-#define SPARC32_EMULATION "elf32_sparc_sol2"
-#define SPARC64_EMULATION "elf64_sparc_sol2"
-#else
-#define SPARC32_EMULATION "elf32_sparc"
-#define SPARC64_EMULATION "elf64_sparc"
-#endif
-
-#undef LINK_ARCH_SPEC
-#if DISABLE_MULTILIB
-#if DEFAULT_ARCH32_P
-#define LINK_ARCH_SPEC "\
-%{m32:-m " SPARC32_EMULATION " %(link_arch32)} \
-%{m64:%edoes not support multilib} \
-%{!m32:%{!m64:%(link_arch_default)}} \
-"
-#else
-#define LINK_ARCH_SPEC "\
-%{m32:%edoes not support multilib} \
-%{m64:-m " SPARC64_EMULATION " %(link_arch64)} \
-%{!m32:%{!m64:%(link_arch_default)}} \
-"
-#endif
-#else
-#define LINK_ARCH_SPEC "\
-%{m32:-m " SPARC32_EMULATION " %(link_arch32)} \
-%{m64:-m " SPARC64_EMULATION " %(link_arch64)} \
-%{!m32:%{!m64:%(link_arch_default)}} \
-"
-#endif
-
diff --git a/gcc/config/sparc/sol2.h b/gcc/config/sparc/sol2.h
index c99b02f..627b05e 100644
--- a/gcc/config/sparc/sol2.h
+++ b/gcc/config/sparc/sol2.h
@@ -20,62 +20,240 @@
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
+/* Solaris allows 64 bit out and global registers in 32 bit mode.
+ sparc_override_options will disable V8+ if not generating V9 code. */
+#undef TARGET_DEFAULT
+#define TARGET_DEFAULT (MASK_V8PLUS + MASK_APP_REGS + MASK_FPU \
+ + MASK_LONG_DOUBLE_128)
+
+/* The default code model used to be CM_MEDANY on Solaris
+ but even Sun eventually found it to be quite wasteful
+ and changed it to CM_MEDMID in the Studio 9 compiler. */
+#undef SPARC_DEFAULT_CMODEL
+#define SPARC_DEFAULT_CMODEL CM_MEDMID
+
+/* Select a format to encode pointers in exception handling data. CODE
+ is 0 for data, 1 for code labels, 2 for function pointers. GLOBAL is
+ true if the symbol may be affected by dynamic relocations.
+
+ Some Solaris dynamic linkers don't handle unaligned section relative
+ relocs properly, so force them to be aligned. */
+#ifndef HAVE_AS_SPARC_UA_PCREL
+#define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL) \
+ ((flag_pic || GLOBAL) ? DW_EH_PE_aligned : DW_EH_PE_absptr)
+#endif
+
+
+
/* Supposedly the same as vanilla sparc svr4, except for the stuff below: */
/* This is here rather than in sparc.h because it's not known what
other assemblers will accept. */
+#ifndef USE_GAS
+#define AS_SPARC64_FLAG "-xarch=v9"
+#else
+#define AS_SPARC64_FLAG "-TSO -64 -Av9"
+#endif
+
+#undef ASM_CPU32_DEFAULT_SPEC
+#define ASM_CPU32_DEFAULT_SPEC ""
+#undef ASM_CPU64_DEFAULT_SPEC
+#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG
+
#if TARGET_CPU_DEFAULT == TARGET_CPU_v9
+#undef CPP_CPU64_DEFAULT_SPEC
+#define CPP_CPU64_DEFAULT_SPEC ""
+#undef ASM_CPU32_DEFAULT_SPEC
+#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plus"
#undef ASM_CPU_DEFAULT_SPEC
-#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plus"
+#define ASM_CPU_DEFAULT_SPEC ASM_CPU32_DEFAULT_SPEC
#endif
#if TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc
+#undef CPP_CPU64_DEFAULT_SPEC
+#define CPP_CPU64_DEFAULT_SPEC ""
+#undef ASM_CPU32_DEFAULT_SPEC
+#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusa"
+#undef ASM_CPU64_DEFAULT_SPEC
+#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "a"
#undef ASM_CPU_DEFAULT_SPEC
-#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusa"
+#define ASM_CPU_DEFAULT_SPEC ASM_CPU32_DEFAULT_SPEC
#endif
#if TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3
+#undef CPP_CPU64_DEFAULT_SPEC
+#define CPP_CPU64_DEFAULT_SPEC ""
+#undef ASM_CPU32_DEFAULT_SPEC
+#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
+#undef ASM_CPU64_DEFAULT_SPEC
+#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
#undef ASM_CPU_DEFAULT_SPEC
-#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusb"
+#define ASM_CPU_DEFAULT_SPEC ASM_CPU32_DEFAULT_SPEC
#endif
#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara
+#undef CPP_CPU64_DEFAULT_SPEC
+#define CPP_CPU64_DEFAULT_SPEC ""
+#undef ASM_CPU32_DEFAULT_SPEC
+#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
+#undef ASM_CPU64_DEFAULT_SPEC
+#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
#undef ASM_CPU_DEFAULT_SPEC
-#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusb"
+#define ASM_CPU_DEFAULT_SPEC ASM_CPU32_DEFAULT_SPEC
#endif
#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
+#undef CPP_CPU64_DEFAULT_SPEC
+#define CPP_CPU64_DEFAULT_SPEC ""
+#undef ASM_CPU32_DEFAULT_SPEC
+#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
+#undef ASM_CPU64_DEFAULT_SPEC
+#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
#undef ASM_CPU_DEFAULT_SPEC
-#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusb"
+#define ASM_CPU_DEFAULT_SPEC ASM_CPU32_DEFAULT_SPEC
+#endif
+
+#undef CPP_CPU_SPEC
+#define CPP_CPU_SPEC "\
+%{mcpu=sparclet|mcpu=tsc701:-D__sparclet__} \
+%{mcpu=sparclite|mcpu-f930|mcpu=f934:-D__sparclite__} \
+%{mcpu=v8:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
+%{mcpu=supersparc:-D__supersparc__ " DEF_ARCH32_SPEC("-D__sparcv8") "} \
+%{mcpu=v9|mcpu=ultrasparc|mcpu=ultrasparc3|mcpu=niagara|mcpu=niagara2:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
+%{!mcpu*:%(cpp_cpu_default)} \
+"
+
+#undef CPP_CPU_DEFAULT_SPEC
+#define CPP_CPU_DEFAULT_SPEC \
+(DEFAULT_ARCH32_P ? "\
+%{m64:" CPP_CPU64_DEFAULT_SPEC "} \
+%{!m64:" CPP_CPU32_DEFAULT_SPEC "} \
+" : "\
+%{m32:" CPP_CPU32_DEFAULT_SPEC "} \
+%{!m32:" CPP_CPU64_DEFAULT_SPEC "} \
+")
+
+#undef CPP_ARCH32_SPEC
+#define CPP_ARCH32_SPEC ""
+#undef CPP_ARCH64_SPEC
+#define CPP_ARCH64_SPEC "-D__arch64__ -D__sparcv9"
+
+#undef CPP_ARCH_SPEC
+#define CPP_ARCH_SPEC "\
+%{m32:%(cpp_arch32)} \
+%{m64:%(cpp_arch64)} \
+%{!m32:%{!m64:%(cpp_arch_default)}} \
+"
+
+#undef CC1_SPEC
+#if DEFAULT_ARCH32_P
+#define CC1_SPEC "\
+%{m64:%{m32:%emay not use both -m32 and -m64}} \
+%{m64:-mptr64 -mstack-bias -mno-v8plus \
+ %{!mcpu*:-%{!mv8plus:mcpu=v9}}} \
+"
+#else
+#define CC1_SPEC "\
+%{m32:%{m64:%emay not use both -m32 and -m64}} \
+%{m32:-mptr32 -mno-stack-bias \
+ %{!mcpu*:%{!mv8plus:-mcpu=v9}}} \
+%{mv8plus:-m32 -mptr32 -mno-stack-bias \
+ %{!mcpu*:-mcpu=v9}} \
+"
+#endif
+
+/* Support for a compile-time default CPU, et cetera. The rules are:
+ --with-cpu is ignored if -mcpu is specified.
+ --with-tune is ignored if -mtune is specified.
+ --with-float is ignored if -mhard-float, -msoft-float, -mfpu, or -mno-fpu
+ are specified.
+ In the SPARC_BI_ARCH compiler we cannot pass %{!mcpu=*:-mcpu=%(VALUE)}
+ here, otherwise say -mcpu=v7 would be passed even when -m64.
+ CC1_SPEC above takes care of this instead. */
+#undef OPTION_DEFAULT_SPECS
+#if DEFAULT_ARCH32_P
+#define OPTION_DEFAULT_SPECS \
+ {"cpu", "%{!m64:%{!mcpu=*:-mcpu=%(VALUE)}}" }, \
+ {"tune", "%{!mtune=*:-mtune=%(VALUE)}" }, \
+ {"float", "%{!msoft-float:%{!mhard-float:%{!mfpu:%{!mno-fpu:-m%(VALUE)-float}}}}" }
+#else
+#define OPTION_DEFAULT_SPECS \
+ {"cpu", "%{!m32:%{!mcpu=*:-mcpu=%(VALUE)}}" }, \
+ {"tune", "%{!mtune=*:-mtune=%(VALUE)}" }, \
+ {"float", "%{!msoft-float:%{!mhard-float:%{!mfpu:%{!mno-fpu:-m%(VALUE)-float}}}}" }
#endif
#undef ASM_CPU_SPEC
#define ASM_CPU_SPEC "\
-%{mcpu=v9:-xarch=v8plus} \
-%{mcpu=ultrasparc:-xarch=v8plusa} \
-%{mcpu=ultrasparc3:-xarch=v8plusb} \
-%{mcpu=niagara:-xarch=v8plusb} \
-%{mcpu=niagara2:-xarch=v8plusb} \
+%{mcpu=v9:" DEF_ARCH32_SPEC("-xarch=v8plus") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "} \
+%{mcpu=ultrasparc:" DEF_ARCH32_SPEC("-xarch=v8plusa") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "a") "} \
+%{mcpu=ultrasparc3:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
+%{mcpu=niagara:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
+%{mcpu=niagara2:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
+%{!mcpu=niagara2:%{!mcpu=niagara:%{!mcpu=ultrasparc3:%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:" DEF_ARCH32_SPEC("-xarch=v8") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "}}}}}} \
%{!mcpu*:%(asm_cpu_default)} \
"
-#undef SUBTARGET_EXTRA_SPECS
-#define SUBTARGET_EXTRA_SPECS \
- { "startfile_arch", STARTFILE_ARCH_SPEC }, \
- { "link_arch", LINK_ARCH_SPEC }
+#undef ASM_CPU_DEFAULT_SPEC
+#define ASM_CPU_DEFAULT_SPEC \
+(DEFAULT_ARCH32_P ? "\
+%{m64:" ASM_CPU64_DEFAULT_SPEC "} \
+%{!m64:" ASM_CPU32_DEFAULT_SPEC "} \
+" : "\
+%{m32:" ASM_CPU32_DEFAULT_SPEC "} \
+%{!m32:" ASM_CPU64_DEFAULT_SPEC "} \
+")
-/* However it appears that Solaris 2.0 uses the same reg numbering as
- the old BSD-style system did. */
+#undef ASM_ARCH32_SPEC
+#define ASM_ARCH32_SPEC ""
+
+#undef ASM_ARCH64_SPEC
+#define ASM_ARCH64_SPEC ""
+
+#undef ASM_ARCH_DEFAULT_SPEC
+#define ASM_ARCH_DEFAULT_SPEC ""
+
+#undef ASM_ARCH_SPEC
+#define ASM_ARCH_SPEC ""
+
+#ifdef USE_GLD
+/* Since binutils 2.21, GNU ld supports new *_sol2 emulations to strictly
+ follow the Solaris 2 ABI. Prefer them if present. */
+#ifdef HAVE_LD_SOL2_EMULATION
+#define ARCH32_EMULATION "elf32_sparc_sol2"
+#define ARCH64_EMULATION "elf64_sparc_sol2"
+#else
+#define ARCH32_EMULATION "elf32_sparc"
+#define ARCH64_EMULATION "elf64_sparc"
+#endif
+#endif
+
+#define ARCH64_SUBDIR "sparcv9"
+
+#define SUBTARGET_CPU_EXTRA_SPECS
+
+
+
+/* Register the Solaris-specific #pragma directives. */
+#define REGISTER_TARGET_PRAGMAS() solaris_register_pragmas ()
+
+#if defined(USE_GAS) && defined(HAVE_AS_TLS)
+/* Use GNU extensions to TLS support. */
+#undef TARGET_SUN_TLS
+#undef TARGET_GNU_TLS
+#define TARGET_SUN_TLS 0
+#define TARGET_GNU_TLS 1
+#endif
+
+#undef LOCAL_LABEL_PREFIX
+#define LOCAL_LABEL_PREFIX "."
/* The Solaris 2 assembler uses .skip, not .zero, so put this back. */
#undef ASM_OUTPUT_SKIP
#define ASM_OUTPUT_SKIP(FILE,SIZE) \
fprintf (FILE, "\t.skip %u\n", (int)(SIZE))
-#undef LOCAL_LABEL_PREFIX
-#define LOCAL_LABEL_PREFIX "."
-
/* This is how to store into the string LABEL
the symbol_ref name of an internal numbered label where
PREFIX is the class of label and NUM is the number within the class.
@@ -87,7 +265,7 @@
/* The native TLS-enabled assembler requires the directive #tls_object
to be put on objects in TLS sections (as of v7.1). This is not
- required by the GNU assembler but supported on SPARC. */
+ required by GNU as but supported on SPARC. */
#undef ASM_DECLARE_OBJECT_NAME
#define ASM_DECLARE_OBJECT_NAME(FILE, NAME, DECL) \
do \
@@ -112,23 +290,47 @@
} \
while (0)
-/* The Solaris assembler cannot grok .stabd directives. */
-#undef NO_DBX_BNSYM_ENSYM
-#define NO_DBX_BNSYM_ENSYM 1
-
+/* Output a simple call for .init/.fini. */
+#define ASM_OUTPUT_CALL(FILE, FN) \
+ do \
+ { \
+ fprintf (FILE, "\tcall\t"); \
+ targetm.asm_out.print_operand (FILE, XEXP (DECL_RTL (FN), 0), 0); \
+ fprintf (FILE, "\n\tnop\n"); \
+ } \
+ while (0)
-/* Select a format to encode pointers in exception handling data. CODE
- is 0 for data, 1 for code labels, 2 for function pointers. GLOBAL is
- true if the symbol may be affected by dynamic relocations.
+#ifndef USE_GAS
+/* This is how to output an assembler line that says to advance
+ the location counter to a multiple of 2**LOG bytes using the
+ NOP instruction as padding. The filler pattern doesn't work
+ with GNU as. */
+#define ASM_OUTPUT_ALIGN_WITH_NOP(FILE,LOG) \
+ if ((LOG) != 0) \
+ fprintf (FILE, "\t.align %d,0x1000000\n", (1<<(LOG)))
- Some Solaris dynamic linkers don't handle unaligned section relative
- relocs properly, so force them to be aligned. */
-#ifndef HAVE_AS_SPARC_UA_PCREL
-#define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL) \
- ((flag_pic || GLOBAL) ? DW_EH_PE_aligned : DW_EH_PE_absptr)
+/* Use Solaris ELF section syntax with Sun as. */
+#undef TARGET_ASM_NAMED_SECTION
+#define TARGET_ASM_NAMED_SECTION sparc_solaris_elf_asm_named_section
+
+/* Emit COMDAT group signature symbols for Sun as. */
+#undef TARGET_ASM_CODE_END
+#define TARGET_ASM_CODE_END solaris_code_end
+
+/* Sun as requires doublequoted section names on SPARC. While GNU as
+ supports that, too, we prefer the standard variant. */
+#undef SECTION_NAME_FORMAT
+#define SECTION_NAME_FORMAT "\"%s\""
+#endif /* !USE_GAS */
+
+/* Undefine this so that attribute((init_priority)) works with GNU ld. */
+#ifdef USE_GLD
+#undef CTORS_SECTION_ASM_OP
+#undef DTORS_SECTION_ASM_OP
#endif
+
/* Define for support of TFmode long double.
SPARC ABI says that long double is 4 words. */
#define LONG_DOUBLE_TYPE_SIZE 128
@@ -147,52 +349,3 @@
#undef SUN_INTEGER_MULTIPLY_64
#define SUN_INTEGER_MULTIPLY_64 1
-
-/* Solaris allows 64 bit out and global registers in 32 bit mode.
- sparc_override_options will disable V8+ if not generating V9 code. */
-#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (MASK_V8PLUS + MASK_APP_REGS + MASK_FPU \
- + MASK_LONG_DOUBLE_128)
-
-/* Solaris-specific #pragmas are implemented on top of attributes. Hook in
- the bits from config/sol2.c. */
-#define SUBTARGET_INSERT_ATTRIBUTES solaris_insert_attributes
-#define SUBTARGET_ATTRIBUTE_TABLE SOLARIS_ATTRIBUTE_TABLE
-
-/* Register the Solaris-specific #pragma directives. */
-#define REGISTER_TARGET_PRAGMAS() solaris_register_pragmas ()
-
-/* Output a simple call for .init/.fini. */
-#define ASM_OUTPUT_CALL(FILE, FN) \
- do \
- { \
- fprintf (FILE, "\tcall\t"); \
- targetm.asm_out.print_operand (FILE, XEXP (DECL_RTL (FN), 0), 0); \
- fprintf (FILE, "\n\tnop\n"); \
- } \
- while (0)
-
-/* This is how to output an assembler line that says to advance
- the location counter to a multiple of 2**LOG bytes using the
- NOP instruction as padding. */
-#define ASM_OUTPUT_ALIGN_WITH_NOP(FILE,LOG) \
- if ((LOG) != 0) \
- fprintf (FILE, "\t.align %d,0x1000000\n", (1<<(LOG)))
-
-/* Use Solaris ELF section syntax. */
-#undef TARGET_ASM_NAMED_SECTION
-#define TARGET_ASM_NAMED_SECTION sparc_solaris_elf_asm_named_section
-
-/* Emit COMDAT group signature symbols for Sun as. */
-#undef TARGET_ASM_CODE_END
-#define TARGET_ASM_CODE_END solaris_code_end
-
-/* Solaris/SPARC as requires doublequoted section names. While gas
- supports that, too, we prefer the standard variant. */
-#ifndef USE_GAS
-#undef SECTION_NAME_FORMAT
-#define SECTION_NAME_FORMAT "\"%s\""
-#endif
-
-/* Static stack checking is supported by means of probes. */
-#define STACK_CHECK_STATIC_BUILTIN 1
diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c
index fe28d55..c5f159a 100644
--- a/gcc/config/sparc/sparc.c
+++ b/gcc/config/sparc/sparc.c
@@ -460,7 +460,6 @@
const_tree);
static int sparc_arg_partial_bytes (cumulative_args_t,
enum machine_mode, tree, bool);
-static void sparc_dwarf_handle_frame_unspec (const char *, rtx, int);
static void sparc_output_dwarf_dtprel (FILE *, int, rtx) ATTRIBUTE_UNUSED;
static void sparc_file_end (void);
static bool sparc_frame_pointer_required (void);
@@ -611,9 +610,6 @@
#undef TARGET_VECTORIZE_PREFERRED_SIMD_MODE
#define TARGET_VECTORIZE_PREFERRED_SIMD_MODE sparc_preferred_simd_mode
-#undef TARGET_DWARF_HANDLE_FRAME_UNSPEC
-#define TARGET_DWARF_HANDLE_FRAME_UNSPEC sparc_dwarf_handle_frame_unspec
-
#ifdef SUBTARGET_INSERT_ATTRIBUTES
#undef TARGET_INSERT_ATTRIBUTES
#define TARGET_INSERT_ATTRIBUTES SUBTARGET_INSERT_ATTRIBUTES
@@ -4153,7 +4149,7 @@
if (regno == RETURN_ADDR_REGNUM && return_addr_reg_needed_p (leaf_function))
return true;
- /* PIC register (%l7) if needed. */
+ /* GOT register (%l7) if needed. */
if (regno == PIC_OFFSET_TABLE_REGNUM && crtl->uses_pic_offset_table)
return true;
@@ -4597,45 +4593,29 @@
/* Generate a save_register_window insn. */
static rtx
-gen_save_register_window (rtx increment)
+emit_save_register_window (rtx increment)
{
- if (TARGET_ARCH64)
- return gen_save_register_windowdi (increment);
- else
- return gen_save_register_windowsi (increment);
-}
+ rtx insn;
-/* Generate a create_flat_frame_1 insn. */
+ insn = emit_insn (gen_save_register_window_1 (increment));
+ RTX_FRAME_RELATED_P (insn) = 1;
-static rtx
-gen_create_flat_frame_1 (rtx increment)
-{
- if (TARGET_ARCH64)
- return gen_create_flat_frame_1di (increment);
- else
- return gen_create_flat_frame_1si (increment);
-}
+ /* The incoming return address (%o7) is saved in %i7. */
+ add_reg_note (insn, REG_CFA_REGISTER,
+ gen_rtx_SET (VOIDmode,
+ gen_rtx_REG (Pmode, RETURN_ADDR_REGNUM),
+ gen_rtx_REG (Pmode,
+ INCOMING_RETURN_ADDR_REGNUM)));
-/* Generate a create_flat_frame_2 insn. */
+ /* The window save event. */
+ add_reg_note (insn, REG_CFA_WINDOW_SAVE, const0_rtx);
-static rtx
-gen_create_flat_frame_2 (rtx increment)
-{
- if (TARGET_ARCH64)
- return gen_create_flat_frame_2di (increment);
- else
- return gen_create_flat_frame_2si (increment);
-}
+ /* The CFA is %fp, the hard frame pointer. */
+ add_reg_note (insn, REG_CFA_DEF_CFA,
+ plus_constant (hard_frame_pointer_rtx,
+ INCOMING_FRAME_SP_OFFSET));
-/* Generate a create_flat_frame_3 insn. */
-
-static rtx
-gen_create_flat_frame_3 (rtx increment)
-{
- if (TARGET_ARCH64)
- return gen_create_flat_frame_3di (increment);
- else
- return gen_create_flat_frame_3si (increment);
+ return insn;
}
/* Generate an increment for the stack pointer. */
@@ -4671,7 +4651,6 @@
{
HOST_WIDE_INT size;
rtx insn;
- int i;
/* Compute a snapshot of current_function_uses_only_leaf_regs. Relying
on the final value of the flag means deferring the prologue/epilogue
@@ -4710,8 +4689,10 @@
; /* do nothing. */
else if (sparc_leaf_function_p)
{
+ rtx size_int_rtx = GEN_INT (-size);
+
if (size <= 4096)
- insn = emit_insn (gen_stack_pointer_inc (GEN_INT (-size)));
+ insn = emit_insn (gen_stack_pointer_inc (size_int_rtx));
else if (size <= 8192)
{
insn = emit_insn (gen_stack_pointer_inc (GEN_INT (-4096)));
@@ -4721,35 +4702,33 @@
}
else
{
- rtx reg = gen_rtx_REG (Pmode, 1);
- emit_move_insn (reg, GEN_INT (-size));
- insn = emit_insn (gen_stack_pointer_inc (reg));
+ rtx size_rtx = gen_rtx_REG (Pmode, 1);
+ emit_move_insn (size_rtx, size_int_rtx);
+ insn = emit_insn (gen_stack_pointer_inc (size_rtx));
add_reg_note (insn, REG_FRAME_RELATED_EXPR,
- gen_stack_pointer_inc (GEN_INT (-size)));
+ gen_stack_pointer_inc (size_int_rtx));
}
RTX_FRAME_RELATED_P (insn) = 1;
}
else
{
+ rtx size_int_rtx = GEN_INT (-size);
+
if (size <= 4096)
- insn = emit_insn (gen_save_register_window (GEN_INT (-size)));
+ emit_save_register_window (size_int_rtx);
else if (size <= 8192)
{
- insn = emit_insn (gen_save_register_window (GEN_INT (-4096)));
+ emit_save_register_window (GEN_INT (-4096));
/* %sp is not the CFA register anymore. */
emit_insn (gen_stack_pointer_inc (GEN_INT (4096 - size)));
}
else
{
- rtx reg = gen_rtx_REG (Pmode, 1);
- emit_move_insn (reg, GEN_INT (-size));
- insn = emit_insn (gen_save_register_window (reg));
+ rtx size_rtx = gen_rtx_REG (Pmode, 1);
+ emit_move_insn (size_rtx, size_int_rtx);
+ emit_save_register_window (size_rtx);
}
-
- RTX_FRAME_RELATED_P (insn) = 1;
- for (i=0; i < XVECLEN (PATTERN (insn), 0); i++)
- RTX_FRAME_RELATED_P (XVECEXP (PATTERN (insn), 0, i)) = 1;
}
if (sparc_leaf_function_p)
@@ -4786,7 +4765,6 @@
{
HOST_WIDE_INT size;
rtx insn;
- int i;
sparc_leaf_function_p = optimize > 0 && current_function_is_leaf;
@@ -4804,84 +4782,19 @@
if (size == 0)
; /* do nothing. */
- else if (frame_pointer_needed)
- {
- if (size <= 4096)
- {
- if (return_addr_reg_needed_p (sparc_leaf_function_p))
- insn = emit_insn (gen_create_flat_frame_1 (GEN_INT (-size)));
- else
- insn = emit_insn (gen_create_flat_frame_2 (GEN_INT (-size)));
- RTX_FRAME_RELATED_P (insn) = 1;
- for (i=0; i < XVECLEN (PATTERN (insn), 0); i++)
- RTX_FRAME_RELATED_P (XVECEXP (PATTERN (insn), 0, i)) = 1;
- }
- else
- {
- rtx reg = gen_rtx_REG (Pmode, 1), note;
- emit_move_insn (reg, GEN_INT (-size));
- if (return_addr_reg_needed_p (sparc_leaf_function_p))
- {
- insn = emit_insn (gen_create_flat_frame_1 (reg));
- note
- = gen_rtx_PARALLEL (VOIDmode,
- gen_rtvec
- (3, copy_rtx
- (XVECEXP (PATTERN (insn), 0, 0)),
- gen_stack_pointer_inc
- (GEN_INT (-size)),
- copy_rtx
- (XVECEXP (PATTERN (insn), 0, 2))));
- }
- else
- {
- insn = emit_insn (gen_create_flat_frame_2 (reg));
- note
- = gen_rtx_PARALLEL (VOIDmode,
- gen_rtvec
- (2, copy_rtx
- (XVECEXP (PATTERN (insn), 0, 0)),
- gen_stack_pointer_inc
- (GEN_INT (-size))));
- }
-
- RTX_FRAME_RELATED_P (insn) = 1;
- add_reg_note (insn, REG_FRAME_RELATED_EXPR, note);
- for (i=0; i < XVECLEN (note, 0); i++)
- RTX_FRAME_RELATED_P (XVECEXP (note, 0, i)) = 1;
- }
- }
- else if (return_addr_reg_needed_p (sparc_leaf_function_p))
- {
- if (size <= 4096)
- {
- insn = emit_insn (gen_create_flat_frame_3 (GEN_INT (-size)));
- RTX_FRAME_RELATED_P (insn) = 1;
- for (i=0; i < XVECLEN (PATTERN (insn), 0); i++)
- RTX_FRAME_RELATED_P (XVECEXP (PATTERN (insn), 0, i)) = 1;
- }
- else
- {
- rtx reg = gen_rtx_REG (Pmode, 1), note;
- emit_move_insn (reg, GEN_INT (-size));
- insn = emit_insn (gen_create_flat_frame_3 (reg));
- note
- = gen_rtx_PARALLEL (VOIDmode,
- gen_rtvec
- (2, gen_stack_pointer_inc (GEN_INT (-size)),
- copy_rtx
- (XVECEXP (PATTERN (insn), 0, 1))));
- RTX_FRAME_RELATED_P (insn) = 1;
- add_reg_note (insn, REG_FRAME_RELATED_EXPR, note);
- for (i=0; i < XVECLEN (note, 0); i++)
- RTX_FRAME_RELATED_P (XVECEXP (note, 0, i)) = 1;
- }
- }
else
{
+ rtx size_int_rtx, size_rtx;
+
+ size_rtx = size_int_rtx = GEN_INT (-size);
+
+ /* We establish the frame (i.e. decrement the stack pointer) first, even
+ if we use a frame pointer, because we cannot clobber any call-saved
+ registers, including the frame pointer, if we haven't created a new
+ register save area, for the sake of compatibility with the ABI. */
if (size <= 4096)
- insn = emit_insn (gen_stack_pointer_inc (GEN_INT (-size)));
- else if (size <= 8192)
+ insn = emit_insn (gen_stack_pointer_inc (size_int_rtx));
+ else if (size <= 8192 && !frame_pointer_needed)
{
insn = emit_insn (gen_stack_pointer_inc (GEN_INT (-4096)));
RTX_FRAME_RELATED_P (insn) = 1;
@@ -4889,18 +4802,47 @@
}
else
{
- rtx reg = gen_rtx_REG (Pmode, 1);
- emit_move_insn (reg, GEN_INT (-size));
- insn = emit_insn (gen_stack_pointer_inc (reg));
- add_reg_note (insn, REG_FRAME_RELATED_EXPR,
- gen_stack_pointer_inc (GEN_INT (-size)));
+ size_rtx = gen_rtx_REG (Pmode, 1);
+ emit_move_insn (size_rtx, size_int_rtx);
+ insn = emit_insn (gen_stack_pointer_inc (size_rtx));
+ add_reg_note (insn, REG_CFA_ADJUST_CFA,
+ gen_stack_pointer_inc (size_int_rtx));
+ }
+ RTX_FRAME_RELATED_P (insn) = 1;
+
+ /* Ensure nothing is scheduled until after the frame is established. */
+ emit_insn (gen_blockage ());
+
+ if (frame_pointer_needed)
+ {
+ insn = emit_insn (gen_rtx_SET (VOIDmode, hard_frame_pointer_rtx,
+ gen_rtx_MINUS (Pmode,
+ stack_pointer_rtx,
+ size_rtx)));
+ RTX_FRAME_RELATED_P (insn) = 1;
+
+ add_reg_note (insn, REG_CFA_ADJUST_CFA,
+ gen_rtx_SET (VOIDmode, hard_frame_pointer_rtx,
+ plus_constant (stack_pointer_rtx,
+ size)));
}
- RTX_FRAME_RELATED_P (insn) = 1;
- }
+ if (return_addr_reg_needed_p (sparc_leaf_function_p))
+ {
+ rtx o7 = gen_rtx_REG (Pmode, INCOMING_RETURN_ADDR_REGNUM);
+ rtx i7 = gen_rtx_REG (Pmode, RETURN_ADDR_REGNUM);
- /* Make sure nothing is scheduled until after the frame is established. */
- emit_insn (gen_blockage ());
+ insn = emit_move_insn (i7, o7);
+ RTX_FRAME_RELATED_P (insn) = 1;
+
+ add_reg_note (insn, REG_CFA_REGISTER,
+ gen_rtx_SET (VOIDmode, i7, o7));
+
+ /* Prevent this instruction from ever being considered dead,
+ even if this function has no epilogue. */
+ emit_insn (gen_rtx_USE (VOIDmode, i7));
+ }
+ }
if (frame_pointer_needed)
{
@@ -10000,20 +9942,6 @@
return 0;
}
-/* Handle the TARGET_DWARF_HANDLE_FRAME_UNSPEC hook.
-
- This is called from dwarf2out.c to emit call frame instructions
- for frame-related insns containing UNSPECs and UNSPEC_VOLATILEs. */
-
-static void
-sparc_dwarf_handle_frame_unspec (const char *label,
- rtx pattern ATTRIBUTE_UNUSED,
- int index ATTRIBUTE_UNUSED)
-{
- gcc_assert (index == UNSPECV_SAVEW);
- dwarf2out_window_save (label);
-}
-
/* This is called from dwarf2out.c via TARGET_ASM_OUTPUT_DWARF_DTPREL.
We need to emit DTP-relative relocations. */
diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md
index acf317d..2c8d306 100644
--- a/gcc/config/sparc/sparc.md
+++ b/gcc/config/sparc/sparc.md
@@ -6276,56 +6276,17 @@
DONE;
})
-;; The "save register window" insn is modelled as follows so that the DWARF-2
-;; backend automatically emits the required call frame debugging information
-;; while it is parsing it. Therefore, the pattern should not be modified
-;; without first studying the impact of the changes on the debug info.
-;; [(set (%fp) (%sp))
-;; (set (%sp) (unspec_volatile [(%sp) (-frame_size)] UNSPECV_SAVEW))
-;; (set (%i7) (%o7))]
+;; The "save register window" insn is modelled as follows. The dwarf2
+;; information is manually added in emit_save_register_window in sparc.c.
-(define_insn "save_register_window<P:mode>"
- [(set (reg:P 30) (reg:P 14))
- (set (reg:P 14) (unspec_volatile:P [(reg:P 14)
- (match_operand:P 0 "arith_operand" "rI")] UNSPECV_SAVEW))
- (set (reg:P 31) (reg:P 15))]
+(define_insn "save_register_window_1"
+ [(unspec_volatile
+ [(match_operand 0 "arith_operand" "rI")]
+ UNSPECV_SAVEW)]
"!TARGET_FLAT"
"save\t%%sp, %0, %%sp"
[(set_attr "type" "savew")])
-;; Likewise for the "create flat frame" insns. We need to use special insns
-;; because %fp cannot be clobbered until after the frame is established (so
-;; that it contains the live register window save area) and %i7 changed with
-;; a simple move as it is a fixed register and the move would be eliminated.
-
-(define_insn "create_flat_frame_1<P:mode>"
- [(set (reg:P 30) (reg:P 14))
- (set (reg:P 14) (plus:P (reg:P 14)
- (match_operand:P 0 "arith_operand" "rI")))
- (set (reg:P 31) (reg:P 15))]
- "TARGET_FLAT"
- "add\t%%sp, %0, %%sp\n\tsub\t%%sp, %0, %%fp\n\tmov\t%%o7, %%i7"
- [(set_attr "type" "multi")
- (set_attr "length" "3")])
-
-(define_insn "create_flat_frame_2<P:mode>"
- [(set (reg:P 30) (reg:P 14))
- (set (reg:P 14) (plus:P (reg:P 14)
- (match_operand:P 0 "arith_operand" "rI")))]
- "TARGET_FLAT"
- "add\t%%sp, %0, %%sp\n\tsub\t%%sp, %0, %%fp"
- [(set_attr "type" "multi")
- (set_attr "length" "2")])
-
-(define_insn "create_flat_frame_3<P:mode>"
- [(set (reg:P 14) (plus:P (reg:P 14)
- (match_operand:P 0 "arith_operand" "rI")))
- (set (reg:P 31) (reg:P 15))]
- "TARGET_FLAT"
- "add\t%%sp, %0, %%sp\n\tmov\t%%o7, %%i7"
- [(set_attr "type" "multi")
- (set_attr "length" "2")])
-
(define_expand "epilogue"
[(return)]
""
diff --git a/gcc/config/spu/spu.c b/gcc/config/spu/spu.c
index 0da736c..63985e1 100644
--- a/gcc/config/spu/spu.c
+++ b/gcc/config/spu/spu.c
@@ -149,7 +149,6 @@
/* Prototypes and external defs. */
static void spu_option_override (void);
-static void spu_option_default_params (void);
static void spu_init_builtins (void);
static tree spu_builtin_decl (unsigned, bool);
static bool spu_scalar_mode_supported_p (enum machine_mode mode);
@@ -487,9 +486,6 @@
#undef TARGET_OPTION_OVERRIDE
#define TARGET_OPTION_OVERRIDE spu_option_override
-#undef TARGET_OPTION_DEFAULT_PARAMS
-#define TARGET_OPTION_DEFAULT_PARAMS spu_option_default_params
-
#undef TARGET_CONDITIONAL_REGISTER_USAGE
#define TARGET_CONDITIONAL_REGISTER_USAGE spu_conditional_register_usage
@@ -508,15 +504,6 @@
struct gcc_target targetm = TARGET_INITIALIZER;
-/* Implement TARGET_OPTION_DEFAULT_PARAMS. */
-static void
-spu_option_default_params (void)
-{
- /* Override some of the default param values. With so many registers
- larger values are better for these params. */
- set_default_param_value (PARAM_MAX_PENDING_LIST_LENGTH, 128);
-}
-
/* Implement TARGET_OPTION_OVERRIDE. */
static void
spu_option_override (void)
diff --git a/gcc/config/usegld.h b/gcc/config/usegld.h
new file mode 100644
index 0000000..0667732
--- /dev/null
+++ b/gcc/config/usegld.h
@@ -0,0 +1 @@
+#define USE_GLD 1
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index a48f9c5..6629549 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,92 @@
+2011-06-26 Jason Merrill <jason@redhat.com>
+
+ PR c++/49528
+ * semantics.c (potential_constant_expression_1): Check
+ for non-literality rather than cleanup.
+ (cxx_eval_constant_expression): Likewise.
+
+ PR c++/49528
+ * semantics.c (potential_constant_expression_1): A TARGET_EXPR
+ with a cleanup isn't constant.
+ (cxx_eval_constant_expression): Likewise.
+ * init.c (expand_default_init): Use maybe_constant_init.
+
+2011-06-24 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/46400
+ * cp-tree.h (union lang_tree_node): Use TYPE_NEXT_VARIANT
+ instead of TYPE_CHAIN for chain_next for types.
+
+2011-06-23 Gabriel Charette <gchare@google.com>
+
+ * name-lookup.h (cp_binding_level): Removed unused
+ member names_size. Update all users.
+
+2011-06-23 Jason Merrill <jason@redhat.com>
+
+ * typeck2.c (build_functional_cast): Strip cv-quals for value init.
+ * init.c (build_zero_init_1): Not here.
+
+ PR c++/35255
+ * pt.c (resolve_overloaded_unification): Fix DR 115 handling.
+
+2011-06-23 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/44625
+ * decl2.c (build_anon_union_vars): Early return error_mark_node
+ for a nested anonymous struct.
+
+2011-06-23 Jason Merrill <jason@redhat.com>
+
+ PR c++/49507
+ * decl2.c (mark_used): Don't call synthesize_method for
+ functions defaulted outside the class.
+
+ * optimize.c (maybe_clone_body): Set linkage flags before
+ cgraph_same_body_alias.
+
+ PR c++/49440
+ * class.c (set_linkage_according_to_type): Hand off to
+ determine_visibility.
+
+ PR c++/49395
+ * init.c (build_zero_init_1): Strip cv-quals from scalar types.
+
+ PR c++/36435
+ * pt.c (most_specialized_instantiation): Do check return types.
+
+2011-06-22 Jason Merrill <jason@redhat.com>
+
+ PR c++/49260
+ * call.c (build_call_a): Set cp_function_chain->can_throw here.
+ (build_cxx_call): Not here.
+
+2011-06-21 Jason Merrill <jason@redhat.com>
+
+ PR c++/49172
+ * decl.c (cp_finish_decl): Adjust init_const_expr_p for refs.
+ (grokdeclarator): constexpr doesn't apply const for refs.
+ * parser.c (cp_parser_initializer_clause): Don't call
+ maybe_constant_value here.
+ * call.c (initialize_reference): Handle constexpr.
+
+ PR c++/49482
+ * semantics.c (maybe_add_lambda_conv_op): Call mark_exp_read for
+ static fn parameters.
+
+ * call.c (add_builtin_candidates): Use cv_unqualified rather than
+ TYPE_MAIN_VARIANT.
+ * pt.c (tsubst_arg_types): Likewise.
+ * except.c (build_throw): Use cv_unqualified.
+
+ PR c++/49418
+ * call.c (cxx_type_promotes_to): Don't strip cv-quals.
+ * semantics.c (lambda_return_type): Strip them here.
+
+2011-06-21 Andrew MacLeod <amacleod@redhat.com>
+
+ * semantics.c: Add sync_ or SYNC__ to builtin names.
+
2011-06-20 Jason Merrill <jason@redhat.com>
PR c++/49216
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index caf95b0..cfaef7d8 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -352,6 +352,9 @@
nothrow = ((decl && TREE_NOTHROW (decl))
|| TYPE_NOTHROW_P (TREE_TYPE (TREE_TYPE (function))));
+ if (!nothrow && cfun && cp_function_chain)
+ cp_function_chain->can_throw = 1;
+
if (decl && TREE_THIS_VOLATILE (decl) && cfun && cp_function_chain)
current_function_returns_abnormally = 1;
@@ -2640,8 +2643,6 @@
return build_pointer_type (TREE_TYPE (type));
if (TREE_CODE (type) == FUNCTION_TYPE)
return build_pointer_type (type);
- if (!MAYBE_CLASS_TYPE_P (type))
- type = cv_unqualified (type);
return type;
}
@@ -2775,7 +2776,7 @@
type = non_reference (type);
if (i != 0 || ! ref1)
{
- type = TYPE_MAIN_VARIANT (type_decays_to (type));
+ type = cv_unqualified (type_decays_to (type));
if (enum_p && TREE_CODE (type) == ENUMERAL_TYPE)
VEC_safe_push (tree, gc, types[i], type);
if (INTEGRAL_OR_UNSCOPED_ENUMERATION_TYPE_P (type))
@@ -2794,7 +2795,7 @@
type = non_reference (argtypes[i]);
if (i != 0 || ! ref1)
{
- type = TYPE_MAIN_VARIANT (type_decays_to (type));
+ type = cv_unqualified (type_decays_to (type));
if (enum_p && UNSCOPED_ENUM_P (type))
VEC_safe_push (tree, gc, types[i], type);
if (INTEGRAL_OR_UNSCOPED_ENUMERATION_TYPE_P (type))
@@ -6712,11 +6713,6 @@
/* If this call might throw an exception, note that fact. */
fndecl = get_callee_fndecl (fn);
- if ((!fndecl || !TREE_NOTHROW (fndecl))
- && at_function_scope_p ()
- && cfun
- && cp_function_chain)
- cp_function_chain->can_throw = 1;
/* Check that arguments to builtin functions match the expectations. */
if (fndecl
@@ -8631,6 +8627,8 @@
tree var;
tree base_conv_type;
+ gcc_assert (complain == tf_warning_or_error);
+
/* Skip over the REF_BIND. */
conv = conv->u.next;
/* If the next conversion is a BASE_CONV, skip that too -- but
@@ -8648,7 +8646,7 @@
/*inner=*/-1,
/*issue_conversion_warnings=*/true,
/*c_cast_p=*/false,
- tf_warning_or_error);
+ complain);
if (error_operand_p (expr))
expr = error_mark_node;
else
@@ -8669,18 +8667,24 @@
}
else
/* Take the address of EXPR. */
- expr = cp_build_addr_expr (expr, tf_warning_or_error);
+ expr = cp_build_addr_expr (expr, complain);
/* If a BASE_CONV was required, perform it now. */
if (base_conv_type)
expr = (perform_implicit_conversion
(build_pointer_type (base_conv_type), expr,
- tf_warning_or_error));
+ complain));
expr = build_nop (type, expr);
+ if (DECL_DECLARED_CONSTEXPR_P (decl))
+ {
+ expr = cxx_constant_value (expr);
+ DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P (decl)
+ = reduced_constant_expression_p (expr);
+ }
}
}
else
/* Perform the conversion. */
- expr = convert_like (conv, expr, tf_warning_or_error);
+ expr = convert_like (conv, expr, complain);
/* Free all the conversions we allocated. */
obstack_free (&conversion_obstack, p);
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index 09444fb..9e387a6 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -677,21 +677,10 @@
the abstract. */
void
-set_linkage_according_to_type (tree type, tree decl)
+set_linkage_according_to_type (tree type ATTRIBUTE_UNUSED, tree decl)
{
- /* If TYPE involves a local class in a function with internal
- linkage, then DECL should have internal linkage too. Other local
- classes have no linkage -- but if their containing functions
- have external linkage, it makes sense for DECL to have external
- linkage too. That will allow template definitions to be merged,
- for example. */
- if (no_linkage_check (type, /*relaxed_p=*/true))
- {
- TREE_PUBLIC (decl) = 0;
- DECL_INTERFACE_KNOWN (decl) = 1;
- }
- else
- TREE_PUBLIC (decl) = 1;
+ TREE_PUBLIC (decl) = 1;
+ determine_visibility (decl);
}
/* Create a VAR_DECL for a primary or secondary vtable for CLASS_TYPE.
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 904e44c..872ff6f 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -729,7 +729,7 @@
/* The resulting tree type. */
union GTY((desc ("cp_tree_node_structure (&%h)"),
- chain_next ("CODE_CONTAINS_STRUCT (TREE_CODE (&%h.generic), TS_COMMON) ? ((union lang_tree_node *) TREE_CHAIN (&%h.generic)) : NULL"))) lang_tree_node {
+ chain_next ("CODE_CONTAINS_STRUCT (TREE_CODE (&%h.generic), TS_TYPE_COMMON) ? ((union lang_tree_node *) TYPE_NEXT_VARIANT (&%h.generic)) : CODE_CONTAINS_STRUCT (TREE_CODE (&%h.generic), TS_COMMON) ? ((union lang_tree_node *) TREE_CHAIN (&%h.generic)) : NULL"))) lang_tree_node {
union tree_node GTY ((tag ("TS_CP_GENERIC"),
desc ("tree_node_structure (&%h)"))) generic;
struct template_parm_index_s GTY ((tag ("TS_CP_TPI"))) tpi;
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 263ab3f..b8435a6 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -5987,6 +5987,11 @@
if (init && TREE_CODE (decl) == VAR_DECL)
{
DECL_NONTRIVIALLY_INITIALIZED_P (decl) = 1;
+ /* If DECL is a reference, then we want to know whether init is a
+ reference constant; init_const_expr_p as passed tells us whether
+ it's an rvalue constant. */
+ if (TREE_CODE (type) == REFERENCE_TYPE)
+ init_const_expr_p = potential_constant_expression (init);
if (init_const_expr_p)
{
/* Set these flags now for templates. We'll update the flags in
@@ -9333,8 +9338,11 @@
error ("both %<const%> and %<constexpr%> cannot be used here");
if (type_quals & TYPE_QUAL_VOLATILE)
error ("both %<volatile%> and %<constexpr%> cannot be used here");
- type_quals |= TYPE_QUAL_CONST;
- type = cp_build_qualified_type (type, type_quals);
+ if (TREE_CODE (type) != REFERENCE_TYPE)
+ {
+ type_quals |= TYPE_QUAL_CONST;
+ type = cp_build_qualified_type (type, type_quals);
+ }
}
if (unqualified_id && TREE_CODE (unqualified_id) == TEMPLATE_ID_EXPR
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index d2f075d..8cd51c2 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -1327,7 +1327,10 @@
/* Rather than write the code to handle the non-union case,
just give an error. */
if (TREE_CODE (type) != UNION_TYPE)
- error ("anonymous struct not inside named type");
+ {
+ error ("anonymous struct not inside named type");
+ return error_mark_node;
+ }
for (field = TYPE_FIELDS (type);
field != NULL_TREE;
@@ -4297,6 +4300,9 @@
if (TREE_CODE (decl) == FUNCTION_DECL
&& DECL_NONSTATIC_MEMBER_FUNCTION_P (decl)
&& DECL_DEFAULTED_FN (decl)
+ /* A function defaulted outside the class is synthesized either by
+ cp_finish_decl or instantiate_decl. */
+ && !DECL_DEFAULTED_OUTSIDE_CLASS_P (decl)
&& ! DECL_INITIAL (decl))
{
/* Remember the current location for a function we will end up
diff --git a/gcc/cp/except.c b/gcc/cp/except.c
index 3399652..f8c8e47 100644
--- a/gcc/cp/except.c
+++ b/gcc/cp/except.c
@@ -722,7 +722,7 @@
respectively. */
temp_type = is_bitfield_expr_with_lowered_type (exp);
if (!temp_type)
- temp_type = type_decays_to (TREE_TYPE (exp));
+ temp_type = cv_unqualified (type_decays_to (TREE_TYPE (exp)));
/* OK, this is kind of wacky. The standard says that we call
terminate when the exception handling mechanism, after
diff --git a/gcc/cp/init.c b/gcc/cp/init.c
index 3c347a4..3ceed90 100644
--- a/gcc/cp/init.c
+++ b/gcc/cp/init.c
@@ -1514,7 +1514,7 @@
tree fn = get_callee_fndecl (rval);
if (fn && DECL_DECLARED_CONSTEXPR_P (fn))
{
- tree e = maybe_constant_value (rval);
+ tree e = maybe_constant_init (rval);
if (TREE_CONSTANT (e))
rval = build2 (INIT_EXPR, type, exp, e);
}
diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c
index 953edd5..8bf5f5f 100644
--- a/gcc/cp/name-lookup.c
+++ b/gcc/cp/name-lookup.c
@@ -541,7 +541,6 @@
necessary. */
TREE_CHAIN (decl) = b->names;
b->names = decl;
- b->names_size++;
/* If appropriate, add decl to separate list of statics. We
include extern variables because they might turn out to be
diff --git a/gcc/cp/name-lookup.h b/gcc/cp/name-lookup.h
index 009b5d9..5f266eb 100644
--- a/gcc/cp/name-lookup.h
+++ b/gcc/cp/name-lookup.h
@@ -191,9 +191,6 @@
are wrapped in TREE_LISTs; the TREE_VALUE is the OVERLOAD. */
tree names;
- /* Count of elements in names chain. */
- size_t names_size;
-
/* A chain of NAMESPACE_DECL nodes. */
tree namespaces;
diff --git a/gcc/cp/optimize.c b/gcc/cp/optimize.c
index 87302dc..b9e3551 100644
--- a/gcc/cp/optimize.c
+++ b/gcc/cp/optimize.c
@@ -310,8 +310,11 @@
|| (HAVE_COMDAT_GROUP
&& DECL_WEAK (fns[0])))
&& (flag_syntax_only
- || cgraph_same_body_alias (cgraph_get_node (fns[0]), clone,
- fns[0])))
+ /* Set linkage flags appropriately before
+ cgraph_create_function_alias looks at them. */
+ || (expand_or_defer_fn_1 (clone)
+ && cgraph_same_body_alias (cgraph_get_node (fns[0]),
+ clone, fns[0]))))
{
alias = true;
if (DECL_ONE_ONLY (fns[0]))
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 856a8a7..f1b7976 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -16532,16 +16532,6 @@
= cp_parser_constant_expression (parser,
/*allow_non_constant_p=*/true,
non_constant_p);
- if (!*non_constant_p)
- {
- /* We only want to fold if this is really a constant
- expression. FIXME Actually, we don't want to fold here, but in
- cp_finish_decl. */
- tree folded = fold_non_dependent_expr (initializer);
- folded = maybe_constant_value (folded);
- if (TREE_CONSTANT (folded))
- initializer = folded;
- }
}
else
initializer = cp_parser_braced_list (parser, non_constant_p);
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 4d2caa8..b3dd85f 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -10246,7 +10246,7 @@
/* Do array-to-pointer, function-to-pointer conversion, and ignore
top-level qualifiers as required. */
- type = TYPE_MAIN_VARIANT (type_decays_to (type));
+ type = cv_unqualified (type_decays_to (type));
/* We do not substitute into default arguments here. The standard
mandates that they be instantiated only when needed, which is
@@ -14524,6 +14524,7 @@
the affected templates before we try to unify, in case the
explicit args will completely resolve the templates in question. */
+ int ok = 0;
tree expl_subargs = TREE_OPERAND (arg, 1);
arg = TREE_OPERAND (arg, 0);
@@ -14538,7 +14539,7 @@
++processing_template_decl;
subargs = get_bindings (fn, DECL_TEMPLATE_RESULT (fn),
expl_subargs, /*check_ret=*/false);
- if (subargs)
+ if (subargs && !any_dependent_template_arguments_p (subargs))
{
elem = tsubst (TREE_TYPE (fn), subargs, tf_none, NULL_TREE);
if (try_one_overload (tparms, targs, tempargs, parm,
@@ -14549,8 +14550,16 @@
++good;
}
}
+ else if (subargs)
+ ++ok;
--processing_template_decl;
}
+ /* If no templates (or more than one) are fully resolved by the
+ explicit arguments, this template-id is a non-deduced context; it
+ could still be OK if we deduce all template arguments for the
+ enclosing call through other arguments. */
+ if (good != 1)
+ good = ok;
}
else if (TREE_CODE (arg) != OVERLOAD
&& TREE_CODE (arg) != FUNCTION_DECL)
@@ -16610,12 +16619,12 @@
if (get_bindings (TREE_VALUE (champ),
DECL_TEMPLATE_RESULT (TREE_VALUE (fn)),
- NULL_TREE, /*check_ret=*/false))
+ NULL_TREE, /*check_ret=*/true))
fate--;
if (get_bindings (TREE_VALUE (fn),
DECL_TEMPLATE_RESULT (TREE_VALUE (champ)),
- NULL_TREE, /*check_ret=*/false))
+ NULL_TREE, /*check_ret=*/true))
fate++;
if (fate == -1)
@@ -16637,10 +16646,10 @@
for (fn = templates; fn != champ; fn = TREE_CHAIN (fn))
if (get_bindings (TREE_VALUE (champ),
DECL_TEMPLATE_RESULT (TREE_VALUE (fn)),
- NULL_TREE, /*check_ret=*/false)
+ NULL_TREE, /*check_ret=*/true)
|| !get_bindings (TREE_VALUE (fn),
DECL_TEMPLATE_RESULT (TREE_VALUE (champ)),
- NULL_TREE, /*check_ret=*/false))
+ NULL_TREE, /*check_ret=*/true))
{
champ = NULL_TREE;
break;
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index cfe3959..d1af0c6 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -4722,7 +4722,7 @@
void
finish_omp_flush (void)
{
- tree fn = built_in_decls[BUILT_IN_SYNCHRONIZE];
+ tree fn = built_in_decls[BUILT_IN_SYNC_SYNCHRONIZE];
VEC(tree,gc) *vec = make_tree_vector ();
tree stmt = finish_call_expr (fn, &vec, false, false, tf_warning_or_error);
release_tree_vector (vec);
@@ -6357,7 +6357,7 @@
}
if (TREE_CODE (TREE_TYPE (whole)) == UNION_TYPE)
{
- /* FIXME Mike Miller wants this to be OK. */
+ /* DR 1188 says we don't have to deal with this. */
if (!allow_non_constant)
error ("accessing %qD member instead of initialized %qD member in "
"constant expression", part, CONSTRUCTOR_ELT (whole, 0)->index);
@@ -6881,7 +6881,7 @@
{
gcc_assert (!same_type_ignoring_top_level_qualifiers_p
(TREE_TYPE (TREE_TYPE (sub)), TREE_TYPE (t)));
- /* FIXME Mike Miller wants this to be OK. */
+ /* DR 1188 says we don't have to deal with this. */
if (!allow_non_constant)
error ("accessing value of %qE through a %qT glvalue in a "
"constant expression", build_fold_indirect_ref (sub),
@@ -7020,6 +7020,15 @@
break;
case TARGET_EXPR:
+ if (!literal_type_p (TREE_TYPE (t)))
+ {
+ if (!allow_non_constant)
+ error ("temporary of non-literal type %qT in a "
+ "constant expression", TREE_TYPE (t));
+ *non_constant_p = true;
+ break;
+ }
+ /* else fall through. */
case INIT_EXPR:
/* Pass false for 'addr' because these codes indicate
initialization of a temporary. */
@@ -7840,8 +7849,15 @@
return potential_constant_expression_1 (TREE_OPERAND (t, 1),
want_rval, flags);
- case INIT_EXPR:
case TARGET_EXPR:
+ if (!literal_type_p (TREE_TYPE (t)))
+ {
+ if (flags & tf_error)
+ error ("temporary of non-literal type %qT in a "
+ "constant expression", TREE_TYPE (t));
+ return false;
+ }
+ case INIT_EXPR:
return potential_constant_expression_1 (TREE_OPERAND (t, 1),
rval, flags);
@@ -8177,7 +8193,7 @@
SET_TYPE_STRUCTURAL_EQUALITY (type);
}
else
- type = type_decays_to (unlowered_expr_type (expr));
+ type = cv_unqualified (type_decays_to (unlowered_expr_type (expr)));
return type;
}
@@ -8780,7 +8796,10 @@
argvec = make_tree_vector ();
VEC_quick_push (tree, argvec, arg);
for (arg = DECL_ARGUMENTS (statfn); arg; arg = DECL_CHAIN (arg))
- VEC_safe_push (tree, gc, argvec, arg);
+ {
+ mark_exp_read (arg);
+ VEC_safe_push (tree, gc, argvec, arg);
+ }
call = build_call_a (callop, VEC_length (tree, argvec),
VEC_address (tree, argvec));
CALL_FROM_THUNK_P (call) = 1;
diff --git a/gcc/cp/typeck2.c b/gcc/cp/typeck2.c
index ff2949c..8bb938e 100644
--- a/gcc/cp/typeck2.c
+++ b/gcc/cp/typeck2.c
@@ -1641,7 +1641,7 @@
{
if (VOID_TYPE_P (type))
return void_zero_node;
- return build_value_init (type, complain);
+ return build_value_init (cv_unqualified (type), complain);
}
/* This must build a C cast. */
diff --git a/gcc/cselib.c b/gcc/cselib.c
index e0697ec..e575aff 100644
--- a/gcc/cselib.c
+++ b/gcc/cselib.c
@@ -812,6 +812,10 @@
return DEBUG_IMPLICIT_PTR_DECL (x)
== DEBUG_IMPLICIT_PTR_DECL (y);
+ case DEBUG_PARAMETER_REF:
+ return DEBUG_PARAMETER_REF_DECL (x)
+ == DEBUG_PARAMETER_REF_DECL (y);
+
case ENTRY_VALUE:
/* ENTRY_VALUEs are function invariant, it is thus undesirable to
use rtx_equal_for_cselib_1 to compare the operands. */
@@ -963,6 +967,11 @@
+ DECL_UID (DEBUG_IMPLICIT_PTR_DECL (x));
return hash ? hash : (unsigned int) DEBUG_IMPLICIT_PTR;
+ case DEBUG_PARAMETER_REF:
+ hash += ((unsigned) DEBUG_PARAMETER_REF << 7)
+ + DECL_UID (DEBUG_PARAMETER_REF_DECL (x));
+ return hash ? hash : (unsigned int) DEBUG_PARAMETER_REF;
+
case ENTRY_VALUE:
/* ENTRY_VALUEs are function invariant, thus try to avoid
recursing on argument if ENTRY_VALUE is one of the
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 06124ab..a9e93a2 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -7828,6 +7828,12 @@
significant bit position. If @var{x} is 0, the result is undefined.
@end deftypefn
+@deftypefn {Built-in Function} int __builtin_clrsb (int x)
+Returns the number of leading redundant sign bits in @var{x}, i.e. the
+number of bits following the most significant bit which are identical
+to it. There are no special cases for 0 or other values.
+@end deftypefn
+
@deftypefn {Built-in Function} int __builtin_popcount (unsigned int x)
Returns the number of 1-bits in @var{x}.
@end deftypefn
@@ -7852,6 +7858,11 @@
@code{unsigned long}.
@end deftypefn
+@deftypefn {Built-in Function} int __builtin_clrsbl (long)
+Similar to @code{__builtin_clrsb}, except the argument type is
+@code{long}.
+@end deftypefn
+
@deftypefn {Built-in Function} int __builtin_popcountl (unsigned long)
Similar to @code{__builtin_popcount}, except the argument type is
@code{unsigned long}.
@@ -7877,6 +7888,11 @@
@code{unsigned long long}.
@end deftypefn
+@deftypefn {Built-in Function} int __builtin_clrsbll (long long)
+Similar to @code{__builtin_clrsb}, except the argument type is
+@code{long long}.
+@end deftypefn
+
@deftypefn {Built-in Function} int __builtin_popcountll (unsigned long long)
Similar to @code{__builtin_popcount}, except the argument type is
@code{unsigned long long}.
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 7ebcd92..a4a1b04 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -1016,6 +1016,12 @@
workable alternative. This requires gas and gdb, as the normal SVR4
tools can not generate or interpret stabs.
+@item --with-tls=@var{dialect}
+Specify the default TLS dialect, for systems were there is a choice.
+For ARM targets, possible values for @var{dialect} are @code{gnu} or
+@code{gnu2}, which select between the original GNU dialect and the GNU TLS
+descriptor-based dialect.
+
@item --disable-multilib
Specify that multiple target
libraries to support different target variants, calling
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index ee1f2ab..1b1306c 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -477,7 +477,7 @@
-mthumb -marm @gol
-mtpcs-frame -mtpcs-leaf-frame @gol
-mcaller-super-interworking -mcallee-super-interworking @gol
--mtp=@var{name} @gol
+-mtp=@var{name} -mtls-dialect=@var{dialect} @gol
-mword-relocations @gol
-mfix-cortex-m3-ldrd}
@@ -10471,6 +10471,18 @@
best available method for the selected processor. The default setting is
@option{auto}.
+@item -mtls-dialect=@var{dialect}
+@opindex mtls-dialect
+Specify the dialect to use for accessing thread local storage. Two
+dialects are supported --- @option{gnu} and @option{gnu2}. The
+@option{gnu} dialect selects the original GNU scheme for supporting
+local and global dynamic TLS models. The @option{gnu2} dialect
+selects the GNU descriptor scheme, which provides better performance
+for shared libraries. The GNU descriptor scheme is compatible with
+the original scheme, but does require new assembler, linker and
+library support. Initial and local exec TLS models are unaffected by
+this option and always use the original scheme.
+
@item -mword-relocations
@opindex mword-relocations
Only generate absolute relocations on word sized values (i.e. R_ARM_ABS32).
diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi
index 0023405..abe51f8 100644
--- a/gcc/doc/md.texi
+++ b/gcc/doc/md.texi
@@ -1773,6 +1773,9 @@
@item Q
A memory address based on Y or Z pointer with displacement.
+
+@item C04
+Constant integer 4
@end table
@item Hewlett-Packard PA-RISC---@file{config/pa/pa.h}
@@ -6745,6 +6748,14 @@
@end smallexample
@var{name} is a string specifying the name of the attribute being defined.
+Some attributes are used in a special way by the rest of the compiler. The
+@code{enabled} attribute can be used to conditionally enable or disable
+insn alternatives (@pxref{Disable Insn Alternatives}). The @code{predicable}
+attribute, together with a suitable @code{define_cond_exec}
+(@pxref{Conditional Execution}), can be used to automatically generate
+conditional variants of instruction patterns. The compiler internally uses
+the names @code{ce_enabled} and @code{nonce_enabled}, so they should not be
+used elsewhere as alternative names.
@var{list-of-values} is either a string that specifies a comma-separated
list of values that can be assigned to the attribute, or a null string to
@@ -7954,11 +7965,14 @@
When @code{define_cond_exec} is used, an implicit reference to
the @code{predicable} instruction attribute is made.
-@xref{Insn Attributes}. This attribute must be boolean (i.e.@: have
-exactly two elements in its @var{list-of-values}). Further, it must
-not be used with complex expressions. That is, the default and all
-uses in the insns must be a simple constant, not dependent on the
-alternative or anything else.
+@xref{Insn Attributes}. This attribute must be a boolean (i.e.@: have
+exactly two elements in its @var{list-of-values}), with the possible
+values being @code{no} and @code{yes}. The default and all uses in
+the insns must be a simple constant, not a complex expressions. It
+may, however, depend on the alternative, by using a comma-separated
+list of values. If that is the case, the port should also define an
+@code{enabled} attribute (@pxref{Disable Insn Alternatives}), which
+should also allow only @code{no} and @code{yes} as its values.
For each @code{define_insn} for which the @code{predicable}
attribute is true, a new @code{define_insn} pattern will be
diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi
index 6995a29..ea30e38 100644
--- a/gcc/doc/rtl.texi
+++ b/gcc/doc/rtl.texi
@@ -2400,6 +2400,14 @@
depending on the target machine, various mode combinations may be
valid.
+@findex clrsb
+@item (clrsb:@var{m} @var{x})
+Represents the number of redundant leading sign bits in @var{x},
+represented as an integer of mode @var{m}, starting at the most
+significant bit position. This is one less than the number of leading
+sign bits (either 0 or 1), with no special cases. The mode of @var{x}
+will usually be an integer mode and may differ from @var{m}.
+
@findex clz
@item (clz:@var{m} @var{x})
Represents the number of leading 0-bits in @var{x}, represented as an
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index fec5d55..341628b 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -762,17 +762,10 @@
Set target-dependent initial values of fields in @var{opts}.
@end deftypefn
-@deftypefn {Target Hook} void TARGET_OPTION_DEFAULT_PARAMS (void)
+@deftypefn {Common Target Hook} void TARGET_OPTION_DEFAULT_PARAMS (void)
Set target-dependent default values for @option{--param} settings, using calls to @code{set_default_param_value}.
@end deftypefn
-@deftypefn {Target Hook} void TARGET_HELP (void)
-This hook is called in response to the user invoking
-@option{--target-help} on the command line. It gives the target a
-chance to display extra information on the target specific command
-line options found in its @file{.opt} file.
-@end deftypefn
-
@defmac SWITCHABLE_TARGET
Some targets need to switch between substantially different subtargets
during compilation. For example, the MIPS target has one subtarget for
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index 3ea77c5..f7c16e9 100644
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -754,13 +754,6 @@
@hook TARGET_OPTION_DEFAULT_PARAMS
-@hook TARGET_HELP
-This hook is called in response to the user invoking
-@option{--target-help} on the command line. It gives the target a
-chance to display extra information on the target specific command
-line options found in its @file{.opt} file.
-@end deftypefn
-
@defmac SWITCHABLE_TARGET
Some targets need to switch between substantially different subtargets
during compilation. For example, the MIPS target has one subtarget for
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 71ba002..6d58a00 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -1232,22 +1232,6 @@
add_fde_cfi (label, cfi);
}
-/* Add the CFI for saving a register window. LABEL is passed to reg_save.
- This CFI tells the unwinder that it needs to restore the window registers
- from the previous frame's window save area.
-
- ??? Perhaps we should note in the CIE where windows are saved (instead of
- assuming 0(cfa)) and what registers are in the window. */
-
-void
-dwarf2out_window_save (const char *label)
-{
- dw_cfi_ref cfi = new_cfi ();
-
- cfi->dw_cfi_opc = DW_CFA_GNU_window_save;
- add_fde_cfi (label, cfi);
-}
-
/* Entry point for saving a register to the stack. REG is the GCC register
number. LABEL and OFFSET are passed to reg_save. */
@@ -2104,6 +2088,19 @@
add_fde_cfi (label, cfi);
}
+/* A subroutine of dwarf2out_frame_debug, process a REG_CFA_WINDOW_SAVE.
+ ??? Perhaps we should note in the CIE where windows are saved (instead of
+ assuming 0(cfa)) and what registers are in the window. */
+
+static void
+dwarf2out_frame_debug_cfa_window_save (const char *label)
+{
+ dw_cfi_ref cfi = new_cfi ();
+
+ cfi->dw_cfi_opc = DW_CFA_GNU_window_save;
+ add_fde_cfi (label, cfi);
+}
+
/* Record call frame debugging information for an expression EXPR,
which either sets SP or FP (adjusting how we calculate the frame
address) or saves a register to the stack or another register.
@@ -2900,6 +2897,11 @@
handled_one = true;
break;
+ case REG_CFA_WINDOW_SAVE:
+ dwarf2out_frame_debug_cfa_window_save (label);
+ handled_one = true;
+ break;
+
default:
break;
}
@@ -4811,6 +4813,8 @@
return "DW_OP_GNU_convert";
case DW_OP_GNU_reinterpret:
return "DW_OP_GNU_reinterpret";
+ case DW_OP_GNU_parameter_ref:
+ return "DW_OP_GNU_parameter_ref";
default:
return "OP_<unknown>";
@@ -5080,11 +5084,18 @@
break;
case DW_OP_GNU_convert:
case DW_OP_GNU_reinterpret:
- {
- unsigned long o
- = get_base_type_offset (loc->dw_loc_oprnd1.v.val_die_ref.die);
- size += size_of_uleb128 (o);
- }
+ if (loc->dw_loc_oprnd1.val_class == dw_val_class_unsigned_const)
+ size += size_of_uleb128 (loc->dw_loc_oprnd1.v.val_unsigned);
+ else
+ {
+ unsigned long o
+ = get_base_type_offset (loc->dw_loc_oprnd1.v.val_die_ref.die);
+ size += size_of_uleb128 (o);
+ }
+ break;
+ case DW_OP_GNU_parameter_ref:
+ size += 4;
+ break;
default:
break;
}
@@ -5122,6 +5133,7 @@
static HOST_WIDE_INT extract_int (const unsigned char *, unsigned);
static void get_ref_die_offset_label (char *, dw_die_ref);
+static unsigned long int get_ref_die_offset (dw_die_ref);
static void output_loc_sequence (dw_loc_descr_ref, int);
/* Output location description stack opcode's operands (if any).
@@ -5460,10 +5472,22 @@
break;
case DW_OP_GNU_convert:
case DW_OP_GNU_reinterpret:
+ if (loc->dw_loc_oprnd1.val_class == dw_val_class_unsigned_const)
+ dw2_asm_output_data_uleb128 (val1->v.val_unsigned, NULL);
+ else
+ {
+ unsigned long o = get_base_type_offset (val1->v.val_die_ref.die);
+ gcc_assert (o);
+ dw2_asm_output_data_uleb128 (o, NULL);
+ }
+ break;
+
+ case DW_OP_GNU_parameter_ref:
{
- unsigned long o = get_base_type_offset (val1->v.val_die_ref.die);
- gcc_assert (o);
- dw2_asm_output_data_uleb128 (o, NULL);
+ unsigned long o;
+ gcc_assert (val1->val_class == dw_val_class_die_ref);
+ o = get_ref_die_offset (val1->v.val_die_ref.die);
+ dw2_asm_output_data (4, o, NULL);
}
break;
@@ -5649,6 +5673,7 @@
case DW_OP_GNU_deref_type:
case DW_OP_GNU_convert:
case DW_OP_GNU_reinterpret:
+ case DW_OP_GNU_parameter_ref:
gcc_unreachable ();
break;
@@ -6965,6 +6990,15 @@
return ref->die_offset;
}
+/* Return die_offset of a DIE reference other than base type. */
+
+static unsigned long int
+get_ref_die_offset (dw_die_ref ref)
+{
+ gcc_assert (ref->die_offset);
+ return ref->die_offset;
+}
+
/* Convert a DIE tag into its string name. */
static const char *
@@ -13855,27 +13889,24 @@
return type_die;
}
-/* For OP descriptor assumed to be in unsigned MODE, convert it to a signed
- type matching MODE, or, if MODE is narrower than DWARF2_ADDR_SIZE, signed
- type matching DWARF2_ADDR_SIZE. Return NULL if the conversion is not
+/* For OP descriptor assumed to be in unsigned MODE, convert it to a unsigned
+ type matching MODE, or, if MODE is narrower than or as wide as
+ DWARF2_ADDR_SIZE, untyped. Return NULL if the conversion is not
possible. */
static dw_loc_descr_ref
-convert_descriptor_to_signed (enum machine_mode mode, dw_loc_descr_ref op)
+convert_descriptor_to_mode (enum machine_mode mode, dw_loc_descr_ref op)
{
enum machine_mode outer_mode = mode;
dw_die_ref type_die;
dw_loc_descr_ref cvt;
- if (GET_MODE_SIZE (mode) < DWARF2_ADDR_SIZE)
+ if (GET_MODE_SIZE (mode) <= DWARF2_ADDR_SIZE)
{
- outer_mode = mode_for_size (DWARF2_ADDR_SIZE * BITS_PER_UNIT,
- MODE_INT, 0);
- if (outer_mode == BLKmode
- || GET_MODE_SIZE (outer_mode) != DWARF2_ADDR_SIZE)
- return NULL;
+ add_loc_descr (&op, new_loc_descr (DW_OP_GNU_convert, 0, 0));
+ return op;
}
- type_die = base_type_for_mode (outer_mode, 0);
+ type_die = base_type_for_mode (outer_mode, 1);
if (type_die == NULL)
return NULL;
cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
@@ -13932,9 +13963,29 @@
return NULL;
if (GET_MODE_CLASS (op_mode) != MODE_INT
- || GET_MODE_SIZE (op_mode) >= DWARF2_ADDR_SIZE)
+ || GET_MODE_SIZE (op_mode) == DWARF2_ADDR_SIZE)
return compare_loc_descriptor (op, op0, op1);
+ if (GET_MODE_SIZE (op_mode) > DWARF2_ADDR_SIZE)
+ {
+ dw_die_ref type_die = base_type_for_mode (op_mode, 0);
+ dw_loc_descr_ref cvt;
+
+ if (type_die == NULL)
+ return NULL;
+ cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
+ cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
+ cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
+ cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
+ add_loc_descr (&op0, cvt);
+ cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
+ cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
+ cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
+ cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
+ add_loc_descr (&op1, cvt);
+ return compare_loc_descriptor (op, op0, op1);
+ }
+
shift = (DWARF2_ADDR_SIZE - GET_MODE_SIZE (op_mode)) * BITS_PER_UNIT;
/* For eq/ne, if the operands are known to be zero-extended,
there is no need to do the fancy shifting up. */
@@ -13990,9 +14041,6 @@
if (dwarf_strict && GET_MODE_SIZE (op_mode) > DWARF2_ADDR_SIZE)
return NULL;
- if (op_mode != VOIDmode && GET_MODE_CLASS (op_mode) != MODE_INT)
- return NULL;
-
op0 = mem_loc_descriptor (XEXP (rtl, 0), op_mode, mem_mode,
VAR_INIT_STATUS_INITIALIZED);
op1 = mem_loc_descriptor (XEXP (rtl, 1), op_mode, mem_mode,
@@ -14040,24 +14088,6 @@
add_loc_descr (&op1, new_loc_descr (DW_OP_plus_uconst,
bias, 0));
}
- else
- {
- dw_die_ref type_die = base_type_for_mode (op_mode, 1);
- dw_loc_descr_ref cvt;
-
- if (type_die == NULL)
- return NULL;
- cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
- cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
- cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
- cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
- add_loc_descr (&op0, cvt);
- cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
- cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
- cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
- cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
- add_loc_descr (&op1, cvt);
- }
return compare_loc_descriptor (op, op0, op1);
}
@@ -14104,23 +14134,6 @@
add_loc_descr (&op0, new_loc_descr (DW_OP_plus_uconst, bias, 0));
add_loc_descr (&op1, new_loc_descr (DW_OP_plus_uconst, bias, 0));
}
- else
- {
- dw_die_ref type_die = base_type_for_mode (mode, 1);
- dw_loc_descr_ref cvt;
- if (type_die == NULL)
- return NULL;
- cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
- cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
- cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
- cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
- add_loc_descr (&op0, cvt);
- cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
- cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
- cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
- cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
- add_loc_descr (&op1, cvt);
- }
}
else if (GET_MODE_CLASS (mode) == MODE_INT
&& GET_MODE_SIZE (mode) < DWARF2_ADDR_SIZE)
@@ -14131,6 +14144,24 @@
add_loc_descr (&op1, int_loc_descriptor (shift));
add_loc_descr (&op1, new_loc_descr (DW_OP_shl, 0, 0));
}
+ else if (GET_MODE_CLASS (mode) == MODE_INT
+ && GET_MODE_SIZE (mode) > DWARF2_ADDR_SIZE)
+ {
+ dw_die_ref type_die = base_type_for_mode (mode, 0);
+ dw_loc_descr_ref cvt;
+ if (type_die == NULL)
+ return NULL;
+ cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
+ cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
+ cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
+ cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
+ add_loc_descr (&op0, cvt);
+ cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
+ cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
+ cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
+ cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
+ add_loc_descr (&op1, cvt);
+ }
if (GET_CODE (rtl) == SMIN || GET_CODE (rtl) == UMIN)
op = DW_OP_lt;
@@ -14146,9 +14177,46 @@
add_loc_descr (&ret, drop_node);
bra_node->dw_loc_oprnd1.val_class = dw_val_class_loc;
bra_node->dw_loc_oprnd1.v.val_loc = drop_node;
+ if ((GET_CODE (rtl) == SMIN || GET_CODE (rtl) == SMAX)
+ && GET_MODE_CLASS (mode) == MODE_INT
+ && GET_MODE_SIZE (mode) > DWARF2_ADDR_SIZE)
+ ret = convert_descriptor_to_mode (mode, ret);
return ret;
}
+/* Helper function for mem_loc_descriptor. Perform OP binary op,
+ but after converting arguments to type_die, afterwards
+ convert back to unsigned. */
+
+static dw_loc_descr_ref
+typed_binop (enum dwarf_location_atom op, rtx rtl, dw_die_ref type_die,
+ enum machine_mode mode, enum machine_mode mem_mode)
+{
+ dw_loc_descr_ref cvt, op0, op1;
+
+ if (type_die == NULL)
+ return NULL;
+ op0 = mem_loc_descriptor (XEXP (rtl, 0), mode, mem_mode,
+ VAR_INIT_STATUS_INITIALIZED);
+ op1 = mem_loc_descriptor (XEXP (rtl, 1), mode, mem_mode,
+ VAR_INIT_STATUS_INITIALIZED);
+ if (op0 == NULL || op1 == NULL)
+ return NULL;
+ cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
+ cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
+ cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
+ cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
+ add_loc_descr (&op0, cvt);
+ cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
+ cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
+ cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
+ cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
+ add_loc_descr (&op1, cvt);
+ add_loc_descr (&op0, op1);
+ add_loc_descr (&op0, new_loc_descr (op, 0, 0));
+ return convert_descriptor_to_mode (mode, op0);
+}
+
/* CLZ (where constV is CLZ_DEFINED_VALUE_AT_ZERO computed value,
const0 is DW_OP_lit0 or corresponding typed constant,
const1 is DW_OP_lit1 or corresponding typed constant
@@ -14507,6 +14575,34 @@
return ret;
}
+/* Helper function for mem_loc_descriptor. Return DW_OP_GNU_parameter_ref
+ for DEBUG_PARAMETER_REF RTL. */
+
+static dw_loc_descr_ref
+parameter_ref_descriptor (rtx rtl)
+{
+ dw_loc_descr_ref ret;
+ dw_die_ref ref;
+
+ if (dwarf_strict)
+ return NULL;
+ gcc_assert (TREE_CODE (DEBUG_PARAMETER_REF_DECL (rtl)) == PARM_DECL);
+ ref = lookup_decl_die (DEBUG_PARAMETER_REF_DECL (rtl));
+ ret = new_loc_descr (DW_OP_GNU_parameter_ref, 0, 0);
+ if (ref)
+ {
+ ret->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
+ ret->dw_loc_oprnd1.v.val_die_ref.die = ref;
+ ret->dw_loc_oprnd1.v.val_die_ref.external = 0;
+ }
+ else
+ {
+ ret->dw_loc_oprnd1.val_class = dw_val_class_decl_ref;
+ ret->dw_loc_oprnd1.v.val_decl_ref = DEBUG_PARAMETER_REF_DECL (rtl);
+ }
+ return ret;
+}
+
/* The following routine converts the RTL for a variable or parameter
(resident in memory) into an equivalent Dwarf representation of a
mechanism for getting the address of that same variable onto the top of a
@@ -14593,7 +14689,8 @@
mem_mode, initialized);
if (mem_loc_result == NULL)
break;
- type_die = base_type_for_mode (mode, 0);
+ type_die = base_type_for_mode (mode,
+ GET_MODE_CLASS (mode) == MODE_INT);
if (type_die == NULL)
{
mem_loc_result = NULL;
@@ -14625,7 +14722,8 @@
break;
if (REGNO (rtl) > FIRST_PSEUDO_REGISTER)
break;
- type_die = base_type_for_mode (mode, 0);
+ type_die = base_type_for_mode (mode,
+ GET_MODE_CLASS (mode) == MODE_INT);
if (type_die == NULL)
break;
mem_loc_result = new_loc_descr (DW_OP_GNU_regval_type,
@@ -14708,7 +14806,7 @@
GET_CODE (rtl) == ZERO_EXTEND);
if (type_die1 == NULL)
break;
- type_die2 = base_type_for_mode (mode, 0);
+ type_die2 = base_type_for_mode (mode, 1);
if (type_die2 == NULL)
break;
mem_loc_result = op0;
@@ -14741,7 +14839,8 @@
if (dwarf_strict)
return NULL;
- type_die = base_type_for_mode (mode, 0);
+ type_die
+ = base_type_for_mode (mode, GET_MODE_CLASS (mode) == MODE_INT);
if (type_die == NULL)
return NULL;
deref = new_loc_descr (DW_OP_GNU_deref_type,
@@ -14853,7 +14952,11 @@
mem_loc_result = new_loc_descr (DW_OP_GNU_entry_value, 0, 0);
mem_loc_result->dw_loc_oprnd1.val_class = dw_val_class_loc;
mem_loc_result->dw_loc_oprnd1.v.val_loc = op0;
- return mem_loc_result;
+ break;
+
+ case DEBUG_PARAMETER_REF:
+ mem_loc_result = parameter_ref_descriptor (rtl);
+ break;
case PRE_MODIFY:
/* Extract the PLUS expression nested inside and fall into
@@ -14892,12 +14995,11 @@
loc_descr_plus_const (&mem_loc_result, INTVAL (XEXP (rtl, 1)));
else
{
- dw_loc_descr_ref mem_loc_result2
- = mem_loc_descriptor (XEXP (rtl, 1), mode, mem_mode,
- VAR_INIT_STATUS_INITIALIZED);
- if (mem_loc_result2 == 0)
+ op1 = mem_loc_descriptor (XEXP (rtl, 1), mode, mem_mode,
+ VAR_INIT_STATUS_INITIALIZED);
+ if (op1 == 0)
break;
- add_loc_descr (&mem_loc_result, mem_loc_result2);
+ add_loc_descr (&mem_loc_result, op1);
add_loc_descr (&mem_loc_result,
new_loc_descr (DW_OP_plus, 0, 0));
}
@@ -14915,6 +15017,15 @@
goto do_binop;
case DIV:
+ if (!dwarf_strict
+ && GET_MODE_CLASS (mode) == MODE_INT
+ && GET_MODE_SIZE (mode) > DWARF2_ADDR_SIZE)
+ {
+ mem_loc_result = typed_binop (DW_OP_div, rtl,
+ base_type_for_mode (mode, 0),
+ mode, mem_mode);
+ break;
+ }
op = DW_OP_div;
goto do_binop;
@@ -14986,12 +15097,10 @@
case MOD:
if (GET_MODE_SIZE (mode) > DWARF2_ADDR_SIZE && !dwarf_strict)
{
- /* If MODE is wider than DWARF2_ADDR_SIZE, mem_loc_descriptor
- should return signed typed values and therefore DW_OP_mod
- won't be unsigned as it defaults for untyped stack values,
- but signed. */
- op = DW_OP_mod;
- goto do_binop;
+ mem_loc_result = typed_binop (DW_OP_mod, rtl,
+ base_type_for_mode (mode, 0),
+ mode, mem_mode);
+ break;
}
op0 = mem_loc_descriptor (XEXP (rtl, 0), mode, mem_mode,
@@ -15014,32 +15123,14 @@
case UDIV:
if (!dwarf_strict && GET_MODE_CLASS (mode) == MODE_INT)
{
- dw_die_ref type_die;
- dw_loc_descr_ref cvt;
-
- type_die = base_type_for_mode (mode, 1);
- if (type_die == NULL)
- break;
- op0 = mem_loc_descriptor (XEXP (rtl, 0), mode, mem_mode,
- VAR_INIT_STATUS_INITIALIZED);
- op1 = mem_loc_descriptor (XEXP (rtl, 1), mode, mem_mode,
- VAR_INIT_STATUS_INITIALIZED);
- if (op0 == 0 || op1 == 0)
- break;
- cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
- cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
- cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
- cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
- add_loc_descr (&op0, cvt);
- cvt = new_loc_descr (DW_OP_GNU_convert, 0, 0);
- cvt->dw_loc_oprnd1.val_class = dw_val_class_die_ref;
- cvt->dw_loc_oprnd1.v.val_die_ref.die = type_die;
- cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
- add_loc_descr (&op1, cvt);
- mem_loc_result = op0;
- add_loc_descr (&mem_loc_result, op1);
- add_loc_descr (&mem_loc_result, new_loc_descr (DW_OP_div, 0, 0));
- mem_loc_result = convert_descriptor_to_signed (mode, mem_loc_result);
+ if (GET_MODE_CLASS (mode) > DWARF2_ADDR_SIZE)
+ {
+ op = DW_OP_div;
+ goto do_binop;
+ }
+ mem_loc_result = typed_binop (DW_OP_div, rtl,
+ base_type_for_mode (mode, 1),
+ mode, mem_mode);
}
break;
@@ -15082,7 +15173,7 @@
&& (GET_MODE_BITSIZE (mode) == HOST_BITS_PER_WIDE_INT
|| GET_MODE_BITSIZE (mode) == 2 * HOST_BITS_PER_WIDE_INT))
{
- dw_die_ref type_die = base_type_for_mode (mode, 0);
+ dw_die_ref type_die = base_type_for_mode (mode, 1);
if (type_die == NULL)
return NULL;
mem_loc_result = new_loc_descr (DW_OP_GNU_const_type, 0,
@@ -15115,7 +15206,8 @@
|| (GET_MODE (rtl) == VOIDmode
&& GET_MODE_BITSIZE (mode) != 2 * HOST_BITS_PER_WIDE_INT))
break;
- type_die = base_type_for_mode (mode, 0);
+ type_die = base_type_for_mode (mode,
+ GET_MODE_CLASS (mode) == MODE_INT);
if (type_die == NULL)
return NULL;
mem_loc_result = new_loc_descr (DW_OP_GNU_const_type, 0, 0);
@@ -15279,7 +15371,7 @@
if (op0 == NULL)
break;
if (GET_MODE_CLASS (GET_MODE (XEXP (rtl, 0))) == MODE_INT
- && (GET_CODE (rtl) == UNSIGNED_FLOAT
+ && (GET_CODE (rtl) == FLOAT
|| GET_MODE_SIZE (GET_MODE (XEXP (rtl, 0)))
<= DWARF2_ADDR_SIZE))
{
@@ -15302,10 +15394,10 @@
cvt->dw_loc_oprnd1.v.val_die_ref.external = 0;
add_loc_descr (&op0, cvt);
if (GET_MODE_CLASS (mode) == MODE_INT
- && (GET_CODE (rtl) == UNSIGNED_FIX
+ && (GET_CODE (rtl) == FIX
|| GET_MODE_SIZE (mode) < DWARF2_ADDR_SIZE))
{
- op0 = convert_descriptor_to_signed (mode, op0);
+ op0 = convert_descriptor_to_mode (mode, op0);
if (op0 == NULL)
break;
}
@@ -15377,6 +15469,7 @@
case STRICT_LOW_PART:
case CONST_VECTOR:
case CONST_FIXED:
+ case CLRSB:
/* If delegitimize_address couldn't do anything with the UNSPEC, we
can't express it in the debug info. This can happen e.g. with some
TLS UNSPECs. */
@@ -20570,7 +20663,7 @@
{
dw_loc_descr_ref reg, val;
enum machine_mode mode = GET_MODE (XEXP (XEXP (arg, 0), 1));
- dw_die_ref cdie;
+ dw_die_ref cdie, tdie = NULL;
next_arg = XEXP (arg, 1);
if (REG_P (XEXP (XEXP (arg, 0), 0))
@@ -20601,6 +20694,7 @@
tlocc = XEXP (XEXP (arg, 0), 1);
continue;
}
+ reg = NULL;
if (REG_P (XEXP (XEXP (arg, 0), 0)))
reg = reg_loc_descriptor (XEXP (XEXP (arg, 0), 0),
VAR_INIT_STATUS_INITIALIZED);
@@ -20612,9 +20706,20 @@
GET_MODE (mem),
VAR_INIT_STATUS_INITIALIZED);
}
+ else if (GET_CODE (XEXP (XEXP (arg, 0), 0))
+ == DEBUG_PARAMETER_REF)
+ {
+ tree tdecl
+ = DEBUG_PARAMETER_REF_DECL (XEXP (XEXP (arg, 0), 0));
+ tdie = lookup_decl_die (tdecl);
+ if (tdie == NULL)
+ continue;
+ }
else
continue;
- if (reg == NULL)
+ if (reg == NULL
+ && GET_CODE (XEXP (XEXP (arg, 0), 0))
+ != DEBUG_PARAMETER_REF)
continue;
val = mem_loc_descriptor (XEXP (XEXP (arg, 0), 1), mode,
VOIDmode,
@@ -20624,8 +20729,11 @@
if (die == NULL)
die = gen_call_site_die (decl, subr_die, ca_loc);
cdie = new_die (DW_TAG_GNU_call_site_parameter, die,
- NULL_TREE);
- add_AT_loc (cdie, DW_AT_location, reg);
+ NULL_TREE);
+ if (reg != NULL)
+ add_AT_loc (cdie, DW_AT_location, reg);
+ else if (tdie != NULL)
+ add_AT_die_ref (cdie, DW_AT_abstract_origin, tdie);
add_AT_loc (cdie, DW_AT_GNU_call_site_value, val);
if (next_arg != XEXP (arg, 1))
{
@@ -24041,9 +24149,12 @@
case DW_OP_GNU_deref_type:
base_type = loc->dw_loc_oprnd2.v.val_die_ref.die;
break;
- case DW_OP_GNU_const_type:
case DW_OP_GNU_convert:
case DW_OP_GNU_reinterpret:
+ if (loc->dw_loc_oprnd1.val_class == dw_val_class_unsigned_const)
+ continue;
+ /* FALLTHRU */
+ case DW_OP_GNU_const_type:
base_type = loc->dw_loc_oprnd1.v.val_die_ref.die;
break;
case DW_OP_GNU_entry_value:
@@ -24207,6 +24318,7 @@
return false;
break;
case DW_OP_GNU_implicit_pointer:
+ case DW_OP_GNU_parameter_ref:
if (loc->dw_loc_oprnd1.val_class == dw_val_class_decl_ref)
{
dw_die_ref ref
@@ -24231,8 +24343,14 @@
if (loc->dw_loc_opc == DW_OP_GNU_regval_type
|| loc->dw_loc_opc == DW_OP_GNU_deref_type)
base1 = loc->dw_loc_oprnd2.v.val_die_ref.die;
+ else if (loc->dw_loc_oprnd1.val_class
+ == dw_val_class_unsigned_const)
+ break;
else
base1 = loc->dw_loc_oprnd1.v.val_die_ref.die;
+ if (loc->dw_loc_next->dw_loc_oprnd1.val_class
+ == dw_val_class_unsigned_const)
+ break;
base2 = loc->dw_loc_next->dw_loc_oprnd1.v.val_die_ref.die;
gcc_assert (base1->die_tag == DW_TAG_base_type
&& base2->die_tag == DW_TAG_base_type);
@@ -24259,7 +24377,7 @@
/* Don't change integer DW_OP_GNU_convert after e.g. floating
point typed stack entry. */
else if (enc1 != DW_ATE_unsigned && enc1 != DW_ATE_signed)
- keep = loc;
+ keep = loc->dw_loc_next;
break;
}
break;
@@ -24525,6 +24643,12 @@
break;
case DW_OP_GNU_convert:
case DW_OP_GNU_reinterpret:
+ if (val1->val_class == dw_val_class_unsigned_const)
+ {
+ hash = iterative_hash_object (val1->v.val_unsigned, hash);
+ break;
+ }
+ /* FALLTHRU */
case DW_OP_GNU_const_type:
{
unsigned int byte_size
@@ -24746,7 +24870,15 @@
&& valx2->v.val_die_ref.die == valy2->v.val_die_ref.die;
case DW_OP_GNU_convert:
case DW_OP_GNU_reinterpret:
+ if (valx1->val_class != valy1->val_class)
+ return false;
+ if (valx1->val_class == dw_val_class_unsigned_const)
+ return valx1->v.val_unsigned == valy1->v.val_unsigned;
return valx1->v.val_die_ref.die == valy1->v.val_die_ref.die;
+ case DW_OP_GNU_parameter_ref:
+ return valx1->val_class == dw_val_class_die_ref
+ && valx1->val_class == valy1->val_class
+ && valx1->v.val_die_ref.die == valy1->v.val_die_ref.die;
default:
/* Other codes have no operands. */
return true;
diff --git a/gcc/expr.c b/gcc/expr.c
index bb6e3f1..176978a 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -1181,8 +1181,19 @@
else if (may_use_call
&& ADDR_SPACE_GENERIC_P (MEM_ADDR_SPACE (x))
&& ADDR_SPACE_GENERIC_P (MEM_ADDR_SPACE (y)))
- retval = emit_block_move_via_libcall (x, y, size,
- method == BLOCK_OP_TAILCALL);
+ {
+ /* Since x and y are passed to a libcall, mark the corresponding
+ tree EXPR as addressable. */
+ tree y_expr = MEM_EXPR (y);
+ tree x_expr = MEM_EXPR (x);
+ if (y_expr)
+ mark_addressable (y_expr);
+ if (x_expr)
+ mark_addressable (x_expr);
+ retval = emit_block_move_via_libcall (x, y, size,
+ method == BLOCK_OP_TAILCALL);
+ }
+
else
emit_block_move_via_loop (x, y, size, align);
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 2e73625..b1f4853 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,15 @@
+2011-06-21 Andrew MacLeod <amacleod@redhat.com>
+
+ * trans-openmp.c: Add sync_ or SYNC__ to builtin names.
+ * trans-stmt.c: Add sync_ or SYNC__ to builtin names.
+ * trans-decl.c: Add sync_ or SYNC__ to builtin names.
+
+2011-06-21 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/49112
+ * class.c (gfc_find_derived_vtab): Make vtab and default initialization
+ symbols SAVE_IMPLICIT.
+
2011-06-20 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
diff --git a/gcc/fortran/Make-lang.in b/gcc/fortran/Make-lang.in
index f20638c..a56a1f0 100644
--- a/gcc/fortran/Make-lang.in
+++ b/gcc/fortran/Make-lang.in
@@ -171,9 +171,12 @@
lang_checks += check-gfortran
lang_checks_parallelized += check-gfortran
# For description see comment above check_gcc_parallelize in gcc/Makefile.in.
-check_gfortran_parallelize = dg.exp=gfortran.dg/\[a-cA-C\]* \
- dg.exp=gfortran.dg/\[d-mD-M\]* \
- dg.exp=gfortran.dg/\[n-zN-Z0-9\]*
+check_gfortran_parallelize = dg.exp=gfortran.dg/\[adAD\]* \
+ dg.exp=gfortran.dg/\[bcBC\]* \
+ dg.exp=gfortran.dg/\[nopNOP\]* \
+ dg.exp=gfortran.dg/\[isuvISUV\]* \
+ dg.exp=gfortran.dg/\[efhkqrxzEFHKQRXZ\]* \
+ dg.exp=gfortran.dg/\[0-9gjlmtwyGJLMTWY\]*
# GFORTRAN documentation.
GFORTRAN_TEXI = \
diff --git a/gcc/fortran/class.c b/gcc/fortran/class.c
index b99930a..572011f 100644
--- a/gcc/fortran/class.c
+++ b/gcc/fortran/class.c
@@ -428,7 +428,7 @@
&gfc_current_locus) == FAILURE)
goto cleanup;
vtab->attr.target = 1;
- vtab->attr.save = SAVE_EXPLICIT;
+ vtab->attr.save = SAVE_IMPLICIT;
vtab->attr.vtab = 1;
vtab->attr.access = ACCESS_PUBLIC;
gfc_set_sym_referenced (vtab);
@@ -516,7 +516,7 @@
sprintf (name, "__def_init_%s", tname);
gfc_get_symbol (name, ns, &def_init);
def_init->attr.target = 1;
- def_init->attr.save = SAVE_EXPLICIT;
+ def_init->attr.save = SAVE_IMPLICIT;
def_init->attr.access = ACCESS_PUBLIC;
def_init->attr.flavor = FL_VARIABLE;
gfc_set_sym_referenced (def_init);
diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c
index 6c6de13..cca1beb 100644
--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -4904,7 +4904,7 @@
{
/* Per F2008, 8.5.1 END of the main program implies a
SYNC MEMORY. */
- tmp = built_in_decls [BUILT_IN_SYNCHRONIZE];
+ tmp = built_in_decls [BUILT_IN_SYNC_SYNCHRONIZE];
tmp = build_call_expr_loc (input_location, tmp, 0);
gfc_add_expr_to_block (&body, tmp);
diff --git a/gcc/fortran/trans-openmp.c b/gcc/fortran/trans-openmp.c
index 7554889..9677659 100644
--- a/gcc/fortran/trans-openmp.c
+++ b/gcc/fortran/trans-openmp.c
@@ -1430,7 +1430,7 @@
static tree
gfc_trans_omp_flush (void)
{
- tree decl = built_in_decls [BUILT_IN_SYNCHRONIZE];
+ tree decl = built_in_decls [BUILT_IN_SYNC_SYNCHRONIZE];
return build_call_expr_loc (input_location, decl, 0);
}
diff --git a/gcc/fortran/trans-stmt.c b/gcc/fortran/trans-stmt.c
index a5f2d9e..f3347a6 100644
--- a/gcc/fortran/trans-stmt.c
+++ b/gcc/fortran/trans-stmt.c
@@ -602,7 +602,7 @@
if (gfc_option.coarray == GFC_FCOARRAY_LIB && !error_stop)
{
/* Per F2008, 8.5.1 STOP implies a SYNC MEMORY. */
- tmp = built_in_decls [BUILT_IN_SYNCHRONIZE];
+ tmp = built_in_decls [BUILT_IN_SYNC_SYNCHRONIZE];
tmp = build_call_expr_loc (input_location, tmp, 0);
gfc_add_expr_to_block (&se.pre, tmp);
@@ -774,7 +774,7 @@
image control statements SYNC IMAGES and SYNC ALL. */
if (gfc_option.coarray == GFC_FCOARRAY_LIB)
{
- tmp = built_in_decls [BUILT_IN_SYNCHRONIZE];
+ tmp = built_in_decls [BUILT_IN_SYNC_SYNCHRONIZE];
tmp = build_call_expr_loc (input_location, tmp, 0);
gfc_add_expr_to_block (&se.pre, tmp);
}
diff --git a/gcc/genopinit.c b/gcc/genopinit.c
index 35e994b..570540d 100644
--- a/gcc/genopinit.c
+++ b/gcc/genopinit.c
@@ -199,6 +199,7 @@
"set_optab_handler (ffs_optab, $A, CODE_FOR_$(ffs$a2$))",
"set_optab_handler (clz_optab, $A, CODE_FOR_$(clz$a2$))",
"set_optab_handler (ctz_optab, $A, CODE_FOR_$(ctz$a2$))",
+ "set_optab_handler (clrsb_optab, $A, CODE_FOR_$(clrsb$a2$))",
"set_optab_handler (popcount_optab, $A, CODE_FOR_$(popcount$a2$))",
"set_optab_handler (parity_optab, $A, CODE_FOR_$(parity$a2$))",
"set_optab_handler (mov_optab, $A, CODE_FOR_$(mov$a$))",
diff --git a/gcc/gensupport.c b/gcc/gensupport.c
index cd72e77..e56291e 100644
--- a/gcc/gensupport.c
+++ b/gcc/gensupport.c
@@ -368,6 +368,25 @@
return e;
}
+/* Build a define_attr for an binary attribute with name NAME and
+ possible values "yes" and "no", and queue it. */
+static void
+add_define_attr (const char *name)
+{
+ struct queue_elem *e = XNEW(struct queue_elem);
+ rtx t1 = rtx_alloc (DEFINE_ATTR);
+ XSTR (t1, 0) = name;
+ XSTR (t1, 1) = "no,yes";
+ XEXP (t1, 2) = rtx_alloc (CONST_STRING);
+ XSTR (XEXP (t1, 2), 0) = "yes";
+ e->data = t1;
+ e->filename = "built-in";
+ e->lineno = -1;
+ e->next = define_attr_queue;
+ define_attr_queue = e;
+
+}
+
/* Recursively remove constraints from an rtx. */
static void
@@ -547,17 +566,10 @@
return predicable_default;
found:
- /* Verify that predicability does not vary on the alternative. */
- /* ??? It should be possible to handle this by simply eliminating
- the non-predicable alternatives from the insn. FRV would like
- to do this. Delay this until we've got the basics solid. */
+ /* Find out which value we're looking at. Multiple alternatives means at
+ least one is predicable. */
if (strchr (value, ',') != NULL)
- {
- error_with_line (elem->lineno, "multiple alternatives for `predicable'");
- return 0;
- }
-
- /* Find out which value we're looking at. */
+ return 1;
if (strcmp (value, predicable_true) == 0)
return 1;
if (strcmp (value, predicable_false) == 0)
@@ -798,6 +810,146 @@
XSTR (insn_elem->data, 2));
}
+/* Modify VAL, which is an attribute expression for the "enabled" attribute,
+ to take "ce_enabled" into account. Return the new expression. */
+static rtx
+modify_attr_enabled_ce (rtx val)
+{
+ rtx eq_attr, str;
+ rtx ite;
+ eq_attr = rtx_alloc (EQ_ATTR);
+ ite = rtx_alloc (IF_THEN_ELSE);
+ str = rtx_alloc (CONST_STRING);
+
+ XSTR (eq_attr, 0) = "ce_enabled";
+ XSTR (eq_attr, 1) = "yes";
+ XSTR (str, 0) = "no";
+ XEXP (ite, 0) = eq_attr;
+ XEXP (ite, 1) = val;
+ XEXP (ite, 2) = str;
+
+ return ite;
+}
+
+/* Alter the attribute vector of INSN, which is a COND_EXEC variant created
+ from a define_insn pattern. We must modify the "predicable" attribute
+ to be named "ce_enabled", and also change any "enabled" attribute that's
+ present so that it takes ce_enabled into account.
+ We rely on the fact that INSN was created with copy_rtx, and modify data
+ in-place. */
+
+static void
+alter_attrs_for_insn (rtx insn)
+{
+ static bool global_changes_made = false;
+ rtvec vec = XVEC (insn, 4);
+ rtvec new_vec;
+ rtx val, set;
+ int num_elem;
+ int predicable_idx = -1;
+ int enabled_idx = -1;
+ int i;
+
+ if (! vec)
+ return;
+
+ num_elem = GET_NUM_ELEM (vec);
+ for (i = num_elem - 1; i >= 0; --i)
+ {
+ rtx sub = RTVEC_ELT (vec, i);
+ switch (GET_CODE (sub))
+ {
+ case SET_ATTR:
+ if (strcmp (XSTR (sub, 0), "predicable") == 0)
+ {
+ predicable_idx = i;
+ XSTR (sub, 0) = "ce_enabled";
+ }
+ else if (strcmp (XSTR (sub, 0), "enabled") == 0)
+ {
+ enabled_idx = i;
+ XSTR (sub, 0) = "nonce_enabled";
+ }
+ break;
+
+ case SET_ATTR_ALTERNATIVE:
+ if (strcmp (XSTR (sub, 0), "predicable") == 0)
+ /* We already give an error elsewhere. */
+ return;
+ else if (strcmp (XSTR (sub, 0), "enabled") == 0)
+ {
+ enabled_idx = i;
+ XSTR (sub, 0) = "nonce_enabled";
+ }
+ break;
+
+ case SET:
+ if (GET_CODE (SET_DEST (sub)) != ATTR)
+ break;
+ if (strcmp (XSTR (SET_DEST (sub), 0), "predicable") == 0)
+ {
+ sub = SET_SRC (sub);
+ if (GET_CODE (sub) == CONST_STRING)
+ {
+ predicable_idx = i;
+ XSTR (sub, 0) = "ce_enabled";
+ }
+ else
+ /* We already give an error elsewhere. */
+ return;
+ break;
+ }
+ if (strcmp (XSTR (SET_DEST (sub), 0), "enabled") == 0)
+ {
+ enabled_idx = i;
+ XSTR (SET_DEST (sub), 0) = "nonce_enabled";
+ }
+ break;
+
+ default:
+ gcc_unreachable ();
+ }
+ }
+ if (predicable_idx == -1)
+ return;
+
+ if (!global_changes_made)
+ {
+ struct queue_elem *elem;
+
+ global_changes_made = true;
+ add_define_attr ("ce_enabled");
+ add_define_attr ("nonce_enabled");
+
+ for (elem = define_attr_queue; elem ; elem = elem->next)
+ if (strcmp (XSTR (elem->data, 0), "enabled") == 0)
+ {
+ XEXP (elem->data, 2)
+ = modify_attr_enabled_ce (XEXP (elem->data, 2));
+ }
+ }
+ if (enabled_idx == -1)
+ return;
+
+ new_vec = rtvec_alloc (num_elem + 1);
+ for (i = 0; i < num_elem; i++)
+ RTVEC_ELT (new_vec, i) = RTVEC_ELT (vec, i);
+ val = rtx_alloc (IF_THEN_ELSE);
+ XEXP (val, 0) = rtx_alloc (EQ_ATTR);
+ XEXP (val, 1) = rtx_alloc (CONST_STRING);
+ XEXP (val, 2) = rtx_alloc (CONST_STRING);
+ XSTR (XEXP (val, 0), 0) = "nonce_enabled";
+ XSTR (XEXP (val, 0), 1) = "yes";
+ XSTR (XEXP (val, 1), 0) = "yes";
+ XSTR (XEXP (val, 2), 0) = "no";
+ set = rtx_alloc (SET);
+ SET_DEST (set) = rtx_alloc (ATTR);
+ XSTR (SET_DEST (set), 0) = "enabled";
+ SET_SRC (set) = modify_attr_enabled_ce (val);
+ RTVEC_ELT (new_vec, i) = set;
+ XVEC (insn, 4) = new_vec;
+}
+
/* Adjust all of the operand numbers in SRC to match the shift they'll
get from an operand displacement of DISP. Return a pointer after the
adjusted string. */
@@ -943,9 +1095,7 @@
XSTR (insn, 2) = alter_test_for_insn (ce_elem, insn_elem);
XTMPL (insn, 3) = alter_output_for_insn (ce_elem, insn_elem,
alternatives, max_operand);
-
- /* ??? Set `predicable' to false. Not crucial since it's really
- only used here, and we won't reprocess this new pattern. */
+ alter_attrs_for_insn (insn);
/* Put the new pattern on the `other' list so that it
(a) is not reprocessed by other define_cond_exec patterns
diff --git a/gcc/gimple-pretty-print.c b/gcc/gimple-pretty-print.c
index b27b1a5..eaf3e5f 100644
--- a/gcc/gimple-pretty-print.c
+++ b/gcc/gimple-pretty-print.c
@@ -1,6 +1,6 @@
/* Pretty formatting of GIMPLE statements and expressions.
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
- Free Software Foundation, Inc.
+ Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+ 2011 Free Software Foundation, Inc.
Contributed by Aldy Hernandez <aldyh@redhat.com> and
Diego Novillo <dnovillo@google.com>
@@ -966,6 +966,17 @@
gimple_debug_bind_get_value (gs));
break;
+ case GIMPLE_DEBUG_SOURCE_BIND:
+ if (flags & TDF_RAW)
+ dump_gimple_fmt (buffer, spc, flags, "%G SRCBIND <%T, %T>", gs,
+ gimple_debug_source_bind_get_var (gs),
+ gimple_debug_source_bind_get_value (gs));
+ else
+ dump_gimple_fmt (buffer, spc, flags, "# DEBUG %T s=> %T",
+ gimple_debug_source_bind_get_var (gs),
+ gimple_debug_source_bind_get_value (gs));
+ break;
+
default:
gcc_unreachable ();
}
diff --git a/gcc/gimple.c b/gcc/gimple.c
index fd97579..e3095d7 100644
--- a/gcc/gimple.c
+++ b/gcc/gimple.c
@@ -1,6 +1,6 @@
/* Gimple IR support functions.
- Copyright 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
Contributed by Aldy Hernandez <aldyh@redhat.com>
This file is part of GCC.
@@ -866,6 +866,30 @@
}
+/* Build a new GIMPLE_DEBUG_SOURCE_BIND statement.
+
+ VAR is bound to VALUE; block and location are taken from STMT. */
+
+gimple
+gimple_build_debug_source_bind_stat (tree var, tree value,
+ gimple stmt MEM_STAT_DECL)
+{
+ gimple p = gimple_build_with_ops_stat (GIMPLE_DEBUG,
+ (unsigned)GIMPLE_DEBUG_SOURCE_BIND, 2
+ PASS_MEM_STAT);
+
+ gimple_debug_source_bind_set_var (p, var);
+ gimple_debug_source_bind_set_value (p, value);
+ if (stmt)
+ {
+ gimple_set_block (p, gimple_block (stmt));
+ gimple_set_location (p, gimple_location (stmt));
+ }
+
+ return p;
+}
+
+
/* Build a GIMPLE_OMP_CRITICAL statement.
BODY is the sequence of statements for which only one thread can execute.
diff --git a/gcc/gimple.h b/gcc/gimple.h
index 7d97adb..184c9733 100644
--- a/gcc/gimple.h
+++ b/gcc/gimple.h
@@ -1,6 +1,6 @@
/* Gimple IR definitions.
- Copyright 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
Contributed by Aldy Hernandez <aldyh@redhat.com>
This file is part of GCC.
@@ -117,12 +117,13 @@
GF_PREDICT_TAKEN = 1 << 15
};
-/* Currently, there's only one type of gimple debug stmt. Others are
+/* Currently, there are only two types of gimple debug stmt. Others are
envisioned, for example, to enable the generation of is_stmt notes
in line number information, to mark sequence points, etc. This
subcode is to be used to tell them apart. */
enum gimple_debug_subcode {
- GIMPLE_DEBUG_BIND = 0
+ GIMPLE_DEBUG_BIND = 0,
+ GIMPLE_DEBUG_SOURCE_BIND = 1
};
/* Masks for selecting a pass local flag (PLF) to work on. These
@@ -823,6 +824,9 @@
gimple gimple_build_debug_bind_stat (tree, tree, gimple MEM_STAT_DECL);
#define gimple_build_debug_bind(var,val,stmt) \
gimple_build_debug_bind_stat ((var), (val), (stmt) MEM_STAT_INFO)
+gimple gimple_build_debug_source_bind_stat (tree, tree, gimple MEM_STAT_DECL);
+#define gimple_build_debug_source_bind(var,val,stmt) \
+ gimple_build_debug_source_bind_stat ((var), (val), (stmt) MEM_STAT_INFO)
gimple gimple_build_call_vec (tree, VEC(tree, heap) *);
gimple gimple_build_call (tree, unsigned, ...);
@@ -3583,6 +3587,70 @@
#undef GIMPLE_DEBUG_BIND_NOVALUE
+/* Return true if S is a GIMPLE_DEBUG SOURCE BIND statement. */
+
+static inline bool
+gimple_debug_source_bind_p (const_gimple s)
+{
+ if (is_gimple_debug (s))
+ return s->gsbase.subcode == GIMPLE_DEBUG_SOURCE_BIND;
+
+ return false;
+}
+
+/* Return the variable bound in a GIMPLE_DEBUG source bind statement. */
+
+static inline tree
+gimple_debug_source_bind_get_var (gimple dbg)
+{
+ GIMPLE_CHECK (dbg, GIMPLE_DEBUG);
+ gcc_gimple_checking_assert (gimple_debug_source_bind_p (dbg));
+ return gimple_op (dbg, 0);
+}
+
+/* Return the value bound to the variable in a GIMPLE_DEBUG source bind
+ statement. */
+
+static inline tree
+gimple_debug_source_bind_get_value (gimple dbg)
+{
+ GIMPLE_CHECK (dbg, GIMPLE_DEBUG);
+ gcc_gimple_checking_assert (gimple_debug_source_bind_p (dbg));
+ return gimple_op (dbg, 1);
+}
+
+/* Return a pointer to the value bound to the variable in a
+ GIMPLE_DEBUG source bind statement. */
+
+static inline tree *
+gimple_debug_source_bind_get_value_ptr (gimple dbg)
+{
+ GIMPLE_CHECK (dbg, GIMPLE_DEBUG);
+ gcc_gimple_checking_assert (gimple_debug_source_bind_p (dbg));
+ return gimple_op_ptr (dbg, 1);
+}
+
+/* Set the variable bound in a GIMPLE_DEBUG source bind statement. */
+
+static inline void
+gimple_debug_source_bind_set_var (gimple dbg, tree var)
+{
+ GIMPLE_CHECK (dbg, GIMPLE_DEBUG);
+ gcc_gimple_checking_assert (gimple_debug_source_bind_p (dbg));
+ gimple_set_op (dbg, 0, var);
+}
+
+/* Set the value bound to the variable in a GIMPLE_DEBUG source bind
+ statement. */
+
+static inline void
+gimple_debug_source_bind_set_value (gimple dbg, tree value)
+{
+ GIMPLE_CHECK (dbg, GIMPLE_DEBUG);
+ gcc_gimple_checking_assert (gimple_debug_source_bind_p (dbg));
+ gimple_set_op (dbg, 1, value);
+}
+
/* Return the body for the OMP statement GS. */
static inline gimple_seq
diff --git a/gcc/go/gofrontend/gogo-tree.cc b/gcc/go/gofrontend/gogo-tree.cc
index 94d1c4d..2b5a24c 100644
--- a/gcc/go/gofrontend/gogo-tree.cc
+++ b/gcc/go/gofrontend/gogo-tree.cc
@@ -91,22 +91,22 @@
for ++ and --. */
tree t = go_type_for_size(BITS_PER_UNIT, 1);
tree p = build_pointer_type(build_qualified_type(t, TYPE_QUAL_VOLATILE));
- define_builtin(BUILT_IN_ADD_AND_FETCH_1, "__sync_fetch_and_add_1", NULL,
+ define_builtin(BUILT_IN_SYNC_ADD_AND_FETCH_1, "__sync_fetch_and_add_1", NULL,
build_function_type_list(t, p, t, NULL_TREE), false);
t = go_type_for_size(BITS_PER_UNIT * 2, 1);
p = build_pointer_type(build_qualified_type(t, TYPE_QUAL_VOLATILE));
- define_builtin (BUILT_IN_ADD_AND_FETCH_2, "__sync_fetch_and_add_2", NULL,
+ define_builtin (BUILT_IN_SYNC_ADD_AND_FETCH_2, "__sync_fetch_and_add_2", NULL,
build_function_type_list(t, p, t, NULL_TREE), false);
t = go_type_for_size(BITS_PER_UNIT * 4, 1);
p = build_pointer_type(build_qualified_type(t, TYPE_QUAL_VOLATILE));
- define_builtin(BUILT_IN_ADD_AND_FETCH_4, "__sync_fetch_and_add_4", NULL,
+ define_builtin(BUILT_IN_SYNC_ADD_AND_FETCH_4, "__sync_fetch_and_add_4", NULL,
build_function_type_list(t, p, t, NULL_TREE), false);
t = go_type_for_size(BITS_PER_UNIT * 8, 1);
p = build_pointer_type(build_qualified_type(t, TYPE_QUAL_VOLATILE));
- define_builtin(BUILT_IN_ADD_AND_FETCH_8, "__sync_fetch_and_add_8", NULL,
+ define_builtin(BUILT_IN_SYNC_ADD_AND_FETCH_8, "__sync_fetch_and_add_8", NULL,
build_function_type_list(t, p, t, NULL_TREE), false);
// We use __builtin_expect for magic import functions.
diff --git a/gcc/ipa-inline-transform.c b/gcc/ipa-inline-transform.c
index 2e13754..c329bea 100644
--- a/gcc/ipa-inline-transform.c
+++ b/gcc/ipa-inline-transform.c
@@ -348,8 +348,7 @@
{
unsigned int todo = 0;
struct cgraph_edge *e;
- bool inline_p = false;
-
+
/* FIXME: Currently the pass manager is adding inline transform more than
once to some clones. This needs revisiting after WPA cleanups. */
if (cfun->after_inlining)
@@ -361,20 +360,17 @@
save_inline_function_body (node);
for (e = node->callees; e; e = e->next_callee)
- {
- cgraph_redirect_edge_call_stmt_to_callee (e);
- if (!e->inline_failed || warn_inline)
- inline_p = true;
- /* Redirecting edges might lead to a need for vops to be recomputed. */
- todo |= TODO_update_ssa_only_virtuals;
- }
+ cgraph_redirect_edge_call_stmt_to_callee (e);
- if (inline_p)
- {
- timevar_push (TV_INTEGRATION);
- todo = optimize_inline_calls (current_function_decl);
- timevar_pop (TV_INTEGRATION);
- }
+ timevar_push (TV_INTEGRATION);
+ if (node->callees)
+ todo = optimize_inline_calls (current_function_decl);
+ timevar_pop (TV_INTEGRATION);
+
+ if (!(todo & TODO_update_ssa_any))
+ /* Redirecting edges might lead to a need for vops to be recomputed. */
+ todo |= TODO_update_ssa_only_virtuals;
+
cfun->always_inline_functions_inlined = true;
cfun->after_inlining = true;
return todo | execute_fixup_cfg ();
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index ff1041b..2f57e2d 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -318,8 +318,10 @@
? callee_tree
: optimization_default_node);
- if ((caller_opt->x_optimize > callee_opt->x_optimize)
- || (caller_opt->x_optimize_size != callee_opt->x_optimize_size))
+ if (((caller_opt->x_optimize > callee_opt->x_optimize)
+ || (caller_opt->x_optimize_size != callee_opt->x_optimize_size))
+ /* gcc.dg/pr43564.c. Look at forced inline even in -O0. */
+ && !DECL_DISREGARD_INLINE_LIMITS (e->callee->decl))
{
e->inline_failed = CIF_TARGET_OPTIMIZATION_MISMATCH;
inlinable = false;
@@ -1970,17 +1972,15 @@
/* When to run IPA inlining. Inlining of always-inline functions
- happens during early inlining. */
+ happens during early inlining.
+
+ Enable inlining unconditoinally at -flto. We need size estimates to
+ drive partitioning. */
static bool
gate_ipa_inline (void)
{
- /* ??? We'd like to skip this if not optimizing or not inlining as
- all always-inline functions have been processed by early
- inlining already. But this at least breaks EH with C++ as
- we need to unconditionally run fixup_cfg even at -O0.
- So leave it on unconditionally for now. */
- return 1;
+ return optimize || flag_lto || flag_wpa;
}
struct ipa_opt_pass_d pass_ipa_inline =
diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c
index 10c11d4..aec1920 100644
--- a/gcc/ipa-prop.c
+++ b/gcc/ipa-prop.c
@@ -1,5 +1,5 @@
/* Interprocedural analyses.
- Copyright (C) 2005, 2007, 2008, 2009, 2010
+ Copyright (C) 2005, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
This file is part of GCC.
@@ -2393,6 +2393,7 @@
ipa_parm_adjustment_vec adjustments)
{
VEC(tree, heap) *vargs;
+ VEC(tree, gc) **debug_args = NULL;
gimple new_stmt;
gimple_stmt_iterator gsi;
tree callee_decl;
@@ -2400,6 +2401,7 @@
len = VEC_length (ipa_parm_adjustment_t, adjustments);
vargs = VEC_alloc (tree, heap, len);
+ callee_decl = !cs ? gimple_call_fndecl (stmt) : cs->callee->decl;
gsi = gsi_for_stmt (stmt);
for (i = 0; i < len; i++)
@@ -2490,6 +2492,42 @@
NULL, true, GSI_SAME_STMT);
VEC_quick_push (tree, vargs, expr);
}
+ if (!adj->copy_param && MAY_HAVE_DEBUG_STMTS)
+ {
+ unsigned int ix;
+ tree ddecl = NULL_TREE, origin = DECL_ORIGIN (adj->base), arg;
+ gimple def_temp;
+
+ arg = gimple_call_arg (stmt, adj->base_index);
+ if (!useless_type_conversion_p (TREE_TYPE (origin), TREE_TYPE (arg)))
+ {
+ if (!fold_convertible_p (TREE_TYPE (origin), arg))
+ continue;
+ arg = fold_convert_loc (gimple_location (stmt),
+ TREE_TYPE (origin), arg);
+ }
+ if (debug_args == NULL)
+ debug_args = decl_debug_args_insert (callee_decl);
+ for (ix = 0; VEC_iterate (tree, *debug_args, ix, ddecl); ix += 2)
+ if (ddecl == origin)
+ {
+ ddecl = VEC_index (tree, *debug_args, ix + 1);
+ break;
+ }
+ if (ddecl == NULL)
+ {
+ ddecl = make_node (DEBUG_EXPR_DECL);
+ DECL_ARTIFICIAL (ddecl) = 1;
+ TREE_TYPE (ddecl) = TREE_TYPE (origin);
+ DECL_MODE (ddecl) = DECL_MODE (origin);
+
+ VEC_safe_push (tree, gc, *debug_args, origin);
+ VEC_safe_push (tree, gc, *debug_args, ddecl);
+ }
+ def_temp = gimple_build_debug_bind (ddecl, unshare_expr (arg),
+ stmt);
+ gsi_insert_before (&gsi, def_temp, GSI_SAME_STMT);
+ }
}
if (dump_file && (dump_flags & TDF_DETAILS))
@@ -2498,7 +2536,6 @@
print_gimple_stmt (dump_file, gsi_stmt (gsi), 0, 0);
}
- callee_decl = !cs ? gimple_call_fndecl (stmt) : cs->callee->decl;
new_stmt = gimple_build_call_vec (callee_decl, vargs);
VEC_free (tree, heap, vargs);
if (gimple_call_lhs (stmt))
diff --git a/gcc/ira.c b/gcc/ira.c
index 5cfe5c0..6cca908 100644
--- a/gcc/ira.c
+++ b/gcc/ira.c
@@ -383,6 +383,7 @@
#include "integrate.h"
#include "ggc.h"
#include "ira-int.h"
+#include "dce.h"
struct target_ira default_target_ira;
@@ -3526,6 +3527,7 @@
int rebuild_p;
int saved_flag_ira_share_spill_slots;
basic_block bb;
+ bool need_dce;
timevar_push (TV_IRA);
@@ -3717,7 +3719,7 @@
df_set_flags (DF_NO_INSN_RESCAN);
build_insn_chain ();
- reload_completed = !reload (get_insns (), ira_conflicts_p);
+ need_dce = reload (get_insns (), ira_conflicts_p);
timevar_pop (TV_RELOAD);
@@ -3760,7 +3762,7 @@
#endif
/* The code after the reload has changed so much that at this point
- we might as well just rescan everything. Not that
+ we might as well just rescan everything. Note that
df_rescan_all_insns is not going to help here because it does not
touch the artificial uses and defs. */
df_finish_pass (true);
@@ -3772,6 +3774,9 @@
if (optimize)
df_analyze ();
+ if (need_dce && optimize)
+ run_fast_dce ();
+
timevar_pop (TV_IRA);
}
diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog
index b88b71f..98dd104 100644
--- a/gcc/java/ChangeLog
+++ b/gcc/java/ChangeLog
@@ -1,3 +1,8 @@
+2011-06-21 Andrew MacLeod <amacleod@redhat.com>
+
+ * builtins.c: Add sync_ or SYNC__ to builtin names.
+ * expr.c: Add sync_ or SYNC__ to builtin names.
+
2011-06-07 Richard Guenther <rguenther@suse.de>
* decl.c (java_init_decl_processing): Call build_common_nodes,
diff --git a/gcc/java/builtins.c b/gcc/java/builtins.c
index 2100f09..817f862 100644
--- a/gcc/java/builtins.c
+++ b/gcc/java/builtins.c
@@ -331,8 +331,9 @@
(void) value_type; /* Avoid set but not used warning. */
addr = build_addr_sum (int_type_node, obj_arg, offset_arg);
- stmt = build_call_expr (built_in_decls[BUILT_IN_BOOL_COMPARE_AND_SWAP_4],
- 3, addr, expected_arg, value_arg);
+ stmt = build_call_expr
+ (built_in_decls[BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_4],
+ 3, addr, expected_arg, value_arg);
return build_check_this (stmt, this_arg);
}
@@ -357,8 +358,9 @@
(void) value_type; /* Avoid set but not used warning. */
addr = build_addr_sum (long_type_node, obj_arg, offset_arg);
- stmt = build_call_expr (built_in_decls[BUILT_IN_BOOL_COMPARE_AND_SWAP_8],
- 3, addr, expected_arg, value_arg);
+ stmt = build_call_expr
+ (built_in_decls[BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_8],
+ 3, addr, expected_arg, value_arg);
return build_check_this (stmt, this_arg);
}
@@ -378,8 +380,8 @@
UNMARSHAL5 (orig_call);
builtin = (POINTER_SIZE == 32
- ? BUILT_IN_BOOL_COMPARE_AND_SWAP_4
- : BUILT_IN_BOOL_COMPARE_AND_SWAP_8);
+ ? BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_4
+ : BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_8);
addr = build_addr_sum (value_type, obj_arg, offset_arg);
stmt = build_call_expr (built_in_decls[builtin],
@@ -402,7 +404,7 @@
= fold_convert (build_pointer_type (build_type_variant (value_type, 0, 1)),
addr);
- stmt = build_call_expr (built_in_decls[BUILT_IN_SYNCHRONIZE], 0);
+ stmt = build_call_expr (built_in_decls[BUILT_IN_SYNC_SYNCHRONIZE], 0);
modify_stmt = fold_build2 (MODIFY_EXPR, value_type,
build_java_indirect_ref (value_type, addr,
flag_check_references),
@@ -426,7 +428,7 @@
= fold_convert (build_pointer_type (build_type_variant
(method_return_type, 0, 1)), addr);
- stmt = build_call_expr (built_in_decls[BUILT_IN_SYNCHRONIZE], 0);
+ stmt = build_call_expr (built_in_decls[BUILT_IN_SYNC_SYNCHRONIZE], 0);
tmp = build_decl (BUILTINS_LOCATION, VAR_DECL, NULL, method_return_type);
DECL_IGNORED_P (tmp) = 1;
@@ -573,21 +575,21 @@
boolean_ftype_boolean_boolean,
"__builtin_expect",
BUILTIN_CONST | BUILTIN_NOTHROW);
- define_builtin (BUILT_IN_BOOL_COMPARE_AND_SWAP_4,
+ define_builtin (BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_4,
"__sync_bool_compare_and_swap_4",
build_function_type_list (boolean_type_node,
int_type_node,
build_pointer_type (int_type_node),
int_type_node, NULL_TREE),
"__sync_bool_compare_and_swap_4", 0);
- define_builtin (BUILT_IN_BOOL_COMPARE_AND_SWAP_8,
+ define_builtin (BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_8,
"__sync_bool_compare_and_swap_8",
build_function_type_list (boolean_type_node,
long_type_node,
build_pointer_type (long_type_node),
int_type_node, NULL_TREE),
"__sync_bool_compare_and_swap_8", 0);
- define_builtin (BUILT_IN_SYNCHRONIZE, "__sync_synchronize",
+ define_builtin (BUILT_IN_SYNC_SYNCHRONIZE, "__sync_synchronize",
build_function_type_list (void_type_node, NULL_TREE),
"__sync_synchronize", BUILTIN_NOTHROW);
diff --git a/gcc/java/expr.c b/gcc/java/expr.c
index 6f43b19..3bf983a 100644
--- a/gcc/java/expr.c
+++ b/gcc/java/expr.c
@@ -2940,7 +2940,7 @@
if (TREE_THIS_VOLATILE (field_decl))
java_add_stmt
- (build_call_expr (built_in_decls[BUILT_IN_SYNCHRONIZE], 0));
+ (build_call_expr (built_in_decls[BUILT_IN_SYNC_SYNCHRONIZE], 0));
java_add_stmt (modify_expr);
}
@@ -2959,7 +2959,7 @@
if (TREE_THIS_VOLATILE (field_decl))
java_add_stmt
- (build_call_expr (built_in_decls[BUILT_IN_SYNCHRONIZE], 0));
+ (build_call_expr (built_in_decls[BUILT_IN_SYNC_SYNCHRONIZE], 0));
push_value (temp);
}
diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c
index fbf5dcc..57c40c5 100644
--- a/gcc/libgcc2.c
+++ b/gcc/libgcc2.c
@@ -762,7 +762,50 @@
return ret + add;
}
#endif
+
+#ifdef L_clrsbsi2
+#undef int
+int
+__clrsbSI2 (Wtype x)
+{
+ Wtype ret;
+ if (x < 0)
+ x = ~x;
+ if (x == 0)
+ return W_TYPE_SIZE - 1;
+ count_leading_zeros (ret, x);
+ return ret - 1;
+}
+#endif
+
+#ifdef L_clrsbdi2
+#undef int
+int
+__clrsbDI2 (DWtype x)
+{
+ const DWunion uu = {.ll = x};
+ UWtype word;
+ Wtype ret, add;
+
+ if (uu.s.high == 0)
+ word = uu.s.low, add = W_TYPE_SIZE;
+ else if (uu.s.high == -1)
+ word = ~uu.s.low, add = W_TYPE_SIZE;
+ else if (uu.s.high >= 0)
+ word = uu.s.high, add = 0;
+ else
+ word = ~uu.s.high, add = 0;
+
+ if (word == 0)
+ ret = W_TYPE_SIZE;
+ else
+ count_leading_zeros (ret, word);
+
+ return ret + add - 1;
+}
+#endif
+
#ifdef L_popcount_tab
const UQItype __popcount_tab[256] =
{
diff --git a/gcc/libgcc2.h b/gcc/libgcc2.h
index bb4e6f3..0c7d0e1 100644
--- a/gcc/libgcc2.h
+++ b/gcc/libgcc2.h
@@ -315,11 +315,13 @@
#define __ffsSI2 __NW(ffs,2)
#define __clzSI2 __NW(clz,2)
#define __ctzSI2 __NW(ctz,2)
+#define __clrsbSI2 __NW(clrsb,2)
#define __popcountSI2 __NW(popcount,2)
#define __paritySI2 __NW(parity,2)
#define __ffsDI2 __NDW(ffs,2)
#define __clzDI2 __NDW(clz,2)
#define __ctzDI2 __NDW(ctz,2)
+#define __clrsbDI2 __NDW(clrsb,2)
#define __popcountDI2 __NDW(popcount,2)
#define __parityDI2 __NDW(parity,2)
@@ -508,9 +510,11 @@
extern int __clzDI2 (UDWtype);
extern int __clzSI2 (UWtype);
extern int __ctzSI2 (UWtype);
+extern int __ctzDI2 (UDWtype);
+extern int __clrsbSI2 (Wtype);
+extern int __clrsbDI2 (DWtype);
extern int __ffsSI2 (UWtype);
extern int __ffsDI2 (DWtype);
-extern int __ctzDI2 (UDWtype);
extern int __popcountSI2 (UWtype);
extern int __popcountDI2 (UDWtype);
extern int __paritySI2 (UWtype);
diff --git a/gcc/omp-low.c b/gcc/omp-low.c
index 99dedf9..05646bf 100644
--- a/gcc/omp-low.c
+++ b/gcc/omp-low.c
@@ -3,7 +3,7 @@
marshalling to implement data sharing and copying clauses.
Contributed by Diego Novillo <dnovillo@redhat.com>
- Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+ Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
This file is part of GCC.
@@ -4108,9 +4108,14 @@
else
n = (adj + N2 - N1) / STEP;
q = n / nthreads;
- q += (q * nthreads != n);
- s0 = q * threadid;
- e0 = min(s0 + q, n);
+ tt = n % nthreads;
+ if (threadid < tt) goto L3; else goto L4;
+ L3:
+ tt = 0;
+ q = q + 1;
+ L4:
+ s0 = q * threadid + tt;
+ e0 = s0 + q;
V = s0 * STEP + N1;
if (s0 >= e0) goto L2; else goto L0;
L0:
@@ -4126,12 +4131,14 @@
expand_omp_for_static_nochunk (struct omp_region *region,
struct omp_for_data *fd)
{
- tree n, q, s0, e0, e, t, nthreads, threadid;
+ tree n, q, s0, e0, e, t, tt, nthreads, threadid;
tree type, itype, vmain, vback;
- basic_block entry_bb, exit_bb, seq_start_bb, body_bb, cont_bb;
+ basic_block entry_bb, second_bb, third_bb, exit_bb, seq_start_bb;
+ basic_block body_bb, cont_bb;
basic_block fin_bb;
gimple_stmt_iterator gsi;
gimple stmt;
+ edge ep;
itype = type = TREE_TYPE (fd->loop.v);
if (POINTER_TYPE_P (type))
@@ -4185,19 +4192,39 @@
t = fold_convert (itype, t);
n = force_gimple_operand_gsi (&gsi, t, true, NULL_TREE, true, GSI_SAME_STMT);
+ q = create_tmp_var (itype, "q");
t = fold_build2 (TRUNC_DIV_EXPR, itype, n, nthreads);
- q = force_gimple_operand_gsi (&gsi, t, true, NULL_TREE, true, GSI_SAME_STMT);
+ t = force_gimple_operand_gsi (&gsi, t, false, NULL_TREE, true, GSI_SAME_STMT);
+ gsi_insert_before (&gsi, gimple_build_assign (q, t), GSI_SAME_STMT);
- t = fold_build2 (MULT_EXPR, itype, q, nthreads);
- t = fold_build2 (NE_EXPR, itype, t, n);
- t = fold_build2 (PLUS_EXPR, itype, q, t);
- q = force_gimple_operand_gsi (&gsi, t, true, NULL_TREE, true, GSI_SAME_STMT);
+ tt = create_tmp_var (itype, "tt");
+ t = fold_build2 (TRUNC_MOD_EXPR, itype, n, nthreads);
+ t = force_gimple_operand_gsi (&gsi, t, false, NULL_TREE, true, GSI_SAME_STMT);
+ gsi_insert_before (&gsi, gimple_build_assign (tt, t), GSI_SAME_STMT);
+
+ t = build2 (LT_EXPR, boolean_type_node, threadid, tt);
+ stmt = gimple_build_cond_empty (t);
+ gsi_insert_before (&gsi, stmt, GSI_SAME_STMT);
+
+ second_bb = split_block (entry_bb, stmt)->dest;
+ gsi = gsi_last_bb (second_bb);
+ gcc_assert (gimple_code (gsi_stmt (gsi)) == GIMPLE_OMP_FOR);
+
+ gsi_insert_before (&gsi, gimple_build_assign (tt, build_int_cst (itype, 0)),
+ GSI_SAME_STMT);
+ stmt = gimple_build_assign_with_ops (PLUS_EXPR, q, q,
+ build_int_cst (itype, 1));
+ gsi_insert_before (&gsi, stmt, GSI_SAME_STMT);
+
+ third_bb = split_block (second_bb, stmt)->dest;
+ gsi = gsi_last_bb (third_bb);
+ gcc_assert (gimple_code (gsi_stmt (gsi)) == GIMPLE_OMP_FOR);
t = build2 (MULT_EXPR, itype, q, threadid);
+ t = build2 (PLUS_EXPR, itype, t, tt);
s0 = force_gimple_operand_gsi (&gsi, t, true, NULL_TREE, true, GSI_SAME_STMT);
t = fold_build2 (PLUS_EXPR, itype, s0, q);
- t = fold_build2 (MIN_EXPR, itype, t, n);
e0 = force_gimple_operand_gsi (&gsi, t, true, NULL_TREE, true, GSI_SAME_STMT);
t = build2 (GE_EXPR, boolean_type_node, s0, e0);
@@ -4263,13 +4290,20 @@
gsi_remove (&gsi, true);
/* Connect all the blocks. */
- find_edge (entry_bb, seq_start_bb)->flags = EDGE_FALSE_VALUE;
- find_edge (entry_bb, fin_bb)->flags = EDGE_TRUE_VALUE;
+ ep = make_edge (entry_bb, third_bb, EDGE_FALSE_VALUE);
+ ep->probability = REG_BR_PROB_BASE / 4 * 3;
+ ep = find_edge (entry_bb, second_bb);
+ ep->flags = EDGE_TRUE_VALUE;
+ ep->probability = REG_BR_PROB_BASE / 4;
+ find_edge (third_bb, seq_start_bb)->flags = EDGE_FALSE_VALUE;
+ find_edge (third_bb, fin_bb)->flags = EDGE_TRUE_VALUE;
find_edge (cont_bb, body_bb)->flags = EDGE_TRUE_VALUE;
find_edge (cont_bb, fin_bb)->flags = EDGE_FALSE_VALUE;
- set_immediate_dominator (CDI_DOMINATORS, seq_start_bb, entry_bb);
+ set_immediate_dominator (CDI_DOMINATORS, second_bb, entry_bb);
+ set_immediate_dominator (CDI_DOMINATORS, third_bb, entry_bb);
+ set_immediate_dominator (CDI_DOMINATORS, seq_start_bb, third_bb);
set_immediate_dominator (CDI_DOMINATORS, body_bb,
recompute_dominator (CDI_DOMINATORS, body_bb));
set_immediate_dominator (CDI_DOMINATORS, fin_bb,
@@ -4973,23 +5007,23 @@
{
case PLUS_EXPR:
case POINTER_PLUS_EXPR:
- base = BUILT_IN_FETCH_AND_ADD_N;
+ base = BUILT_IN_SYNC_FETCH_AND_ADD_N;
optab = sync_add_optab;
break;
case MINUS_EXPR:
- base = BUILT_IN_FETCH_AND_SUB_N;
+ base = BUILT_IN_SYNC_FETCH_AND_SUB_N;
optab = sync_add_optab;
break;
case BIT_AND_EXPR:
- base = BUILT_IN_FETCH_AND_AND_N;
+ base = BUILT_IN_SYNC_FETCH_AND_AND_N;
optab = sync_and_optab;
break;
case BIT_IOR_EXPR:
- base = BUILT_IN_FETCH_AND_OR_N;
+ base = BUILT_IN_SYNC_FETCH_AND_OR_N;
optab = sync_ior_optab;
break;
case BIT_XOR_EXPR:
- base = BUILT_IN_FETCH_AND_XOR_N;
+ base = BUILT_IN_SYNC_FETCH_AND_XOR_N;
optab = sync_xor_optab;
break;
default:
@@ -5057,7 +5091,7 @@
gimple phi, stmt;
edge e;
- cmpxchg = built_in_decls[BUILT_IN_VAL_COMPARE_AND_SWAP_N + index + 1];
+ cmpxchg = built_in_decls[BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_N + index + 1];
if (cmpxchg == NULL_TREE)
return false;
type = TYPE_MAIN_VARIANT (TREE_TYPE (TREE_TYPE (addr)));
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 224fb11..bf15ab4 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -1,7 +1,7 @@
/* Expand the basic unary and binary arithmetic operations, for GNU compiler.
Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
- Free Software Foundation, Inc.
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+ 2011 Free Software Foundation, Inc.
This file is part of GCC.
@@ -2327,9 +2327,12 @@
/* Try calculating
(clz:narrow x)
as
- (clz:wide (zero_extend:wide x)) - ((width wide) - (width narrow)). */
+ (clz:wide (zero_extend:wide x)) - ((width wide) - (width narrow)).
+
+ A similar operation can be used for clrsb. UNOPTAB says which operation
+ we are trying to expand. */
static rtx
-widen_clz (enum machine_mode mode, rtx op0, rtx target)
+widen_leading (enum machine_mode mode, rtx op0, rtx target, optab unoptab)
{
enum mode_class mclass = GET_MODE_CLASS (mode);
if (CLASS_HAS_WIDER_MODES_P (mclass))
@@ -2339,7 +2342,7 @@
wider_mode != VOIDmode;
wider_mode = GET_MODE_WIDER_MODE (wider_mode))
{
- if (optab_handler (clz_optab, wider_mode) != CODE_FOR_nothing)
+ if (optab_handler (unoptab, wider_mode) != CODE_FOR_nothing)
{
rtx xop0, temp, last;
@@ -2347,8 +2350,10 @@
if (target == 0)
target = gen_reg_rtx (mode);
- xop0 = widen_operand (op0, wider_mode, mode, true, false);
- temp = expand_unop (wider_mode, clz_optab, xop0, NULL_RTX, true);
+ xop0 = widen_operand (op0, wider_mode, mode,
+ unoptab != clrsb_optab, false);
+ temp = expand_unop (wider_mode, unoptab, xop0, NULL_RTX,
+ unoptab != clrsb_optab);
if (temp != 0)
temp = expand_binop (wider_mode, sub_optab, temp,
GEN_INT (GET_MODE_BITSIZE (wider_mode)
@@ -2844,7 +2849,7 @@
/* Widening (or narrowing) clz needs special treatment. */
if (unoptab == clz_optab)
{
- temp = widen_clz (mode, op0, target);
+ temp = widen_leading (mode, op0, target, unoptab);
if (temp)
return temp;
@@ -2856,7 +2861,15 @@
return temp;
}
- goto try_libcall;
+ goto try_libcall;
+ }
+
+ if (unoptab == clrsb_optab)
+ {
+ temp = widen_leading (mode, op0, target, unoptab);
+ if (temp)
+ return temp;
+ goto try_libcall;
}
/* Widening (or narrowing) bswap needs special treatment. */
@@ -3011,7 +3024,8 @@
/* All of these functions return small values. Thus we choose to
have them return something that isn't a double-word. */
if (unoptab == ffs_optab || unoptab == clz_optab || unoptab == ctz_optab
- || unoptab == popcount_optab || unoptab == parity_optab)
+ || unoptab == clrsb_optab || unoptab == popcount_optab
+ || unoptab == parity_optab)
outmode
= GET_MODE (hard_libcall_value (TYPE_MODE (integer_type_node),
optab_libfunc (unoptab, mode)));
@@ -3063,8 +3077,9 @@
unsignedp);
/* If we are generating clz using wider mode, adjust the
- result. */
- if (unoptab == clz_optab && temp != 0)
+ result. Similarly for clrsb. */
+ if ((unoptab == clz_optab || unoptab == clrsb_optab)
+ && temp != 0)
temp = expand_binop (wider_mode, sub_optab, temp,
GEN_INT (GET_MODE_BITSIZE (wider_mode)
- GET_MODE_BITSIZE (mode)),
@@ -5910,6 +5925,9 @@
init_optab (usashl_optab, US_ASHIFT);
init_optab (ashr_optab, ASHIFTRT);
init_optab (lshr_optab, LSHIFTRT);
+ init_optabv (vashl_optab, ASHIFT);
+ init_optabv (vashr_optab, ASHIFTRT);
+ init_optabv (vlshr_optab, LSHIFTRT);
init_optab (rotl_optab, ROTATE);
init_optab (rotr_optab, ROTATERT);
init_optab (smin_optab, SMIN);
@@ -5958,6 +5976,7 @@
init_optab (ffs_optab, FFS);
init_optab (clz_optab, CLZ);
init_optab (ctz_optab, CTZ);
+ init_optab (clrsb_optab, CLRSB);
init_optab (popcount_optab, POPCOUNT);
init_optab (parity_optab, PARITY);
init_optab (sqrt_optab, SQRT);
@@ -6188,6 +6207,9 @@
ctz_optab->libcall_basename = "ctz";
ctz_optab->libcall_suffix = '2';
ctz_optab->libcall_gen = gen_int_libfunc;
+ clrsb_optab->libcall_basename = "clrsb";
+ clrsb_optab->libcall_suffix = '2';
+ clrsb_optab->libcall_gen = gen_int_libfunc;
popcount_optab->libcall_basename = "popcount";
popcount_optab->libcall_suffix = '2';
popcount_optab->libcall_gen = gen_int_libfunc;
diff --git a/gcc/optabs.h b/gcc/optabs.h
index 62bc14e..477fce3 100644
--- a/gcc/optabs.h
+++ b/gcc/optabs.h
@@ -220,6 +220,7 @@
OTI_ffs,
OTI_clz,
OTI_ctz,
+ OTI_clrsb,
OTI_popcount,
OTI_parity,
/* Square root */
@@ -456,6 +457,7 @@
#define ffs_optab (&optab_table[OTI_ffs])
#define clz_optab (&optab_table[OTI_clz])
#define ctz_optab (&optab_table[OTI_ctz])
+#define clrsb_optab (&optab_table[OTI_clrsb])
#define popcount_optab (&optab_table[OTI_popcount])
#define parity_optab (&optab_table[OTI_parity])
#define sqrt_optab (&optab_table[OTI_sqrt])
diff --git a/gcc/opts.c b/gcc/opts.c
index e9b4334..18bbe43 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -34,7 +34,6 @@
#include "diagnostic.h"
#include "opts-diagnostic.h"
#include "insn-attr.h" /* For INSN_SCHEDULING and DELAY_SLOTS. */
-#include "target.h"
#include "common/common-target.h"
/* Parse the -femit-struct-debug-detailed option value
@@ -1269,10 +1268,6 @@
case OPT__target_help:
print_specific_help (CL_TARGET, CL_UNDOCUMENTED, 0, opts, lang_mask);
opts->x_exit_after_options = true;
-
- /* Allow the target a chance to give the user some additional information. */
- if (targetm.help)
- targetm.help ();
break;
case OPT__help_:
diff --git a/gcc/params.c b/gcc/params.c
index 95af6ce..793ddef 100644
--- a/gcc/params.c
+++ b/gcc/params.c
@@ -1,5 +1,5 @@
/* params.c - Run-time parameters.
- Copyright (C) 2001, 2003, 2004, 2005, 2007, 2008, 2009, 2010
+ Copyright (C) 2001, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Written by Mark Mitchell <mark@codesourcery.com>.
@@ -22,7 +22,7 @@
#include "config.h"
#include "system.h"
#include "coretypes.h"
-#include "tm.h"
+#include "common/common-target.h"
#include "params.h"
#include "diagnostic-core.h"
@@ -38,6 +38,14 @@
default values determined. */
static bool params_finished;
+static const param_info lang_independent_params[] = {
+#define DEFPARAM(ENUM, OPTION, HELP, DEFAULT, MIN, MAX) \
+ { OPTION, DEFAULT, MIN, MAX, HELP },
+#include "params.def"
+#undef DEFPARAM
+ { NULL, 0, 0, 0, NULL }
+};
+
/* Add the N PARAMS to the current list of compiler parameters. */
void
@@ -56,6 +64,16 @@
num_compiler_params += n;
}
+/* Add all parameters and default values that can be set in both the
+ driver and the compiler proper. */
+
+void
+global_init_params (void)
+{
+ add_params (lang_independent_params, LAST_PARAM);
+ targetm_common.option_default_params ();
+}
+
/* Note that all parameters have been added and all default values
set. */
diff --git a/gcc/params.h b/gcc/params.h
index 98a64fd..364029d 100644
--- a/gcc/params.h
+++ b/gcc/params.h
@@ -105,6 +105,11 @@
extern void set_default_param_value (compiler_param num, int value);
+/* Add all parameters and default values that can be set in both the
+ driver and the compiler proper. */
+
+extern void global_init_params (void);
+
/* Note that all parameters have been added and all default values
set. */
extern void finish_params (void);
diff --git a/gcc/passes.c b/gcc/passes.c
index fb9de2b..a03aa3f 100644
--- a/gcc/passes.c
+++ b/gcc/passes.c
@@ -332,7 +332,7 @@
/* The root of the compilation pass tree, once constructed. */
struct opt_pass *all_passes, *all_small_ipa_passes, *all_lowering_passes,
- *all_regular_ipa_passes, *all_lto_gen_passes;
+ *all_regular_ipa_passes, *all_late_ipa_passes, *all_lto_gen_passes;
/* This is used by plugins, and should also be used in register_pass. */
#define DEF_PASS_LIST(LIST) &LIST,
@@ -617,6 +617,7 @@
dump_pass_list (all_small_ipa_passes, 1);
dump_pass_list (all_regular_ipa_passes, 1);
dump_pass_list (all_lto_gen_passes, 1);
+ dump_pass_list (all_late_ipa_passes, 1);
dump_pass_list (all_passes, 1);
pop_cfun ();
@@ -1103,6 +1104,8 @@
if (!success || all_instances)
success |= position_pass (pass_info, &all_lto_gen_passes);
if (!success || all_instances)
+ success |= position_pass (pass_info, &all_late_ipa_passes);
+ if (!success || all_instances)
success |= position_pass (pass_info, &all_passes);
if (!success)
fatal_error
@@ -1249,7 +1252,6 @@
NEXT_PASS (pass_ipa_inline);
NEXT_PASS (pass_ipa_pure_const);
NEXT_PASS (pass_ipa_reference);
- NEXT_PASS (pass_ipa_pta);
*p = NULL;
p = &all_lto_gen_passes;
@@ -1257,9 +1259,16 @@
NEXT_PASS (pass_ipa_lto_finish_out); /* This must be the last LTO pass. */
*p = NULL;
+ /* Simple IPA passes executed after the regular passes. In WHOPR mode the
+ passes are executed after partitioning and thus see just parts of the
+ compiled unit. */
+ p = &all_late_ipa_passes;
+ NEXT_PASS (pass_ipa_pta);
+ *p = NULL;
/* These passes are run after IPA passes on every function that is being
output to the assembler file. */
p = &all_passes;
+ NEXT_PASS (pass_fixup_cfg);
NEXT_PASS (pass_lower_eh_dispatch);
NEXT_PASS (pass_all_optimizations);
{
@@ -1517,6 +1526,9 @@
register_dump_files (all_lto_gen_passes,
PROP_gimple_any | PROP_gimple_lcf | PROP_gimple_leh
| PROP_cfg);
+ register_dump_files (all_late_ipa_passes,
+ PROP_gimple_any | PROP_gimple_lcf | PROP_gimple_leh
+ | PROP_cfg);
register_dump_files (all_passes,
PROP_gimple_any | PROP_gimple_lcf | PROP_gimple_leh
| PROP_cfg);
@@ -1935,6 +1947,20 @@
}
}
+/* Callback for do_per_function to apply all IPA transforms. */
+
+static void
+apply_ipa_transforms (void *data)
+{
+ struct cgraph_node *node = cgraph_get_node (current_function_decl);
+ if (!node->global.inlined_to && node->ipa_transforms_to_apply)
+ {
+ *(bool *)data = true;
+ execute_all_ipa_transforms();
+ rebuild_cgraph_edges ();
+ }
+}
+
/* Check if PASS is explicitly disabled or enabled and return
the gate status. FUNC is the function to be processed, and
GATE_STATUS is the gate status determined by pass manager by
@@ -1996,6 +2022,16 @@
executed. */
invoke_plugin_callbacks (PLUGIN_PASS_EXECUTION, pass);
+ /* SIPLE IPA passes do not handle callgraphs with IPA transforms in it.
+ Apply all trnasforms first. */
+ if (pass->type == SIMPLE_IPA_PASS)
+ {
+ bool applied = false;
+ do_per_function (apply_ipa_transforms, (void *)&applied);
+ if (applied)
+ cgraph_remove_unreachable_nodes (true, dump_file);
+ }
+
if (!quiet_flag && !cfun)
fprintf (stderr, " <%s>", pass->name ? pass->name : "");
diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog
index 53ca29c..a0ae2fa 100644
--- a/gcc/po/ChangeLog
+++ b/gcc/po/ChangeLog
@@ -1,3 +1,15 @@
+2011-06-24 Joseph Myers <joseph@codesourcery.com>
+
+ * de.po: Update.
+
+2011-06-23 Joseph Myers <joseph@codesourcery.com>
+
+ * de.po: Update.
+
+2011-06-21 Joseph Myers <joseph@codesourcery.com>
+
+ * gcc.pot: Regenerate.
+
2011-06-14 Joseph Myers <joseph@codesourcery.com>
* exgettext: Handle common/ directory and subdirectories.
diff --git a/gcc/po/de.po b/gcc/po/de.po
index e4667fd..7f5742e 100644
--- a/gcc/po/de.po
+++ b/gcc/po/de.po
@@ -9,7 +9,7 @@
"Project-Id-Version: gcc 4.6.0\n"
"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
"POT-Creation-Date: 2011-03-24 16:45+0000\n"
-"PO-Revision-Date: 2011-04-25 19:50+0100\n"
+"PO-Revision-Date: 2011-06-24 13:27+0100\n"
"Last-Translator: Roland Stigge <stigge@antcom.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"Language: de\n"
@@ -22763,154 +22763,154 @@
msgstr "doppeltes Attribut %qE für Adressregion in Deklaration von %qE in Zeile %d"
#: config/mep/mep.c:3996
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "cannot inline interrupt function %qE"
-msgstr "va_start in Unterbrechungsfunktion kann nicht verwendet werden"
+msgstr "Interruptfunktion %qE kann nicht »inline« sein"
#: config/mep/mep.c:4002
#, gcc-internal-format
msgid "interrupt function must have return type of void"
-msgstr ""
+msgstr "Interruptfunktion muss Rückgabetyp »void« haben"
#: config/mep/mep.c:4007
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "interrupt function must have no arguments"
-msgstr "Die Option »-%c« muss ein Argument haben"
+msgstr "Interruptfunktion darf keine Argumente haben"
#: config/mep/mep.c:4028
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE attribute allows only an integer constant argument"
-msgstr "Attribut %qs benötigt eine Ganzzahlkonstante als Argument"
+msgstr "Attribut %qE erlaubt nur eine Ganzzahlkonstante als Argument"
#: config/mep/mep.c:4061
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE attribute only applies to functions, not %s"
-msgstr "Attribut %qs gilt nur für Funktionen"
+msgstr "Attribut %qE gilt nur für Funktionen, nicht %s"
#: config/mep/mep.c:4071
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "to describe a pointer to a VLIW function, use syntax like this:"
-msgstr "Zeiger auf Funktion in Arithmetik verwendet"
+msgstr "um Zeiger auf VLIW-Funktion zu beschreiben, folgende Syntax verwenden:"
#: config/mep/mep.c:4072
#, gcc-internal-format
msgid " typedef int (__vliw *vfuncptr) ();"
-msgstr ""
+msgstr " typedef int (__vliw *vfuncptr) ();"
#: config/mep/mep.c:4079
#, gcc-internal-format
msgid "to describe an array of VLIW function pointers, use syntax like this:"
-msgstr ""
+msgstr "um Feld von VLIW-Funktionszeigern zu beschreiben, folgende Syntax verwenden:"
#: config/mep/mep.c:4080
#, gcc-internal-format
msgid " typedef int (__vliw *vfuncptr[]) ();"
-msgstr ""
+msgstr " typedef int (__vliw *vfuncptr[]) ();"
#: config/mep/mep.c:4085
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "VLIW functions are not allowed without a VLIW configuration"
-msgstr "bei einer Funktionsdefinition sind keine Attribute erlaubt"
+msgstr "VLIW-Funktionen ohne VLIW-Konfiguration sind nicht erlaubt"
#: config/mep/mep.c:4233
#, gcc-internal-format, gfc-internal-format
msgid "\"#pragma disinterrupt %s\" not used"
-msgstr ""
+msgstr "»#pragma disinterrupt %s« nicht verwendet"
#: config/mep/mep.c:4399
#, gcc-internal-format
msgid "__io address 0x%x is the same for %qE and %qE"
-msgstr ""
+msgstr "__io-Adresse 0x%x ist die selbe für %qE und %qE"
#: config/mep/mep.c:4547
#, gcc-internal-format, gfc-internal-format
msgid "variable %s (%ld bytes) is too large for the %s section (%d bytes)"
-msgstr ""
+msgstr "Variable %s (%ld Bytes) ist zu groß für Abschnitt %s (%d Bytes)"
#: config/mep/mep.c:4645
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "variable %D of type %<io%> must be uninitialized"
-msgstr "Objekt variabler Größe vom Typ %qT kann nicht initialisiert sein"
+msgstr "Variable %D des Typs %<io%> muss uninitialisiert sein"
#: config/mep/mep.c:4650
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "variable %D of type %<cb%> must be uninitialized"
-msgstr "Objekt variabler Größe vom Typ %qT kann nicht initialisiert sein"
+msgstr "Variable %D des Typs %<cb%> muss uninitialisiert sein"
#: config/mep/mep.c:6100
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "coprocessor intrinsic %qs is not available in this configuration"
-msgstr "Kommandozeilenoption %qs wird von dieser Konfiguration nicht unterstützt"
+msgstr "Koprozessor-eigenes %qs ist in dieser Konfiguration nicht verfügbar"
#: config/mep/mep.c:6103
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qs is not available in VLIW functions"
-msgstr "%qD ist keine Templatefunktion"
+msgstr "%qs ist in VLIW-Funktionen nicht verfügbar"
#: config/mep/mep.c:6106
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qs is not available in non-VLIW functions"
-msgstr "%q+D ist normalerweise eine Nicht-static-Funktion"
+msgstr "%qs ist in Nicht-VLIW-Funktionen nicht verfügbar"
#: config/mep/mep.c:6268 config/mep/mep.c:6385
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "argument %d of %qE must be in the range %d...%d"
-msgstr "Argument von ATANH bei %L muss im Bereich -1 bis 1 liegen"
+msgstr "Argument %d von %qE muss im Bereich %d...%d liegen"
#: config/mep/mep.c:6271
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "argument %d of %qE must be a multiple of %d"
-msgstr "Ausrichtung für %q+D muss mindestens %d sein"
+msgstr "Argument %d von %qE muss ein Vielfaches von %d sein"
#: config/mep/mep.c:6324
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "too few arguments to %qE"
-msgstr "zu wenige Argumente für %s %q+#D"
+msgstr "zu wenige Argumente für %qE"
#: config/mep/mep.c:6329
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "too many arguments to %qE"
-msgstr "zu viele Argumente für %s %q+#D"
+msgstr "zu viele Argumente für %qE"
#: config/mep/mep.c:6347
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "argument %d of %qE must be an address"
-msgstr "Argument dim bei %L muss skalar sein"
+msgstr "Argument %d von %qE muss eine Adresse sein"
#: config/mep/mep.c:7143
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "2 byte cop instructions are not allowed in 64-bit VLIW mode"
-msgstr "Angeben, wann Befehle zum Codezugriff erlaubt sind"
+msgstr "2-Byte-Cop-Anweisungen sind im 64-Bit VLIW-Modus nicht erlaubt"
#: config/mep/mep.c:7149
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "unexpected %d byte cop instruction"
-msgstr "angegebene Thumb-Anweisung"
+msgstr "unerwartete %d-Byte-Cop-Anweisung"
#: config/microblaze/microblaze.c:1283
#, gcc-internal-format
msgid "-mno-clearbss is deprecated; use -fno-zero-initialized-in-bss"
-msgstr ""
+msgstr "-mno-clearbss ist veraltet; stattdessen -fno-zero-initialized-in-bss verwenden"
#: config/microblaze/microblaze.c:1286
#, gcc-internal-format
msgid "-mxl_stack_check is deprecated; use -fstack-check"
-msgstr ""
+msgstr "-mxl_stack_check ist veraltet; stattdessen -fstack-check verwenden"
#: config/microblaze/microblaze.c:1311
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qs is an invalid argument to -mcpu="
-msgstr "ungültiges Argument für eingebaute Funktion"
+msgstr "%qs ist ein ungültiges Argument für -mcpu="
#: config/microblaze/microblaze.c:1360
#, gcc-internal-format
msgid "-mxl-multiply-high can be used only with -mcpu=v6.00.a or greater"
-msgstr ""
+msgstr "-mxl-multiply-high kann nur mit -mcpu=v6.00.a oder höher verwendet werden"
#: config/microblaze/microblaze.c:1364
#, gcc-internal-format
msgid "-mxl-multiply-high requires -mno-xl-soft-mul"
-msgstr ""
+msgstr "-mxl-multiply-high erfordert -mno-xl-soft-mul"
#: config/mips/mips.c:1370 config/mips/mips.c:1372
#, gcc-internal-format
@@ -22918,14 +22918,14 @@
msgstr "Attribut %qs gilt nur für Funktionen"
#: config/mips/mips.c:1382
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE cannot have both %<mips16%> and %<nomips16%> attributes"
-msgstr "%qs kann nicht gleichzeitig die Attribute %<mips16%> und %<nomips16%> haben"
+msgstr "%qE kann nicht gleichzeitig die Attribute %<mips16%> und %<nomips16%> haben"
#: config/mips/mips.c:1404 config/mips/mips.c:1407
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE redeclared with conflicting %qs attributes"
-msgstr "%qs mit in Konflikt stehenden Attributen %qs redeklariert"
+msgstr "%qE mit in Konflikt stehenden Attributen %qs redeklariert"
#: config/mips/mips.c:2921
#, gcc-internal-format
@@ -23674,9 +23674,9 @@
msgstr "Verwendung dezimaler Gleitkommatypen in AltiVec-Typen ist ungültig"
#: config/rs6000/rs6000.c:25073
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without -mvsx"
-msgstr "Verwendung von %<long%> in AltiVec-Typen ist für 64-Bit-Code ungültig"
+msgstr "Verwendung von %<long%> in AltiVec-Typen ist für 64-Bit-Code ohne -mvsx ungültig"
#: config/rs6000/rs6000.c:25076
#, gcc-internal-format
@@ -23684,39 +23684,39 @@
msgstr "Verwendung von %<long%> in AltiVec-Typen ist veraltet; %<int%> verwenden"
#: config/rs6000/rs6000.c:25081
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "use of %<long long%> in AltiVec types is invalid without -mvsx"
-msgstr "Verwendung von %<long long%> in AltiVec-Typen ist ungültig"
+msgstr "Verwendung von %<long long%> in AltiVec-Typen ist ohne -mvsx ungültig"
#: config/rs6000/rs6000.c:25084
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "use of %<double%> in AltiVec types is invalid without -mvsx"
-msgstr "Verwendung von %<double%> in AltiVec-Typen ist ungültig"
+msgstr "Verwendung von %<double%> in AltiVec-Typen ist ohne -mvsx ungültig"
#: config/rs6000/rs6000.c:27560
#, gcc-internal-format, gfc-internal-format
msgid "emitting microcode insn %s\t[%s] #%d"
-msgstr ""
+msgstr "Ausgabe der Mikrocode-Anweisung %s\t[%s] #%d"
#: config/rs6000/rs6000.c:27564
#, gcc-internal-format, gfc-internal-format
msgid "emitting conditional microcode insn %s\t[%s] #%d"
-msgstr ""
+msgstr "Ausgabe der bedingten Mikrocode-Anweisung %s\t[%s] #%d"
#: config/rs6000/rs6000.c:27767
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "invalid cpu \"%s\" for %s\"%s\"%s"
-msgstr "ungültige Verwendung von »%%%c«"
+msgstr "ungültige CPU »%s« für %s\"%s\"%s"
#: config/rs6000/rs6000.c:27770
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "%s\"%s\"%s is not allowed"
-msgstr "»%s« ist nicht definiert"
+msgstr "%s\"%s\"%s ist nicht erlaubt"
#: config/rs6000/rs6000.c:27772
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "%s\"%s\"%s is invalid"
-msgstr "Spezifikation »%s« ist ungültig"
+msgstr "%s\"%s\"%s ist ungültig"
#: config/rs6000/aix43.h:32 config/rs6000/aix51.h:32 config/rs6000/aix52.h:32
#: config/rs6000/aix53.h:32 config/rs6000/aix61.h:32
@@ -23748,9 +23748,9 @@
msgstr "AltiVec- und E500-Befehle können nicht koexistieren"
#: config/rs6000/e500.h:42
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "VSX and E500 instructions cannot coexist"
-msgstr "AltiVec- und E500-Befehle können nicht koexistieren"
+msgstr "VSX- und E500-Befehle können nicht koexistieren"
#: config/rs6000/e500.h:44
#, gcc-internal-format
@@ -23773,9 +23773,9 @@
msgstr "-m64 benötigt eine PowerPC64-CPU"
#: config/rs6000/linux64.h:130
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "-mcmodel incompatible with other toc options"
-msgstr "Mit TI-Werkzeugen kompatiblen Code erzeugen"
+msgstr "-mcmodel unverträglich mit anderen TOC-Optionen"
#. Definitions for __builtin_return_address and __builtin_frame_address.
#. __builtin_return_address (0) should give link register (65), enable
@@ -23852,19 +23852,19 @@
msgstr "-m%s wird in dieser Konfiguration nicht unterstützt"
#: config/rx/rx.c:508
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "unreocgnized control register number: %d - using 'psw'"
-msgstr "unbekannter Registername: \"%s\""
+msgstr "unbekannte Steuerregisterzahl: %d - 'psw' wird verwendet"
#: config/rx/rx.c:2106
#, gcc-internal-format, gfc-internal-format
msgid "__builtin_rx_%s takes 'C', 'Z', 'S', 'O', 'I', or 'U'"
-msgstr ""
+msgstr "__builtin_rx_%s benötigt 'C', 'Z', 'S', 'O', 'I' oder 'U'"
#: config/rx/rx.c:2108
#, gcc-internal-format
msgid "use __builtin_rx_mvtc (0, ... ) to write arbitrary values to PSW"
-msgstr ""
+msgstr "__builtin_rx_mvtc (0, ... ) verwenden, um beliebige Werte in PSW zu schreiben"
#: config/rx/rx.c:2163 config/xtensa/xtensa.c:3129 config/xtensa/xtensa.c:3169
#, gcc-internal-format
@@ -23872,19 +23872,19 @@
msgstr "Falscher eingebauter Code"
#: config/rx/rx.c:2289
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "unrecognized argument '%s' to -mcpu= option"
-msgstr "belangloses Argument für »%s«-Option"
+msgstr "unbekanntes Argument »%s« für Option -mcpu="
#: config/rx/rx.c:2294
#, gcc-internal-format
msgid "the RX200 cpu does not have FPU hardware"
-msgstr ""
+msgstr "Die RX200-CPU hat keine FPU-Hardware"
#: config/rx/rx.c:2327
#, gcc-internal-format
msgid "RX FPU instructions do not support NaNs and infinities"
-msgstr ""
+msgstr "RX-FPU-Befehle unterstützen keine NaNs und Unendlichkeiten"
#: config/s390/s390.c:1602
#, gcc-internal-format
@@ -23907,17 +23907,17 @@
msgstr "64-Bit-ABI nicht unterstützt im ESA/390-Modus"
#: config/s390/s390.c:1669
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "hardware decimal floating point instructions not available on %s"
msgstr "Dezimale Hardware-Gleitkomma-Befehle sind auf %s nicht verfügbar"
#: config/s390/s390.c:1672
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "hardware decimal floating point instructions not available in ESA/390 mode"
msgstr "Dezimale Hardware-Gleitkomma-Befehle sind im ESA/390-Modus nicht verfügbar"
#: config/s390/s390.c:1682
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "-mhard-dfp can%'t be used in conjunction with -msoft-float"
msgstr "-mhard-dfp kann nicht in Verbindung mit -msoft-float verwendet werden"
@@ -23977,14 +23977,14 @@
msgstr "__builtin_saveregs wird für dieses Teilziel nicht unterstützt"
#: config/sh/sh.c:8945
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE attribute only applies to interrupt functions"
-msgstr "Attribut %qs bezieht sich nur auf Unterbrechungsfunktionen"
+msgstr "Attribut %qE bezieht sich nur auf Interruptfunktionen"
#: config/sh/sh.c:9003
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE attribute is supported only for SH2A"
-msgstr "Attribut %qE wird auf dieser Plattform nicht unterstützt"
+msgstr "Attribut %qE wird nur auf SH2A unterstützt"
#: config/sh/sh.c:9033
#, gcc-internal-format
@@ -23992,20 +23992,20 @@
msgstr "Attribut interrupt_handler ist mit -m5-compact unverträglich"
#: config/sh/sh.c:9050
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE attribute only applies to SH2A"
-msgstr "Attribut %qs gilt nur für Funktionen"
+msgstr "Attribut %qE gilt nur für SH2A"
#: config/sh/sh.c:9072
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE attribute argument should be between 0 to 255"
-msgstr "Argument des Attributs »%s« sollte zwischen 18 und 255 sein"
+msgstr "Argument des Attributs %qE sollte zwischen 0 und 255 sein"
#. The argument must be a constant string.
#: config/sh/sh.c:9145
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE attribute argument not a string constant"
-msgstr "Attributargument %qs ist keine Zeichenkettenkonstante"
+msgstr "Argument des Attributs %qE ist keine Zeichenkettenkonstante"
#: config/sh/sh.c:11709
#, gcc-internal-format
@@ -24013,22 +24013,22 @@
msgstr "r0 muss als aufrufzerstörtes Register verfügbar sein"
#: config/sh/sh.c:11730
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "need a second call-clobbered general purpose register"
-msgstr "Ein zweites aufrufzerstörtes Mehrzweckregister wird benötigt"
+msgstr "ein zweites aufrufzerstörtes Mehrzweckregister wird benötigt"
#: config/sh/sh.c:11738
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "need a call-clobbered target register"
-msgstr "Aufrufzerstörtes Zielregister erforderlich"
+msgstr "aufrufzerstörtes Zielregister erforderlich"
#: config/sh/symbian-base.c:112
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE declared as both exported to and imported from a DLL"
-msgstr "%qs sowohl als »exportiert in« als auch als »importiert aus DLL« deklariert"
+msgstr "%qE sowohl als »exportiert in« als auch als »importiert aus DLL« deklariert"
#: config/sh/symbian-base.c:119
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "failure in redeclaration of %q+D: dllimport%'d symbol lacks external linkage"
msgstr "Fehler in Redeklaration von %q+D: »dllimport«-iertem Symbol fehlt externe Bindung"
@@ -24103,39 +24103,39 @@
msgstr "Parameterliste passt zu keiner gültigen Signatur für %s()"
#: config/spu/spu.c:548
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "bad value (%s) for -march= switch"
-msgstr "Falscher Wert (%s) für Schalter -masm="
+msgstr "falscher Wert (%s) für Schalter -march="
#: config/spu/spu.c:559
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "bad value (%s) for -mtune= switch"
-msgstr "Falscher Wert (%s) für Schalter -mtune="
+msgstr "falscher Wert (%s) für Schalter -mtune="
#: config/spu/spu.c:5388 config/spu/spu.c:5391
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "creating run-time relocation for %qD"
-msgstr "Schnittstellendeklaration für %qs kann nicht gefunden werden"
+msgstr "Laufzeit-Relocation für %qD wird erzeugt"
#: config/spu/spu.c:5396 config/spu/spu.c:5398
#, gcc-internal-format
msgid "creating run-time relocation"
-msgstr ""
+msgstr "Laufzeit-Relocation wird erzeugt"
#: config/spu/spu.c:6470
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "%s expects an integer literal in the range [%d, %d]"
-msgstr "%s erwartet ein Ganzzahlliteral im Bereich [%d, %d]."
+msgstr "%s erwartet ein Ganzzahlliteral im Bereich [%d, %d]"
#: config/spu/spu.c:6490
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%s expects an integer literal in the range [%d, %d]. (%wd)"
-msgstr "%s erwartet ein Ganzzahlliteral im Bereich [%d, %d]. ("
+msgstr "%s erwartet ein Ganzzahlliteral im Bereich [%d, %d]. (%wd)"
#: config/spu/spu.c:6519
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "%d least significant bits of %s are ignored"
-msgstr "%d niederwertigste Bits von %s werden ignoriert."
+msgstr "%d niederwertigste Bits von %s werden ignoriert"
#: config/stormy16/stormy16.c:1035
#, gcc-internal-format
@@ -24193,9 +24193,9 @@
msgstr "Ausschuss am Ende von #pragma ghs section"
#: config/v850/v850-c.c:170
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "unrecognized section name %qE"
-msgstr "nicht erkannter Abschnittsname »%s«"
+msgstr "nicht erkannter Abschnittsname %qE"
#: config/v850/v850-c.c:185
#, gcc-internal-format
@@ -24243,14 +24243,14 @@
msgstr "an %<-m%s%> übergebener Wert ist zu groß"
#: config/v850/v850.c:2171
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "data area attributes cannot be specified for local variables"
-msgstr "%JDatenabschnittsattribute können nicht für lokale Variablen angegeben werden"
+msgstr "Datenbereichsattribute können nicht für lokale Variablen angegeben werden"
#: config/v850/v850.c:2182
#, gcc-internal-format
msgid "data area of %q+D conflicts with previous declaration"
-msgstr "Datenabschnitt von %q+D in Konflikt mit vorheriger Deklaration"
+msgstr "Datenbereich von %q+D in Konflikt mit vorheriger Deklaration"
#: config/v850/v850.c:2313
#, gcc-internal-format, gfc-internal-format
@@ -24263,9 +24263,9 @@
msgstr "Falscher Betrag der Stapelspeicherentfernung: %d"
#: config/v850/v850.c:2418
-#, fuzzy, gcc-internal-format, gfc-internal-format
+#, gcc-internal-format, gfc-internal-format
msgid "bogus JARL construction: %d"
-msgstr "nur simulierte JARL-Konstruktion: %d\n"
+msgstr "falsche JARL-Konstruktion: %d"
#: config/v850/v850.c:2715
#, gcc-internal-format, gfc-internal-format
@@ -24318,87 +24318,87 @@
msgstr ""
#: ada/gcc-interface/utils.c:5164
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qs attribute requires prototypes with named arguments"
-msgstr "Attribut %qE benötigt Prototypen mit benannten Argumenten"
+msgstr "Attribut %qs benötigt Prototypen mit benannten Argumenten"
#: ada/gcc-interface/utils.c:5176
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qs attribute only applies to variadic functions"
-msgstr "Attribut %qE gilt nur für variadische Funktionen"
+msgstr "Attribut %qs gilt nur für variadische Funktionen"
#: ada/gcc-interface/utils.c:5247
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%qE attribute has no effect"
-msgstr "Attribut %qE wird ignoriert"
+msgstr "Attribut %qE hat keinen Effekt"
#: ada/gcc-interface/utils.c:5359
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "invalid vector type for attribute %qs"
-msgstr "Ungültiger Vektortyp für Attribut %qE"
+msgstr "ungültiger Vektortyp für Attribut %qs"
#: ada/gcc-interface/utils.c:5422
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "attribute %qs applies to array types only"
-msgstr "Attribut %qs bezieht sich nur auf Variablen"
+msgstr "Attribut %qs bezieht sich nur auf Feldtypen"
#: ada/gcc-interface/utils.c:5449
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "invalid element type for attribute %qs"
-msgstr "Ungültiger Vektortyp für Attribut %qE"
+msgstr "ungültiger Elementtyp für Attribut %qs"
#. Conversion of implicit `this' argument failed.
#: cp/call.c:2960
#, gcc-internal-format
msgid " no known conversion for implicit %<this%> parameter from %qT to %qT"
-msgstr ""
+msgstr " keine bekannte Umwandlung für impliziten %<this%>-Parameter von %qT nach %qT"
#: cp/call.c:2964
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid " no known conversion for argument %d from %qT to %qT"
-msgstr " für Umwandlung von %qT in %qT"
+msgstr " keine bekannte Umwandlung für Argument %d von %qT nach %qT"
#: cp/call.c:2986
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%s%D(%T, %T, %T) <built-in>"
-msgstr "%s %D(%T, %T, %T) <eingebaut>"
+msgstr "%s%D(%T, %T, %T) <eingebaut>"
#: cp/call.c:2991
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%s%D(%T, %T) <built-in>"
-msgstr "%s %D(%T, %T) <eingebaut>"
+msgstr "%s%D(%T, %T) <eingebaut>"
#: cp/call.c:2995
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%s%D(%T) <built-in>"
-msgstr "%s %D(%T) <eingebaut>"
+msgstr "%s%D(%T) <eingebaut>"
#: cp/call.c:2999
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%s%T <conversion>"
-msgstr "%s %T <Umformung>"
+msgstr "%s%T <Umformung>"
#: cp/call.c:3001
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%s%#D <near match>"
-msgstr "%s %+#D <nahe Übereinstimmung>"
+msgstr "%s%#D <nahe Übereinstimmung>"
#: cp/call.c:3003
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%s%#D <deleted>"
-msgstr "%s %+#D <nahe Übereinstimmung>"
+msgstr "%s%#D <gelöscht>"
#: cp/call.c:3005
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "%s%#D"
-msgstr "%s %+#D"
+msgstr "%s%#D"
#: cp/call.c:3015
#, gcc-internal-format, gfc-internal-format
msgid " candidate expects %d argument, %d provided"
msgid_plural " candidate expects %d arguments, %d provided"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] " Kandidat erwartet %d Argument, %d angegeben"
+msgstr[1] " Kandidat erwartet %d Argumente, %d angegeben"
#: cp/call.c:3349
#, gcc-internal-format
@@ -24406,9 +24406,9 @@
msgstr "Umformung von %qT in %qT ist nicht eindeutig"
#: cp/call.c:3454
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "conversion from %qT to %qT not considered for non-type template argument"
-msgstr "Umwandlung von %qT in nicht-skalaren Typen %qT angefordert"
+msgstr "Umwandlung von %qT in %qT für Nicht-Typ-Templateargument nicht betrachtet"
#: cp/call.c:3564
#, gcc-internal-format
@@ -24438,64 +24438,64 @@
msgstr "Aufruf von %<(%T) (%A)%> ist nicht eindeutig"
#: cp/call.c:3884
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "ambiguous overload for ternary %<operator?:%> in %<%E ? %E : %E%>"
-msgstr "%s für ternären %<operator?:%> in %<%E ? %E : %E%>"
+msgstr "mehrdeutiges Überladen für ternären %<operator?:%> in %<%E ? %E : %E%>"
#: cp/call.c:3887
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no match for ternary %<operator?:%> in %<%E ? %E : %E%>"
-msgstr "%s für ternären %<operator?:%> in %<%E ? %E : %E%>"
+msgstr "keine Übereinstimmung für ternären %<operator?:%> in %<%E ? %E : %E%>"
#: cp/call.c:3894
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "ambiguous overload for %<operator%s%> in %<%E%s%>"
-msgstr "%s für %<operator%s%> in %<%E%s%>"
+msgstr "mehrdeutiges Überladen für %<operator%s%> in %<%E%s%>"
#: cp/call.c:3897
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no match for %<operator%s%> in %<%E%s%>"
-msgstr "%s für %<operator%s%> in %<%E%s%>"
+msgstr "keine Übereinstimmung für %<operator%s%> in %<%E%s%>"
#: cp/call.c:3903
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "ambiguous overload for %<operator[]%> in %<%E[%E]%>"
-msgstr "%s für %<operator[]%> in %<%E[%E]%>"
+msgstr "mehrdeutiges Überladen für %<operator[]%> in %<%E[%E]%>"
#: cp/call.c:3906
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no match for %<operator[]%> in %<%E[%E]%>"
-msgstr "%s für %<operator[]%> in %<%E[%E]%>"
+msgstr "keine Übereinstimmung für %<operator[]%> in %<%E[%E]%>"
#: cp/call.c:3913
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "ambiguous overload for %qs in %<%s %E%>"
-msgstr "%s für %qs in %<%s %E%>"
+msgstr "mehrdeutiges Überladen für %qs in %<%s %E%>"
#: cp/call.c:3916
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no match for %qs in %<%s %E%>"
-msgstr "%s für %qs in %<%s %E%>"
+msgstr "keine Übereinstimmung für %qs in %<%s %E%>"
#: cp/call.c:3923
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "ambiguous overload for %<operator%s%> in %<%E %s %E%>"
-msgstr "%s für %<operator%s%> in %<%E %s %E%>"
+msgstr "mehrdeutiges Überladen für %<operator%s%> in %<%E %s %E%>"
#: cp/call.c:3926
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no match for %<operator%s%> in %<%E %s %E%>"
-msgstr "%s für %<operator%s%> in %<%E %s %E%>"
+msgstr "keine Übereinstimmung für %<operator%s%> in %<%E %s %E%>"
#: cp/call.c:3930
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "ambiguous overload for %<operator%s%> in %<%s%E%>"
-msgstr "%s für %<operator%s%> in %<%s%E%>"
+msgstr "mehrdeutiges Überladen für %<operator%s%> in %<%s%E%>"
#: cp/call.c:3933
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no match for %<operator%s%> in %<%s%E%>"
-msgstr "%s für %<operator%s%> in %<%s%E%>"
+msgstr "keine Übereinstimmung für %<operator%s%> in %<%s%E%>"
#: cp/call.c:4027
#, gcc-internal-format
@@ -24533,9 +24533,9 @@
msgstr "kein %<%D(int)%> für Suffix %qs deklariert, stattdessen wird Präfixoperator versucht"
#: cp/call.c:4753
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no %<%D(int)%> declared for postfix %qs"
-msgstr "kein %<%D(int)%> für Suffix %qs deklariert, stattdessen wird Präfixoperator versucht"
+msgstr "kein %<%D(int)%> für Suffix %qs deklariert"
#: cp/call.c:4847
#, gcc-internal-format
@@ -24543,19 +24543,19 @@
msgstr "Vergleich zwischen %q#T und %q#T"
#: cp/call.c:5091
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "non-placement deallocation function %q+D"
-msgstr "keine passende Freigabefunktion für »%D«"
+msgstr "nicht-platzierende Freigabefunktion %q+D"
#: cp/call.c:5092
#, gcc-internal-format
msgid "selected for placement delete"
-msgstr ""
+msgstr "für Platzierungs-Löschen ausgewählt"
#: cp/call.c:5171
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no corresponding deallocation function for %qD"
-msgstr "keine passende Freigabefunktion für »%D«"
+msgstr "keine passende Freigabefunktion für %qD"
#: cp/call.c:5176
#, gcc-internal-format
@@ -24598,9 +24598,9 @@
msgstr "%<false%> wird für Argument %P von %qD in Zeigertyp umgewandelt"
#: cp/call.c:5295
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "too many braces around initializer for %qT"
-msgstr "geschweifte Klammern fehlen um Initialisierung für %qT"
+msgstr "zu viele geschweifte Klammern um Initialisierung für %qT"
#: cp/call.c:5317 cp/cvt.c:217
#, gcc-internal-format
@@ -24615,17 +24615,17 @@
#: cp/call.c:5349
#, gcc-internal-format
msgid "converting to %qT from initializer list would use explicit constructor %qD"
-msgstr ""
+msgstr "Umwandlung in %qT von Initialisierungsliste würde expliziten Konstruktor %qD verwenden"
#: cp/call.c:5409 cp/call.c:5525
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid " initializing argument %P of %q+D"
-msgstr " Argument %P von %qD wird initialisiert"
+msgstr " Argument %P von %q+D wird initialisiert"
#: cp/call.c:5522
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "cannot bind %qT lvalue to %qT"
-msgstr "der R-Wert %qE kann nicht mit %qT verbunden werden"
+msgstr "L-Wert %qT kann nicht mit %qT verbunden werden"
#: cp/call.c:5557
#, gcc-internal-format
@@ -24643,15 +24643,15 @@
msgstr "der R-Wert %qE kann nicht mit %qT verbunden werden"
#: cp/call.c:5699
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "cannot pass objects of non-trivially-copyable type %q#T through %<...%>"
-msgstr "Objekte des Nicht-POD-Typs %q#T können nicht über %<...%> übergeben werden; Aufruf wird zur Laufzeit abbrechen"
+msgstr "Objekte des nicht trivial kopierbaren Typs %q#T können nicht über %<...%> übergeben werden"
#. conditionally-supported behavior [expr.call] 5.2.2/7.
#: cp/call.c:5728
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "cannot receive objects of non-trivially-copyable type %q#T through %<...%>; "
-msgstr "Objekte des Nicht-POD-Typs %q#T können nicht über %<...%> empfangen werden; Aufruf wird zur Laufzeit abbrechen"
+msgstr "Objekte des nicht trivial kopierbaren Typs %q#T können nicht über %<...%> empfangen werden; "
#: cp/call.c:5774
#, gcc-internal-format
@@ -24679,19 +24679,19 @@
msgstr "%qT ist keine erreichbare Basis von %qT"
#: cp/call.c:6190
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "deducing %qT as %qT"
-msgstr "Deklaration von %qD als %s"
+msgstr "%qT ermittelt als %qT"
#: cp/call.c:6193
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid " in call to %q+D"
-msgstr " in Aufruf von %qD"
+msgstr " in Aufruf von %q+D"
#: cp/call.c:6195
#, gcc-internal-format
msgid " (you can disable this with -fno-deduce-init-list)"
-msgstr ""
+msgstr " (dies kann mit -fno-deduce-init-list abgeschaltet werden)"
#: cp/call.c:6465
#, gcc-internal-format
@@ -24706,17 +24706,17 @@
#: cp/call.c:6768 cp/typeck.c:2543
#, gcc-internal-format
msgid "cannot call constructor %<%T::%D%> directly"
-msgstr ""
+msgstr "Konstruktor %<%T::%D%> kann nicht direkt aufgerufen werden"
#: cp/call.c:6770
#, gcc-internal-format
msgid " for a function-style cast, remove the redundant %<::%D%>"
-msgstr ""
+msgstr " für Umwandlung im Funktions-Stil muss das überflüssige %<::%D%> entfernt werden"
#: cp/call.c:6854
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "no matching function for call to %<%T::operator %T(%A)%#V%>"
-msgstr "keine passende Funktion für Aufruf von %<%T::%s(%A)%#V%>"
+msgstr "keine passende Funktion für Aufruf von %<%T::operator %T(%A)%#V%>"
#: cp/call.c:6867
#, gcc-internal-format
@@ -24759,19 +24759,19 @@
msgstr " denn die Umwandlungsfolge für das Argument ist besser"
#: cp/call.c:7810
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "default argument mismatch in overload resolution"
-msgstr "Standardargument in expliziter Spezialisierung angegeben"
+msgstr "Zuordnungsfehler der Standardargumente in Überladungsauflösung"
#: cp/call.c:7813
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid " candidate 1: %q+#F"
-msgstr "Kandidat ist: %+#D"
+msgstr " Kandidat 1: %q+#F"
#: cp/call.c:7815
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid " candidate 2: %q+#F"
-msgstr "Kandidat ist: %+#D"
+msgstr " Kandidat 2: %q+#F"
#: cp/call.c:7856
#, gcc-internal-format
@@ -24784,9 +24784,9 @@
msgstr "%qE konnte nicht nach %qT konvertiert werden"
#: cp/call.c:8251
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "invalid initialization of non-const reference of type %qT from an rvalue of type %qT"
-msgstr "ungültige Initialisierung einer nicht-konstanten Referenz des Typs %qT von temporärem Wert des Typs %qT"
+msgstr "ungültige Initialisierung einer nicht-konstanten Referenz des Typs %qT von R-Wert des Typs %qT"
#: cp/call.c:8255
#, gcc-internal-format
@@ -25040,9 +25040,9 @@
msgstr "Initialisierung für nicht-virtuelle Methode %q+D angegeben"
#: cp/class.c:4568
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "enclosing class of %q+D is not a literal type"
-msgstr "%qE in Klasse %qT bezeichnet keinen Typen"
+msgstr "umschließende Klasse von %q+D ist kein Literaltyp"
#: cp/class.c:4677
#, gcc-internal-format
@@ -25187,7 +25187,7 @@
msgstr ""
#: cp/cvt.c:90
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "can%'t convert from incomplete type %qT to %qT"
msgstr "unvollständiger Typ %qT kann nicht nach %qT umgewandelt werden"
@@ -25202,24 +25202,24 @@
msgstr "%qE kann nicht vom Typ %qT in den Typ %qT umgewandelt werden"
#: cp/cvt.c:370
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "initialization of volatile reference type %q#T from rvalue of type %qT"
-msgstr "ungültige Initialisierung einer Referenz des Typs %qT von Ausdruck des Typs %qT"
+msgstr "Initialisierung des »volatile« Referenztyps %q#T von R-Wert des Typs %qT"
#: cp/cvt.c:373
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "conversion to volatile reference type %q#T from rvalue of type %qT"
-msgstr "ungültige Initialisierung einer Referenz des Typs %qT von Ausdruck des Typs %qT"
+msgstr "Umwandlung in »volatile« Referenztyp %q#T von R-Wert des Typs %qT"
#: cp/cvt.c:376
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "initialization of non-const reference type %q#T from rvalue of type %qT"
-msgstr "ungültige Initialisierung einer nicht-konstanten Referenz des Typs %qT von temporärem Wert des Typs %qT"
+msgstr "Initialisierung eines nicht-konstanten Referenztyps %q#T von R-Wert des Typs %qT"
#: cp/cvt.c:379
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "conversion to non-const reference type %q#T from rvalue of type %qT"
-msgstr "ungültige Initialisierung einer nicht-konstanten Referenz des Typs %qT von temporärem Wert des Typs %qT"
+msgstr "Umwandlung in nicht-konstanten Referenztyp %q#T von R-Wert des Typs %qT"
#: cp/cvt.c:452
#, gcc-internal-format
@@ -25244,7 +25244,7 @@
#: cp/cvt.c:715
#, gcc-internal-format
msgid "the result of the conversion is unspecified because %qE is outside the range of type %qT"
-msgstr ""
+msgstr "das Ergebnis der Umwandlung ist nicht spezifiziert, da %qE außerhalb des Wertebereichs des Typs %qT liegt"
#: cp/cvt.c:726 cp/cvt.c:751
#, gcc-internal-format
@@ -25267,9 +25267,9 @@
msgstr "Pseudo-Destruktor wird nicht aufgerufen"
#: cp/cvt.c:961
-#, fuzzy, gcc-internal-format
+#, gcc-internal-format
msgid "conversion to void will not access object of incomplete type %qT"
-msgstr "Konvertierung in unvollständigen Typen"
+msgstr "Umwandlung in void greift nicht auf Objekt des unvollständigen Typs %qT zu"
#: cp/cvt.c:965
#, gcc-internal-format
diff --git a/gcc/po/gcc.pot b/gcc/po/gcc.pot
index 55ce4c2..e0442d8 100644
--- a/gcc/po/gcc.pot
+++ b/gcc/po/gcc.pot
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
-"POT-Creation-Date: 2011-03-24 16:41+0000\n"
+"POT-Creation-Date: 2011-06-21 10:31+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,8 +18,8 @@
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-#: c-decl.c:4660 c-typeck.c:5851 toplev.c:1013 c-family/c-pretty-print.c:423
-#: cp/error.c:610 cp/error.c:891
+#: c-decl.c:4655 c-typeck.c:5840 toplev.c:1014 c-family/c-pretty-print.c:423
+#: cp/error.c:628 cp/error.c:910
msgid "<anonymous>"
msgstr ""
@@ -27,291 +27,190 @@
msgid "({anonymous})"
msgstr ""
-#: c-parser.c:942 cp/parser.c:20705
+#: c-parser.c:941 cp/parser.c:20980
#, gcc-internal-format
msgid "expected end of line"
msgstr ""
-#: c-parser.c:1758 c-parser.c:1772 c-parser.c:4002 c-parser.c:4440
-#: c-parser.c:4701 c-parser.c:4859 c-parser.c:4876 c-parser.c:5041
-#: c-parser.c:6986 c-parser.c:7022 c-parser.c:7054 c-parser.c:7102
-#: c-parser.c:7282 c-parser.c:8048 c-parser.c:8118 c-parser.c:8161
-#: c-parser.c:9138 c-parser.c:9283 c-parser.c:9321 c-parser.c:2445
-#: c-parser.c:7275 cp/parser.c:20651
+#: c-parser.c:1768 c-parser.c:1782 c-parser.c:4015 c-parser.c:4453
+#: c-parser.c:4714 c-parser.c:4872 c-parser.c:4889 c-parser.c:5054
+#: c-parser.c:7019 c-parser.c:7054 c-parser.c:7085 c-parser.c:7132
+#: c-parser.c:7313 c-parser.c:8080 c-parser.c:8150 c-parser.c:8193
+#: c-parser.c:9170 c-parser.c:9315 c-parser.c:9353 c-parser.c:2461
+#: c-parser.c:7306 cp/parser.c:20926
#, gcc-internal-format
msgid "expected %<;%>"
msgstr ""
-#: c-parser.c:1802 c-parser.c:2383 c-parser.c:2673 c-parser.c:3307
-#: c-parser.c:3359 c-parser.c:3364 c-parser.c:4484 c-parser.c:4617
-#: c-parser.c:4781 c-parser.c:4977 c-parser.c:5103 c-parser.c:6184
-#: c-parser.c:6222 c-parser.c:6308 c-parser.c:6348 c-parser.c:6386
-#: c-parser.c:6401 c-parser.c:6425 c-parser.c:7572 c-parser.c:7644
-#: c-parser.c:8453 c-parser.c:8474 c-parser.c:8524 c-parser.c:8634
-#: c-parser.c:8707 c-parser.c:8775 c-parser.c:9246 c-parser.c:8597
-#: cp/parser.c:20654
+#: c-parser.c:1812 c-parser.c:2399 c-parser.c:2690 c-parser.c:3320
+#: c-parser.c:3372 c-parser.c:3377 c-parser.c:4497 c-parser.c:4630
+#: c-parser.c:4794 c-parser.c:4990 c-parser.c:5116 c-parser.c:6197
+#: c-parser.c:6235 c-parser.c:6321 c-parser.c:6361 c-parser.c:6399
+#: c-parser.c:6414 c-parser.c:6438 c-parser.c:7604 c-parser.c:7676
+#: c-parser.c:8485 c-parser.c:8506 c-parser.c:8556 c-parser.c:8666
+#: c-parser.c:8739 c-parser.c:8807 c-parser.c:9278 c-parser.c:8629
+#: cp/parser.c:20929
#, gcc-internal-format
msgid "expected %<(%>"
msgstr ""
-#: c-parser.c:1807 c-parser.c:6192 c-parser.c:6230 c-parser.c:6315
-#: c-parser.c:6322 c-parser.c:6359 cp/parser.c:20314 cp/parser.c:20669
+#: c-parser.c:1817 c-parser.c:6205 c-parser.c:6243 c-parser.c:6328
+#: c-parser.c:6335 c-parser.c:6372 cp/parser.c:20589 cp/parser.c:20944
#, gcc-internal-format
msgid "expected %<,%>"
msgstr ""
-#: c-parser.c:1828 c-parser.c:2398 c-parser.c:2709 c-parser.c:2917
-#: c-parser.c:3081 c-parser.c:3130 c-parser.c:3189 c-parser.c:3314
-#: c-parser.c:3485 c-parser.c:3496 c-parser.c:3505 c-parser.c:4487
-#: c-parser.c:4621 c-parser.c:4900 c-parser.c:5035 c-parser.c:5115
-#: c-parser.c:5676 c-parser.c:5863 c-parser.c:5923 c-parser.c:6129
-#: c-parser.c:6147 c-parser.c:6168 c-parser.c:6201 c-parser.c:6302
-#: c-parser.c:6330 c-parser.c:6372 c-parser.c:6394 c-parser.c:6417
-#: c-parser.c:6438 c-parser.c:6578 c-parser.c:6850 c-parser.c:7366
-#: c-parser.c:7387 c-parser.c:7595 c-parser.c:7648 c-parser.c:8020
-#: c-parser.c:8456 c-parser.c:8477 c-parser.c:8555 c-parser.c:8640
-#: c-parser.c:8756 c-parser.c:8838 c-parser.c:9174 c-parser.c:9291
-#: c-parser.c:9332 cp/parser.c:20699
+#: c-parser.c:1838 c-parser.c:2414 c-parser.c:2726 c-parser.c:2934
+#: c-parser.c:3098 c-parser.c:3151 c-parser.c:3203 c-parser.c:3327
+#: c-parser.c:3498 c-parser.c:3509 c-parser.c:3518 c-parser.c:4500
+#: c-parser.c:4634 c-parser.c:4913 c-parser.c:5048 c-parser.c:5128
+#: c-parser.c:5689 c-parser.c:5876 c-parser.c:5936 c-parser.c:6142
+#: c-parser.c:6160 c-parser.c:6181 c-parser.c:6214 c-parser.c:6315
+#: c-parser.c:6343 c-parser.c:6385 c-parser.c:6407 c-parser.c:6430
+#: c-parser.c:6451 c-parser.c:6590 c-parser.c:6862 c-parser.c:7398
+#: c-parser.c:7419 c-parser.c:7627 c-parser.c:7680 c-parser.c:8052
+#: c-parser.c:8488 c-parser.c:8509 c-parser.c:8587 c-parser.c:8672
+#: c-parser.c:8788 c-parser.c:8870 c-parser.c:9206 c-parser.c:9323
+#: c-parser.c:9364 cp/parser.c:20974
#, gcc-internal-format
msgid "expected %<)%>"
msgstr ""
-#: c-parser.c:3000 c-parser.c:3790 c-parser.c:3824 c-parser.c:5095
-#: c-parser.c:6294 c-parser.c:6458 c-parser.c:6565 cp/parser.c:20663
+#: c-parser.c:3017 c-parser.c:3803 c-parser.c:3837 c-parser.c:5108
+#: c-parser.c:6307 c-parser.c:6471 c-parser.c:6577 cp/parser.c:20938
#, gcc-internal-format
msgid "expected %<]%>"
msgstr ""
-#: c-parser.c:3166
+#: c-parser.c:3184
msgid "expected %<;%>, %<,%> or %<)%>"
msgstr ""
-#: c-parser.c:3653 cp/parser.c:20657 cp/parser.c:22275
+#: c-parser.c:3666 cp/parser.c:20932 cp/parser.c:22566
#, gcc-internal-format
msgid "expected %<}%>"
msgstr ""
-#: c-parser.c:3943 c-parser.c:7615 c-parser.c:9575 c-parser.c:2265
-#: c-parser.c:2465 c-parser.c:7171 cp/parser.c:13276 cp/parser.c:20660
+#: c-parser.c:3956 c-parser.c:7647 c-parser.c:9607 c-parser.c:2279
+#: c-parser.c:2482 c-parser.c:7201 cp/parser.c:13455 cp/parser.c:20935
#, gcc-internal-format
msgid "expected %<{%>"
msgstr ""
-#: c-parser.c:4162 c-parser.c:4171 c-parser.c:4999 c-parser.c:5340
-#: c-parser.c:7380 c-parser.c:7755 c-parser.c:7812 c-parser.c:8745
-#: cp/parser.c:20693 cp/parser.c:21513
+#: c-parser.c:4175 c-parser.c:4184 c-parser.c:5012 c-parser.c:5353
+#: c-parser.c:7412 c-parser.c:7787 c-parser.c:7844 c-parser.c:8777
+#: cp/parser.c:20968 cp/parser.c:21788
#, gcc-internal-format
msgid "expected %<:%>"
msgstr ""
-#: c-parser.c:4695 cp/parser.c:20593
+#: c-parser.c:4708 cp/parser.c:20868
#, gcc-internal-format
msgid "expected %<while%>"
msgstr ""
-#: c-parser.c:6082
+#: c-parser.c:6095
msgid "expected %<.%>"
msgstr ""
-#: c-parser.c:6860 c-parser.c:6892 c-parser.c:7115 cp/parser.c:22061
-#: cp/parser.c:22134
+#: c-parser.c:6872 c-parser.c:6904 c-parser.c:7144 cp/parser.c:22350
+#: cp/parser.c:22424
#, gcc-internal-format
msgid "expected %<@end%>"
msgstr ""
-#: c-parser.c:7529 cp/parser.c:20678
+#: c-parser.c:7561 cp/parser.c:20953
#, gcc-internal-format
msgid "expected %<>%>"
msgstr ""
-#: c-parser.c:8842 cp/parser.c:20702
+#: c-parser.c:8874 cp/parser.c:20977
#, gcc-internal-format
msgid "expected %<,%> or %<)%>"
msgstr ""
-#: c-parser.c:9272 c-parser.c:3847 cp/parser.c:20681
+#: c-parser.c:9304 c-parser.c:3860 cp/parser.c:20956
#, gcc-internal-format
msgid "expected %<=%>"
msgstr ""
-#: c-parser.c:9632 c-parser.c:9622 cp/parser.c:24599
+#: c-parser.c:9664 c-parser.c:9654 cp/parser.c:24906
#, gcc-internal-format
msgid "expected %<#pragma omp section%> or %<}%>"
msgstr ""
-#: c-typeck.c:6494
+#: c-typeck.c:6483
msgid "(anonymous)"
msgstr ""
-#: cfgrtl.c:2036
+#: cfgrtl.c:2002
msgid "flow control insn inside a basic block"
msgstr ""
-#: cfgrtl.c:2164
+#: cfgrtl.c:2130
msgid "wrong insn in the fallthru edge"
msgstr ""
-#: cfgrtl.c:2218
+#: cfgrtl.c:2184
msgid "insn outside basic block"
msgstr ""
-#: cfgrtl.c:2225
+#: cfgrtl.c:2191
msgid "return not followed by barrier"
msgstr ""
-#: collect2.c:500
+#: collect2.c:1639
#, c-format
-msgid "internal gcc abort in %s, at %s:%d"
+msgid "collect2 version %s\n"
msgstr ""
-#: collect2.c:955
-#, c-format
-msgid "COLLECT_LTO_WRAPPER must be set"
-msgstr ""
-
-#: collect2.c:1272
-#, c-format
-msgid "no arguments"
-msgstr ""
-
-#: collect2.c:1673 collect2.c:1862 collect2.c:1897
-#, c-format
-msgid "fopen %s"
-msgstr ""
-
-#: collect2.c:1676 collect2.c:1867 collect2.c:1900
-#, c-format
-msgid "fclose %s"
-msgstr ""
-
-#: collect2.c:1685
-#, c-format
-msgid "collect2 version %s"
-msgstr ""
-
-#: collect2.c:1797
+#: collect2.c:1746
#, c-format
msgid "%d constructor found\n"
msgid_plural "%d constructors found\n"
msgstr[0] ""
msgstr[1] ""
-#: collect2.c:1801
+#: collect2.c:1750
#, c-format
msgid "%d destructor found\n"
msgid_plural "%d destructors found\n"
msgstr[0] ""
msgstr[1] ""
-#: collect2.c:1805
+#: collect2.c:1754
#, c-format
msgid "%d frame table found\n"
msgid_plural "%d frame tables found\n"
msgstr[0] ""
msgstr[1] ""
-#: collect2.c:1964 lto-wrapper.c:203
-#, c-format
-msgid "can't get program status"
-msgstr ""
-
-#: collect2.c:2033
-#, c-format
-msgid "could not open response file %s"
-msgstr ""
-
-#: collect2.c:2038
-#, c-format
-msgid "could not write to response file %s"
-msgstr ""
-
-#: collect2.c:2043
-#, c-format
-msgid "could not close response file %s"
-msgstr ""
-
-#: collect2.c:2061
+#: collect2.c:2010
#, c-format
msgid "[cannot find %s]"
msgstr ""
-#: collect2.c:2076
-#, c-format
-msgid "cannot find '%s'"
-msgstr ""
-
-#: collect2.c:2080 collect2.c:2621 collect2.c:2817 lto-wrapper.c:172
-#, c-format
-msgid "pex_init failed"
-msgstr ""
-
-#: collect2.c:2118
+#: collect2.c:2066
#, c-format
msgid "[Leaving %s]\n"
msgstr ""
-#: collect2.c:2350
+#: collect2.c:2294
#, c-format
msgid ""
"\n"
"write_c_file - output name is %s, prefix is %s\n"
msgstr ""
-#: collect2.c:2595
-#, c-format
-msgid "cannot find 'nm'"
-msgstr ""
-
-#: collect2.c:2643
-#, c-format
-msgid "can't open nm output"
-msgstr ""
-
-#: collect2.c:2726
-#, c-format
-msgid "init function found in object %s"
-msgstr ""
-
-#: collect2.c:2736
-#, c-format
-msgid "fini function found in object %s"
-msgstr ""
-
-#: collect2.c:2838
-#, c-format
-msgid "can't open ldd output"
-msgstr ""
-
-#: collect2.c:2841
+#: collect2.c:2785
#, c-format
msgid ""
"\n"
"ldd output with constructors/destructors.\n"
msgstr ""
-#: collect2.c:2856
-#, c-format
-msgid "dynamic dependency %s not found"
-msgstr ""
-
-#: collect2.c:2868
-#, c-format
-msgid "unable to open dynamic dependency '%s'"
-msgstr ""
-
-#: collect2.c:3029
-#, c-format
-msgid "%s: not a COFF file"
-msgstr ""
-
-#: collect2.c:3159
-#, c-format
-msgid "%s: cannot open as COFF file"
-msgstr ""
-
-#: collect2.c:3217
-#, c-format
-msgid "library lib%s not found"
+#: cprop.c:1728
+msgid "const/copy propagation disabled"
msgstr ""
#: diagnostic.c:136
@@ -357,44 +256,44 @@
msgid "Internal compiler error: Error reporting routines re-entered.\n"
msgstr ""
-#: final.c:1164
+#: final.c:1165
msgid "negative insn length"
msgstr ""
-#: final.c:2645
+#: final.c:2724
msgid "could not split insn"
msgstr ""
-#: final.c:3063
+#: final.c:3142
msgid "invalid 'asm': "
msgstr ""
-#: final.c:3246
+#: final.c:3325
#, c-format
msgid "nested assembly dialect alternatives"
msgstr ""
-#: final.c:3263 final.c:3275
+#: final.c:3342 final.c:3354
#, c-format
msgid "unterminated assembly dialect alternative"
msgstr ""
-#: final.c:3322
+#: final.c:3401
#, c-format
msgid "operand number missing after %%-letter"
msgstr ""
-#: final.c:3325 final.c:3366
+#: final.c:3404 final.c:3445
#, c-format
msgid "operand number out of range"
msgstr ""
-#: final.c:3383
+#: final.c:3462
#, c-format
msgid "invalid %%-code"
msgstr ""
-#: final.c:3413
+#: final.c:3492
#, c-format
msgid "'%%l' operand isn't a label"
msgstr ""
@@ -405,273 +304,273 @@
#. TARGET_PRINT_OPERAND must handle them.
#. We can't handle floating point constants;
#. PRINT_OPERAND must handle them.
-#: final.c:3554 config/i386/i386.c:13158 config/pdp11/pdp11.c:1728
+#: final.c:3633 config/i386/i386.c:12662 config/pdp11/pdp11.c:1680
#, c-format
msgid "floating constant misused"
msgstr ""
-#: final.c:3613 config/i386/i386.c:13256 config/pdp11/pdp11.c:1769
+#: final.c:3692 config/i386/i386.c:12760 config/pdp11/pdp11.c:1721
#, c-format
msgid "invalid expression as operand"
msgstr ""
-#: gcc.c:1320
+#: gcc.c:1321
#, c-format
msgid "Using built-in specs.\n"
msgstr ""
-#: gcc.c:1506
+#: gcc.c:1518
#, c-format
msgid ""
"Setting spec %s to '%s'\n"
"\n"
msgstr ""
-#: gcc.c:1616
+#: gcc.c:1628
#, c-format
msgid "Reading specs from %s\n"
msgstr ""
-#: gcc.c:1741
+#: gcc.c:1753
#, c-format
msgid "could not find specs file %s\n"
msgstr ""
-#: gcc.c:1810
+#: gcc.c:1822
#, c-format
msgid "rename spec %s to %s\n"
msgstr ""
-#: gcc.c:1812
+#: gcc.c:1824
#, c-format
msgid ""
"spec is '%s'\n"
"\n"
msgstr ""
-#: gcc.c:2229
+#: gcc.c:2241
#, c-format
msgid "%s\n"
msgstr ""
-#: gcc.c:2585
+#: gcc.c:2597
#, c-format
msgid ""
"\n"
"Go ahead? (y or n) "
msgstr ""
-#: gcc.c:2725
+#: gcc.c:2737
#, c-format
msgid "# %s %.2f %.2f\n"
msgstr ""
-#: gcc.c:2927
+#: gcc.c:2939
#, c-format
msgid "Usage: %s [options] file...\n"
msgstr ""
-#: gcc.c:2928
+#: gcc.c:2940
msgid "Options:\n"
msgstr ""
-#: gcc.c:2930
+#: gcc.c:2942
msgid " -pass-exit-codes Exit with highest error code from a phase\n"
msgstr ""
-#: gcc.c:2931
+#: gcc.c:2943
msgid " --help Display this information\n"
msgstr ""
-#: gcc.c:2932
+#: gcc.c:2944
msgid ""
" --target-help Display target specific command line options\n"
msgstr ""
-#: gcc.c:2933
+#: gcc.c:2945
msgid ""
" --help={target|optimizers|warnings|params|[^]{joined|separate|"
"undocumented}}[,...]\n"
msgstr ""
-#: gcc.c:2934
+#: gcc.c:2946
msgid ""
" Display specific types of command line options\n"
msgstr ""
-#: gcc.c:2936
+#: gcc.c:2948
msgid " (Use '-v --help' to display command line options of sub-processes)\n"
msgstr ""
-#: gcc.c:2937
+#: gcc.c:2949
msgid " --version Display compiler version information\n"
msgstr ""
-#: gcc.c:2938
+#: gcc.c:2950
msgid " -dumpspecs Display all of the built in spec strings\n"
msgstr ""
-#: gcc.c:2939
+#: gcc.c:2951
msgid " -dumpversion Display the version of the compiler\n"
msgstr ""
-#: gcc.c:2940
+#: gcc.c:2952
msgid " -dumpmachine Display the compiler's target processor\n"
msgstr ""
-#: gcc.c:2941
+#: gcc.c:2953
msgid ""
" -print-search-dirs Display the directories in the compiler's search "
"path\n"
msgstr ""
-#: gcc.c:2942
+#: gcc.c:2954
msgid ""
" -print-libgcc-file-name Display the name of the compiler's companion "
"library\n"
msgstr ""
-#: gcc.c:2943
+#: gcc.c:2955
msgid " -print-file-name=<lib> Display the full path to library <lib>\n"
msgstr ""
-#: gcc.c:2944
+#: gcc.c:2956
msgid ""
" -print-prog-name=<prog> Display the full path to compiler component "
"<prog>\n"
msgstr ""
-#: gcc.c:2945
+#: gcc.c:2957
msgid ""
" -print-multi-directory Display the root directory for versions of "
"libgcc\n"
msgstr ""
-#: gcc.c:2946
+#: gcc.c:2958
msgid ""
" -print-multi-lib Display the mapping between command line options "
"and\n"
" multiple library search directories\n"
msgstr ""
-#: gcc.c:2949
+#: gcc.c:2961
msgid " -print-multi-os-directory Display the relative path to OS libraries\n"
msgstr ""
-#: gcc.c:2950
+#: gcc.c:2962
msgid " -print-sysroot Display the target libraries directory\n"
msgstr ""
-#: gcc.c:2951
+#: gcc.c:2963
msgid ""
" -print-sysroot-headers-suffix Display the sysroot suffix used to find "
"headers\n"
msgstr ""
-#: gcc.c:2952
+#: gcc.c:2964
msgid ""
" -Wa,<options> Pass comma-separated <options> on to the "
"assembler\n"
msgstr ""
-#: gcc.c:2953
+#: gcc.c:2965
msgid ""
" -Wp,<options> Pass comma-separated <options> on to the "
"preprocessor\n"
msgstr ""
-#: gcc.c:2954
+#: gcc.c:2966
msgid ""
" -Wl,<options> Pass comma-separated <options> on to the linker\n"
msgstr ""
-#: gcc.c:2955
+#: gcc.c:2967
msgid " -Xassembler <arg> Pass <arg> on to the assembler\n"
msgstr ""
-#: gcc.c:2956
+#: gcc.c:2968
msgid " -Xpreprocessor <arg> Pass <arg> on to the preprocessor\n"
msgstr ""
-#: gcc.c:2957
+#: gcc.c:2969
msgid " -Xlinker <arg> Pass <arg> on to the linker\n"
msgstr ""
-#: gcc.c:2958
+#: gcc.c:2970
msgid " -save-temps Do not delete intermediate files\n"
msgstr ""
-#: gcc.c:2959
+#: gcc.c:2971
msgid " -save-temps=<arg> Do not delete intermediate files\n"
msgstr ""
-#: gcc.c:2960
+#: gcc.c:2972
msgid ""
" -no-canonical-prefixes Do not canonicalize paths when building relative\n"
" prefixes to other gcc components\n"
msgstr ""
-#: gcc.c:2963
+#: gcc.c:2975
msgid " -pipe Use pipes rather than intermediate files\n"
msgstr ""
-#: gcc.c:2964
+#: gcc.c:2976
msgid " -time Time the execution of each subprocess\n"
msgstr ""
-#: gcc.c:2965
+#: gcc.c:2977
msgid ""
" -specs=<file> Override built-in specs with the contents of "
"<file>\n"
msgstr ""
-#: gcc.c:2966
+#: gcc.c:2978
msgid ""
" -std=<standard> Assume that the input sources are for <standard>\n"
msgstr ""
-#: gcc.c:2967
+#: gcc.c:2979
msgid ""
" --sysroot=<directory> Use <directory> as the root directory for "
"headers\n"
" and libraries\n"
msgstr ""
-#: gcc.c:2970
+#: gcc.c:2982
msgid ""
" -B <directory> Add <directory> to the compiler's search paths\n"
msgstr ""
-#: gcc.c:2971
+#: gcc.c:2983
msgid ""
" -v Display the programs invoked by the compiler\n"
msgstr ""
-#: gcc.c:2972
+#: gcc.c:2984
msgid ""
" -### Like -v but options quoted and commands not "
"executed\n"
msgstr ""
-#: gcc.c:2973
+#: gcc.c:2985
msgid ""
" -E Preprocess only; do not compile, assemble or "
"link\n"
msgstr ""
-#: gcc.c:2974
+#: gcc.c:2986
msgid " -S Compile only; do not assemble or link\n"
msgstr ""
-#: gcc.c:2975
+#: gcc.c:2987
msgid " -c Compile and assemble, but do not link\n"
msgstr ""
-#: gcc.c:2976
+#: gcc.c:2988
msgid " -o <file> Place the output into <file>\n"
msgstr ""
-#: gcc.c:2977
+#: gcc.c:2989
msgid ""
" -x <language> Specify the language of the following input "
"files\n"
@@ -682,7 +581,7 @@
"extension\n"
msgstr ""
-#: gcc.c:2984
+#: gcc.c:2996
#, c-format
msgid ""
"\n"
@@ -691,43 +590,43 @@
" other options on to these processes the -W<letter> options must be used.\n"
msgstr ""
-#: gcc.c:5221
+#: gcc.c:5232
#, c-format
msgid "Processing spec %c%s%c, which is '%s'\n"
msgstr ""
-#: gcc.c:6485
+#: gcc.c:6496
#, c-format
msgid "install: %s%s\n"
msgstr ""
-#: gcc.c:6488
+#: gcc.c:6499
#, c-format
msgid "programs: %s\n"
msgstr ""
-#: gcc.c:6490
+#: gcc.c:6501
#, c-format
msgid "libraries: %s\n"
msgstr ""
-#: gcc.c:6565
+#: gcc.c:6576
#, c-format
msgid ""
"\n"
"For bug reporting instructions, please see:\n"
msgstr ""
-#: gcc.c:6581
+#: gcc.c:6592
#, c-format
msgid "%s %s%s\n"
msgstr ""
-#: gcc.c:6584 gcov.c:444 fortran/gfortranspec.c:302 java/jcf-dump.c:1164
+#: gcc.c:6595 gcov.c:452 fortran/gfortranspec.c:302 java/jcf-dump.c:1165
msgid "(C)"
msgstr ""
-#: gcc.c:6585 java/jcf-dump.c:1165
+#: gcc.c:6596 java/jcf-dump.c:1166
#, c-format
msgid ""
"This is free software; see the source for copying conditions. There is NO\n"
@@ -735,32 +634,32 @@
"\n"
msgstr ""
-#: gcc.c:6602
+#: gcc.c:6613
#, c-format
msgid "Target: %s\n"
msgstr ""
-#: gcc.c:6603
+#: gcc.c:6614
#, c-format
msgid "Configured with: %s\n"
msgstr ""
-#: gcc.c:6617
+#: gcc.c:6628
#, c-format
msgid "Thread model: %s\n"
msgstr ""
-#: gcc.c:6628
+#: gcc.c:6639
#, c-format
msgid "gcc version %s %s\n"
msgstr ""
-#: gcc.c:6631
+#: gcc.c:6642
#, c-format
msgid "gcc driver version %s %sexecuting gcc version %s\n"
msgstr ""
-#: gcc.c:6882
+#: gcc.c:6889
#, c-format
msgid ""
"\n"
@@ -769,14 +668,14 @@
"\n"
msgstr ""
-#: gcc.c:6883
+#: gcc.c:6890
#, c-format
msgid ""
"Use \"-Wl,OPTION\" to pass \"OPTION\" to the linker.\n"
"\n"
msgstr ""
-#: gcc.c:8075
+#: gcc.c:8082
#, c-format
msgid ""
"Assembler options\n"
@@ -784,97 +683,97 @@
"\n"
msgstr ""
-#: gcc.c:8076
+#: gcc.c:8083
#, c-format
msgid ""
"Use \"-Wa,OPTION\" to pass \"OPTION\" to the assembler.\n"
"\n"
msgstr ""
-#: gcov.c:416
+#: gcov.c:424
#, c-format
msgid ""
"Usage: gcov [OPTION]... SOURCEFILE...\n"
"\n"
msgstr ""
-#: gcov.c:417
+#: gcov.c:425
#, c-format
msgid ""
"Print code coverage information.\n"
"\n"
msgstr ""
-#: gcov.c:418
+#: gcov.c:426
#, c-format
msgid " -h, --help Print this help, then exit\n"
msgstr ""
-#: gcov.c:419
+#: gcov.c:427
#, c-format
msgid " -v, --version Print version number, then exit\n"
msgstr ""
-#: gcov.c:420
+#: gcov.c:428
#, c-format
msgid ""
" -a, --all-blocks Show information for every basic block\n"
msgstr ""
-#: gcov.c:421
+#: gcov.c:429
#, c-format
msgid ""
" -b, --branch-probabilities Include branch probabilities in output\n"
msgstr ""
-#: gcov.c:422
+#: gcov.c:430
#, c-format
msgid ""
" -c, --branch-counts Given counts of branches taken\n"
" rather than percentages\n"
msgstr ""
-#: gcov.c:424
+#: gcov.c:432
#, c-format
msgid " -n, --no-output Do not create an output file\n"
msgstr ""
-#: gcov.c:425
+#: gcov.c:433
#, c-format
msgid ""
" -l, --long-file-names Use long output file names for included\n"
" source files\n"
msgstr ""
-#: gcov.c:427
+#: gcov.c:435
#, c-format
msgid " -f, --function-summaries Output summaries for each function\n"
msgstr ""
-#: gcov.c:428
+#: gcov.c:436
#, c-format
msgid ""
" -o, --object-directory DIR|FILE Search for object files in DIR or called "
"FILE\n"
msgstr ""
-#: gcov.c:429
+#: gcov.c:437
#, c-format
msgid " -p, --preserve-paths Preserve all pathname components\n"
msgstr ""
-#: gcov.c:430
+#: gcov.c:438
#, c-format
msgid ""
" -u, --unconditional-branches Show unconditional branch counts too\n"
msgstr ""
-#: gcov.c:431
+#: gcov.c:439
#, c-format
msgid " -d, --display-progress Display progress information\n"
msgstr ""
-#: gcov.c:432
+#: gcov.c:440
#, c-format
msgid ""
"\n"
@@ -882,12 +781,12 @@
"%s.\n"
msgstr ""
-#: gcov.c:442
+#: gcov.c:450
#, c-format
msgid "gcov %s%s\n"
msgstr ""
-#: gcov.c:446
+#: gcov.c:454
#, c-format
msgid ""
"This is free software; see the source for copying conditions.\n"
@@ -896,213 +795,209 @@
"\n"
msgstr ""
-#: gcov.c:546
+#: gcov.c:554
#, c-format
msgid "%s:no functions found\n"
msgstr ""
-#: gcov.c:578 gcov.c:606
+#: gcov.c:586 gcov.c:614
#, c-format
msgid "\n"
msgstr ""
-#: gcov.c:593
+#: gcov.c:601
#, c-format
msgid "%s:creating '%s'\n"
msgstr ""
-#: gcov.c:597
+#: gcov.c:605
#, c-format
msgid "%s:error writing output file '%s'\n"
msgstr ""
-#: gcov.c:602
+#: gcov.c:610
#, c-format
msgid "%s:could not open output file '%s'\n"
msgstr ""
-#: gcov.c:751
+#: gcov.c:756
#, c-format
msgid "%s:source file is newer than graph file '%s'\n"
msgstr ""
-#: gcov.c:756
+#: gcov.c:761
#, c-format
msgid "(the message is only displayed one per source file)\n"
msgstr ""
-#: gcov.c:780
+#: gcov.c:785
#, c-format
msgid "%s:cannot open graph file\n"
msgstr ""
-#: gcov.c:786
+#: gcov.c:791
#, c-format
msgid "%s:not a gcov graph file\n"
msgstr ""
-#: gcov.c:799
+#: gcov.c:804
#, c-format
msgid "%s:version '%.4s', prefer '%.4s'\n"
msgstr ""
-#: gcov.c:851
+#: gcov.c:859
#, c-format
msgid "%s:already seen blocks for '%s'\n"
msgstr ""
-#: gcov.c:969
+#: gcov.c:977
#, c-format
msgid "%s:corrupted\n"
msgstr ""
-#: gcov.c:1045
+#: gcov.c:1053
#, c-format
msgid "%s:cannot open data file, assuming not executed\n"
msgstr ""
-#: gcov.c:1052
+#: gcov.c:1060
#, c-format
msgid "%s:not a gcov data file\n"
msgstr ""
-#: gcov.c:1065
+#: gcov.c:1073
#, c-format
msgid "%s:version '%.4s', prefer version '%.4s'\n"
msgstr ""
-#: gcov.c:1071
+#: gcov.c:1079
#, c-format
msgid "%s:stamp mismatch with graph file\n"
msgstr ""
-#: gcov.c:1101
+#: gcov.c:1109
#, c-format
msgid "%s:unknown function '%u'\n"
msgstr ""
-#: gcov.c:1115
+#: gcov.c:1124
#, c-format
msgid "%s:profile mismatch for '%s'\n"
msgstr ""
-#: gcov.c:1134
+#: gcov.c:1143
#, c-format
msgid "%s:overflowed\n"
msgstr ""
-#: gcov.c:1158
+#: gcov.c:1167
#, c-format
msgid "%s:'%s' lacks entry and/or exit blocks\n"
msgstr ""
-#: gcov.c:1163
+#: gcov.c:1172
#, c-format
msgid "%s:'%s' has arcs to entry block\n"
msgstr ""
-#: gcov.c:1171
+#: gcov.c:1180
#, c-format
msgid "%s:'%s' has arcs from exit block\n"
msgstr ""
-#: gcov.c:1379
+#: gcov.c:1388
#, c-format
msgid "%s:graph is unsolvable for '%s'\n"
msgstr ""
-#: gcov.c:1459
+#: gcov.c:1468
#, c-format
msgid "%s '%s'\n"
msgstr ""
-#: gcov.c:1462
+#: gcov.c:1471
#, c-format
msgid "Lines executed:%s of %d\n"
msgstr ""
-#: gcov.c:1466
+#: gcov.c:1475
#, c-format
msgid "No executable lines\n"
msgstr ""
-#: gcov.c:1472
+#: gcov.c:1481
#, c-format
msgid "Branches executed:%s of %d\n"
msgstr ""
-#: gcov.c:1476
+#: gcov.c:1485
#, c-format
msgid "Taken at least once:%s of %d\n"
msgstr ""
-#: gcov.c:1482
+#: gcov.c:1491
#, c-format
msgid "No branches\n"
msgstr ""
-#: gcov.c:1484
+#: gcov.c:1493
#, c-format
msgid "Calls executed:%s of %d\n"
msgstr ""
-#: gcov.c:1488
+#: gcov.c:1497
#, c-format
msgid "No calls\n"
msgstr ""
-#: gcov.c:1648
+#: gcov.c:1666
#, c-format
msgid "%s:no lines for '%s'\n"
msgstr ""
-#: gcov.c:1843
+#: gcov.c:1861
#, c-format
msgid "call %2d returned %s\n"
msgstr ""
-#: gcov.c:1848
+#: gcov.c:1866
#, c-format
msgid "call %2d never executed\n"
msgstr ""
-#: gcov.c:1853
+#: gcov.c:1871
#, c-format
msgid "branch %2d taken %s%s\n"
msgstr ""
-#: gcov.c:1857
+#: gcov.c:1875
#, c-format
msgid "branch %2d never executed\n"
msgstr ""
-#: gcov.c:1862
+#: gcov.c:1880
#, c-format
msgid "unconditional %2d taken %s\n"
msgstr ""
-#: gcov.c:1865
+#: gcov.c:1883
#, c-format
msgid "unconditional %2d never executed\n"
msgstr ""
-#: gcov.c:1901
+#: gcov.c:1919
#, c-format
msgid "%s:cannot open source file\n"
msgstr ""
-#: gcse.c:4137
+#: gcse.c:2646
msgid "PRE disabled"
msgstr ""
-#: gcse.c:4682
+#: gcse.c:3191
msgid "GCSE disabled"
msgstr ""
-#: gcse.c:5203
-msgid "const/copy propagation disabled"
-msgstr ""
-
#: gengtype-state.c:150
#, c-format
msgid "%s:%d:%d: Invalid state file; %s"
@@ -1171,12 +1066,12 @@
msgid "failed to rename %s to state file %s [%s]"
msgstr ""
-#: gengtype-state.c:2395
+#: gengtype-state.c:2404
#, c-format
msgid "Failed to open state file %s for reading [%s]"
msgstr ""
-#: gengtype-state.c:2433
+#: gengtype-state.c:2442
#, c-format
msgid "failed to close read state file %s [%s]"
msgstr ""
@@ -1211,7 +1106,7 @@
msgid "End of search list.\n"
msgstr ""
-#: input.c:39 c-family/c-opts.c:1294 cp/error.c:1048 fortran/cpp.c:568
+#: input.c:39 c-family/c-opts.c:1311 cp/error.c:1067 fortran/cpp.c:568
msgid "<built-in>"
msgstr ""
@@ -1239,27 +1134,27 @@
msgid "At top level:"
msgstr ""
-#: langhooks.c:394 cp/error.c:2820
+#: langhooks.c:394 cp/error.c:2879
#, c-format
msgid "In member function %qs"
msgstr ""
-#: langhooks.c:398 cp/error.c:2823
+#: langhooks.c:398 cp/error.c:2882
#, c-format
msgid "In function %qs"
msgstr ""
-#: langhooks.c:449 cp/error.c:2773
+#: langhooks.c:449 cp/error.c:2832
#, c-format
msgid " inlined from %qs at %s:%d:%d"
msgstr ""
-#: langhooks.c:454 cp/error.c:2778
+#: langhooks.c:454 cp/error.c:2837
#, c-format
msgid " inlined from %qs at %s:%d"
msgstr ""
-#: langhooks.c:460 cp/error.c:2784
+#: langhooks.c:460 cp/error.c:2843
#, c-format
msgid " inlined from %qs"
msgstr ""
@@ -1280,52 +1175,62 @@
msgid "cannot optimize loop, the loop counter may overflow"
msgstr ""
-#: lto-wrapper.c:212
+#: lto-wrapper.c:173
+#, c-format
+msgid "pex_init failed"
+msgstr ""
+
+#: lto-wrapper.c:204
+#, c-format
+msgid "can't get program status"
+msgstr ""
+
+#: lto-wrapper.c:213
#, c-format
msgid "%s terminated with signal %d [%s], core dumped"
msgstr ""
-#: lto-wrapper.c:215
+#: lto-wrapper.c:216
#, c-format
msgid "%s terminated with signal %d [%s]"
msgstr ""
-#: lto-wrapper.c:220 collect2.c:1990
+#: lto-wrapper.c:221 collect2.c:1939
#, gcc-internal-format, gfc-internal-format
msgid "%s returned %d exit status"
msgstr ""
-#: lto-wrapper.c:236
+#: lto-wrapper.c:237
#, c-format
msgid "deleting LTRANS file %s"
msgstr ""
-#: lto-wrapper.c:258
+#: lto-wrapper.c:259
#, c-format
msgid "failed to open %s"
msgstr ""
-#: lto-wrapper.c:263
+#: lto-wrapper.c:264
#, c-format
msgid "could not write to temporary file %s"
msgstr ""
-#: lto-wrapper.c:302
+#: lto-wrapper.c:303
#, c-format
msgid "environment variable COLLECT_GCC must be set"
msgstr ""
-#: lto-wrapper.c:307
+#: lto-wrapper.c:308
#, c-format
msgid "environment variable COLLECT_GCC_OPTIONS must be set"
msgstr ""
-#: lto-wrapper.c:316
+#: lto-wrapper.c:317
#, c-format
msgid "malformed COLLECT_GCC_OPTIONS"
msgstr ""
-#: lto-wrapper.c:484
+#: lto-wrapper.c:485
#, c-format
msgid "fopen: %s"
msgstr ""
@@ -1335,81 +1240,81 @@
msgid "This switch lacks documentation"
msgstr ""
-#: opts.c:1007
+#: opts.c:1020
msgid "[default]"
msgstr ""
-#: opts.c:1018
+#: opts.c:1031
msgid "[enabled]"
msgstr ""
-#: opts.c:1018
+#: opts.c:1031
msgid "[disabled]"
msgstr ""
-#: opts.c:1037
+#: opts.c:1050
#, c-format
msgid " No options with the desired characteristics were found\n"
msgstr ""
-#: opts.c:1046
+#: opts.c:1059
#, c-format
msgid ""
" None found. Use --help=%s to show *all* the options supported by the %s "
"front-end\n"
msgstr ""
-#: opts.c:1052
+#: opts.c:1065
#, c-format
msgid ""
" All options with the desired characteristics have already been displayed\n"
msgstr ""
-#: opts.c:1147
+#: opts.c:1160
msgid "The following options are target specific"
msgstr ""
-#: opts.c:1150
+#: opts.c:1163
msgid "The following options control compiler warning messages"
msgstr ""
-#: opts.c:1153
+#: opts.c:1166
msgid "The following options control optimizations"
msgstr ""
-#: opts.c:1156 opts.c:1195
+#: opts.c:1169 opts.c:1208
msgid "The following options are language-independent"
msgstr ""
-#: opts.c:1159
+#: opts.c:1172
msgid "The --param option recognizes the following as parameters"
msgstr ""
-#: opts.c:1165
+#: opts.c:1178
msgid "The following options are specific to just the language "
msgstr ""
-#: opts.c:1167
+#: opts.c:1180
msgid "The following options are supported by the language "
msgstr ""
-#: opts.c:1178
+#: opts.c:1191
msgid "The following options are not documented"
msgstr ""
-#: opts.c:1180
+#: opts.c:1193
msgid "The following options take separate arguments"
msgstr ""
-#: opts.c:1182
+#: opts.c:1195
msgid "The following options take joined arguments"
msgstr ""
-#: opts.c:1193
+#: opts.c:1206
msgid "The following options are language-related"
msgstr ""
-#: opts.c:2007
+#: opts.c:2034
msgid "enabled by default"
msgstr ""
@@ -1428,21 +1333,21 @@
"you can reproduce it without enabling any plugins.\n"
msgstr ""
-#: reload.c:3805
+#: reload.c:3808
msgid "unable to generate reloads for:"
msgstr ""
-#: reload1.c:2105
+#: reload1.c:2113
msgid "this is the insn:"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:6009
+#: reload1.c:6040
msgid "could not find a spill register"
msgstr ""
#. It's the compiler's fault.
-#: reload1.c:7852
+#: reload1.c:7860
msgid "VOIDmode on an output"
msgstr ""
@@ -1458,100 +1363,90 @@
msgid "insn does not satisfy its constraints:"
msgstr ""
-#: targhooks.c:1454
+#: targhooks.c:1396
#, c-format
msgid "created and used with differing settings of '%s'"
msgstr ""
-#: targhooks.c:1456
+#: targhooks.c:1398
msgid "out of memory"
msgstr ""
-#: targhooks.c:1471
+#: targhooks.c:1413
msgid "created and used with different settings of -fpic"
msgstr ""
-#: targhooks.c:1473
+#: targhooks.c:1415
msgid "created and used with different settings of -fpie"
msgstr ""
-#: tlink.c:386
+#: tlink.c:387
#, c-format
msgid "collect: reading %s\n"
msgstr ""
-#: tlink.c:480
-#, c-format
-msgid "removing .rpo file"
-msgstr ""
-
-#: tlink.c:482
-#, c-format
-msgid "renaming .rpo file"
-msgstr ""
-
-#: tlink.c:536
+#: tlink.c:537
#, c-format
msgid "collect: recompiling %s\n"
msgstr ""
-#: tlink.c:743
+#: tlink.c:744
#, c-format
msgid "collect: tweaking %s in %s\n"
msgstr ""
-#: tlink.c:793
+#: tlink.c:794
#, c-format
msgid "collect: relinking\n"
msgstr ""
-#: toplev.c:355
+#: toplev.c:356
#, c-format
msgid "unrecoverable error"
msgstr ""
-#: toplev.c:691
+#: toplev.c:692
#, c-format
msgid ""
"%s%s%s %sversion %s (%s)\n"
"%s\tcompiled by GNU C version %s, "
msgstr ""
-#: toplev.c:693
+#: toplev.c:694
#, c-format
msgid "%s%s%s %sversion %s (%s) compiled by CC, "
msgstr ""
-#: toplev.c:697
+#: toplev.c:698
#, c-format
msgid "GMP version %s, MPFR version %s, MPC version %s\n"
msgstr ""
-#: toplev.c:699
+#: toplev.c:700
#, c-format
msgid "%s%swarning: %s header version %s differs from library version %s.\n"
msgstr ""
-#: toplev.c:701
+#: toplev.c:702
#, c-format
msgid ""
"%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n"
msgstr ""
-#: toplev.c:863
+#: toplev.c:864
msgid "options passed: "
msgstr ""
-#: toplev.c:891
+#: toplev.c:892
msgid "options enabled: "
msgstr ""
-#: tree-vrp.c:6815
+#: tree-vrp.c:6839
msgid ""
"assuming signed overflow does not occur when simplifying && or || to & or |"
msgstr ""
-#: tree-vrp.c:6819
+#: tree-vrp.c:6843
msgid ""
"assuming signed overflow does not occur when simplifying ==, != or ! to "
"identity or ^"
@@ -1623,19 +1518,31 @@
msgid "target specific option mismatch"
msgstr ""
-#: cif-code.def:82
+#: cif-code.def:83
+msgid "optimization level attribute mismatch"
+msgstr ""
+
+#: cif-code.def:84
msgid "mismatched arguments"
msgstr ""
-#: cif-code.def:86
+#: cif-code.def:88
msgid "originally indirect function call not considered for inlining"
msgstr ""
-#: cif-code.def:90
+#: cif-code.def:92
msgid "indirect function call with a yet undetermined callee"
msgstr ""
-#: cif-code.def:92
+#: cif-code.def:96 cif-code.def:101
+msgid "excepion handling personality mismatch"
+msgstr ""
+
+#: cif-code.def:106
+msgid "optimization mode mismatch"
+msgstr ""
+
+#: cif-code.def:108
msgid "function body can be overwriten at linktime"
msgstr ""
@@ -1899,688 +1806,697 @@
"scheduling a loop"
msgstr ""
-#: params.def:339
+#: params.def:340
+msgid ""
+"The minimum value of stage count that swing modulo scheduler will generate."
+msgstr ""
+
+#: params.def:344
msgid ""
"The number of cycles the swing modulo scheduler considers when checking "
"conflicts using DFA"
msgstr ""
-#: params.def:343
+#: params.def:348
msgid ""
"A threshold on the average loop count considered by the swing modulo "
"scheduler"
msgstr ""
-#: params.def:348
+#: params.def:353
msgid ""
"Select fraction of the maximal count of repetitions of basic block in "
"program given basic block needs to have to be considered hot"
msgstr ""
-#: params.def:352
+#: params.def:357
msgid ""
"Select fraction of the maximal frequency of executions of basic block in "
"function given basic block needs to have to be considered hot"
msgstr ""
-#: params.def:357
+#: params.def:362
msgid ""
"Select fraction of the maximal frequency of executions of basic block in "
"function given basic block get alignment"
msgstr ""
-#: params.def:362
+#: params.def:367
msgid ""
"Loops iterating at least selected number of iterations will get loop "
"alignement."
msgstr ""
-#: params.def:378
+#: params.def:383
msgid "The maximum number of loop iterations we predict statically"
msgstr ""
-#: params.def:382
+#: params.def:387
msgid ""
"The percentage of function, weighted by execution frequency, that must be "
"covered by trace formation. Used when profile feedback is available"
msgstr ""
-#: params.def:386
+#: params.def:391
msgid ""
"The percentage of function, weighted by execution frequency, that must be "
"covered by trace formation. Used when profile feedback is not available"
msgstr ""
-#: params.def:390
+#: params.def:395
msgid "Maximal code growth caused by tail duplication (in percent)"
msgstr ""
-#: params.def:394
+#: params.def:399
msgid ""
"Stop reverse growth if the reverse probability of best edge is less than "
"this threshold (in percent)"
msgstr ""
-#: params.def:398
+#: params.def:403
msgid ""
"Stop forward growth if the probability of best edge is less than this "
"threshold (in percent). Used when profile feedback is available"
msgstr ""
-#: params.def:402
+#: params.def:407
msgid ""
"Stop forward growth if the probability of best edge is less than this "
"threshold (in percent). Used when profile feedback is not available"
msgstr ""
-#: params.def:408
+#: params.def:413
msgid "The maximum number of incoming edges to consider for crossjumping"
msgstr ""
-#: params.def:414
+#: params.def:419
msgid ""
"The minimum number of matching instructions to consider for crossjumping"
msgstr ""
-#: params.def:420
+#: params.def:425
msgid "The maximum expansion factor when copying basic blocks"
msgstr ""
-#: params.def:426
+#: params.def:431
msgid ""
"The maximum number of insns to duplicate when unfactoring computed gotos"
msgstr ""
-#: params.def:432
+#: params.def:437
msgid "The maximum length of path considered in cse"
msgstr ""
-#: params.def:436
+#: params.def:441
msgid "The maximum instructions CSE process before flushing"
msgstr ""
-#: params.def:443
+#: params.def:448
msgid ""
"The minimum cost of an expensive expression in the loop invariant motion"
msgstr ""
-#: params.def:452
+#: params.def:457
msgid ""
"Bound on number of candidates below that all candidates are considered in iv "
"optimizations"
msgstr ""
-#: params.def:460
+#: params.def:465
msgid "Bound on number of iv uses in loop optimized in iv optimizations"
msgstr ""
-#: params.def:468
+#: params.def:473
msgid ""
"If number of candidates in the set is smaller, we always try to remove "
"unused ivs during its optimization"
msgstr ""
-#: params.def:473
+#: params.def:478
msgid "Bound on size of expressions used in the scalar evolutions analyzer"
msgstr ""
-#: params.def:478
+#: params.def:483
msgid ""
"Bound on the complexity of the expressions in the scalar evolutions analyzer"
msgstr ""
-#: params.def:483
+#: params.def:488
msgid "Bound on the number of variables in Omega constraint systems"
msgstr ""
-#: params.def:488
+#: params.def:493
msgid "Bound on the number of inequalities in Omega constraint systems"
msgstr ""
-#: params.def:493
+#: params.def:498
msgid "Bound on the number of equalities in Omega constraint systems"
msgstr ""
-#: params.def:498
+#: params.def:503
msgid "Bound on the number of wild cards in Omega constraint systems"
msgstr ""
-#: params.def:503
+#: params.def:508
msgid "Bound on the size of the hash table in Omega constraint systems"
msgstr ""
-#: params.def:508
-msgid "Bound on the number of keys in Omega constraint systems"
-msgstr ""
-
#: params.def:513
-msgid ""
-"When set to 1, use expensive methods to eliminate all redundant constraints"
+msgid "Bound on the number of keys in Omega constraint systems"
msgstr ""
#: params.def:518
msgid ""
-"Bound on number of runtime checks inserted by the vectorizer's loop "
-"versioning for alignment check"
+"When set to 1, use expensive methods to eliminate all redundant constraints"
msgstr ""
#: params.def:523
msgid ""
"Bound on number of runtime checks inserted by the vectorizer's loop "
-"versioning for alias check"
+"versioning for alignment check"
msgstr ""
#: params.def:528
+msgid ""
+"Bound on number of runtime checks inserted by the vectorizer's loop "
+"versioning for alias check"
+msgstr ""
+
+#: params.def:533
msgid "The maximum memory locations recorded by cselib"
msgstr ""
-#: params.def:541
+#: params.def:546
msgid ""
"Minimum heap expansion to trigger garbage collection, as a percentage of the "
"total size of the heap"
msgstr ""
-#: params.def:546
+#: params.def:551
msgid "Minimum heap size before we start collecting garbage, in kilobytes"
msgstr ""
-#: params.def:554
+#: params.def:559
msgid ""
"The maximum number of instructions to search backward when looking for "
"equivalent reload"
msgstr ""
-#: params.def:559 params.def:569
+#: params.def:564 params.def:574
msgid ""
"The maximum number of blocks in a region to be considered for interblock "
"scheduling"
msgstr ""
-#: params.def:564 params.def:574
+#: params.def:569 params.def:579
msgid ""
"The maximum number of insns in a region to be considered for interblock "
"scheduling"
msgstr ""
-#: params.def:579
+#: params.def:584
msgid ""
"The minimum probability of reaching a source block for interblock "
"speculative scheduling"
msgstr ""
-#: params.def:584
+#: params.def:589
msgid "The maximum number of iterations through CFG to extend regions"
msgstr ""
-#: params.def:589
+#: params.def:594
msgid ""
"The maximum conflict delay for an insn to be considered for speculative "
"motion"
msgstr ""
-#: params.def:594
+#: params.def:599
msgid ""
"The minimal probability of speculation success (in percents), so that "
"speculative insn will be scheduled."
msgstr ""
-#: params.def:599
+#: params.def:604
msgid "The maximum size of the lookahead window of selective scheduling"
msgstr ""
-#: params.def:604
+#: params.def:609
msgid "Maximum number of times that an insn could be scheduled"
msgstr ""
-#: params.def:609
+#: params.def:614
msgid ""
"Maximum number of instructions in the ready list that are considered "
"eligible for renaming"
msgstr ""
-#: params.def:614
+#: params.def:619
msgid "Minimal distance between possibly conflicting store and load"
msgstr ""
-#: params.def:619
+#: params.def:624
msgid ""
"The maximum number of RTL nodes that can be recorded as combiner's last value"
msgstr ""
-#: params.def:627
+#: params.def:632
msgid "The upper bound for sharing integer constants"
msgstr ""
-#: params.def:646
+#: params.def:651
msgid ""
"Minimum number of virtual mappings to consider switching to full virtual "
"renames"
msgstr ""
-#: params.def:651
+#: params.def:656
msgid ""
"Ratio between virtual mappings and virtual symbols to do full virtual renames"
msgstr ""
-#: params.def:656
+#: params.def:661
msgid ""
"The lower bound for a buffer to be considered for stack smashing protection"
msgstr ""
-#: params.def:674
+#: params.def:679
msgid ""
"Maximum number of statements allowed in a block that needs to be duplicated "
"when threading jumps"
msgstr ""
-#: params.def:683
+#: params.def:688
msgid ""
"Maximum number of fields in a structure before pointer analysis treats the "
"structure as a single variable"
msgstr ""
-#: params.def:688
+#: params.def:693
msgid ""
"The maximum number of instructions ready to be issued to be considered by "
"the scheduler during the first scheduling pass"
msgstr ""
-#: params.def:694
+#: params.def:699
msgid "Maximum number of active local stores in RTL dead store elimination"
msgstr ""
-#: params.def:704
+#: params.def:709
msgid "The number of insns executed before prefetch is completed"
msgstr ""
-#: params.def:711
+#: params.def:716
msgid "The number of prefetches that can run at the same time"
msgstr ""
-#: params.def:718
+#: params.def:723
msgid "The size of L1 cache"
msgstr ""
-#: params.def:725
+#: params.def:730
msgid "The size of L1 cache line"
msgstr ""
-#: params.def:732
+#: params.def:737
msgid "The size of L2 cache"
msgstr ""
-#: params.def:743
+#: params.def:748
msgid "Whether to use canonical types"
msgstr ""
-#: params.def:748
+#: params.def:753
msgid ""
"Maximum length of partial antic set when performing tree pre optimization"
msgstr ""
-#: params.def:758
+#: params.def:763
msgid "Maximum size of a SCC before SCCVN stops processing a function"
msgstr ""
-#: params.def:763
+#: params.def:768
msgid "Max loops number for regional RA"
msgstr ""
-#: params.def:768
+#: params.def:773
msgid "Max size of conflict table in MB"
msgstr ""
-#: params.def:773
+#: params.def:778
msgid ""
"The number of registers in each class kept unused by loop invariant motion"
msgstr ""
-#: params.def:781
+#: params.def:786
msgid ""
"The maximum ratio between array size and switch branches for a switch "
"conversion to take place"
msgstr ""
-#: params.def:789
+#: params.def:794
msgid "size of tiles for loop blocking"
msgstr ""
-#: params.def:796
+#: params.def:801
msgid "maximum number of parameters in a SCoP"
msgstr ""
-#: params.def:803
+#: params.def:808
msgid "maximum number of basic blocks per function to be analyzed by Graphite"
msgstr ""
-#: params.def:810
+#: params.def:815
msgid "Max basic blocks number in loop for loop invariant motion"
msgstr ""
-#: params.def:816
+#: params.def:821
msgid ""
"Maximum number of instructions in basic block to be considered for SLP "
"vectorization"
msgstr ""
-#: params.def:821
+#: params.def:826
msgid ""
"Min. ratio of insns to prefetches to enable prefetching for a loop with an "
"unknown trip count"
msgstr ""
-#: params.def:827
+#: params.def:832
msgid "Min. ratio of insns to mem ops to enable prefetching in a loop"
msgstr ""
-#: params.def:834
+#: params.def:839
msgid "Max. size of var tracking hash tables"
msgstr ""
-#: params.def:841
+#: params.def:847
+msgid "Max. recursion depth for expanding var tracking expressions"
+msgstr ""
+
+#: params.def:854
msgid "The minimum UID to be used for a nondebug insn"
msgstr ""
-#: params.def:846
+#: params.def:859
msgid ""
"Maximum allowed growth of size of new parameters ipa-sra replaces a pointer "
"to an aggregate with"
msgstr ""
-#: params.def:852
+#: params.def:865
msgid ""
"Maximum size of a type list associated with each parameter for "
"devirtualization"
msgstr ""
-#: params.def:860
+#: params.def:873
msgid "Number of partitions the program should be split to"
msgstr ""
-#: params.def:865
+#: params.def:878
msgid "Minimal size of a partition for LTO (in estimated instructions)"
msgstr ""
-#: params.def:872
+#: params.def:885
msgid ""
"Maximum number of namespaces to search for alternatives when name lookup "
"fails"
msgstr ""
-#: params.def:879
+#: params.def:892
msgid "Maximum number of conditional store pairs that can be sunk"
msgstr ""
-#: c-family/c-format.c:368
+#: c-family/c-format.c:367
msgid "format"
msgstr ""
-#: c-family/c-format.c:369
+#: c-family/c-format.c:368
msgid "field width specifier"
msgstr ""
-#: c-family/c-format.c:370
+#: c-family/c-format.c:369
msgid "field precision specifier"
msgstr ""
-#: c-family/c-format.c:484 c-family/c-format.c:508 config/i386/msformat-c.c:49
+#: c-family/c-format.c:483 c-family/c-format.c:507 config/i386/msformat-c.c:49
msgid "' ' flag"
msgstr ""
-#: c-family/c-format.c:484 c-family/c-format.c:508 config/i386/msformat-c.c:49
+#: c-family/c-format.c:483 c-family/c-format.c:507 config/i386/msformat-c.c:49
msgid "the ' ' printf flag"
msgstr ""
-#: c-family/c-format.c:485 c-family/c-format.c:509 c-family/c-format.c:543
-#: c-family/c-format.c:606 config/i386/msformat-c.c:50
+#: c-family/c-format.c:484 c-family/c-format.c:508 c-family/c-format.c:542
+#: c-family/c-format.c:605 config/i386/msformat-c.c:50
msgid "'+' flag"
msgstr ""
-#: c-family/c-format.c:485 c-family/c-format.c:509 c-family/c-format.c:543
+#: c-family/c-format.c:484 c-family/c-format.c:508 c-family/c-format.c:542
#: config/i386/msformat-c.c:50
msgid "the '+' printf flag"
msgstr ""
-#: c-family/c-format.c:486 c-family/c-format.c:510 c-family/c-format.c:544
-#: c-family/c-format.c:582 config/i386/msformat-c.c:51
+#: c-family/c-format.c:485 c-family/c-format.c:509 c-family/c-format.c:543
+#: c-family/c-format.c:581 config/i386/msformat-c.c:51
#: config/i386/msformat-c.c:86
msgid "'#' flag"
msgstr ""
-#: c-family/c-format.c:486 c-family/c-format.c:510 c-family/c-format.c:544
+#: c-family/c-format.c:485 c-family/c-format.c:509 c-family/c-format.c:543
#: config/i386/msformat-c.c:51
msgid "the '#' printf flag"
msgstr ""
-#: c-family/c-format.c:487 c-family/c-format.c:511 c-family/c-format.c:580
+#: c-family/c-format.c:486 c-family/c-format.c:510 c-family/c-format.c:579
#: config/i386/msformat-c.c:52
msgid "'0' flag"
msgstr ""
-#: c-family/c-format.c:487 c-family/c-format.c:511 config/i386/msformat-c.c:52
+#: c-family/c-format.c:486 c-family/c-format.c:510 config/i386/msformat-c.c:52
msgid "the '0' printf flag"
msgstr ""
-#: c-family/c-format.c:488 c-family/c-format.c:512 c-family/c-format.c:579
-#: c-family/c-format.c:609 config/i386/msformat-c.c:53
+#: c-family/c-format.c:487 c-family/c-format.c:511 c-family/c-format.c:578
+#: c-family/c-format.c:608 config/i386/msformat-c.c:53
msgid "'-' flag"
msgstr ""
-#: c-family/c-format.c:488 c-family/c-format.c:512 config/i386/msformat-c.c:53
+#: c-family/c-format.c:487 c-family/c-format.c:511 config/i386/msformat-c.c:53
msgid "the '-' printf flag"
msgstr ""
-#: c-family/c-format.c:489 c-family/c-format.c:562 config/i386/msformat-c.c:54
+#: c-family/c-format.c:488 c-family/c-format.c:561 config/i386/msformat-c.c:54
#: config/i386/msformat-c.c:74
msgid "''' flag"
msgstr ""
-#: c-family/c-format.c:489 config/i386/msformat-c.c:54
+#: c-family/c-format.c:488 config/i386/msformat-c.c:54
msgid "the ''' printf flag"
msgstr ""
-#: c-family/c-format.c:490 c-family/c-format.c:563
+#: c-family/c-format.c:489 c-family/c-format.c:562
msgid "'I' flag"
msgstr ""
-#: c-family/c-format.c:490
+#: c-family/c-format.c:489
msgid "the 'I' printf flag"
msgstr ""
-#: c-family/c-format.c:491 c-family/c-format.c:513 c-family/c-format.c:560
-#: c-family/c-format.c:583 c-family/c-format.c:610 config/sol2-c.c:44
+#: c-family/c-format.c:490 c-family/c-format.c:512 c-family/c-format.c:559
+#: c-family/c-format.c:582 c-family/c-format.c:609 config/sol2-c.c:44
#: config/i386/msformat-c.c:55 config/i386/msformat-c.c:72
msgid "field width"
msgstr ""
-#: c-family/c-format.c:491 c-family/c-format.c:513 config/sol2-c.c:44
+#: c-family/c-format.c:490 c-family/c-format.c:512 config/sol2-c.c:44
#: config/i386/msformat-c.c:55
msgid "field width in printf format"
msgstr ""
-#: c-family/c-format.c:492 c-family/c-format.c:514 c-family/c-format.c:546
+#: c-family/c-format.c:491 c-family/c-format.c:513 c-family/c-format.c:545
#: config/i386/msformat-c.c:56
msgid "precision"
msgstr ""
-#: c-family/c-format.c:492 c-family/c-format.c:514 c-family/c-format.c:546
+#: c-family/c-format.c:491 c-family/c-format.c:513 c-family/c-format.c:545
#: config/i386/msformat-c.c:56
msgid "precision in printf format"
msgstr ""
-#: c-family/c-format.c:493 c-family/c-format.c:515 c-family/c-format.c:547
-#: c-family/c-format.c:561 c-family/c-format.c:613 config/sol2-c.c:45
+#: c-family/c-format.c:492 c-family/c-format.c:514 c-family/c-format.c:546
+#: c-family/c-format.c:560 c-family/c-format.c:612 config/sol2-c.c:45
#: config/i386/msformat-c.c:57 config/i386/msformat-c.c:73
msgid "length modifier"
msgstr ""
-#: c-family/c-format.c:493 c-family/c-format.c:515 c-family/c-format.c:547
+#: c-family/c-format.c:492 c-family/c-format.c:514 c-family/c-format.c:546
#: config/sol2-c.c:45 config/i386/msformat-c.c:57
msgid "length modifier in printf format"
msgstr ""
-#: c-family/c-format.c:545
+#: c-family/c-format.c:544
msgid "'q' flag"
msgstr ""
-#: c-family/c-format.c:545
+#: c-family/c-format.c:544
msgid "the 'q' diagnostic flag"
msgstr ""
-#: c-family/c-format.c:557 config/i386/msformat-c.c:70
+#: c-family/c-format.c:556 config/i386/msformat-c.c:70
msgid "assignment suppression"
msgstr ""
-#: c-family/c-format.c:557 config/i386/msformat-c.c:70
+#: c-family/c-format.c:556 config/i386/msformat-c.c:70
msgid "the assignment suppression scanf feature"
msgstr ""
-#: c-family/c-format.c:558 config/i386/msformat-c.c:71
+#: c-family/c-format.c:557 config/i386/msformat-c.c:71
msgid "'a' flag"
msgstr ""
-#: c-family/c-format.c:558 config/i386/msformat-c.c:71
+#: c-family/c-format.c:557 config/i386/msformat-c.c:71
msgid "the 'a' scanf flag"
msgstr ""
-#: c-family/c-format.c:559
+#: c-family/c-format.c:558
msgid "'m' flag"
msgstr ""
-#: c-family/c-format.c:559
+#: c-family/c-format.c:558
msgid "the 'm' scanf flag"
msgstr ""
-#: c-family/c-format.c:560 config/i386/msformat-c.c:72
+#: c-family/c-format.c:559 config/i386/msformat-c.c:72
msgid "field width in scanf format"
msgstr ""
-#: c-family/c-format.c:561 config/i386/msformat-c.c:73
+#: c-family/c-format.c:560 config/i386/msformat-c.c:73
msgid "length modifier in scanf format"
msgstr ""
-#: c-family/c-format.c:562 config/i386/msformat-c.c:74
+#: c-family/c-format.c:561 config/i386/msformat-c.c:74
msgid "the ''' scanf flag"
msgstr ""
-#: c-family/c-format.c:563
+#: c-family/c-format.c:562
msgid "the 'I' scanf flag"
msgstr ""
-#: c-family/c-format.c:578
+#: c-family/c-format.c:577
msgid "'_' flag"
msgstr ""
-#: c-family/c-format.c:578
+#: c-family/c-format.c:577
msgid "the '_' strftime flag"
msgstr ""
-#: c-family/c-format.c:579
+#: c-family/c-format.c:578
msgid "the '-' strftime flag"
msgstr ""
-#: c-family/c-format.c:580
+#: c-family/c-format.c:579
msgid "the '0' strftime flag"
msgstr ""
-#: c-family/c-format.c:581 c-family/c-format.c:605
+#: c-family/c-format.c:580 c-family/c-format.c:604
msgid "'^' flag"
msgstr ""
-#: c-family/c-format.c:581
+#: c-family/c-format.c:580
msgid "the '^' strftime flag"
msgstr ""
-#: c-family/c-format.c:582 config/i386/msformat-c.c:86
+#: c-family/c-format.c:581 config/i386/msformat-c.c:86
msgid "the '#' strftime flag"
msgstr ""
-#: c-family/c-format.c:583
+#: c-family/c-format.c:582
msgid "field width in strftime format"
msgstr ""
-#: c-family/c-format.c:584
+#: c-family/c-format.c:583
msgid "'E' modifier"
msgstr ""
-#: c-family/c-format.c:584
+#: c-family/c-format.c:583
msgid "the 'E' strftime modifier"
msgstr ""
-#: c-family/c-format.c:585
+#: c-family/c-format.c:584
msgid "'O' modifier"
msgstr ""
-#: c-family/c-format.c:585
+#: c-family/c-format.c:584
msgid "the 'O' strftime modifier"
msgstr ""
-#: c-family/c-format.c:586
+#: c-family/c-format.c:585
msgid "the 'O' modifier"
msgstr ""
-#: c-family/c-format.c:604
+#: c-family/c-format.c:603
msgid "fill character"
msgstr ""
-#: c-family/c-format.c:604
+#: c-family/c-format.c:603
msgid "fill character in strfmon format"
msgstr ""
-#: c-family/c-format.c:605
+#: c-family/c-format.c:604
msgid "the '^' strfmon flag"
msgstr ""
-#: c-family/c-format.c:606
+#: c-family/c-format.c:605
msgid "the '+' strfmon flag"
msgstr ""
-#: c-family/c-format.c:607
+#: c-family/c-format.c:606
msgid "'(' flag"
msgstr ""
-#: c-family/c-format.c:607
+#: c-family/c-format.c:606
msgid "the '(' strfmon flag"
msgstr ""
-#: c-family/c-format.c:608
+#: c-family/c-format.c:607
msgid "'!' flag"
msgstr ""
-#: c-family/c-format.c:608
+#: c-family/c-format.c:607
msgid "the '!' strfmon flag"
msgstr ""
-#: c-family/c-format.c:609
+#: c-family/c-format.c:608
msgid "the '-' strfmon flag"
msgstr ""
-#: c-family/c-format.c:610
+#: c-family/c-format.c:609
msgid "field width in strfmon format"
msgstr ""
-#: c-family/c-format.c:611
+#: c-family/c-format.c:610
msgid "left precision"
msgstr ""
-#: c-family/c-format.c:611
+#: c-family/c-format.c:610
msgid "left precision in strfmon format"
msgstr ""
-#: c-family/c-format.c:612
+#: c-family/c-format.c:611
msgid "right precision"
msgstr ""
-#: c-family/c-format.c:612
+#: c-family/c-format.c:611
msgid "right precision in strfmon format"
msgstr ""
-#: c-family/c-format.c:613
+#: c-family/c-format.c:612
msgid "length modifier in strfmon format"
msgstr ""
#. Handle deferred options from command-line.
-#: c-family/c-opts.c:1312 fortran/cpp.c:573
+#: c-family/c-opts.c:1329 fortran/cpp.c:573
msgid "<command-line>"
msgstr ""
@@ -2612,506 +2528,492 @@
msgid "<tag-error>"
msgstr ""
-#: c-family/c-pretty-print.c:1207
+#: c-family/c-pretty-print.c:1212
msgid "<erroneous-expression>"
msgstr ""
-#: c-family/c-pretty-print.c:1211 cp/cxx-pretty-print.c:153
+#: c-family/c-pretty-print.c:1216 cp/cxx-pretty-print.c:153
msgid "<return-value>"
msgstr ""
-#: config/alpha/alpha.c:5096
+#: config/alpha/alpha.c:4903
#, c-format
msgid "invalid %%H value"
msgstr ""
-#: config/alpha/alpha.c:5117 config/bfin/bfin.c:1658
+#: config/alpha/alpha.c:4924 config/bfin/bfin.c:1422
#, c-format
msgid "invalid %%J value"
msgstr ""
-#: config/alpha/alpha.c:5147 config/ia64/ia64.c:5171
+#: config/alpha/alpha.c:4954 config/ia64/ia64.c:5147
#, c-format
msgid "invalid %%r value"
msgstr ""
-#: config/alpha/alpha.c:5157 config/ia64/ia64.c:5125
-#: config/rs6000/rs6000.c:16121 config/xtensa/xtensa.c:2356
+#: config/alpha/alpha.c:4964 config/ia64/ia64.c:5101
+#: config/rs6000/rs6000.c:15576 config/xtensa/xtensa.c:2350
#, c-format
msgid "invalid %%R value"
msgstr ""
-#: config/alpha/alpha.c:5163 config/rs6000/rs6000.c:16040
-#: config/xtensa/xtensa.c:2323
+#: config/alpha/alpha.c:4970 config/rs6000/rs6000.c:15495
+#: config/xtensa/xtensa.c:2317
#, c-format
msgid "invalid %%N value"
msgstr ""
-#: config/alpha/alpha.c:5171 config/rs6000/rs6000.c:16068
+#: config/alpha/alpha.c:4978 config/rs6000/rs6000.c:15523
#, c-format
msgid "invalid %%P value"
msgstr ""
-#: config/alpha/alpha.c:5179
+#: config/alpha/alpha.c:4986
#, c-format
msgid "invalid %%h value"
msgstr ""
-#: config/alpha/alpha.c:5187 config/xtensa/xtensa.c:2349
+#: config/alpha/alpha.c:4994 config/xtensa/xtensa.c:2343
#, c-format
msgid "invalid %%L value"
msgstr ""
-#: config/alpha/alpha.c:5226 config/rs6000/rs6000.c:16022
+#: config/alpha/alpha.c:5033 config/rs6000/rs6000.c:15477
#, c-format
msgid "invalid %%m value"
msgstr ""
-#: config/alpha/alpha.c:5234 config/rs6000/rs6000.c:16030
+#: config/alpha/alpha.c:5041 config/rs6000/rs6000.c:15485
#, c-format
msgid "invalid %%M value"
msgstr ""
-#: config/alpha/alpha.c:5278
+#: config/alpha/alpha.c:5085
#, c-format
msgid "invalid %%U value"
msgstr ""
-#: config/alpha/alpha.c:5290 config/alpha/alpha.c:5304
-#: config/rs6000/rs6000.c:16129
+#: config/alpha/alpha.c:5093 config/alpha/alpha.c:5104
+#: config/rs6000/rs6000.c:15584
#, c-format
msgid "invalid %%s value"
msgstr ""
-#: config/alpha/alpha.c:5315
+#: config/alpha/alpha.c:5115
#, c-format
msgid "invalid %%C value"
msgstr ""
-#: config/alpha/alpha.c:5352 config/rs6000/rs6000.c:15887
+#: config/alpha/alpha.c:5152 config/rs6000/rs6000.c:15342
#, c-format
msgid "invalid %%E value"
msgstr ""
-#: config/alpha/alpha.c:5377 config/alpha/alpha.c:5425
+#: config/alpha/alpha.c:5177 config/alpha/alpha.c:5225
#, c-format
msgid "unknown relocation unspec"
msgstr ""
-#: config/alpha/alpha.c:5386 config/rs6000/rs6000.c:16495
-#: config/spu/spu.c:1728
+#: config/alpha/alpha.c:5186 config/rs6000/rs6000.c:15950
+#: config/spu/spu.c:1726
#, c-format
msgid "invalid %%xn code"
msgstr ""
-#: config/arm/arm.c:16041 config/arm/arm.c:16059
+#: config/arm/arm.c:15982 config/arm/arm.c:16000
#, c-format
msgid "predicated Thumb instruction"
msgstr ""
-#: config/arm/arm.c:16047
+#: config/arm/arm.c:15988
#, c-format
msgid "predicated instruction in conditional sequence"
msgstr ""
-#: config/arm/arm.c:16217
+#: config/arm/arm.c:16158
#, c-format
msgid "invalid shift operand"
msgstr ""
-#: config/arm/arm.c:16274 config/arm/arm.c:16296 config/arm/arm.c:16306
-#: config/arm/arm.c:16316 config/arm/arm.c:16326 config/arm/arm.c:16365
-#: config/arm/arm.c:16383 config/arm/arm.c:16418 config/arm/arm.c:16437
-#: config/arm/arm.c:16452 config/arm/arm.c:16479 config/arm/arm.c:16486
-#: config/arm/arm.c:16504 config/arm/arm.c:16511 config/arm/arm.c:16519
-#: config/arm/arm.c:16540 config/arm/arm.c:16547 config/arm/arm.c:16672
-#: config/arm/arm.c:16679 config/arm/arm.c:16697 config/arm/arm.c:16704
-#: config/bfin/bfin.c:1671 config/bfin/bfin.c:1678 config/bfin/bfin.c:1685
-#: config/bfin/bfin.c:1692 config/bfin/bfin.c:1701 config/bfin/bfin.c:1708
-#: config/bfin/bfin.c:1715 config/bfin/bfin.c:1722
+#: config/arm/arm.c:16215 config/arm/arm.c:16237 config/arm/arm.c:16247
+#: config/arm/arm.c:16257 config/arm/arm.c:16267 config/arm/arm.c:16306
+#: config/arm/arm.c:16324 config/arm/arm.c:16359 config/arm/arm.c:16378
+#: config/arm/arm.c:16393 config/arm/arm.c:16420 config/arm/arm.c:16427
+#: config/arm/arm.c:16445 config/arm/arm.c:16452 config/arm/arm.c:16460
+#: config/arm/arm.c:16481 config/arm/arm.c:16488 config/arm/arm.c:16613
+#: config/arm/arm.c:16620 config/arm/arm.c:16638 config/arm/arm.c:16645
+#: config/bfin/bfin.c:1435 config/bfin/bfin.c:1442 config/bfin/bfin.c:1449
+#: config/bfin/bfin.c:1456 config/bfin/bfin.c:1465 config/bfin/bfin.c:1472
+#: config/bfin/bfin.c:1479 config/bfin/bfin.c:1486
#, c-format
msgid "invalid operand for code '%c'"
msgstr ""
-#: config/arm/arm.c:16378
+#: config/arm/arm.c:16319
#, c-format
msgid "instruction never executed"
msgstr ""
-#: config/arm/arm.c:16716
+#: config/arm/arm.c:16657
#, c-format
msgid "missing operand"
msgstr ""
-#: config/arm/arm.c:19146
+#: config/arm/arm.c:19219
msgid "function parameters cannot have __fp16 type"
msgstr ""
-#: config/arm/arm.c:19156
+#: config/arm/arm.c:19229
msgid "functions cannot return __fp16 type"
msgstr ""
-#: config/avr/avr.c:1239
+#: config/avr/avr.c:1197
#, c-format
msgid "address operand requires constraint for X, Y, or Z register"
msgstr ""
-#: config/avr/avr.c:1365
+#: config/avr/avr.c:1325
msgid "bad address, not a constant):"
msgstr ""
-#: config/avr/avr.c:1378
+#: config/avr/avr.c:1338
msgid "bad address, not (reg+disp):"
msgstr ""
-#: config/avr/avr.c:1385
+#: config/avr/avr.c:1345
msgid "bad address, not post_inc or pre_dec:"
msgstr ""
-#: config/avr/avr.c:1396
+#: config/avr/avr.c:1356
msgid "internal compiler error. Bad address:"
msgstr ""
-#: config/avr/avr.c:1421
+#: config/avr/avr.c:1381
msgid "internal compiler error. Unknown mode:"
msgstr ""
-#: config/avr/avr.c:2082 config/avr/avr.c:2770
+#: config/avr/avr.c:2060 config/avr/avr.c:2748
msgid "invalid insn:"
msgstr ""
-#: config/avr/avr.c:2121 config/avr/avr.c:2207 config/avr/avr.c:2256
-#: config/avr/avr.c:2284 config/avr/avr.c:2379 config/avr/avr.c:2548
-#: config/avr/avr.c:2809 config/avr/avr.c:2921
+#: config/avr/avr.c:2099 config/avr/avr.c:2185 config/avr/avr.c:2234
+#: config/avr/avr.c:2262 config/avr/avr.c:2357 config/avr/avr.c:2526
+#: config/avr/avr.c:2787 config/avr/avr.c:2899
msgid "incorrect insn:"
msgstr ""
-#: config/avr/avr.c:2303 config/avr/avr.c:2464 config/avr/avr.c:2619
-#: config/avr/avr.c:2987
+#: config/avr/avr.c:2281 config/avr/avr.c:2442 config/avr/avr.c:2597
+#: config/avr/avr.c:2965
msgid "unknown move insn:"
msgstr ""
-#: config/avr/avr.c:3217
+#: config/avr/avr.c:3195
msgid "bad shift insn:"
msgstr ""
-#: config/avr/avr.c:3333 config/avr/avr.c:3753 config/avr/avr.c:4111
+#: config/avr/avr.c:3311 config/avr/avr.c:3731 config/avr/avr.c:4089
msgid "internal compiler error. Incorrect shift:"
msgstr ""
-#: config/bfin/bfin.c:1620
+#: config/bfin/bfin.c:1384
#, c-format
msgid "invalid %%j value"
msgstr ""
-#: config/bfin/bfin.c:1813
+#: config/bfin/bfin.c:1577
#, c-format
msgid "invalid const_double operand"
msgstr ""
-#: config/cris/cris.c:577 config/moxie/moxie.c:111 final.c:3068 final.c:3070
-#: fold-const.c:281 gcc.c:4586 gcc.c:4600 loop-iv.c:2968 loop-iv.c:2977
-#: rtl-error.c:103 toplev.c:359 tree-ssa-loop-niter.c:1921 tree-vrp.c:6015
-#: cp/typeck.c:5232 java/expr.c:384 lto/lto-object.c:184 lto/lto-object.c:269
+#: config/cris/cris.c:561 config/moxie/moxie.c:111 final.c:3147 final.c:3149
+#: fold-const.c:290 gcc.c:4598 gcc.c:4612 loop-iv.c:2968 loop-iv.c:2977
+#: rtl-error.c:103 toplev.c:360 tree-ssa-loop-niter.c:1921 tree-vrp.c:6039
+#: cp/typeck.c:5248 java/expr.c:390 lto/lto-object.c:184 lto/lto-object.c:269
#: lto/lto-object.c:326 lto/lto-object.c:350
#, gcc-internal-format, gfc-internal-format
msgid "%s"
msgstr ""
-#: config/cris/cris.c:628
+#: config/cris/cris.c:612
msgid "unexpected index-type in cris_print_index"
msgstr ""
-#: config/cris/cris.c:645
+#: config/cris/cris.c:629
msgid "unexpected base-type in cris_print_base"
msgstr ""
-#: config/cris/cris.c:710
+#: config/cris/cris.c:694
msgid "invalid operand for 'b' modifier"
msgstr ""
-#: config/cris/cris.c:727
+#: config/cris/cris.c:711
msgid "invalid operand for 'o' modifier"
msgstr ""
-#: config/cris/cris.c:746
+#: config/cris/cris.c:730
msgid "invalid operand for 'O' modifier"
msgstr ""
-#: config/cris/cris.c:779
+#: config/cris/cris.c:763
msgid "invalid operand for 'p' modifier"
msgstr ""
-#: config/cris/cris.c:818
+#: config/cris/cris.c:802
msgid "invalid operand for 'z' modifier"
msgstr ""
-#: config/cris/cris.c:882 config/cris/cris.c:916
+#: config/cris/cris.c:866 config/cris/cris.c:900
msgid "invalid operand for 'H' modifier"
msgstr ""
-#: config/cris/cris.c:892
+#: config/cris/cris.c:876
msgid "bad register"
msgstr ""
-#: config/cris/cris.c:936
+#: config/cris/cris.c:920
msgid "invalid operand for 'e' modifier"
msgstr ""
-#: config/cris/cris.c:953
+#: config/cris/cris.c:937
msgid "invalid operand for 'm' modifier"
msgstr ""
-#: config/cris/cris.c:978
+#: config/cris/cris.c:962
msgid "invalid operand for 'A' modifier"
msgstr ""
-#: config/cris/cris.c:1001
+#: config/cris/cris.c:985
msgid "invalid operand for 'D' modifier"
msgstr ""
-#: config/cris/cris.c:1015
+#: config/cris/cris.c:999
msgid "invalid operand for 'T' modifier"
msgstr ""
-#: config/cris/cris.c:1035 config/moxie/moxie.c:181
+#: config/cris/cris.c:1019 config/moxie/moxie.c:181
msgid "invalid operand modifier letter"
msgstr ""
-#: config/cris/cris.c:1092
+#: config/cris/cris.c:1076
msgid "unexpected multiplicative operand"
msgstr ""
-#: config/cris/cris.c:1112 config/moxie/moxie.c:206
+#: config/cris/cris.c:1096 config/moxie/moxie.c:206
msgid "unexpected operand"
msgstr ""
-#: config/cris/cris.c:1151 config/cris/cris.c:1161
+#: config/cris/cris.c:1135 config/cris/cris.c:1145
msgid "unrecognized address"
msgstr ""
-#: config/cris/cris.c:2285
+#: config/cris/cris.c:2258
msgid "unrecognized supposed constant"
msgstr ""
-#: config/cris/cris.c:2716 config/cris/cris.c:2780
+#: config/cris/cris.c:2629 config/cris/cris.c:2693
msgid "unexpected side-effects in address"
msgstr ""
#. Can't possibly get a GOT-needing-fixup for a function-call,
#. right?
-#: config/cris/cris.c:3615
+#: config/cris/cris.c:3528
msgid "unidentifiable call op"
msgstr ""
-#: config/cris/cris.c:3667
+#: config/cris/cris.c:3580
#, c-format
msgid "PIC register isn't set up"
msgstr ""
-#: config/fr30/fr30.c:513
+#: config/fr30/fr30.c:503
#, c-format
msgid "fr30_print_operand_address: unhandled address"
msgstr ""
-#: config/fr30/fr30.c:537
+#: config/fr30/fr30.c:527
#, c-format
msgid "fr30_print_operand: unrecognized %%p code"
msgstr ""
-#: config/fr30/fr30.c:557
+#: config/fr30/fr30.c:547
#, c-format
msgid "fr30_print_operand: unrecognized %%b code"
msgstr ""
-#: config/fr30/fr30.c:578
+#: config/fr30/fr30.c:568
#, c-format
msgid "fr30_print_operand: unrecognized %%B code"
msgstr ""
-#: config/fr30/fr30.c:586
+#: config/fr30/fr30.c:576
#, c-format
msgid "fr30_print_operand: invalid operand to %%A code"
msgstr ""
-#: config/fr30/fr30.c:603
+#: config/fr30/fr30.c:593
#, c-format
msgid "fr30_print_operand: invalid %%x code"
msgstr ""
-#: config/fr30/fr30.c:610
+#: config/fr30/fr30.c:600
#, c-format
msgid "fr30_print_operand: invalid %%F code"
msgstr ""
-#: config/fr30/fr30.c:627
+#: config/fr30/fr30.c:617
#, c-format
msgid "fr30_print_operand: unknown code"
msgstr ""
-#: config/fr30/fr30.c:655 config/fr30/fr30.c:664 config/fr30/fr30.c:675
-#: config/fr30/fr30.c:688
+#: config/fr30/fr30.c:645 config/fr30/fr30.c:654 config/fr30/fr30.c:665
+#: config/fr30/fr30.c:678
#, c-format
msgid "fr30_print_operand: unhandled MEM"
msgstr ""
-#: config/frv/frv.c:2522
+#: config/frv/frv.c:2503
msgid "bad insn to frv_print_operand_address:"
msgstr ""
-#: config/frv/frv.c:2533
+#: config/frv/frv.c:2514
msgid "bad register to frv_print_operand_memory_reference_reg:"
msgstr ""
-#: config/frv/frv.c:2572 config/frv/frv.c:2582 config/frv/frv.c:2591
-#: config/frv/frv.c:2612 config/frv/frv.c:2617
+#: config/frv/frv.c:2553 config/frv/frv.c:2563 config/frv/frv.c:2572
+#: config/frv/frv.c:2593 config/frv/frv.c:2598
msgid "bad insn to frv_print_operand_memory_reference:"
msgstr ""
-#: config/frv/frv.c:2703
+#: config/frv/frv.c:2684
#, c-format
msgid "bad condition code"
msgstr ""
-#: config/frv/frv.c:2779
+#: config/frv/frv.c:2760
msgid "bad insn in frv_print_operand, bad const_double"
msgstr ""
-#: config/frv/frv.c:2840
+#: config/frv/frv.c:2821
msgid "bad insn to frv_print_operand, 'e' modifier:"
msgstr ""
-#: config/frv/frv.c:2848
+#: config/frv/frv.c:2829
msgid "bad insn to frv_print_operand, 'F' modifier:"
msgstr ""
-#: config/frv/frv.c:2864
+#: config/frv/frv.c:2845
msgid "bad insn to frv_print_operand, 'f' modifier:"
msgstr ""
-#: config/frv/frv.c:2878
+#: config/frv/frv.c:2859
msgid "bad insn to frv_print_operand, 'g' modifier:"
msgstr ""
-#: config/frv/frv.c:2926
+#: config/frv/frv.c:2907
msgid "bad insn to frv_print_operand, 'L' modifier:"
msgstr ""
-#: config/frv/frv.c:2939
+#: config/frv/frv.c:2920
msgid "bad insn to frv_print_operand, 'M/N' modifier:"
msgstr ""
-#: config/frv/frv.c:2960
+#: config/frv/frv.c:2941
msgid "bad insn to frv_print_operand, 'O' modifier:"
msgstr ""
-#: config/frv/frv.c:2978
+#: config/frv/frv.c:2959
msgid "bad insn to frv_print_operand, P modifier:"
msgstr ""
-#: config/frv/frv.c:2998
+#: config/frv/frv.c:2979
msgid "bad insn in frv_print_operand, z case"
msgstr ""
-#: config/frv/frv.c:3029
+#: config/frv/frv.c:3010
msgid "bad insn in frv_print_operand, 0 case"
msgstr ""
-#: config/frv/frv.c:3034
+#: config/frv/frv.c:3015
msgid "frv_print_operand: unknown code"
msgstr ""
-#: config/frv/frv.c:4435
+#: config/frv/frv.c:4421
msgid "bad output_move_single operand"
msgstr ""
-#: config/frv/frv.c:4562
+#: config/frv/frv.c:4548
msgid "bad output_move_double operand"
msgstr ""
-#: config/frv/frv.c:4704
+#: config/frv/frv.c:4690
msgid "bad output_condmove_single operand"
msgstr ""
-#. This macro is a C statement to print on `stderr' a string describing the
-#. particular machine description choice. Every machine description should
-#. define `TARGET_VERSION'. For example:
-#.
-#. #ifdef MOTOROLA
-#. #define TARGET_VERSION fprintf (stderr, " (68k, Motorola syntax)");
-#. #else
-#. #define TARGET_VERSION fprintf (stderr, " (68k, MIT syntax)");
-#. #endif
-#: config/frv/frv.h:252
-#, c-format
-msgid " (frv)"
-msgstr ""
-
-#: config/i386/i386.c:13250
+#: config/i386/i386.c:12754
#, c-format
msgid "invalid UNSPEC as operand"
msgstr ""
-#: config/i386/i386.c:13855
+#: config/i386/i386.c:13360
#, c-format
msgid "'%%&' used without any local dynamic TLS references"
msgstr ""
-#: config/i386/i386.c:13946 config/i386/i386.c:14021
+#: config/i386/i386.c:13451 config/i386/i386.c:13526
#, c-format
msgid "invalid operand size for operand code '%c'"
msgstr ""
-#: config/i386/i386.c:14016
+#: config/i386/i386.c:13521
#, c-format
msgid "invalid operand type used with operand code '%c'"
msgstr ""
-#: config/i386/i386.c:14096 config/i386/i386.c:14136
+#: config/i386/i386.c:13602 config/i386/i386.c:13642
#, c-format
msgid "operand is not a condition code, invalid operand code 'D'"
msgstr ""
-#: config/i386/i386.c:14162
+#: config/i386/i386.c:13668
#, c-format
msgid ""
"operand is neither a constant nor a condition code, invalid operand code 'C'"
msgstr ""
-#: config/i386/i386.c:14172
+#: config/i386/i386.c:13678
#, c-format
msgid ""
"operand is neither a constant nor a condition code, invalid operand code 'F'"
msgstr ""
-#: config/i386/i386.c:14190
+#: config/i386/i386.c:13696
#, c-format
msgid ""
"operand is neither a constant nor a condition code, invalid operand code 'c'"
msgstr ""
-#: config/i386/i386.c:14200
+#: config/i386/i386.c:13706
#, c-format
msgid ""
"operand is neither a constant nor a condition code, invalid operand code 'f'"
msgstr ""
-#: config/i386/i386.c:14303
+#: config/i386/i386.c:13809
#, c-format
msgid "operand is not a condition code, invalid operand code 'Y'"
msgstr ""
-#: config/i386/i386.c:14329
+#: config/i386/i386.c:13835
#, c-format
msgid "invalid operand code '%c'"
msgstr ""
-#: config/i386/i386.c:14379
+#: config/i386/i386.c:13885
#, c-format
msgid "invalid constraints for operand"
msgstr ""
-#: config/i386/i386.c:22286
+#: config/i386/i386.c:21800
msgid "unknown insn mode"
msgstr ""
@@ -3132,128 +3034,128 @@
msgid "environment variable DJGPP points to corrupt file '%s'"
msgstr ""
-#: config/ia64/ia64.c:5053
+#: config/ia64/ia64.c:5029
#, c-format
msgid "invalid %%G mode"
msgstr ""
-#: config/ia64/ia64.c:5223
+#: config/ia64/ia64.c:5199
#, c-format
msgid "ia64_print_operand: unknown code"
msgstr ""
-#: config/ia64/ia64.c:10898
+#: config/ia64/ia64.c:10831
msgid "invalid conversion from %<__fpreg%>"
msgstr ""
-#: config/ia64/ia64.c:10901
+#: config/ia64/ia64.c:10834
msgid "invalid conversion to %<__fpreg%>"
msgstr ""
-#: config/ia64/ia64.c:10914 config/ia64/ia64.c:10925
+#: config/ia64/ia64.c:10847 config/ia64/ia64.c:10858
msgid "invalid operation on %<__fpreg%>"
msgstr ""
-#: config/iq2000/iq2000.c:3151
+#: config/iq2000/iq2000.c:3130
#, c-format
msgid "invalid %%P operand"
msgstr ""
-#: config/iq2000/iq2000.c:3159 config/rs6000/rs6000.c:16058
+#: config/iq2000/iq2000.c:3138 config/rs6000/rs6000.c:15513
#, c-format
msgid "invalid %%p value"
msgstr ""
-#: config/iq2000/iq2000.c:3216
+#: config/iq2000/iq2000.c:3195
#, c-format
msgid "invalid use of %%d, %%x, or %%X"
msgstr ""
-#: config/lm32/lm32.c:529
+#: config/lm32/lm32.c:521
#, c-format
msgid "only 0.0 can be loaded as an immediate"
msgstr ""
-#: config/lm32/lm32.c:599
+#: config/lm32/lm32.c:591
msgid "bad operand"
msgstr ""
-#: config/lm32/lm32.c:611
+#: config/lm32/lm32.c:603
msgid "can't use non gp relative absolute address"
msgstr ""
-#: config/lm32/lm32.c:615
+#: config/lm32/lm32.c:607
msgid "invalid addressing mode"
msgstr ""
-#: config/m32r/m32r.c:2103
+#: config/m32r/m32r.c:2065
#, c-format
msgid "invalid operand to %%s code"
msgstr ""
-#: config/m32r/m32r.c:2110
+#: config/m32r/m32r.c:2072
#, c-format
msgid "invalid operand to %%p code"
msgstr ""
-#: config/m32r/m32r.c:2133
+#: config/m32r/m32r.c:2095
#, c-format
msgid "invalid operand to %%R code"
msgstr ""
-#: config/m32r/m32r.c:2156
+#: config/m32r/m32r.c:2118
#, c-format
msgid "invalid operand to %%H/%%L code"
msgstr ""
-#: config/m32r/m32r.c:2165
+#: config/m32r/m32r.c:2127
msgid "bad insn for 'A'"
msgstr ""
-#: config/m32r/m32r.c:2212
+#: config/m32r/m32r.c:2174
#, c-format
msgid "invalid operand to %%T/%%B code"
msgstr ""
-#: config/m32r/m32r.c:2227
+#: config/m32r/m32r.c:2189
#, c-format
msgid "invalid operand to %%U code"
msgstr ""
-#: config/m32r/m32r.c:2235
+#: config/m32r/m32r.c:2197
#, c-format
msgid "invalid operand to %%N code"
msgstr ""
#. Unknown flag.
#. Undocumented flag.
-#: config/m32r/m32r.c:2254 config/sparc/sparc.c:7657
+#: config/m32r/m32r.c:2216 config/sparc/sparc.c:8047
#, c-format
msgid "invalid operand output code"
msgstr ""
-#: config/m32r/m32r.c:2268
+#: config/m32r/m32r.c:2230
msgid "pre-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2275
+#: config/m32r/m32r.c:2237
msgid "pre-decrement address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2282
+#: config/m32r/m32r.c:2244
msgid "post-increment address is not a register"
msgstr ""
-#: config/m32r/m32r.c:2358 config/m32r/m32r.c:2372
-#: config/rs6000/rs6000.c:25503
+#: config/m32r/m32r.c:2320 config/m32r/m32r.c:2334
+#: config/rs6000/rs6000.c:24979
msgid "bad address"
msgstr ""
-#: config/m32r/m32r.c:2377
+#: config/m32r/m32r.c:2339
msgid "lo_sum not of register"
msgstr ""
-#: config/mep/mep.c:3374
+#: config/mep/mep.c:3358
#, c-format
msgid "invalid %%L code"
msgstr ""
@@ -3283,7 +3185,7 @@
msgstr ""
#: config/microblaze/microblaze.c:1840 config/microblaze/microblaze.c:2027
-#: config/xtensa/xtensa.c:2443
+#: config/xtensa/xtensa.c:2437
msgid "invalid address"
msgstr ""
@@ -3292,76 +3194,76 @@
msgid "letter %c was found & insn was not CONST_INT"
msgstr ""
-#: config/mips/mips.c:7460 config/mips/mips.c:7481 config/mips/mips.c:7601
+#: config/mips/mips.c:7386 config/mips/mips.c:7407 config/mips/mips.c:7527
#, c-format
msgid "'%%%c' is not a valid operand prefix"
msgstr ""
-#: config/mips/mips.c:7538 config/mips/mips.c:7545 config/mips/mips.c:7552
-#: config/mips/mips.c:7559 config/mips/mips.c:7619 config/mips/mips.c:7633
-#: config/mips/mips.c:7646 config/mips/mips.c:7655
+#: config/mips/mips.c:7464 config/mips/mips.c:7471 config/mips/mips.c:7478
+#: config/mips/mips.c:7485 config/mips/mips.c:7545 config/mips/mips.c:7559
+#: config/mips/mips.c:7572 config/mips/mips.c:7581
#, c-format
msgid "invalid use of '%%%c'"
msgstr ""
-#: config/mips/mips.c:7877
+#: config/mips/mips.c:7803
msgid "mips_debugger_offset called with non stack/frame/arg pointer"
msgstr ""
-#: config/mmix/mmix.c:1589 config/mmix/mmix.c:1719
+#: config/mmix/mmix.c:1586 config/mmix/mmix.c:1716
msgid "MMIX Internal: Expected a CONST_INT, not this"
msgstr ""
-#: config/mmix/mmix.c:1668
+#: config/mmix/mmix.c:1665
msgid "MMIX Internal: Bad value for 'm', not a CONST_INT"
msgstr ""
-#: config/mmix/mmix.c:1687
+#: config/mmix/mmix.c:1684
msgid "MMIX Internal: Expected a register, not this"
msgstr ""
-#: config/mmix/mmix.c:1697
+#: config/mmix/mmix.c:1694
msgid "MMIX Internal: Expected a constant, not this"
msgstr ""
#. We need the original here.
-#: config/mmix/mmix.c:1781
+#: config/mmix/mmix.c:1778
msgid "MMIX Internal: Cannot decode this operand"
msgstr ""
-#: config/mmix/mmix.c:1838
+#: config/mmix/mmix.c:1835
msgid "MMIX Internal: This is not a recognized address"
msgstr ""
-#: config/mmix/mmix.c:2713
+#: config/mmix/mmix.c:2710
msgid "MMIX Internal: Trying to output invalidly reversed condition:"
msgstr ""
-#: config/mmix/mmix.c:2720
+#: config/mmix/mmix.c:2717
msgid "MMIX Internal: What's the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:2724
+#: config/mmix/mmix.c:2721
msgid "MMIX Internal: What is the CC of this?"
msgstr ""
-#: config/mmix/mmix.c:2788
+#: config/mmix/mmix.c:2785
msgid "MMIX Internal: This is not a constant:"
msgstr ""
-#: config/picochip/picochip.c:2687
+#: config/picochip/picochip.c:2664
msgid "picochip_print_memory_address - Operand isn't memory based"
msgstr ""
-#: config/picochip/picochip.c:2946
+#: config/picochip/picochip.c:2923
msgid "Unknown mode in print_operand (CONST_DOUBLE) :"
msgstr ""
-#: config/picochip/picochip.c:2992 config/picochip/picochip.c:3024
+#: config/picochip/picochip.c:2969 config/picochip/picochip.c:3001
msgid "Bad address, not (reg+disp):"
msgstr ""
-#: config/picochip/picochip.c:3038
+#: config/picochip/picochip.c:3015
msgid "Bad address, not register:"
msgstr ""
@@ -3375,194 +3277,194 @@
msgid "Try running '%s' in the shell to raise its limit.\n"
msgstr ""
-#: config/rs6000/rs6000.c:2804
+#: config/rs6000/rs6000.c:2657
msgid "-mvsx requires hardware floating point"
msgstr ""
-#: config/rs6000/rs6000.c:2809
+#: config/rs6000/rs6000.c:2662
msgid "-mvsx and -mpaired are incompatible"
msgstr ""
-#: config/rs6000/rs6000.c:2814
+#: config/rs6000/rs6000.c:2667
msgid "-mvsx used with little endian code"
msgstr ""
-#: config/rs6000/rs6000.c:2816
+#: config/rs6000/rs6000.c:2669
msgid "-mvsx needs indexed addressing"
msgstr ""
-#: config/rs6000/rs6000.c:2820
+#: config/rs6000/rs6000.c:2673
msgid "-mvsx and -mno-altivec are incompatible"
msgstr ""
-#: config/rs6000/rs6000.c:2822
+#: config/rs6000/rs6000.c:2675
msgid "-mno-altivec disables vsx"
msgstr ""
-#: config/rs6000/rs6000.c:7895
+#: config/rs6000/rs6000.c:7303
msgid "bad move"
msgstr ""
-#: config/rs6000/rs6000.c:15868
+#: config/rs6000/rs6000.c:15323
#, c-format
msgid "invalid %%c value"
msgstr ""
-#: config/rs6000/rs6000.c:15896
+#: config/rs6000/rs6000.c:15351
#, c-format
msgid "invalid %%f value"
msgstr ""
-#: config/rs6000/rs6000.c:15905
+#: config/rs6000/rs6000.c:15360
#, c-format
msgid "invalid %%F value"
msgstr ""
-#: config/rs6000/rs6000.c:15914
+#: config/rs6000/rs6000.c:15369
#, c-format
msgid "invalid %%G value"
msgstr ""
-#: config/rs6000/rs6000.c:15949
+#: config/rs6000/rs6000.c:15404
#, c-format
msgid "invalid %%j code"
msgstr ""
-#: config/rs6000/rs6000.c:15959
+#: config/rs6000/rs6000.c:15414
#, c-format
msgid "invalid %%J code"
msgstr ""
-#: config/rs6000/rs6000.c:15969
+#: config/rs6000/rs6000.c:15424
#, c-format
msgid "invalid %%k value"
msgstr ""
-#: config/rs6000/rs6000.c:15984 config/xtensa/xtensa.c:2342
+#: config/rs6000/rs6000.c:15439 config/xtensa/xtensa.c:2336
#, c-format
msgid "invalid %%K value"
msgstr ""
-#: config/rs6000/rs6000.c:16048
+#: config/rs6000/rs6000.c:15503
#, c-format
msgid "invalid %%O value"
msgstr ""
-#: config/rs6000/rs6000.c:16095
+#: config/rs6000/rs6000.c:15550
#, c-format
msgid "invalid %%q value"
msgstr ""
-#: config/rs6000/rs6000.c:16139
+#: config/rs6000/rs6000.c:15594
#, c-format
msgid "invalid %%S value"
msgstr ""
-#: config/rs6000/rs6000.c:16179
+#: config/rs6000/rs6000.c:15634
#, c-format
msgid "invalid %%T value"
msgstr ""
-#: config/rs6000/rs6000.c:16189
+#: config/rs6000/rs6000.c:15644
#, c-format
msgid "invalid %%u value"
msgstr ""
-#: config/rs6000/rs6000.c:16198 config/xtensa/xtensa.c:2312
+#: config/rs6000/rs6000.c:15653 config/xtensa/xtensa.c:2306
#, c-format
msgid "invalid %%v value"
msgstr ""
-#: config/rs6000/rs6000.c:16297 config/xtensa/xtensa.c:2363
+#: config/rs6000/rs6000.c:15752 config/xtensa/xtensa.c:2357
#, c-format
msgid "invalid %%x value"
msgstr ""
-#: config/rs6000/rs6000.c:16443
+#: config/rs6000/rs6000.c:15898
#, c-format
msgid "invalid %%y value, try using the 'Z' constraint"
msgstr ""
-#: config/rs6000/rs6000.c:27550
+#: config/rs6000/rs6000.c:27044
msgid "AltiVec argument passed to unprototyped function"
msgstr ""
-#: config/s390/s390.c:5207
+#: config/s390/s390.c:5131
#, c-format
msgid "symbolic memory references are only supported on z10 or later"
msgstr ""
-#: config/s390/s390.c:5218
+#: config/s390/s390.c:5142
#, c-format
msgid "cannot decompose address"
msgstr ""
-#: config/s390/s390.c:5277
+#: config/s390/s390.c:5201
#, c-format
msgid "invalid comparison operator for 'E' output modifier"
msgstr ""
-#: config/s390/s390.c:5298
+#: config/s390/s390.c:5222
#, c-format
msgid "invalid reference for 'J' output modifier"
msgstr ""
-#: config/s390/s390.c:5312
+#: config/s390/s390.c:5236
#, c-format
msgid "memory reference expected for 'O' output modifier"
msgstr ""
-#: config/s390/s390.c:5323
+#: config/s390/s390.c:5247
#, c-format
msgid "invalid address for 'O' output modifier"
msgstr ""
-#: config/s390/s390.c:5341
+#: config/s390/s390.c:5265
#, c-format
msgid "memory reference expected for 'R' output modifier"
msgstr ""
-#: config/s390/s390.c:5352
+#: config/s390/s390.c:5276
#, c-format
msgid "invalid address for 'R' output modifier"
msgstr ""
-#: config/s390/s390.c:5370
+#: config/s390/s390.c:5294
#, c-format
msgid "memory reference expected for 'S' output modifier"
msgstr ""
-#: config/s390/s390.c:5380
+#: config/s390/s390.c:5304
#, c-format
msgid "invalid address for 'S' output modifier"
msgstr ""
-#: config/s390/s390.c:5400
+#: config/s390/s390.c:5324
#, c-format
msgid "register or memory expression expected for 'N' output modifier"
msgstr ""
-#: config/s390/s390.c:5410
+#: config/s390/s390.c:5334
#, c-format
msgid "register or memory expression expected for 'M' output modifier"
msgstr ""
-#: config/s390/s390.c:5475
+#: config/s390/s390.c:5399
#, c-format
msgid "invalid constant - try using an output modifier"
msgstr ""
-#: config/s390/s390.c:5478
+#: config/s390/s390.c:5402
#, c-format
msgid "invalid constant for output modifier '%c'"
msgstr ""
-#: config/s390/s390.c:5485
+#: config/s390/s390.c:5409
#, c-format
msgid "invalid expression - try using an output modifier"
msgstr ""
-#: config/s390/s390.c:5488
+#: config/s390/s390.c:5412
#, c-format
msgid "invalid expression for output modifier '%c'"
msgstr ""
@@ -3572,368 +3474,369 @@
msgid "invalid operand for code: '%c'"
msgstr ""
-#: config/sh/sh.c:1203
+#: config/sh/sh.c:1028
#, c-format
msgid "invalid operand to %%R"
msgstr ""
-#: config/sh/sh.c:1230
+#: config/sh/sh.c:1055
#, c-format
msgid "invalid operand to %%S"
msgstr ""
-#: config/sh/sh.c:9273
+#: config/sh/sh.c:9128
msgid "created and used with different architectures / ABIs"
msgstr ""
-#: config/sh/sh.c:9275
+#: config/sh/sh.c:9130
msgid "created and used with different ABIs"
msgstr ""
-#: config/sh/sh.c:9277
+#: config/sh/sh.c:9132
msgid "created and used with different endianness"
msgstr ""
-#: config/sparc/sparc.c:7465 config/sparc/sparc.c:7471
+#: config/sparc/sparc.c:7855 config/sparc/sparc.c:7861
#, c-format
msgid "invalid %%Y operand"
msgstr ""
-#: config/sparc/sparc.c:7541
+#: config/sparc/sparc.c:7931
#, c-format
msgid "invalid %%A operand"
msgstr ""
-#: config/sparc/sparc.c:7551
+#: config/sparc/sparc.c:7941
#, c-format
msgid "invalid %%B operand"
msgstr ""
-#: config/sparc/sparc.c:7590
+#: config/sparc/sparc.c:7980
#, c-format
msgid "invalid %%c operand"
msgstr ""
-#: config/sparc/sparc.c:7612
+#: config/sparc/sparc.c:8002
#, c-format
msgid "invalid %%d operand"
msgstr ""
-#: config/sparc/sparc.c:7629
+#: config/sparc/sparc.c:8019
#, c-format
msgid "invalid %%f operand"
msgstr ""
-#: config/sparc/sparc.c:7643
+#: config/sparc/sparc.c:8033
#, c-format
msgid "invalid %%s operand"
msgstr ""
-#: config/sparc/sparc.c:7697
+#: config/sparc/sparc.c:8087
#, c-format
msgid "long long constant not a valid immediate operand"
msgstr ""
-#: config/sparc/sparc.c:7700
+#: config/sparc/sparc.c:8090
#, c-format
msgid "floating point constant not a valid immediate operand"
msgstr ""
-#: config/stormy16/stormy16.c:1717 config/stormy16/stormy16.c:1788
+#: config/stormy16/stormy16.c:1721 config/stormy16/stormy16.c:1792
#, c-format
msgid "'B' operand is not constant"
msgstr ""
-#: config/stormy16/stormy16.c:1744
+#: config/stormy16/stormy16.c:1748
#, c-format
msgid "'B' operand has multiple bits set"
msgstr ""
-#: config/stormy16/stormy16.c:1770
+#: config/stormy16/stormy16.c:1774
#, c-format
msgid "'o' operand is not constant"
msgstr ""
-#: config/stormy16/stormy16.c:1802
+#: config/stormy16/stormy16.c:1806
#, c-format
msgid "xstormy16_print_operand: unknown code"
msgstr ""
-#: config/v850/v850.c:342
+#: config/v850/v850.c:260
msgid "const_double_split got a bad insn:"
msgstr ""
-#: config/v850/v850.c:924
+#: config/v850/v850.c:842
msgid "output_move_single:"
msgstr ""
-#: config/vax/vax.c:418
+#: config/vax/vax.c:416
#, c-format
msgid "symbol used with both base and indexed registers"
msgstr ""
-#: config/vax/vax.c:427
+#: config/vax/vax.c:425
#, c-format
msgid "symbol with offset used in PIC mode"
msgstr ""
-#: config/vax/vax.c:513
+#: config/vax/vax.c:511
#, c-format
msgid "symbol used as immediate operand"
msgstr ""
-#: config/vax/vax.c:1536
+#: config/vax/vax.c:1534
msgid "illegal operand detected"
msgstr ""
-#: config/xtensa/xtensa.c:774 config/xtensa/xtensa.c:806
-#: config/xtensa/xtensa.c:815
+#: config/xtensa/xtensa.c:760 config/xtensa/xtensa.c:792
+#: config/xtensa/xtensa.c:801
msgid "bad test"
msgstr ""
-#: config/xtensa/xtensa.c:2300
+#: config/xtensa/xtensa.c:2294
#, c-format
msgid "invalid %%D value"
msgstr ""
-#: config/xtensa/xtensa.c:2337
+#: config/xtensa/xtensa.c:2331
msgid "invalid mask"
msgstr ""
-#: config/xtensa/xtensa.c:2370
+#: config/xtensa/xtensa.c:2364
#, c-format
msgid "invalid %%d value"
msgstr ""
-#: config/xtensa/xtensa.c:2391 config/xtensa/xtensa.c:2401
+#: config/xtensa/xtensa.c:2385 config/xtensa/xtensa.c:2395
#, c-format
msgid "invalid %%t/%%b value"
msgstr ""
-#: config/xtensa/xtensa.c:2468
+#: config/xtensa/xtensa.c:2462
msgid "no register in address"
msgstr ""
-#: config/xtensa/xtensa.c:2476
+#: config/xtensa/xtensa.c:2470
msgid "address offset not a constant"
msgstr ""
-#: cp/call.c:7861
+#: cp/call.c:8190
msgid "candidate 1:"
msgstr ""
-#: cp/call.c:7862
+#: cp/call.c:8191
msgid "candidate 2:"
msgstr ""
-#: cp/cxx-pretty-print.c:172 objc/objc-act.c:5989
+#: cp/cxx-pretty-print.c:172 objc/objc-act.c:6410
msgid "<unnamed>"
msgstr ""
-#: cp/cxx-pretty-print.c:2120
+#: cp/cxx-pretty-print.c:2126
msgid "template-parameter-"
msgstr ""
-#: cp/decl2.c:725
+#: cp/decl2.c:726
msgid "candidates are: %+#D"
msgstr ""
-#: cp/decl2.c:727 cp/pt.c:1721
+#: cp/decl2.c:728 cp/pt.c:1722
#, gcc-internal-format
msgid "candidate is: %+#D"
msgstr ""
-#: cp/error.c:298
+#: cp/error.c:301
msgid "<missing>"
msgstr ""
-#: cp/error.c:358
+#: cp/error.c:368
msgid "<brace-enclosed initializer list>"
msgstr ""
-#: cp/error.c:360
+#: cp/error.c:370
msgid "<unresolved overloaded function type>"
msgstr ""
-#: cp/error.c:512
+#: cp/error.c:530
msgid "<type error>"
msgstr ""
-#: cp/error.c:612
+#: cp/error.c:630
#, c-format
msgid "<anonymous %s>"
msgstr ""
#. A lambda's "type" is essentially its signature.
-#: cp/error.c:617
+#: cp/error.c:635
msgid "<lambda"
msgstr ""
-#: cp/error.c:746
+#: cp/error.c:765
msgid "<typeprefixerror>"
msgstr ""
-#: cp/error.c:858
+#: cp/error.c:877
#, c-format
msgid "(static initializers for %s)"
msgstr ""
-#: cp/error.c:860
+#: cp/error.c:879
#, c-format
msgid "(static destructors for %s)"
msgstr ""
-#: cp/error.c:947
+#: cp/error.c:966
msgid "vtable for "
msgstr ""
-#: cp/error.c:959
+#: cp/error.c:978
msgid "<return value> "
msgstr ""
-#: cp/error.c:972
+#: cp/error.c:991
msgid "{anonymous}"
msgstr ""
-#: cp/error.c:1087
+#: cp/error.c:1106
msgid "<enumerator>"
msgstr ""
-#: cp/error.c:1127
+#: cp/error.c:1146
msgid "<declaration error>"
msgstr ""
-#: cp/error.c:1371
+#: cp/error.c:1389 cp/error.c:2701
msgid "with"
msgstr ""
-#: cp/error.c:1543 cp/error.c:1563
+#: cp/error.c:1564 cp/error.c:1584
msgid "<template parameter error>"
msgstr ""
-#: cp/error.c:1689
+#: cp/error.c:1710
msgid "<statement>"
msgstr ""
#. While waiting for caret diagnostics, avoid printing
#. __cxa_allocate_exception, __cxa_throw, and the like.
-#: cp/error.c:1719
+#: cp/error.c:1740
msgid "<throw-expression>"
msgstr ""
-#: cp/error.c:2224
+#: cp/error.c:2248
msgid "<unparsed>"
msgstr ""
-#: cp/error.c:2373
+#: cp/error.c:2397
msgid "<expression error>"
msgstr ""
-#: cp/error.c:2387
+#: cp/error.c:2411
msgid "<unknown operator>"
msgstr ""
-#: cp/error.c:2600
+#: cp/error.c:2624
msgid "<unknown>"
msgstr ""
-#: cp/error.c:2620
+#: cp/error.c:2653
msgid "{unknown}"
msgstr ""
-#: cp/error.c:2704
+#: cp/error.c:2763
msgid "At global scope:"
msgstr ""
-#: cp/error.c:2810
+#: cp/error.c:2869
#, c-format
msgid "In static member function %qs"
msgstr ""
-#: cp/error.c:2812
+#: cp/error.c:2871
#, c-format
msgid "In copy constructor %qs"
msgstr ""
-#: cp/error.c:2814
+#: cp/error.c:2873
#, c-format
msgid "In constructor %qs"
msgstr ""
-#: cp/error.c:2816
+#: cp/error.c:2875
#, c-format
msgid "In destructor %qs"
msgstr ""
-#: cp/error.c:2818
+#: cp/error.c:2877
msgid "In lambda function"
msgstr ""
-#: cp/error.c:2848
+#: cp/error.c:2907
#, c-format
msgid "%s: In instantiation of %qs:\n"
msgstr ""
-#: cp/error.c:2880
+#: cp/error.c:2932
#, c-format
-msgid "%s:%d:%d: recursively instantiated from %qs\n"
+msgid "%s:%d:%d: "
msgstr ""
-#: cp/error.c:2881
+#: cp/error.c:2935
#, c-format
-msgid "%s:%d:%d: instantiated from %qs\n"
+msgid "%s:%d: "
msgstr ""
-#: cp/error.c:2886 cp/error.c:2887
+#: cp/error.c:2943
#, c-format
-msgid "%s:%d: recursively instantiated from %qs\n"
+msgid "recursively required by substitution of %qS\n"
msgstr ""
-#: cp/error.c:2895
+#: cp/error.c:2944
#, c-format
-msgid "%s:%d:%d: recursively instantiated from here"
+msgid "required by substitution of %qS\n"
msgstr ""
-#: cp/error.c:2896
-#, c-format
-msgid "%s:%d:%d: instantiated from here"
+#: cp/error.c:2949
+msgid "recursively required from %q#D\n"
msgstr ""
-#: cp/error.c:2901
-#, c-format
-msgid "%s:%d: recursively instantiated from here"
+#: cp/error.c:2950
+msgid "required from %q#D\n"
msgstr ""
-#: cp/error.c:2902
-#, c-format
-msgid "%s:%d: instantiated from here"
+#: cp/error.c:2957
+msgid "recursively required from here"
msgstr ""
-#: cp/error.c:2945
+#: cp/error.c:2958
+msgid "required from here"
+msgstr ""
+
+#: cp/error.c:3000
#, c-format
msgid "%s:%d:%d: [ skipping %d instantiation contexts ]\n"
msgstr ""
-#: cp/error.c:2949
+#: cp/error.c:3004
#, c-format
msgid "%s:%d: [ skipping %d instantiation contexts ]\n"
msgstr ""
-#: cp/error.c:3011
+#: cp/error.c:3066
#, c-format
msgid "%s:%d:%d: in constexpr expansion of %qs"
msgstr ""
-#: cp/error.c:3015
+#: cp/error.c:3070
#, c-format
msgid "%s:%d: in constexpr expansion of %qs"
msgstr ""
-#: cp/pt.c:1725
+#: cp/pt.c:1726
msgid "candidates are:"
msgstr ""
-#: cp/pt.c:16583 cp/call.c:3084
+#: cp/pt.c:16851 cp/call.c:3232
#, gcc-internal-format
msgid "candidate is:"
msgid_plural "candidates are:"
@@ -3980,48 +3883,48 @@
msgid "source type is not polymorphic"
msgstr ""
-#: cp/typeck.c:5004 c-typeck.c:3468
+#: cp/typeck.c:5020 c-typeck.c:3463
#, gcc-internal-format
msgid "wrong type argument to unary minus"
msgstr ""
-#: cp/typeck.c:5005 c-typeck.c:3455
+#: cp/typeck.c:5021 c-typeck.c:3450
#, gcc-internal-format
msgid "wrong type argument to unary plus"
msgstr ""
-#: cp/typeck.c:5028 c-typeck.c:3494
+#: cp/typeck.c:5044 c-typeck.c:3489
#, gcc-internal-format
msgid "wrong type argument to bit-complement"
msgstr ""
-#: cp/typeck.c:5035 c-typeck.c:3502
+#: cp/typeck.c:5051 c-typeck.c:3497
#, gcc-internal-format
msgid "wrong type argument to abs"
msgstr ""
-#: cp/typeck.c:5043 c-typeck.c:3514
+#: cp/typeck.c:5059 c-typeck.c:3509
#, gcc-internal-format
msgid "wrong type argument to conjugation"
msgstr ""
-#: cp/typeck.c:5054
+#: cp/typeck.c:5070
msgid "in argument to unary !"
msgstr ""
-#: cp/typeck.c:5103
+#: cp/typeck.c:5119
msgid "no pre-increment operator for type"
msgstr ""
-#: cp/typeck.c:5105
+#: cp/typeck.c:5121
msgid "no post-increment operator for type"
msgstr ""
-#: cp/typeck.c:5107
+#: cp/typeck.c:5123
msgid "no pre-decrement operator for type"
msgstr ""
-#: cp/typeck.c:5109
+#: cp/typeck.c:5125
msgid "no post-decrement operator for type"
msgstr ""
@@ -4057,17 +3960,17 @@
msgid "elemental binary operation"
msgstr ""
-#: fortran/check.c:1502 fortran/check.c:2380 fortran/check.c:2434
+#: fortran/check.c:1592 fortran/check.c:2470 fortran/check.c:2524
#, c-format
msgid "arguments '%s' and '%s' for intrinsic %s"
msgstr ""
-#: fortran/check.c:2186
+#: fortran/check.c:2276
#, c-format
msgid "arguments 'a%d' and 'a%d' for intrinsic '%s'"
msgstr ""
-#: fortran/check.c:2662 fortran/intrinsic.c:3914
+#: fortran/check.c:2765 fortran/intrinsic.c:3932
#, c-format
msgid "arguments '%s' and '%s' for intrinsic '%s'"
msgstr ""
@@ -4085,22 +3988,22 @@
msgid "Fatal Error:"
msgstr ""
-#: fortran/expr.c:607
+#: fortran/expr.c:606
#, c-format
msgid "Constant expression required at %C"
msgstr ""
-#: fortran/expr.c:610
+#: fortran/expr.c:609
#, c-format
msgid "Integer expression required at %C"
msgstr ""
-#: fortran/expr.c:615
+#: fortran/expr.c:614
#, c-format
msgid "Integer value too large in expression at %C"
msgstr ""
-#: fortran/expr.c:3143
+#: fortran/expr.c:3146
msgid "array assignment"
msgstr ""
@@ -4119,7 +4022,7 @@
msgid "Driving:"
msgstr ""
-#: fortran/interface.c:2284 fortran/intrinsic.c:3623
+#: fortran/interface.c:2308 fortran/intrinsic.c:3641
msgid "actual argument to INTENT = OUT/INOUT"
msgstr ""
@@ -4180,18 +4083,18 @@
msgid "Period required in format specifier"
msgstr ""
-#: fortran/io.c:1524
+#: fortran/io.c:1533
#, c-format
msgid "%s tag"
msgstr ""
-#: fortran/io.c:2830
+#: fortran/io.c:2840
msgid "internal unit in WRITE"
msgstr ""
#. For INQUIRE, all tags except FILE, ID and UNIT are variable definition
#. contexts. Thus, use an extended RESOLVE_TAG macro for that.
-#: fortran/io.c:4025
+#: fortran/io.c:4034
#, c-format
msgid "%s tag with INQUIRE"
msgstr ""
@@ -4237,7 +4140,7 @@
msgid "Expected integer"
msgstr ""
-#: fortran/module.c:1265 fortran/module.c:2158
+#: fortran/module.c:1265 fortran/module.c:2166
msgid "Expected string"
msgstr ""
@@ -4245,237 +4148,241 @@
msgid "find_enum(): Enum not found"
msgstr ""
-#: fortran/module.c:1916
+#: fortran/module.c:1919
msgid "Expected attribute bit name"
msgstr ""
-#: fortran/module.c:2808
+#: fortran/module.c:2817
msgid "Expected integer string"
msgstr ""
-#: fortran/module.c:2812
+#: fortran/module.c:2821
msgid "Error converting integer"
msgstr ""
-#: fortran/module.c:2834
+#: fortran/module.c:2843
msgid "Expected real string"
msgstr ""
-#: fortran/module.c:3051
+#: fortran/module.c:3061
msgid "Expected expression type"
msgstr ""
-#: fortran/module.c:3105
+#: fortran/module.c:3115
msgid "Bad operator"
msgstr ""
-#: fortran/module.c:3194
+#: fortran/module.c:3204
msgid "Bad type in constant expression"
msgstr ""
-#: fortran/module.c:5721
+#: fortran/module.c:5786
msgid "Unexpected end of module"
msgstr ""
-#: fortran/parse.c:1169
+#: fortran/parse.c:1175
msgid "arithmetic IF"
msgstr ""
-#: fortran/parse.c:1178
+#: fortran/parse.c:1184
msgid "attribute declaration"
msgstr ""
-#: fortran/parse.c:1214
+#: fortran/parse.c:1220
msgid "data declaration"
msgstr ""
-#: fortran/parse.c:1223
+#: fortran/parse.c:1229
msgid "derived type declaration"
msgstr ""
-#: fortran/parse.c:1317
+#: fortran/parse.c:1323
msgid "block IF"
msgstr ""
-#: fortran/parse.c:1326
+#: fortran/parse.c:1332
msgid "implied END DO"
msgstr ""
-#: fortran/parse.c:1411 fortran/resolve.c:9067
+#: fortran/parse.c:1423 fortran/resolve.c:9182
msgid "assignment"
msgstr ""
-#: fortran/parse.c:1414 fortran/resolve.c:9106 fortran/resolve.c:9108
+#: fortran/parse.c:1426 fortran/resolve.c:9221 fortran/resolve.c:9224
msgid "pointer assignment"
msgstr ""
-#: fortran/parse.c:1432
+#: fortran/parse.c:1444
msgid "simple IF"
msgstr ""
-#: fortran/resolve.c:532
+#: fortran/resolve.c:533
msgid "module procedure"
msgstr ""
-#: fortran/resolve.c:533
+#: fortran/resolve.c:534
msgid "internal function"
msgstr ""
-#: fortran/resolve.c:1920
+#: fortran/resolve.c:1925
msgid "elemental procedure"
msgstr ""
-#: fortran/resolve.c:3720
+#: fortran/resolve.c:3725
#, c-format
msgid "Invalid context for NULL() pointer at %%L"
msgstr ""
-#: fortran/resolve.c:3736
+#: fortran/resolve.c:3741
#, c-format
msgid "Operand of unary numeric operator '%s' at %%L is %s"
msgstr ""
-#: fortran/resolve.c:3752
+#: fortran/resolve.c:3757
#, c-format
msgid "Operands of binary numeric operator '%s' at %%L are %s/%s"
msgstr ""
-#: fortran/resolve.c:3767
+#: fortran/resolve.c:3772
#, c-format
msgid "Operands of string concatenation operator at %%L are %s/%s"
msgstr ""
-#: fortran/resolve.c:3786
+#: fortran/resolve.c:3791
#, c-format
msgid "Operands of logical operator '%s' at %%L are %s/%s"
msgstr ""
-#: fortran/resolve.c:3800
+#: fortran/resolve.c:3805
#, c-format
msgid "Operand of .not. operator at %%L is %s"
msgstr ""
-#: fortran/resolve.c:3814
+#: fortran/resolve.c:3819
msgid "COMPLEX quantities cannot be compared at %L"
msgstr ""
-#: fortran/resolve.c:3843
+#: fortran/resolve.c:3848
#, c-format
msgid "Logicals at %%L must be compared with %s instead of %s"
msgstr ""
-#: fortran/resolve.c:3849
+#: fortran/resolve.c:3854
#, c-format
msgid "Operands of comparison operator '%s' at %%L are %s/%s"
msgstr ""
-#: fortran/resolve.c:3857
+#: fortran/resolve.c:3862
#, c-format
msgid "Unknown operator '%s' at %%L"
msgstr ""
-#: fortran/resolve.c:3859
+#: fortran/resolve.c:3864
#, c-format
msgid "Operand of user operator '%s' at %%L is %s"
msgstr ""
-#: fortran/resolve.c:3863
+#: fortran/resolve.c:3868
#, c-format
msgid "Operands of user operator '%s' at %%L are %s/%s"
msgstr ""
-#: fortran/resolve.c:3951
+#: fortran/resolve.c:3956
#, c-format
msgid "Inconsistent ranks for operator at %%L and %%L"
msgstr ""
-#: fortran/resolve.c:6219
+#: fortran/resolve.c:6234
msgid "Loop variable"
msgstr ""
-#: fortran/resolve.c:6223
+#: fortran/resolve.c:6238
msgid "iterator variable"
msgstr ""
-#: fortran/resolve.c:6228
+#: fortran/resolve.c:6243
msgid "Start expression in DO loop"
msgstr ""
-#: fortran/resolve.c:6232
+#: fortran/resolve.c:6247
msgid "End expression in DO loop"
msgstr ""
-#: fortran/resolve.c:6236
+#: fortran/resolve.c:6251
msgid "Step expression in DO loop"
msgstr ""
-#: fortran/resolve.c:6483 fortran/resolve.c:6485
+#: fortran/resolve.c:6505 fortran/resolve.c:6508
msgid "DEALLOCATE object"
msgstr ""
-#: fortran/resolve.c:6780 fortran/resolve.c:6782
+#: fortran/resolve.c:6834 fortran/resolve.c:6836
msgid "ALLOCATE object"
msgstr ""
-#: fortran/resolve.c:6955
+#: fortran/resolve.c:7012 fortran/resolve.c:8241
msgid "STAT variable"
msgstr ""
-#: fortran/resolve.c:6998
+#: fortran/resolve.c:7055 fortran/resolve.c:8253
msgid "ERRMSG variable"
msgstr ""
-#: fortran/resolve.c:8063
+#: fortran/resolve.c:8120
msgid "item in READ"
msgstr ""
-#: fortran/trans-array.c:1138
+#: fortran/resolve.c:8265
+msgid "ACQUIRED_LOCK variable"
+msgstr ""
+
+#: fortran/trans-array.c:1159
#, c-format
msgid "Different CHARACTER lengths (%ld/%ld) in array constructor"
msgstr ""
-#: fortran/trans-array.c:4393
+#: fortran/trans-array.c:4458
msgid "Integer overflow when calculating the amount of memory to allocate"
msgstr ""
-#: fortran/trans-decl.c:4356
+#: fortran/trans-decl.c:4576
#, c-format
msgid ""
"Actual string length does not match the declared one for dummy argument "
"'%s' (%ld/%ld)"
msgstr ""
-#: fortran/trans-decl.c:4364
+#: fortran/trans-decl.c:4584
#, c-format
msgid ""
"Actual string length is shorter than the declared one for dummy argument "
"'%s' (%ld/%ld)"
msgstr ""
-#: fortran/trans-expr.c:5216
+#: fortran/trans-expr.c:5222
#, c-format
msgid "Target of rank remapping is too small (%ld < %ld)"
msgstr ""
-#: fortran/trans-intrinsic.c:890
+#: fortran/trans-intrinsic.c:892
#, c-format
msgid "Unequal character lengths (%ld/%ld) in %s"
msgstr ""
-#: fortran/trans-intrinsic.c:5413
+#: fortran/trans-intrinsic.c:5934
#, c-format
msgid "Argument NCOPIES of REPEAT intrinsic is negative (its value is %lld)"
msgstr ""
-#: fortran/trans-intrinsic.c:5445
+#: fortran/trans-intrinsic.c:5966
msgid "Argument NCOPIES of REPEAT intrinsic is too large"
msgstr ""
-#: fortran/trans-io.c:529
+#: fortran/trans-io.c:523
msgid "Unit number in I/O statement too small"
msgstr ""
-#: fortran/trans-io.c:538
+#: fortran/trans-io.c:532
msgid "Unit number in I/O statement too large"
msgstr ""
@@ -4483,16 +4390,16 @@
msgid "Assigned label is not a target label"
msgstr ""
-#: fortran/trans-stmt.c:656
+#: fortran/trans-stmt.c:768
#, c-format
msgid "Invalid image number %d in SYNC IMAGES"
msgstr ""
-#: fortran/trans-stmt.c:1090 fortran/trans-stmt.c:1371
+#: fortran/trans-stmt.c:1320 fortran/trans-stmt.c:1601
msgid "Loop variable has been modified"
msgstr ""
-#: fortran/trans-stmt.c:1230
+#: fortran/trans-stmt.c:1460
msgid "DO step value is zero"
msgstr ""
@@ -4504,211 +4411,230 @@
msgid "Incorrect function return value"
msgstr ""
-#: fortran/trans.c:556
+#: fortran/trans.c:546
msgid "Memory allocation failed"
msgstr ""
-#: fortran/trans.c:639 fortran/trans.c:1039
+#: fortran/trans.c:629 fortran/trans.c:1030
msgid "Allocation would exceed memory limit"
msgstr ""
-#: fortran/trans.c:729
+#: fortran/trans.c:720
#, c-format
msgid "Attempting to allocate already allocated variable '%s'"
msgstr ""
-#: fortran/trans.c:735
+#: fortran/trans.c:726
msgid "Attempting to allocate already allocated variable"
msgstr ""
-#: fortran/trans.c:848 fortran/trans.c:928
+#: fortran/trans.c:839 fortran/trans.c:919
#, c-format
msgid "Attempt to DEALLOCATE unallocated '%s'"
msgstr ""
-#: java/jcf-dump.c:1062
+#: java/jcf-dump.c:1063
#, c-format
msgid "Not a valid Java .class file.\n"
msgstr ""
-#: java/jcf-dump.c:1068
+#: java/jcf-dump.c:1069
#, c-format
msgid "error while parsing constant pool\n"
msgstr ""
-#: java/jcf-dump.c:1074 java/jcf-parse.c:1433
+#: java/jcf-dump.c:1075 java/jcf-parse.c:1433
#, gcc-internal-format, gfc-internal-format
msgid "error in constant pool entry #%d\n"
msgstr ""
-#: java/jcf-dump.c:1084
+#: java/jcf-dump.c:1085
#, c-format
msgid "error while parsing fields\n"
msgstr ""
-#: java/jcf-dump.c:1090
+#: java/jcf-dump.c:1091
#, c-format
msgid "error while parsing methods\n"
msgstr ""
-#: java/jcf-dump.c:1096
+#: java/jcf-dump.c:1097
#, c-format
msgid "error while parsing final attributes\n"
msgstr ""
-#: java/jcf-dump.c:1133
+#: java/jcf-dump.c:1134
#, c-format
msgid "Try 'jcf-dump --help' for more information.\n"
msgstr ""
-#: java/jcf-dump.c:1140
+#: java/jcf-dump.c:1141
#, c-format
msgid ""
"Usage: jcf-dump [OPTION]... CLASS...\n"
"\n"
msgstr ""
-#: java/jcf-dump.c:1141
+#: java/jcf-dump.c:1142
#, c-format
msgid ""
"Display contents of a class file in readable form.\n"
"\n"
msgstr ""
-#: java/jcf-dump.c:1142
+#: java/jcf-dump.c:1143
#, c-format
msgid " -c Disassemble method bodies\n"
msgstr ""
-#: java/jcf-dump.c:1143
+#: java/jcf-dump.c:1144
#, c-format
msgid " --javap Generate output in 'javap' format\n"
msgstr ""
-#: java/jcf-dump.c:1145
+#: java/jcf-dump.c:1146
#, c-format
msgid " --classpath PATH Set path to find .class files\n"
msgstr ""
-#: java/jcf-dump.c:1146
+#: java/jcf-dump.c:1147
#, c-format
msgid " -IDIR Append directory to class path\n"
msgstr ""
-#: java/jcf-dump.c:1147
+#: java/jcf-dump.c:1148
#, c-format
msgid " --bootclasspath PATH Override built-in class path\n"
msgstr ""
-#: java/jcf-dump.c:1148
+#: java/jcf-dump.c:1149
#, c-format
msgid " --extdirs PATH Set extensions directory path\n"
msgstr ""
-#: java/jcf-dump.c:1149
+#: java/jcf-dump.c:1150
#, c-format
msgid " -o FILE Set output file name\n"
msgstr ""
-#: java/jcf-dump.c:1151
+#: java/jcf-dump.c:1152
#, c-format
msgid " --help Print this help, then exit\n"
msgstr ""
-#: java/jcf-dump.c:1152
+#: java/jcf-dump.c:1153
#, c-format
msgid " --version Print version number, then exit\n"
msgstr ""
-#: java/jcf-dump.c:1153
+#: java/jcf-dump.c:1154
#, c-format
msgid " -v, --verbose Print extra information while running\n"
msgstr ""
-#: java/jcf-dump.c:1155
+#: java/jcf-dump.c:1156
#, c-format
msgid ""
"For bug reporting instructions, please see:\n"
"%s.\n"
msgstr ""
-#: java/jcf-dump.c:1183 java/jcf-dump.c:1251
+#: java/jcf-dump.c:1194 java/jcf-dump.c:1262
#, c-format
msgid "jcf-dump: no classes specified\n"
msgstr ""
-#: java/jcf-dump.c:1271
+#: java/jcf-dump.c:1282
#, c-format
msgid "Cannot open '%s' for output.\n"
msgstr ""
-#: java/jcf-dump.c:1316
+#: java/jcf-dump.c:1327
#, c-format
msgid "bad format of .zip/.jar archive\n"
msgstr ""
-#: java/jcf-dump.c:1434
+#: java/jcf-dump.c:1445
#, c-format
msgid "Bad byte codes.\n"
msgstr ""
-#: java/jvgenmain.c:47
+#: java/jvgenmain.c:48
#, c-format
msgid "Usage: %s [OPTIONS]... CLASSNAMEmain [OUTFILE]\n"
msgstr ""
-#: java/jvgenmain.c:111
+#: java/jvgenmain.c:121
#, c-format
msgid "%s: Cannot open output file: %s\n"
msgstr ""
-#: java/jvgenmain.c:157
+#: java/jvgenmain.c:167
#, c-format
msgid "%s: Failed to close output file %s\n"
msgstr ""
-#: config/bfin/elf.h:54
+#: config/lynx.h:70
+msgid "cannot use mthreads and mlegacy-threads together"
+msgstr ""
+
+#: config/lynx.h:95
+msgid "cannot use mshared and static together"
+msgstr ""
+
+#: objc/lang-specs.h:31 objc/lang-specs.h:42
+msgid "GNU Objective C no longer supports traditional compilation"
+msgstr ""
+
+#: objc/lang-specs.h:56
+msgid ""
+"objc-cpp-output is deprecated; please use objective-c-cpp-output instead"
+msgstr ""
+
+#: config/sparc/sol2.h:152 config/sparc/sol2.h:158 config/sparc/linux64.h:148
+#: config/sparc/linux64.h:155 config/sparc/netbsd-elf.h:110
+#: config/sparc/netbsd-elf.h:119
+msgid "may not use both -m32 and -m64"
+msgstr ""
+
+#: config/rs6000/sysv4.h:772 config/ia64/freebsd.h:26 config/arm/freebsd.h:31
+#: config/i386/freebsd.h:96 config/sparc/freebsd.h:46
+#: config/alpha/freebsd.h:34
+msgid "consider using '-pg' instead of '-p' with gprof(1)"
+msgstr ""
+
+#: config/i386/mingw-w64.h:83 config/i386/mingw32.h:120
+#: config/i386/cygwin.h:114
+msgid "shared and mdll are not compatible"
+msgstr ""
+
+#: config/bfin/elf.h:55
msgid "no processor type specified for linking"
msgstr ""
-#: config/arm/arm.h:178
+#: config/sol2-bi.h:92 config/sol2-bi.h:97
+msgid "does not support multilib"
+msgstr ""
+
+#: config/arm/arm.h:171
msgid "-mfloat-abi=soft and -mfloat-abi=hard may not be used together"
msgstr ""
-#: config/arm/arm.h:180
+#: config/arm/arm.h:173
msgid "-mbig-endian and -mlittle-endian may not be used together"
msgstr ""
+#: java/jvspec.c:80 ada/gcc-interface/lang-specs.h:33 gcc.c:776
+msgid "-pg and -fomit-frame-pointer are incompatible"
+msgstr ""
+
#: objcp/lang-specs.h:58
msgid ""
"objc++-cpp-output is deprecated; please use objective-c++-cpp-output instead"
msgstr ""
-#: config/i386/nwld.h:34
-msgid "static linking is not supported"
-msgstr ""
-
-#: config/i386/cygwin.h:116 config/i386/mingw-w64.h:75
-#: config/i386/mingw32.h:101
-msgid "shared and mdll are not compatible"
-msgstr ""
-
-#: config/i386/freebsd.h:98 config/ia64/freebsd.h:26 config/arm/freebsd.h:31
-#: config/alpha/freebsd.h:34 config/sparc/freebsd.h:46
-#: config/rs6000/sysv4.h:776
-msgid "consider using '-pg' instead of '-p' with gprof(1)"
-msgstr ""
-
-#: config/sh/sh.h:423
-msgid "SH2a does not support little-endian"
-msgstr ""
-
-#: config/rx/rx.h:66
-msgid "-mas100-syntax is incompatible with -gdwarf"
-msgstr ""
-
-#: config/rx/rx.h:67
-msgid "rx200 cpu does not have FPU hardware"
+#: config/rs6000/darwin.h:96
+msgid " conflicting code gen style switches are used"
msgstr ""
#: config/pa/pa-hpux10.h:89 config/pa/pa-hpux10.h:92 config/pa/pa-hpux10.h:100
@@ -4725,8 +4651,60 @@
msgid " profiling support are only provided in archive format"
msgstr ""
-#: config/rs6000/darwin.h:99
-msgid " conflicting code gen style switches are used"
+#: config/mips/mips.h:1150
+msgid "may not use both -EB and -EL"
+msgstr ""
+
+#: config/mips/r3900.h:38
+msgid "-mhard-float not supported"
+msgstr ""
+
+#: config/mips/r3900.h:40
+msgid "-msingle-float and -msoft-float cannot both be specified"
+msgstr ""
+
+#: config/darwin.h:252
+msgid "-current_version only allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:254
+msgid "-install_name only allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:259
+msgid "-bundle not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:260
+msgid "-bundle_loader not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:261
+msgid "-client_name not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:266
+msgid "-force_flat_namespace not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:268
+msgid "-keep_private_externs not allowed with -dynamiclib"
+msgstr ""
+
+#: config/darwin.h:269
+msgid "-private_bundle not allowed with -dynamiclib"
+msgstr ""
+
+#: config/i386/nwld.h:34
+msgid "static linking is not supported"
+msgstr ""
+
+#: fortran/lang-specs.h:55 fortran/lang-specs.h:69
+msgid "gfortran does not support -E without -cpp"
+msgstr ""
+
+#: config/sh/sh.h:420
+msgid "SH2a does not support little-endian"
msgstr ""
#: config/vxworks.h:71
@@ -4745,124 +4723,48 @@
msgid "-femit-class-file should used along with -fsyntax-only"
msgstr ""
-#: config/cris/cris.h:196
-msgid "do not specify both -march=... and -mcpu=..."
-msgstr ""
-
-#: config/s390/tpf.h:120
-msgid "static is not supported on TPF-OS"
-msgstr ""
-
-#: config/mips/mips.h:1169
-msgid "may not use both -EB and -EL"
-msgstr ""
-
-#: config/mips/r3900.h:38
-msgid "-mhard-float not supported"
-msgstr ""
-
-#: config/mips/r3900.h:40
-msgid "-msingle-float and -msoft-float cannot both be specified"
-msgstr ""
-
-#: fortran/lang-specs.h:55 fortran/lang-specs.h:69
-msgid "gfortran does not support -E without -cpp"
-msgstr ""
-
#: config/vax/netbsd-elf.h:51
msgid "the -shared option is not currently supported for VAX ELF"
msgstr ""
-#: config/vax/vax.h:50 config/vax/vax.h:51
-msgid "profiling not supported with -mg"
+#: config/cris/cris.h:196
+msgid "do not specify both -march=... and -mcpu=..."
msgstr ""
-#: config/i386/linux-unwind.h:186
-msgid "ax ; {int $0x80 | syscall"
+#: config/rx/rx.h:57
+msgid "-mas100-syntax is incompatible with -gdwarf"
msgstr ""
-#: ada/gcc-interface/lang-specs.h:33 gcc.c:775 java/jvspec.c:80
-msgid "-pg and -fomit-frame-pointer are incompatible"
+#: config/rx/rx.h:58
+msgid "rx200 cpu does not have FPU hardware"
msgstr ""
#: ada/gcc-interface/lang-specs.h:34
msgid "-c or -S required for Ada"
msgstr ""
+#: config/s390/tpf.h:116
+msgid "static is not supported on TPF-OS"
+msgstr ""
+
#: config/mcore/mcore.h:54
msgid "the m210 does not have little endian support"
msgstr ""
-#: config/lynx.h:70
-msgid "cannot use mthreads and mlegacy-threads together"
-msgstr ""
-
-#: config/lynx.h:95
-msgid "cannot use mshared and static together"
-msgstr ""
-
-#: config/sparc/linux64.h:151 config/sparc/linux64.h:158
-#: config/sparc/netbsd-elf.h:118 config/sparc/netbsd-elf.h:127
-#: config/sparc/sol2-bi.h:232 config/sparc/sol2-bi.h:238
-msgid "may not use both -m32 and -m64"
-msgstr ""
-
-#: config/sparc/sol2-bi.h:208 config/sparc/sol2-bi.h:213
-#: config/sparc/sol2-gld-bi.h:50 config/sparc/sol2-gld-bi.h:55
-msgid "does not support multilib"
-msgstr ""
-
-#: gcc.c:653
+#: gcc.c:654
msgid "-fuse-linker-plugin is not supported in this configuration"
msgstr ""
-#: gcc.c:937
+#: gcc.c:938
msgid "GNU C no longer supports -traditional without -E"
msgstr ""
-#: gcc.c:946
+#: gcc.c:947
msgid "-E or -x required when input is from standard input"
msgstr ""
-#: objc/lang-specs.h:31 objc/lang-specs.h:42
-msgid "GNU Objective C no longer supports traditional compilation"
-msgstr ""
-
-#: objc/lang-specs.h:56
-msgid ""
-"objc-cpp-output is deprecated; please use objective-c-cpp-output instead"
-msgstr ""
-
-#: config/darwin.h:251
-msgid "-current_version only allowed with -dynamiclib"
-msgstr ""
-
-#: config/darwin.h:253
-msgid "-install_name only allowed with -dynamiclib"
-msgstr ""
-
-#: config/darwin.h:258
-msgid "-bundle not allowed with -dynamiclib"
-msgstr ""
-
-#: config/darwin.h:259
-msgid "-bundle_loader not allowed with -dynamiclib"
-msgstr ""
-
-#: config/darwin.h:260
-msgid "-client_name not allowed with -dynamiclib"
-msgstr ""
-
-#: config/darwin.h:265
-msgid "-force_flat_namespace not allowed with -dynamiclib"
-msgstr ""
-
-#: config/darwin.h:267
-msgid "-keep_private_externs not allowed with -dynamiclib"
-msgstr ""
-
-#: config/darwin.h:268
-msgid "-private_bundle not allowed with -dynamiclib"
+#: config/vax/vax.h:50 config/vax/vax.h:51
+msgid "profiling not supported with -mg"
msgstr ""
#: java/lang.opt:122
@@ -4976,7 +4878,7 @@
msgid "Set the target VM version"
msgstr ""
-#: ada/gcc-interface/lang.opt:117
+#: ada/gcc-interface/lang.opt:111
msgid "-gnat<options>\tSpecify options to GNAT"
msgstr ""
@@ -5009,321 +4911,342 @@
msgstr ""
#: fortran/lang.opt:227
-msgid "Warn about calls with implicit interface"
+msgid "Warn about function call elimination"
msgstr ""
#: fortran/lang.opt:231
-msgid "Warn about called procedures not explicitly declared"
+msgid "Warn about calls with implicit interface"
msgstr ""
#: fortran/lang.opt:235
-msgid "Warn about truncated source lines"
+msgid "Warn about called procedures not explicitly declared"
msgstr ""
#: fortran/lang.opt:239
+msgid "Warn about truncated source lines"
+msgstr ""
+
+#: fortran/lang.opt:243
msgid "Warn on intrinsics not part of the selected standard"
msgstr ""
#: fortran/lang.opt:247
-msgid "Warn about \"suspicious\" constructs"
-msgstr ""
-
-#: fortran/lang.opt:251
-msgid "Permit nonconforming uses of the tab character"
+msgid "Warn about real-literal-constants with 'q' exponent-letter"
msgstr ""
#: fortran/lang.opt:255
-msgid "Warn about underflow of numerical constant expressions"
+msgid "Warn about \"suspicious\" constructs"
msgstr ""
#: fortran/lang.opt:259
-msgid "Warn if a user-procedure has the same name as an intrinsic"
+msgid "Permit nonconforming uses of the tab character"
msgstr ""
#: fortran/lang.opt:263
-msgid "Warn about unused dummy arguments."
+msgid "Warn about underflow of numerical constant expressions"
msgstr ""
#: fortran/lang.opt:267
-msgid "Enable preprocessing"
+msgid "Warn if a user-procedure has the same name as an intrinsic"
+msgstr ""
+
+#: fortran/lang.opt:271
+msgid "Warn about unused dummy arguments."
msgstr ""
#: fortran/lang.opt:275
-msgid "Disable preprocessing"
+msgid "Enable preprocessing"
msgstr ""
#: fortran/lang.opt:283
-msgid "Eliminate multiple function invokations also for impure functions"
-msgstr ""
-
-#: fortran/lang.opt:287
-msgid "Enable alignment of COMMON blocks"
+msgid "Disable preprocessing"
msgstr ""
#: fortran/lang.opt:291
-msgid "All intrinsics procedures are available regardless of selected standard"
+msgid "Eliminate multiple function invokations also for impure functions"
+msgstr ""
+
+#: fortran/lang.opt:295
+msgid "Enable alignment of COMMON blocks"
msgstr ""
#: fortran/lang.opt:299
+msgid "All intrinsics procedures are available regardless of selected standard"
+msgstr ""
+
+#: fortran/lang.opt:307
msgid ""
"Do not treat local variables and COMMON blocks as if they were named in SAVE "
"statements"
msgstr ""
-#: fortran/lang.opt:303
+#: fortran/lang.opt:311
msgid "Specify that backslash in string introduces an escape character"
msgstr ""
-#: fortran/lang.opt:307
+#: fortran/lang.opt:315
msgid "Produce a backtrace when a runtime error is encountered"
msgstr ""
-#: fortran/lang.opt:311
+#: fortran/lang.opt:319
msgid ""
"-fblas-matmul-limit=<n>\tSize of the smallest matrix for which matmul will "
"use BLAS"
msgstr ""
-#: fortran/lang.opt:315
+#: fortran/lang.opt:323
msgid ""
"Produce a warning at runtime if a array temporary has been created for a "
"procedure argument"
msgstr ""
-#: fortran/lang.opt:319
+#: fortran/lang.opt:327
msgid "Use big-endian format for unformatted files"
msgstr ""
-#: fortran/lang.opt:323
+#: fortran/lang.opt:331
msgid "Use little-endian format for unformatted files"
msgstr ""
-#: fortran/lang.opt:327
+#: fortran/lang.opt:335
msgid "Use native format for unformatted files"
msgstr ""
-#: fortran/lang.opt:331
+#: fortran/lang.opt:339
msgid "Swap endianness for unformatted files"
msgstr ""
-#: fortran/lang.opt:335
+#: fortran/lang.opt:343
msgid "Use the Cray Pointer extension"
msgstr ""
-#: fortran/lang.opt:339
+#: fortran/lang.opt:347
msgid "Ignore 'D' in column one in fixed form"
msgstr ""
-#: fortran/lang.opt:343
+#: fortran/lang.opt:351
msgid "Treat lines with 'D' in column one as comments"
msgstr ""
-#: fortran/lang.opt:347
+#: fortran/lang.opt:355
msgid "Set the default double precision kind to an 8 byte wide type"
msgstr ""
-#: fortran/lang.opt:351
+#: fortran/lang.opt:359
msgid "Set the default integer kind to an 8 byte wide type"
msgstr ""
-#: fortran/lang.opt:355
+#: fortran/lang.opt:363
msgid "Set the default real kind to an 8 byte wide type"
msgstr ""
-#: fortran/lang.opt:359
+#: fortran/lang.opt:367
msgid "Allow dollar signs in entity names"
msgstr ""
-#: fortran/lang.opt:363
-msgid "Dump a core file when a runtime error occurs"
-msgstr ""
-
-#: fortran/lang.opt:367
-msgid "Display the code tree after parsing"
-msgstr ""
-
-#: fortran/lang.opt:371
-msgid "Display the code tree after front end optimization"
+#: fortran/lang.opt:371 common.opt:648 common.opt:808 common.opt:812
+#: common.opt:816 common.opt:820 common.opt:1293
+msgid "Does nothing. Preserved for backward compatibility."
msgstr ""
#: fortran/lang.opt:375
-msgid "Display the code tree after parsing; deprecated option"
+msgid "Display the code tree after parsing"
msgstr ""
#: fortran/lang.opt:379
+msgid "Display the code tree after front end optimization"
+msgstr ""
+
+#: fortran/lang.opt:383
+msgid "Display the code tree after parsing; deprecated option"
+msgstr ""
+
+#: fortran/lang.opt:387
msgid ""
"Specify that an external BLAS library should be used for matmul calls on "
"large-size arrays"
msgstr ""
-#: fortran/lang.opt:383
+#: fortran/lang.opt:391
msgid "Use f2c calling convention"
msgstr ""
-#: fortran/lang.opt:387
+#: fortran/lang.opt:395
msgid "Assume that the source file is fixed form"
msgstr ""
-#: fortran/lang.opt:391
+#: fortran/lang.opt:399
msgid "Specify where to find the compiled intrinsic modules"
msgstr ""
-#: fortran/lang.opt:395
+#: fortran/lang.opt:403
msgid "Allow arbitrary character line width in fixed mode"
msgstr ""
-#: fortran/lang.opt:399
+#: fortran/lang.opt:407
msgid "-ffixed-line-length-<n>\tUse n as character line width in fixed mode"
msgstr ""
-#: fortran/lang.opt:403
+#: fortran/lang.opt:411
msgid "-ffpe-trap=[...]\tStop on following floating point exceptions"
msgstr ""
-#: fortran/lang.opt:407
+#: fortran/lang.opt:415
msgid "Assume that the source file is free form"
msgstr ""
-#: fortran/lang.opt:411
+#: fortran/lang.opt:419
msgid "Allow arbitrary character line width in free mode"
msgstr ""
-#: fortran/lang.opt:415
+#: fortran/lang.opt:423
msgid "-ffree-line-length-<n>\tUse n as character line width in free mode"
msgstr ""
-#: fortran/lang.opt:419
+#: fortran/lang.opt:427
+msgid "Enable front end optimization"
+msgstr ""
+
+#: fortran/lang.opt:431
msgid ""
"Specify that no implicit typing is allowed, unless overridden by explicit "
"IMPLICIT statements"
msgstr ""
-#: fortran/lang.opt:423
+#: fortran/lang.opt:435
msgid ""
"-finit-character=<n>\tInitialize local character variables to ASCII value n"
msgstr ""
-#: fortran/lang.opt:427
+#: fortran/lang.opt:439
msgid "-finit-integer=<n>\tInitialize local integer variables to n"
msgstr ""
-#: fortran/lang.opt:431
+#: fortran/lang.opt:443
msgid "Initialize local variables to zero (from g77)"
msgstr ""
-#: fortran/lang.opt:435
+#: fortran/lang.opt:447
msgid "-finit-logical=<true|false>\tInitialize local logical variables"
msgstr ""
-#: fortran/lang.opt:439
+#: fortran/lang.opt:451
msgid "-finit-real=<zero|nan|inf|-inf>\tInitialize local real variables"
msgstr ""
-#: fortran/lang.opt:443
+#: fortran/lang.opt:455
msgid ""
"-fmax-array-constructor=<n>\tMaximum number of objects in an array "
"constructor"
msgstr ""
-#: fortran/lang.opt:447
+#: fortran/lang.opt:459
msgid "-fmax-identifier-length=<n>\tMaximum identifier length"
msgstr ""
-#: fortran/lang.opt:451
+#: fortran/lang.opt:463
msgid "-fmax-subrecord-length=<n>\tMaximum length for subrecords"
msgstr ""
-#: fortran/lang.opt:455
+#: fortran/lang.opt:467
msgid ""
"-fmax-stack-var-size=<n>\tSize in bytes of the largest array that will be "
"put on the stack"
msgstr ""
-#: fortran/lang.opt:459
-msgid "Set default accessibility of module entities to PRIVATE."
-msgstr ""
-
-#: fortran/lang.opt:467
-msgid "Try to lay out derived types as compactly as possible"
+#: fortran/lang.opt:471
+msgid "Put all local arrays on stack."
msgstr ""
#: fortran/lang.opt:475
-msgid "Protect parentheses in expressions"
-msgstr ""
-
-#: fortran/lang.opt:479
-msgid "Enable range checking during compilation"
+msgid "Set default accessibility of module entities to PRIVATE."
msgstr ""
#: fortran/lang.opt:483
-msgid "Reallocate the LHS in assignments"
-msgstr ""
-
-#: fortran/lang.opt:487
-msgid "Use a 4-byte record marker for unformatted files"
+msgid "Try to lay out derived types as compactly as possible"
msgstr ""
#: fortran/lang.opt:491
-msgid "Use an 8-byte record marker for unformatted files"
+msgid "Protect parentheses in expressions"
msgstr ""
#: fortran/lang.opt:495
-msgid "Allocate local variables on the stack to allow indirect recursion"
+msgid "Enable range checking during compilation"
msgstr ""
#: fortran/lang.opt:499
-msgid "Copy array sections into a contiguous block on procedure entry"
+msgid "Reallocate the LHS in assignments"
msgstr ""
#: fortran/lang.opt:503
-msgid "-fcoarray=[...]\tSpecify which coarray parallelization should be used"
+msgid "Use a 4-byte record marker for unformatted files"
msgstr ""
#: fortran/lang.opt:507
-msgid "-fcheck=[...]\tSpecify which runtime checks are to be performed"
+msgid "Use an 8-byte record marker for unformatted files"
msgstr ""
#: fortran/lang.opt:511
-msgid "Append a second underscore if the name already contains an underscore"
+msgid "Allocate local variables on the stack to allow indirect recursion"
+msgstr ""
+
+#: fortran/lang.opt:515
+msgid "Copy array sections into a contiguous block on procedure entry"
msgstr ""
#: fortran/lang.opt:519
-msgid "Apply negative sign to zero values"
+msgid "-fcoarray=[...]\tSpecify which coarray parallelization should be used"
msgstr ""
#: fortran/lang.opt:523
-msgid "Append underscores to externally visible names"
+msgid "-fcheck=[...]\tSpecify which runtime checks are to be performed"
msgstr ""
#: fortran/lang.opt:527
+msgid "Append a second underscore if the name already contains an underscore"
+msgstr ""
+
+#: fortran/lang.opt:535
+msgid "Apply negative sign to zero values"
+msgstr ""
+
+#: fortran/lang.opt:539
+msgid "Append underscores to externally visible names"
+msgstr ""
+
+#: fortran/lang.opt:543
msgid "Compile all program units at once and check all interfaces"
msgstr ""
-#: fortran/lang.opt:567
+#: fortran/lang.opt:583
msgid "Statically link the GNU Fortran helper library (libgfortran)"
msgstr ""
-#: fortran/lang.opt:571
+#: fortran/lang.opt:587
msgid "Conform to the ISO Fortran 2003 standard"
msgstr ""
-#: fortran/lang.opt:575
+#: fortran/lang.opt:591
msgid "Conform to the ISO Fortran 2008 standard"
msgstr ""
-#: fortran/lang.opt:579
+#: fortran/lang.opt:595
+msgid "Conform to the ISO Fortran 2008 standard including TR 29113"
+msgstr ""
+
+#: fortran/lang.opt:599
msgid "Conform to the ISO Fortran 95 standard"
msgstr ""
-#: fortran/lang.opt:583
+#: fortran/lang.opt:603
msgid "Conform to nothing in particular"
msgstr ""
-#: fortran/lang.opt:587
+#: fortran/lang.opt:607
msgid "Accept extensions to support legacy code"
msgstr ""
-#: config/alpha/alpha.opt:23 config/i386/i386.opt:214
+#: config/alpha/alpha.opt:23 config/i386/i386.opt:275
msgid "Do not use hardware fp"
msgstr ""
@@ -5434,7 +5357,7 @@
msgstr ""
#: config/alpha/alpha.opt:134 config/ia64/ia64.opt:119
-#: config/rs6000/sysv4.opt:32
+#: config/rs6000/sysv4.opt:33
msgid "Specify bit size of immediate TLS offsets"
msgstr ""
@@ -5520,7 +5443,7 @@
msgid "Enable use of GPREL for read-only data in FDPIC"
msgstr ""
-#: config/frv/frv.opt:158 config/rs6000/rs6000.opt:216
+#: config/frv/frv.opt:158 config/rs6000/rs6000.opt:180
#: config/pdp11/pdp11.opt:67
msgid "Use hardware floating point"
msgstr ""
@@ -5613,7 +5536,7 @@
msgid "Target the AM34 processor"
msgstr ""
-#: config/mn10300/mn10300.opt:42 config/arm/arm.opt:154
+#: config/mn10300/mn10300.opt:42 config/arm/arm.opt:220
msgid "Tune code for the given processor"
msgstr ""
@@ -5633,6 +5556,10 @@
msgid "Allow gcc to generate LIW instructions"
msgstr ""
+#: config/mn10300/mn10300.opt:67
+msgid "Allow gcc to generate the SETLB and Lcc instructions"
+msgstr ""
+
#: config/s390/tpf.opt:23
msgid "Enable TPF-OS tracing code"
msgstr ""
@@ -5649,7 +5576,7 @@
msgid "64 bit ABI"
msgstr ""
-#: config/s390/s390.opt:47 config/i386/i386.opt:107 config/spu/spu.opt:80
+#: config/s390/s390.opt:47 config/i386/i386.opt:106 config/spu/spu.opt:80
msgid "Generate code for given CPU"
msgstr ""
@@ -5697,8 +5624,8 @@
"exceeds the given limit"
msgstr ""
-#: config/s390/s390.opt:126 config/ia64/ia64.opt:123 config/sparc/sparc.opt:91
-#: config/i386/i386.opt:242 config/spu/spu.opt:84
+#: config/s390/s390.opt:126 config/ia64/ia64.opt:123 config/sparc/sparc.opt:98
+#: config/i386/i386.opt:338 config/spu/spu.opt:84
msgid "Schedule code for given CPU"
msgstr ""
@@ -5932,75 +5859,79 @@
msgid "Generate code for big-endian"
msgstr ""
-#: config/sparc/sparc.opt:23 config/sparc/sparc.opt:27
+#: config/sparc/sparc.opt:26 config/sparc/sparc.opt:30
msgid "Use hardware FP"
msgstr ""
-#: config/sparc/sparc.opt:31
+#: config/sparc/sparc.opt:34
msgid "Do not use hardware FP"
msgstr ""
-#: config/sparc/sparc.opt:35
+#: config/sparc/sparc.opt:38
+msgid "Use flat register window model"
+msgstr ""
+
+#: config/sparc/sparc.opt:42
msgid "Assume possible double misalignment"
msgstr ""
-#: config/sparc/sparc.opt:39
+#: config/sparc/sparc.opt:46
msgid "Use ABI reserved registers"
msgstr ""
-#: config/sparc/sparc.opt:43
+#: config/sparc/sparc.opt:50
msgid "Use hardware quad FP instructions"
msgstr ""
-#: config/sparc/sparc.opt:47
+#: config/sparc/sparc.opt:54
msgid "Do not use hardware quad fp instructions"
msgstr ""
-#: config/sparc/sparc.opt:51
+#: config/sparc/sparc.opt:58
msgid "Compile for V8+ ABI"
msgstr ""
-#: config/sparc/sparc.opt:55
+#: config/sparc/sparc.opt:62
msgid "Use UltraSPARC Visual Instruction Set extensions"
msgstr ""
-#: config/sparc/sparc.opt:59
+#: config/sparc/sparc.opt:66
msgid "Pointers are 64-bit"
msgstr ""
-#: config/sparc/sparc.opt:63
+#: config/sparc/sparc.opt:70
msgid "Pointers are 32-bit"
msgstr ""
-#: config/sparc/sparc.opt:67
+#: config/sparc/sparc.opt:74
msgid "Use 64-bit ABI"
msgstr ""
-#: config/sparc/sparc.opt:71
+#: config/sparc/sparc.opt:78
msgid "Use 32-bit ABI"
msgstr ""
-#: config/sparc/sparc.opt:75
+#: config/sparc/sparc.opt:82
msgid "Use stack bias"
msgstr ""
-#: config/sparc/sparc.opt:79
+#: config/sparc/sparc.opt:86
msgid "Use structs on stronger alignment for double-word copies"
msgstr ""
-#: config/sparc/sparc.opt:83
+#: config/sparc/sparc.opt:90
msgid "Optimize tail call instructions in assembler and linker"
msgstr ""
-#: config/sparc/sparc.opt:87
+#: config/sparc/sparc.opt:94
msgid "Use features of and schedule code for given CPU"
msgstr ""
-#: config/sparc/sparc.opt:95
+#: config/sparc/sparc.opt:156
msgid "Use given SPARC-V9 code model"
msgstr ""
-#: config/sparc/sparc.opt:99
+#: config/sparc/sparc.opt:160
msgid "Enable strict 32-bit psABI struct return checking."
msgstr ""
@@ -6064,521 +5995,578 @@
msgid "Small data area: none, sdata, use"
msgstr ""
-#: config/m68k/m68k.opt:23
+#: config/m68k/m68k.opt:31
msgid "Generate code for a 520X"
msgstr ""
-#: config/m68k/m68k.opt:27
+#: config/m68k/m68k.opt:35
msgid "Generate code for a 5206e"
msgstr ""
-#: config/m68k/m68k.opt:31
+#: config/m68k/m68k.opt:39
msgid "Generate code for a 528x"
msgstr ""
-#: config/m68k/m68k.opt:35
+#: config/m68k/m68k.opt:43
msgid "Generate code for a 5307"
msgstr ""
-#: config/m68k/m68k.opt:39
+#: config/m68k/m68k.opt:47
msgid "Generate code for a 5407"
msgstr ""
-#: config/m68k/m68k.opt:43 config/m68k/m68k.opt:104
+#: config/m68k/m68k.opt:51 config/m68k/m68k.opt:112
msgid "Generate code for a 68000"
msgstr ""
-#: config/m68k/m68k.opt:47
+#: config/m68k/m68k.opt:55
msgid "Generate code for a 68010"
msgstr ""
-#: config/m68k/m68k.opt:51 config/m68k/m68k.opt:108
+#: config/m68k/m68k.opt:59 config/m68k/m68k.opt:116
msgid "Generate code for a 68020"
msgstr ""
-#: config/m68k/m68k.opt:55
+#: config/m68k/m68k.opt:63
msgid "Generate code for a 68040, without any new instructions"
msgstr ""
-#: config/m68k/m68k.opt:59
+#: config/m68k/m68k.opt:67
msgid "Generate code for a 68060, without any new instructions"
msgstr ""
-#: config/m68k/m68k.opt:63
+#: config/m68k/m68k.opt:71
msgid "Generate code for a 68030"
msgstr ""
-#: config/m68k/m68k.opt:67
+#: config/m68k/m68k.opt:75
msgid "Generate code for a 68040"
msgstr ""
-#: config/m68k/m68k.opt:71
+#: config/m68k/m68k.opt:79
msgid "Generate code for a 68060"
msgstr ""
-#: config/m68k/m68k.opt:75
+#: config/m68k/m68k.opt:83
msgid "Generate code for a 68302"
msgstr ""
-#: config/m68k/m68k.opt:79
+#: config/m68k/m68k.opt:87
msgid "Generate code for a 68332"
msgstr ""
-#: config/m68k/m68k.opt:84
+#: config/m68k/m68k.opt:92
msgid "Generate code for a 68851"
msgstr ""
-#: config/m68k/m68k.opt:88
+#: config/m68k/m68k.opt:96
msgid "Generate code that uses 68881 floating-point instructions"
msgstr ""
-#: config/m68k/m68k.opt:92
+#: config/m68k/m68k.opt:100
msgid "Align variables on a 32-bit boundary"
msgstr ""
-#: config/m68k/m68k.opt:96 config/arm/arm.opt:49 config/score/score.opt:47
+#: config/m68k/m68k.opt:104 config/arm/arm.opt:71 config/score/score.opt:47
msgid "Specify the name of the target architecture"
msgstr ""
-#: config/m68k/m68k.opt:100
+#: config/m68k/m68k.opt:108
msgid "Use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.opt:112
+#: config/m68k/m68k.opt:120
msgid "Generate code for a ColdFire v4e"
msgstr ""
-#: config/m68k/m68k.opt:116
+#: config/m68k/m68k.opt:124
msgid "Specify the target CPU"
msgstr ""
-#: config/m68k/m68k.opt:120
+#: config/m68k/m68k.opt:128
msgid "Generate code for a cpu32"
msgstr ""
-#: config/m68k/m68k.opt:124
+#: config/m68k/m68k.opt:132
msgid "Use hardware division instructions on ColdFire"
msgstr ""
-#: config/m68k/m68k.opt:128
+#: config/m68k/m68k.opt:136
msgid "Generate code for a Fido A"
msgstr ""
-#: config/m68k/m68k.opt:132
+#: config/m68k/m68k.opt:140
msgid "Generate code which uses hardware floating point instructions"
msgstr ""
-#: config/m68k/m68k.opt:136
+#: config/m68k/m68k.opt:144
msgid "Enable ID based shared library"
msgstr ""
-#: config/m68k/m68k.opt:140
+#: config/m68k/m68k.opt:148
msgid "Do not use the bit-field instructions"
msgstr ""
-#: config/m68k/m68k.opt:144
+#: config/m68k/m68k.opt:152
msgid "Use normal calling convention"
msgstr ""
-#: config/m68k/m68k.opt:148
+#: config/m68k/m68k.opt:156
msgid "Consider type 'int' to be 32 bits wide"
msgstr ""
-#: config/m68k/m68k.opt:152
+#: config/m68k/m68k.opt:160
msgid "Generate pc-relative code"
msgstr ""
-#: config/m68k/m68k.opt:156
+#: config/m68k/m68k.opt:164
msgid "Use different calling convention using 'rtd'"
msgstr ""
-#: config/m68k/m68k.opt:160 config/bfin/bfin.opt:78
+#: config/m68k/m68k.opt:168 config/bfin/bfin.opt:78
msgid "Enable separate data segment"
msgstr ""
-#: config/m68k/m68k.opt:164 config/bfin/bfin.opt:74
+#: config/m68k/m68k.opt:172 config/bfin/bfin.opt:74
msgid "ID of shared library to build"
msgstr ""
-#: config/m68k/m68k.opt:168
+#: config/m68k/m68k.opt:176
msgid "Consider type 'int' to be 16 bits wide"
msgstr ""
-#: config/m68k/m68k.opt:172
+#: config/m68k/m68k.opt:180
msgid "Generate code with library calls for floating point"
msgstr ""
-#: config/m68k/m68k.opt:176
+#: config/m68k/m68k.opt:184
msgid "Do not use unaligned memory references"
msgstr ""
-#: config/m68k/m68k.opt:180
+#: config/m68k/m68k.opt:188
msgid "Tune for the specified target CPU or architecture"
msgstr ""
-#: config/m68k/m68k.opt:184
+#: config/m68k/m68k.opt:192
msgid "Support more than 8192 GOT entries on ColdFire"
msgstr ""
-#: config/m68k/m68k.opt:188
+#: config/m68k/m68k.opt:196
msgid "Support TLS segment larger than 64K"
msgstr ""
-#: config/m68k/ieee.opt:24 config/i386/i386.opt:150
+#: config/m68k/ieee.opt:24 config/i386/i386.opt:203
msgid "Use IEEE math for fp comparisons"
msgstr ""
+#: config/m68k/m68k-tables.opt:25
+msgid "Known M68K CPUs (for use with the -mcpu= option):"
+msgstr ""
+
+#: config/m68k/m68k-tables.opt:347
+msgid "Known M68K microarchitectures (for use with the -mtune= option):"
+msgstr ""
+
+#: config/m68k/m68k-tables.opt:393
+msgid "Known M68K ISAs (for use with the -march= option):"
+msgstr ""
+
#: config/i386/djgpp.opt:25
msgid "Ignored (obsolete)"
msgstr ""
-#: config/i386/mingw.opt:23
+#: config/i386/mingw.opt:29
msgid "Warn about none ISO msvcrt scanf/printf width extensions"
msgstr ""
-#: config/i386/mingw.opt:27
+#: config/i386/mingw.opt:33
msgid "For nested functions on stack executable permission is set."
msgstr ""
-#: config/i386/i386.opt:71
+#: config/i386/i386.opt:70
msgid "sizeof(long double) is 16"
msgstr ""
-#: config/i386/i386.opt:75 config/i386/i386.opt:146
+#: config/i386/i386.opt:74 config/i386/i386.opt:199
msgid "Use hardware fp"
msgstr ""
-#: config/i386/i386.opt:79
+#: config/i386/i386.opt:78
msgid "sizeof(long double) is 12"
msgstr ""
-#: config/i386/i386.opt:83 config/sh/sh.opt:206
+#: config/i386/i386.opt:82 config/sh/sh.opt:206
msgid "Reserve space for outgoing arguments in the function prologue"
msgstr ""
-#: config/i386/i386.opt:87
+#: config/i386/i386.opt:86
msgid "Align some doubles on dword boundary"
msgstr ""
-#: config/i386/i386.opt:91
+#: config/i386/i386.opt:90
msgid "Function starts are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.opt:95
+#: config/i386/i386.opt:94
msgid "Jump targets are aligned to this power of 2"
msgstr ""
-#: config/i386/i386.opt:99
+#: config/i386/i386.opt:98
msgid "Loop code aligned to this power of 2"
msgstr ""
-#: config/i386/i386.opt:103
+#: config/i386/i386.opt:102
msgid "Align destination of the string operations"
msgstr ""
-#: config/i386/i386.opt:111
+#: config/i386/i386.opt:110
msgid "Use given assembler dialect"
msgstr ""
-#: config/i386/i386.opt:115
+#: config/i386/i386.opt:114
+msgid "Known assembler dialects (for use with the -masm-dialect= option):"
+msgstr ""
+
+#: config/i386/i386.opt:124
msgid "Branches are this expensive (1-5, arbitrary units)"
msgstr ""
-#: config/i386/i386.opt:119
+#: config/i386/i386.opt:128
msgid ""
"Data greater than given threshold will go into .ldata section in x86-64 "
"medium model"
msgstr ""
-#: config/i386/i386.opt:123
+#: config/i386/i386.opt:132
msgid "Use given x86-64 code model"
msgstr ""
-#: config/i386/i386.opt:126
-msgid "%<-mcpu=%> is deprecated; use %<-mtune=%> or %<-march=%> instead"
-msgstr ""
-
-#: config/i386/i386.opt:130
-msgid "Generate sin, cos, sqrt for FPU"
-msgstr ""
-
-#: config/i386/i386.opt:134
-msgid "Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack"
-msgstr ""
-
-#: config/i386/i386.opt:138
-msgid "Return values of functions in FPU registers"
-msgstr ""
-
-#: config/i386/i386.opt:142
-msgid "Generate floating point mathematics using given instruction set"
+#: config/i386/i386.opt:136 config/rs6000/linux64.opt:32
+msgid "Known code models (for use with the -mcmodel= option):"
msgstr ""
#: config/i386/i386.opt:154
-msgid "Inline all known string operations"
+msgid "%<-mcpu=%> is deprecated; use %<-mtune=%> or %<-march=%> instead"
msgstr ""
#: config/i386/i386.opt:158
+msgid "Generate sin, cos, sqrt for FPU"
+msgstr ""
+
+#: config/i386/i386.opt:162
+msgid "Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack"
+msgstr ""
+
+#: config/i386/i386.opt:166
+msgid "Return values of functions in FPU registers"
+msgstr ""
+
+#: config/i386/i386.opt:170
+msgid "Generate floating point mathematics using given instruction set"
+msgstr ""
+
+#: config/i386/i386.opt:174
+msgid "Valid arguments to -mfpmath=:"
+msgstr ""
+
+#: config/i386/i386.opt:207
+msgid "Inline all known string operations"
+msgstr ""
+
+#: config/i386/i386.opt:211
msgid ""
"Inline memset/memcpy string operations, but perform inline version only for "
"small blocks"
msgstr ""
-#: config/i386/i386.opt:161
+#: config/i386/i386.opt:214
msgid ""
"%<-mintel-syntax%> and %<-mno-intel-syntax%> are deprecated; use %<-"
"masm=intel%> and %<-masm=att%> instead"
msgstr ""
-#: config/i386/i386.opt:166
+#: config/i386/i386.opt:219
msgid "Use native (MS) bitfield layout"
msgstr ""
-#: config/i386/i386.opt:182
+#: config/i386/i386.opt:235
msgid "Omit the frame pointer in leaf functions"
msgstr ""
-#: config/i386/i386.opt:186
-msgid "Set 80387 floating-point precision (-mpc32, -mpc64, -mpc80)"
+#: config/i386/i386.opt:239
+msgid "Set 80387 floating-point precision to 32-bit"
msgstr ""
-#: config/i386/i386.opt:190
+#: config/i386/i386.opt:243
+msgid "Set 80387 floating-point precision to 64-bit"
+msgstr ""
+
+#: config/i386/i386.opt:247
+msgid "Set 80387 floating-point precision to 80-bit"
+msgstr ""
+
+#: config/i386/i386.opt:251
msgid "Attempt to keep stack aligned to this power of 2"
msgstr ""
-#: config/i386/i386.opt:194
+#: config/i386/i386.opt:255
msgid "Assume incoming stack aligned to this power of 2"
msgstr ""
-#: config/i386/i386.opt:198
+#: config/i386/i386.opt:259
msgid "Use push instructions to save outgoing arguments"
msgstr ""
-#: config/i386/i386.opt:202
+#: config/i386/i386.opt:263
msgid "Use red-zone in the x86-64 code"
msgstr ""
-#: config/i386/i386.opt:206
+#: config/i386/i386.opt:267
msgid "Number of registers used to pass integer arguments"
msgstr ""
-#: config/i386/i386.opt:210
+#: config/i386/i386.opt:271
msgid "Alternate calling convention"
msgstr ""
-#: config/i386/i386.opt:218
+#: config/i386/i386.opt:279
msgid "Use SSE register passing conventions for SF and DF mode"
msgstr ""
-#: config/i386/i386.opt:222
+#: config/i386/i386.opt:283
msgid "Realign stack in prologue"
msgstr ""
-#: config/i386/i386.opt:226
+#: config/i386/i386.opt:287
msgid "Enable stack probing"
msgstr ""
-#: config/i386/i386.opt:230
+#: config/i386/i386.opt:291
msgid "Chose strategy to generate stringop using"
msgstr ""
-#: config/i386/i386.opt:234
+#: config/i386/i386.opt:295
+msgid "Valid arguments to -mstringop-strategy=:"
+msgstr ""
+
+#: config/i386/i386.opt:320
msgid "Use given thread-local storage dialect"
msgstr ""
-#: config/i386/i386.opt:238
+#: config/i386/i386.opt:324
+msgid "Known TLS dialects (for use with the -mtls-dialect= option):"
+msgstr ""
+
+#: config/i386/i386.opt:334
#, c-format
msgid "Use direct references against %gs when accessing tls data"
msgstr ""
-#: config/i386/i386.opt:246
+#: config/i386/i386.opt:342
msgid "Generate code that conforms to the given ABI"
msgstr ""
-#: config/i386/i386.opt:250 config/rs6000/rs6000.opt:228
+#: config/i386/i386.opt:346
+msgid "Known ABIs (for use with the -mabi= option):"
+msgstr ""
+
+#: config/i386/i386.opt:356 config/rs6000/rs6000.opt:192
msgid "Vector library ABI to use"
msgstr ""
-#: config/i386/i386.opt:254
+#: config/i386/i386.opt:360
+msgid ""
+"Known vectorization library ABIs (for use with the -mveclibabi= option):"
+msgstr ""
+
+#: config/i386/i386.opt:370
msgid "Return 8-byte vectors in memory"
msgstr ""
-#: config/i386/i386.opt:258
+#: config/i386/i386.opt:374
msgid "Generate reciprocals instead of divss and sqrtss."
msgstr ""
-#: config/i386/i386.opt:262
+#: config/i386/i386.opt:378
msgid "Generate cld instruction in the function prologue."
msgstr ""
-#: config/i386/i386.opt:266
+#: config/i386/i386.opt:382
msgid ""
"Generate vzeroupper instruction before a transfer of control flow out of"
msgstr ""
-#: config/i386/i386.opt:271
+#: config/i386/i386.opt:387
msgid "Do dispatch scheduling if processor is bdver1 and Haifa scheduling"
msgstr ""
-#: config/i386/i386.opt:276
+#: config/i386/i386.opt:392
msgid ""
"Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-"
"vectorizer."
msgstr ""
-#: config/i386/i386.opt:282
+#: config/i386/i386.opt:398
msgid "Generate 32bit i386 code"
msgstr ""
-#: config/i386/i386.opt:286
+#: config/i386/i386.opt:402
msgid "Generate 64bit x86-64 code"
msgstr ""
-#: config/i386/i386.opt:290
+#: config/i386/i386.opt:406
msgid "Support MMX built-in functions"
msgstr ""
-#: config/i386/i386.opt:294
+#: config/i386/i386.opt:410
msgid "Support 3DNow! built-in functions"
msgstr ""
-#: config/i386/i386.opt:298
+#: config/i386/i386.opt:414
msgid "Support Athlon 3Dnow! built-in functions"
msgstr ""
-#: config/i386/i386.opt:302
+#: config/i386/i386.opt:418
msgid "Support MMX and SSE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:306
+#: config/i386/i386.opt:422
msgid "Support MMX, SSE and SSE2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:310
+#: config/i386/i386.opt:426
msgid "Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:314
+#: config/i386/i386.opt:430
msgid ""
"Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:318
+#: config/i386/i386.opt:434
msgid ""
"Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code "
"generation"
msgstr ""
-#: config/i386/i386.opt:322 config/i386/i386.opt:326
+#: config/i386/i386.opt:438 config/i386/i386.opt:442
msgid ""
"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions "
"and code generation"
msgstr ""
-#: config/i386/i386.opt:330
+#: config/i386/i386.opt:446
msgid "Do not support SSE4.1 and SSE4.2 built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:333
+#: config/i386/i386.opt:449
msgid "%<-msse5%> was removed"
msgstr ""
-#: config/i386/i386.opt:338
+#: config/i386/i386.opt:454
msgid ""
"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in "
"functions and code generation"
msgstr ""
-#: config/i386/i386.opt:342
+#: config/i386/i386.opt:458
msgid ""
"Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in "
"functions and code generation"
msgstr ""
-#: config/i386/i386.opt:346
+#: config/i386/i386.opt:462
msgid ""
"Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:350
+#: config/i386/i386.opt:466
msgid "Support FMA4 built-in functions and code generation "
msgstr ""
-#: config/i386/i386.opt:354
+#: config/i386/i386.opt:470
msgid "Support XOP built-in functions and code generation "
msgstr ""
-#: config/i386/i386.opt:358
+#: config/i386/i386.opt:474
msgid "Support LWP built-in functions and code generation "
msgstr ""
-#: config/i386/i386.opt:362
+#: config/i386/i386.opt:478
msgid ""
"Support code generation of Advanced Bit Manipulation (ABM) instructions."
msgstr ""
-#: config/i386/i386.opt:366
+#: config/i386/i386.opt:482
msgid "Support code generation of popcnt instruction."
msgstr ""
-#: config/i386/i386.opt:370
+#: config/i386/i386.opt:486
msgid "Support BMI built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:374
+#: config/i386/i386.opt:490
msgid "Support TBM built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:378
+#: config/i386/i386.opt:494
msgid "Support code generation of cmpxchg16b instruction."
msgstr ""
-#: config/i386/i386.opt:382
+#: config/i386/i386.opt:498
msgid "Support code generation of sahf instruction in 64bit x86-64 code."
msgstr ""
-#: config/i386/i386.opt:386
+#: config/i386/i386.opt:502
msgid "Support code generation of movbe instruction."
msgstr ""
-#: config/i386/i386.opt:390
+#: config/i386/i386.opt:506
msgid "Support code generation of crc32 instruction."
msgstr ""
-#: config/i386/i386.opt:394
+#: config/i386/i386.opt:510
msgid "Support AES built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:398
+#: config/i386/i386.opt:514
msgid "Support PCLMUL built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:402
+#: config/i386/i386.opt:518
msgid "Encode SSE instructions with VEX prefix"
msgstr ""
-#: config/i386/i386.opt:406
+#: config/i386/i386.opt:522
msgid "Support FSGSBASE built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:410
+#: config/i386/i386.opt:526
msgid "Support RDRND built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:414
+#: config/i386/i386.opt:530
msgid "Support F16C built-in functions and code generation"
msgstr ""
-#: config/i386/i386.opt:418
+#: config/i386/i386.opt:534
msgid "Emit profiling counter call at function entry before prologue."
msgstr ""
-#: config/i386/i386.opt:422
+#: config/i386/i386.opt:538
msgid ""
"Expand 32bit/64bit integer divide into 8bit unsigned integer divide with run-"
"time check"
msgstr ""
+#: config/i386/i386.opt:542
+msgid "Split 32-byte AVX unaligned load"
+msgstr ""
+
+#: config/i386/i386.opt:546
+msgid "Split 32-byte AVX unaligned store"
+msgstr ""
+
#: config/i386/cygming.opt:23
msgid "Create console application"
msgstr ""
@@ -6617,296 +6605,344 @@
msgid "Use unicode startup and define UNICODE macro"
msgstr ""
-#: config/rs6000/darwin.opt:38 config/rs6000/sysv4.opt:129
+#: config/rs6000/darwin.opt:38 config/rs6000/sysv4.opt:142
msgid "Generate 64-bit code"
msgstr ""
-#: config/rs6000/darwin.opt:42 config/rs6000/sysv4.opt:133
+#: config/rs6000/darwin.opt:42 config/rs6000/sysv4.opt:146
msgid "Generate 32-bit code"
msgstr ""
-#: config/rs6000/rs6000.opt:128
+#: config/rs6000/rs6000.opt:92
msgid "Use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.opt:132
+#: config/rs6000/rs6000.opt:96
msgid "Do not use POWER instruction set"
msgstr ""
-#: config/rs6000/rs6000.opt:136
+#: config/rs6000/rs6000.opt:100
msgid "Use POWER2 instruction set"
msgstr ""
-#: config/rs6000/rs6000.opt:140
+#: config/rs6000/rs6000.opt:104
msgid "Use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.opt:144
+#: config/rs6000/rs6000.opt:108
msgid "Do not use PowerPC instruction set"
msgstr ""
-#: config/rs6000/rs6000.opt:148
+#: config/rs6000/rs6000.opt:112
msgid "Use PowerPC-64 instruction set"
msgstr ""
-#: config/rs6000/rs6000.opt:152
+#: config/rs6000/rs6000.opt:116
msgid "Use PowerPC General Purpose group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:156
+#: config/rs6000/rs6000.opt:120
msgid "Use PowerPC Graphics group optional instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:160
+#: config/rs6000/rs6000.opt:124
msgid "Use PowerPC V2.01 single field mfcr instruction"
msgstr ""
-#: config/rs6000/rs6000.opt:164
+#: config/rs6000/rs6000.opt:128
msgid "Use PowerPC V2.02 popcntb instruction"
msgstr ""
-#: config/rs6000/rs6000.opt:168
+#: config/rs6000/rs6000.opt:132
msgid "Use PowerPC V2.02 floating point rounding instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:172
+#: config/rs6000/rs6000.opt:136
msgid "Use PowerPC V2.05 compare bytes instruction"
msgstr ""
-#: config/rs6000/rs6000.opt:176
+#: config/rs6000/rs6000.opt:140
msgid "Use extended PowerPC V2.05 move floating point to/from GPR instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:180
+#: config/rs6000/rs6000.opt:144
msgid "Use AltiVec instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:184
+#: config/rs6000/rs6000.opt:148
msgid "Use decimal floating point instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:188
+#: config/rs6000/rs6000.opt:152
msgid "Use 4xx half-word multiply instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:192
+#: config/rs6000/rs6000.opt:156
msgid "Use 4xx string-search dlmzb instruction"
msgstr ""
-#: config/rs6000/rs6000.opt:196
+#: config/rs6000/rs6000.opt:160
msgid "Generate load/store multiple instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:200
+#: config/rs6000/rs6000.opt:164
msgid "Generate string instructions for block moves"
msgstr ""
-#: config/rs6000/rs6000.opt:204
+#: config/rs6000/rs6000.opt:168
msgid "Use new mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.opt:208
+#: config/rs6000/rs6000.opt:172
msgid "Use old mnemonics for PowerPC architecture"
msgstr ""
-#: config/rs6000/rs6000.opt:212 config/pdp11/pdp11.opt:79
+#: config/rs6000/rs6000.opt:176 config/pdp11/pdp11.opt:79
msgid "Do not use hardware floating point"
msgstr ""
-#: config/rs6000/rs6000.opt:220
+#: config/rs6000/rs6000.opt:184
msgid "Use PowerPC V2.06 popcntd instruction"
msgstr ""
-#: config/rs6000/rs6000.opt:224
+#: config/rs6000/rs6000.opt:188
msgid ""
"Under -ffast-math, generate a FRIZ instruction for (double)(long long) "
"conversions"
msgstr ""
-#: config/rs6000/rs6000.opt:232
+#: config/rs6000/rs6000.opt:196
msgid "Use vector/scalar (VSX) instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:272
+#: config/rs6000/rs6000.opt:236
msgid "Do not generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:276
+#: config/rs6000/rs6000.opt:240
msgid "Generate load/store with update instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:280 config/arm/arm.opt:122
+#: config/rs6000/rs6000.opt:244 config/arm/arm.opt:176
msgid "Do not load the PIC register in function prologues"
msgstr ""
-#: config/rs6000/rs6000.opt:284
+#: config/rs6000/rs6000.opt:248
msgid "Avoid generation of indexed load/store instructions when possible"
msgstr ""
-#: config/rs6000/rs6000.opt:288
+#: config/rs6000/rs6000.opt:252
msgid "Mark __tls_get_addr calls with argument info"
msgstr ""
-#: config/rs6000/rs6000.opt:295
+#: config/rs6000/rs6000.opt:259
msgid "Schedule the start and end of the procedure"
msgstr ""
-#: config/rs6000/rs6000.opt:299
+#: config/rs6000/rs6000.opt:263
msgid "Return all structures in memory (AIX default)"
msgstr ""
-#: config/rs6000/rs6000.opt:303
+#: config/rs6000/rs6000.opt:267
msgid "Return small structures in registers (SVR4 default)"
msgstr ""
-#: config/rs6000/rs6000.opt:307
+#: config/rs6000/rs6000.opt:271
msgid "Conform more closely to IBM XLC semantics"
msgstr ""
-#: config/rs6000/rs6000.opt:311 config/rs6000/rs6000.opt:315
+#: config/rs6000/rs6000.opt:275 config/rs6000/rs6000.opt:279
msgid ""
"Generate software reciprocal divide and square root for better throughput."
msgstr ""
-#: config/rs6000/rs6000.opt:319
+#: config/rs6000/rs6000.opt:283
msgid "Assume that the reciprocal estimate instructions provide more accuracy."
msgstr ""
-#: config/rs6000/rs6000.opt:323
+#: config/rs6000/rs6000.opt:287
msgid "Do not place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.opt:327
+#: config/rs6000/rs6000.opt:291
msgid "Place floating point constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.opt:331
+#: config/rs6000/rs6000.opt:295
msgid "Do not place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.opt:335
+#: config/rs6000/rs6000.opt:299
msgid "Place symbol+offset constants in TOC"
msgstr ""
-#: config/rs6000/rs6000.opt:346
+#: config/rs6000/rs6000.opt:310
msgid "Use only one TOC entry per procedure"
msgstr ""
-#: config/rs6000/rs6000.opt:350
+#: config/rs6000/rs6000.opt:314
msgid "Put everything in the regular TOC"
msgstr ""
-#: config/rs6000/rs6000.opt:354
+#: config/rs6000/rs6000.opt:318
msgid "Generate VRSAVE instructions when generating AltiVec code"
msgstr ""
-#: config/rs6000/rs6000.opt:358
-msgid "-mvrsave=yes/no\tDeprecated option. Use -mvrsave/-mno-vrsave instead"
+#: config/rs6000/rs6000.opt:322
+msgid "Deprecated option. Use -mno-vrsave instead"
msgstr ""
-#: config/rs6000/rs6000.opt:362
+#: config/rs6000/rs6000.opt:326
+msgid "Deprecated option. Use -mvrsave instead"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:330
msgid ""
"Specify how many bytes should be moved inline before calling out to memcpy/"
"memmove"
msgstr ""
-#: config/rs6000/rs6000.opt:366
+#: config/rs6000/rs6000.opt:334
msgid "Generate isel instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:370
-msgid "-misel=yes/no\tDeprecated option. Use -misel/-mno-isel instead"
+#: config/rs6000/rs6000.opt:338
+msgid "Deprecated option. Use -mno-isel instead"
msgstr ""
-#: config/rs6000/rs6000.opt:374
+#: config/rs6000/rs6000.opt:342
+msgid "Deprecated option. Use -misel instead"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:346
msgid "Generate SPE SIMD instructions on E500"
msgstr ""
-#: config/rs6000/rs6000.opt:378
+#: config/rs6000/rs6000.opt:350
msgid "Generate PPC750CL paired-single instructions"
msgstr ""
-#: config/rs6000/rs6000.opt:382
-msgid "-mspe=yes/no\tDeprecated option. Use -mspe/-mno-spe instead"
+#: config/rs6000/rs6000.opt:354
+msgid "Deprecated option. Use -mno-spe instead"
msgstr ""
-#: config/rs6000/rs6000.opt:386
+#: config/rs6000/rs6000.opt:358
+msgid "Deprecated option. Use -mspe instead"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:362
msgid "-mdebug=\tEnable debug output"
msgstr ""
-#: config/rs6000/rs6000.opt:390
-msgid "-mabi=\tSpecify ABI to use"
+#: config/rs6000/rs6000.opt:366
+msgid "Use the AltiVec ABI extensions"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:370
+msgid "Do not use the AltiVec ABI extensions"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:374
+msgid "Use the SPE ABI extensions"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:378
+msgid "Do not use the SPE ABI extensions"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:385
+msgid "using darwin64 ABI"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:388
+msgid "using old darwin ABI"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:391
+msgid "using IEEE extended precision long double"
msgstr ""
#: config/rs6000/rs6000.opt:394
-msgid "-mcpu=\tUse features of and schedule code for given CPU"
+msgid "using IBM extended precision long double"
msgstr ""
#: config/rs6000/rs6000.opt:398
-msgid "-mtune=\tSchedule code for given CPU"
+msgid "-mcpu=\tUse features of and schedule code for given CPU"
msgstr ""
#: config/rs6000/rs6000.opt:402
-msgid "-mtraceback=\tSelect full, part, or no traceback table"
+msgid "-mtune=\tSchedule code for given CPU"
msgstr ""
#: config/rs6000/rs6000.opt:406
-msgid "Avoid all range limits on call instructions"
-msgstr ""
-
-#: config/rs6000/rs6000.opt:410
-msgid "Generate Cell microcode"
-msgstr ""
-
-#: config/rs6000/rs6000.opt:414
-msgid "Warn when a Cell microcoded instruction is emitted"
-msgstr ""
-
-#: config/rs6000/rs6000.opt:418
-msgid "Warn about deprecated 'vector long ...' AltiVec type usage"
+msgid "-mtraceback=\tSelect full, part, or no traceback table"
msgstr ""
#: config/rs6000/rs6000.opt:422
-msgid "-mfloat-gprs=\tSelect GPR floating point method"
+msgid "Avoid all range limits on call instructions"
msgstr ""
#: config/rs6000/rs6000.opt:426
-msgid "-mlong-double-<n>\tSpecify size of long double (64 or 128 bits)"
+msgid "Generate Cell microcode"
msgstr ""
#: config/rs6000/rs6000.opt:430
-msgid "Determine which dependences between insns are considered costly"
+msgid "Warn when a Cell microcoded instruction is emitted"
msgstr ""
#: config/rs6000/rs6000.opt:434
-msgid "Specify which post scheduling nop insertion scheme to apply"
+msgid "Warn about deprecated 'vector long ...' AltiVec type usage"
msgstr ""
#: config/rs6000/rs6000.opt:438
-msgid "Specify alignment of structure fields default/natural"
+msgid "-mfloat-gprs=\tSelect GPR floating point method"
msgstr ""
#: config/rs6000/rs6000.opt:442
-msgid "Specify scheduling priority for dispatch slot restricted insns"
-msgstr ""
-
-#: config/rs6000/rs6000.opt:446
-msgid "Single-precision floating point unit"
-msgstr ""
-
-#: config/rs6000/rs6000.opt:450
-msgid "Double-precision floating point unit"
-msgstr ""
-
-#: config/rs6000/rs6000.opt:454
-msgid "Floating point unit does not support divide & sqrt"
+msgid "Valid arguments to -mfloat-gprs=:"
msgstr ""
#: config/rs6000/rs6000.opt:458
-msgid "-mfpu=\tSpecify FP (sp, dp, sp-lite, dp-lite) (implies -mxilinx-fpu)"
+msgid "-mlong-double-<n>\tSpecify size of long double (64 or 128 bits)"
msgstr ""
#: config/rs6000/rs6000.opt:462
+msgid "Determine which dependences between insns are considered costly"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:466
+msgid "Specify which post scheduling nop insertion scheme to apply"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:470
+msgid "Specify alignment of structure fields default/natural"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:474
+msgid "Valid arguments to -malign-:"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:484
+msgid "Specify scheduling priority for dispatch slot restricted insns"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:488
+msgid "Single-precision floating point unit"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:492
+msgid "Double-precision floating point unit"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:496
+msgid "Floating point unit does not support divide & sqrt"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:500
+msgid "-mfpu=\tSpecify FP (sp, dp, sp-lite, dp-lite) (implies -mxilinx-fpu)"
+msgstr ""
+
+#: config/rs6000/rs6000.opt:522
msgid "Specify Xilinx FPU."
msgstr ""
@@ -6930,84 +6966,88 @@
msgid "Select code model"
msgstr ""
-#: config/rs6000/sysv4.opt:24
+#: config/rs6000/sysv4.opt:25
msgid "Select ABI calling convention"
msgstr ""
-#: config/rs6000/sysv4.opt:28
+#: config/rs6000/sysv4.opt:29
msgid "Select method for sdata handling"
msgstr ""
-#: config/rs6000/sysv4.opt:36 config/rs6000/sysv4.opt:40
+#: config/rs6000/sysv4.opt:49 config/rs6000/sysv4.opt:53
msgid "Align to the base type of the bit-field"
msgstr ""
-#: config/rs6000/sysv4.opt:45 config/rs6000/sysv4.opt:49
+#: config/rs6000/sysv4.opt:58 config/rs6000/sysv4.opt:62
msgid "Produce code relocatable at runtime"
msgstr ""
-#: config/rs6000/sysv4.opt:53 config/rs6000/sysv4.opt:57
+#: config/rs6000/sysv4.opt:66 config/rs6000/sysv4.opt:70
msgid "Produce little endian code"
msgstr ""
-#: config/rs6000/sysv4.opt:61 config/rs6000/sysv4.opt:65
+#: config/rs6000/sysv4.opt:74 config/rs6000/sysv4.opt:78
msgid "Produce big endian code"
msgstr ""
-#: config/rs6000/sysv4.opt:70 config/rs6000/sysv4.opt:74
-#: config/rs6000/sysv4.opt:83 config/rs6000/sysv4.opt:125
-#: config/rs6000/sysv4.opt:137
+#: config/rs6000/sysv4.opt:83 config/rs6000/sysv4.opt:87
+#: config/rs6000/sysv4.opt:96 config/rs6000/sysv4.opt:138
+#: config/rs6000/sysv4.opt:150
msgid "no description yet"
msgstr ""
-#: config/rs6000/sysv4.opt:78
+#: config/rs6000/sysv4.opt:91
msgid "Assume all variable arg functions are prototyped"
msgstr ""
-#: config/rs6000/sysv4.opt:87
+#: config/rs6000/sysv4.opt:100
msgid "Use EABI"
msgstr ""
-#: config/rs6000/sysv4.opt:91
+#: config/rs6000/sysv4.opt:104
msgid "Allow bit-fields to cross word boundaries"
msgstr ""
-#: config/rs6000/sysv4.opt:95
+#: config/rs6000/sysv4.opt:108
msgid "Use alternate register names"
msgstr ""
-#: config/rs6000/sysv4.opt:101
+#: config/rs6000/sysv4.opt:114
msgid "Use default method for sdata handling"
msgstr ""
-#: config/rs6000/sysv4.opt:105
+#: config/rs6000/sysv4.opt:118
msgid "Link with libsim.a, libc.a and sim-crt0.o"
msgstr ""
-#: config/rs6000/sysv4.opt:109
+#: config/rs6000/sysv4.opt:122
msgid "Link with libads.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.opt:113
+#: config/rs6000/sysv4.opt:126
msgid "Link with libyk.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.opt:117
+#: config/rs6000/sysv4.opt:130
msgid "Link with libmvme.a, libc.a and crt0.o"
msgstr ""
-#: config/rs6000/sysv4.opt:121
+#: config/rs6000/sysv4.opt:134
msgid "Set the PPC_EMB bit in the ELF flags header"
msgstr ""
-#: config/rs6000/sysv4.opt:141
+#: config/rs6000/sysv4.opt:154
msgid "Generate code to use a non-exec PLT and GOT"
msgstr ""
-#: config/rs6000/sysv4.opt:145
+#: config/rs6000/sysv4.opt:158
msgid "Generate code for old exec BSS PLT"
msgstr ""
+#: config/rs6000/rs6000-tables.opt:24
+msgid "Known CPUs (for use with the -mcpu= and -mtune= options):"
+msgstr ""
+
#: config/spu/spu.opt:20
msgid "Emit warnings when run-time relocations are generated"
msgstr ""
@@ -7435,124 +7475,136 @@
msgid "Runtime name."
msgstr ""
-#: config/arm/arm.opt:23
+#: config/arm/arm.opt:26
msgid "Specify an ABI"
msgstr ""
-#: config/arm/arm.opt:27
+#: config/arm/arm.opt:30
+msgid "Known ARM ABIs (for use with the -mabi= option):"
+msgstr ""
+
+#: config/arm/arm.opt:49
msgid "Generate a call to abort if a noreturn function returns"
msgstr ""
-#: config/arm/arm.opt:34
+#: config/arm/arm.opt:56
msgid "Pass FP arguments in FP registers"
msgstr ""
-#: config/arm/arm.opt:38
+#: config/arm/arm.opt:60
msgid "Generate APCS conformant stack frames"
msgstr ""
-#: config/arm/arm.opt:42
+#: config/arm/arm.opt:64
msgid "Generate re-entrant, PIC code"
msgstr ""
-#: config/arm/arm.opt:56
+#: config/arm/arm.opt:75
+msgid "Generate code in 32 bit ARM state."
+msgstr ""
+
+#: config/arm/arm.opt:79
msgid "Assume target CPU is configured as big endian"
msgstr ""
-#: config/arm/arm.opt:60
+#: config/arm/arm.opt:83
msgid "Thumb: Assume non-static functions may be called from ARM code"
msgstr ""
-#: config/arm/arm.opt:64
+#: config/arm/arm.opt:87
msgid "Thumb: Assume function pointers may go to non-Thumb aware code"
msgstr ""
-#: config/arm/arm.opt:68
+#: config/arm/arm.opt:91
msgid "Cirrus: Place NOPs to avoid invalid instruction combinations"
msgstr ""
-#: config/arm/arm.opt:72 config/bfin/bfin.opt:44
+#: config/arm/arm.opt:95 config/bfin/bfin.opt:44
msgid "Specify the name of the target CPU"
msgstr ""
-#: config/arm/arm.opt:76
+#: config/arm/arm.opt:99
msgid "Specify if floating point hardware should be used"
msgstr ""
-#: config/arm/arm.opt:83
+#: config/arm/arm.opt:103
+msgid "Known floating-point ABIs (for use with the -mfloat-abi= option):"
+msgstr ""
+
+#: config/arm/arm.opt:122
msgid "Specify the __fp16 floating-point format"
msgstr ""
-#: config/arm/arm.opt:94
+#: config/arm/arm.opt:126
+msgid "Known __fp16 formats (for use with the -mfp16-format= option):"
+msgstr ""
+
+#: config/arm/arm.opt:149
msgid "Specify the name of the target floating point hardware/format"
msgstr ""
-#: config/arm/arm.opt:98
-msgid "Alias for -mfloat-abi=hard"
-msgstr ""
-
-#: config/arm/arm.opt:102
+#: config/arm/arm.opt:156
msgid "Assume target CPU is configured as little endian"
msgstr ""
-#: config/arm/arm.opt:106
+#: config/arm/arm.opt:160
msgid "Generate call insns as indirect calls, if necessary"
msgstr ""
-#: config/arm/arm.opt:110
+#: config/arm/arm.opt:164
msgid "Specify the register to be used for PIC addressing"
msgstr ""
-#: config/arm/arm.opt:114
+#: config/arm/arm.opt:168
msgid "Store function names in object code"
msgstr ""
-#: config/arm/arm.opt:118
+#: config/arm/arm.opt:172
msgid "Permit scheduling of a function's prologue sequence"
msgstr ""
-#: config/arm/arm.opt:126
-msgid "Alias for -mfloat-abi=soft"
-msgstr ""
-
-#: config/arm/arm.opt:130
+#: config/arm/arm.opt:183
msgid "Specify the minimum bit alignment of structures"
msgstr ""
-#: config/arm/arm.opt:134
-msgid "Compile for the Thumb not the ARM"
+#: config/arm/arm.opt:187
+msgid "Generate code for Thumb state"
msgstr ""
-#: config/arm/arm.opt:138
+#: config/arm/arm.opt:191
msgid "Support calls between Thumb and ARM instruction sets"
msgstr ""
-#: config/arm/arm.opt:142
+#: config/arm/arm.opt:195
msgid "Specify how to access the thread pointer"
msgstr ""
-#: config/arm/arm.opt:146
+#: config/arm/arm.opt:199
+msgid "Valid arguments to -mtp=:"
+msgstr ""
+
+#: config/arm/arm.opt:212
msgid "Thumb: Generate (non-leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.opt:150
+#: config/arm/arm.opt:216
msgid "Thumb: Generate (leaf) stack frames even if not needed"
msgstr ""
-#: config/arm/arm.opt:158
+#: config/arm/arm.opt:224
msgid "Assume big endian bytes, little endian words"
msgstr ""
-#: config/arm/arm.opt:162
+#: config/arm/arm.opt:228
msgid ""
"Use Neon quad-word (rather than double-word) registers for vectorization"
msgstr ""
-#: config/arm/arm.opt:166
+#: config/arm/arm.opt:232
msgid "Only generate absolute relocations on word sized values."
msgstr ""
-#: config/arm/arm.opt:170
+#: config/arm/arm.opt:236
msgid ""
"Avoid overlapping destination and address registers on LDRD instructions"
msgstr ""
@@ -7561,6 +7613,18 @@
msgid "Ignore dllimport attribute for functions"
msgstr ""
+#: config/arm/arm-tables.opt:25
+msgid "Known ARM CPUs (for use with the -mcpu= and -mtune= options):"
+msgstr ""
+
+#: config/arm/arm-tables.opt:269
+msgid "Known ARM architectures (for use with the -march= option):"
+msgstr ""
+
+#: config/arm/arm-tables.opt:348
+msgid "Known ARM FPUs (for use with the -mfpu= option):"
+msgstr ""
+
#: config/pdp11/pdp11.opt:23
msgid "Generate code for an 11/10"
msgstr ""
@@ -7655,12 +7719,16 @@
"occurs."
msgstr ""
+#: config/avr/avr-tables.opt:24
+msgid "Known MCU names:"
+msgstr ""
+
#: config/pa/pa-hpux.opt:27
msgid "Generate cpp defines for server IO"
msgstr ""
#: config/pa/pa-hpux.opt:31 config/pa/pa-hpux1010.opt:23
-#: config/pa/pa-hpux1111.opt:23
+#: config/pa/pa-hpux1111.opt:23 config/pa/pa-hpux1131.opt:23
msgid "Specify UNIX standard for predefines and linking"
msgstr ""
@@ -7772,295 +7840,315 @@
msgid "Provide libraries for the simulator"
msgstr ""
-#: config/mips/mips.opt:29
+#: config/mips/mips.opt:32
msgid "-mabi=ABI\tGenerate code that conforms to the given ABI"
msgstr ""
-#: config/mips/mips.opt:33
+#: config/mips/mips.opt:36
+msgid "Known MIPS ABIs (for use with the -mabi= option):"
+msgstr ""
+
+#: config/mips/mips.opt:55
msgid "Generate code that can be used in SVR4-style dynamic objects"
msgstr ""
-#: config/mips/mips.opt:37
+#: config/mips/mips.opt:59
msgid "Use PMC-style 'mad' instructions"
msgstr ""
-#: config/mips/mips.opt:41
+#: config/mips/mips.opt:63
msgid "-march=ISA\tGenerate code for the given ISA"
msgstr ""
-#: config/mips/mips.opt:45
+#: config/mips/mips.opt:67
msgid ""
"-mbranch-cost=COST\tSet the cost of branches to roughly COST instructions"
msgstr ""
-#: config/mips/mips.opt:49
+#: config/mips/mips.opt:71
msgid "Use Branch Likely instructions, overriding the architecture default"
msgstr ""
-#: config/mips/mips.opt:53
+#: config/mips/mips.opt:75
msgid "Switch on/off MIPS16 ASE on alternating functions for compiler testing"
msgstr ""
-#: config/mips/mips.opt:57
+#: config/mips/mips.opt:79
msgid "Trap on integer divide by zero"
msgstr ""
-#: config/mips/mips.opt:61
+#: config/mips/mips.opt:83
msgid ""
"-mcode-readable=SETTING\tSpecify when instructions are allowed to access code"
msgstr ""
-#: config/mips/mips.opt:65
+#: config/mips/mips.opt:87
+msgid "Valid arguments to -mcode-readable=:"
+msgstr ""
+
+#: config/mips/mips.opt:100
msgid "Use branch-and-break sequences to check for integer divide by zero"
msgstr ""
-#: config/mips/mips.opt:69
+#: config/mips/mips.opt:104
msgid "Use trap instructions to check for integer divide by zero"
msgstr ""
-#: config/mips/mips.opt:73
+#: config/mips/mips.opt:108
msgid "Allow the use of MDMX instructions"
msgstr ""
-#: config/mips/mips.opt:77
+#: config/mips/mips.opt:112
msgid ""
"Allow hardware floating-point instructions to cover both 32-bit and 64-bit "
"operations"
msgstr ""
-#: config/mips/mips.opt:81
+#: config/mips/mips.opt:116
msgid "Use MIPS-DSP instructions"
msgstr ""
-#: config/mips/mips.opt:85
+#: config/mips/mips.opt:120
msgid "Use MIPS-DSP REV 2 instructions"
msgstr ""
-#: config/mips/mips.opt:95 config/mep/mep.opt:82
+#: config/mips/mips.opt:130 config/mep/mep.opt:82
msgid "Use big-endian byte order"
msgstr ""
-#: config/mips/mips.opt:99 config/mep/mep.opt:86
+#: config/mips/mips.opt:134 config/mep/mep.opt:86
msgid "Use little-endian byte order"
msgstr ""
-#: config/mips/mips.opt:103 config/iq2000/iq2000.opt:61
+#: config/mips/mips.opt:138 config/iq2000/iq2000.opt:61
msgid "Use ROM instead of RAM"
msgstr ""
-#: config/mips/mips.opt:107
+#: config/mips/mips.opt:142
msgid "Use NewABI-style %reloc() assembly operators"
msgstr ""
-#: config/mips/mips.opt:111
+#: config/mips/mips.opt:146
msgid "Use -G for data that is not defined by the current object"
msgstr ""
-#: config/mips/mips.opt:115
+#: config/mips/mips.opt:150
+msgid "Work around certain 24K errata"
+msgstr ""
+
+#: config/mips/mips.opt:154
msgid "Work around certain R4000 errata"
msgstr ""
-#: config/mips/mips.opt:119
+#: config/mips/mips.opt:158
msgid "Work around certain R4400 errata"
msgstr ""
-#: config/mips/mips.opt:123
+#: config/mips/mips.opt:162
msgid "Work around certain R10000 errata"
msgstr ""
-#: config/mips/mips.opt:127
+#: config/mips/mips.opt:166
msgid "Work around errata for early SB-1 revision 2 cores"
msgstr ""
-#: config/mips/mips.opt:131
+#: config/mips/mips.opt:170
msgid "Work around certain VR4120 errata"
msgstr ""
-#: config/mips/mips.opt:135
+#: config/mips/mips.opt:174
msgid "Work around VR4130 mflo/mfhi errata"
msgstr ""
-#: config/mips/mips.opt:139
+#: config/mips/mips.opt:178
msgid "Work around an early 4300 hardware bug"
msgstr ""
-#: config/mips/mips.opt:143
+#: config/mips/mips.opt:182
msgid "FP exceptions are enabled"
msgstr ""
-#: config/mips/mips.opt:147
+#: config/mips/mips.opt:186
msgid "Use 32-bit floating-point registers"
msgstr ""
-#: config/mips/mips.opt:151
+#: config/mips/mips.opt:190
msgid "Use 64-bit floating-point registers"
msgstr ""
-#: config/mips/mips.opt:155
+#: config/mips/mips.opt:194
msgid ""
"-mflush-func=FUNC\tUse FUNC to flush the cache before calling stack "
"trampolines"
msgstr ""
-#: config/mips/mips.opt:159
+#: config/mips/mips.opt:198
msgid "Generate floating-point multiply-add instructions"
msgstr ""
-#: config/mips/mips.opt:163
+#: config/mips/mips.opt:202
msgid "Use 32-bit general registers"
msgstr ""
-#: config/mips/mips.opt:167
+#: config/mips/mips.opt:206
msgid "Use 64-bit general registers"
msgstr ""
-#: config/mips/mips.opt:171
+#: config/mips/mips.opt:210
msgid "Use GP-relative addressing to access small data"
msgstr ""
-#: config/mips/mips.opt:175
+#: config/mips/mips.opt:214
msgid ""
"When generating -mabicalls code, allow executables to use PLTs and copy "
"relocations"
msgstr ""
-#: config/mips/mips.opt:179
+#: config/mips/mips.opt:218
msgid "Allow the use of hardware floating-point ABI and instructions"
msgstr ""
-#: config/mips/mips.opt:183
+#: config/mips/mips.opt:222
msgid "Generate code that can be safely linked with MIPS16 code."
msgstr ""
-#: config/mips/mips.opt:187
+#: config/mips/mips.opt:226
msgid "-mipsN\tGenerate code for ISA level N"
msgstr ""
-#: config/mips/mips.opt:191
+#: config/mips/mips.opt:230
msgid "Generate MIPS16 code"
msgstr ""
-#: config/mips/mips.opt:195
+#: config/mips/mips.opt:234
msgid "Use MIPS-3D instructions"
msgstr ""
-#: config/mips/mips.opt:199
+#: config/mips/mips.opt:238
msgid "Use ll, sc and sync instructions"
msgstr ""
-#: config/mips/mips.opt:203
+#: config/mips/mips.opt:242
msgid "Use -G for object-local data"
msgstr ""
-#: config/mips/mips.opt:207
+#: config/mips/mips.opt:246
msgid "Use indirect calls"
msgstr ""
-#: config/mips/mips.opt:211
+#: config/mips/mips.opt:250
msgid "Use a 32-bit long type"
msgstr ""
-#: config/mips/mips.opt:215
+#: config/mips/mips.opt:254
msgid "Use a 64-bit long type"
msgstr ""
-#: config/mips/mips.opt:219
+#: config/mips/mips.opt:258
msgid "Pass the address of the ra save location to _mcount in $12"
msgstr ""
-#: config/mips/mips.opt:223
+#: config/mips/mips.opt:262
msgid "Don't optimize block moves"
msgstr ""
-#: config/mips/mips.opt:227
-msgid "Use the mips-tfile postpass"
-msgstr ""
-
-#: config/mips/mips.opt:231
+#: config/mips/mips.opt:266
msgid "Allow the use of MT instructions"
msgstr ""
-#: config/mips/mips.opt:235
+#: config/mips/mips.opt:270
msgid "Prevent the use of all floating-point operations"
msgstr ""
-#: config/mips/mips.opt:239
+#: config/mips/mips.opt:274
msgid "Do not use a cache-flushing function before calling stack trampolines"
msgstr ""
-#: config/mips/mips.opt:243
+#: config/mips/mips.opt:278
msgid "Do not use MDMX instructions"
msgstr ""
-#: config/mips/mips.opt:247
+#: config/mips/mips.opt:282
msgid "Generate normal-mode code"
msgstr ""
-#: config/mips/mips.opt:251
+#: config/mips/mips.opt:286
msgid "Do not use MIPS-3D instructions"
msgstr ""
-#: config/mips/mips.opt:255
+#: config/mips/mips.opt:290
msgid "Use paired-single floating-point instructions"
msgstr ""
-#: config/mips/mips.opt:259
+#: config/mips/mips.opt:294
msgid ""
"-mr10k-cache-barrier=SETTING\tSpecify when r10k cache barriers should be "
"inserted"
msgstr ""
-#: config/mips/mips.opt:263
+#: config/mips/mips.opt:298
+msgid "Valid arguments to -mr10k-cache-barrier=:"
+msgstr ""
+
+#: config/mips/mips.opt:311
msgid "Try to allow the linker to turn PIC calls into direct calls"
msgstr ""
-#: config/mips/mips.opt:267
+#: config/mips/mips.opt:315
msgid ""
"When generating -mabicalls code, make the code suitable for use in shared "
"libraries"
msgstr ""
-#: config/mips/mips.opt:271
+#: config/mips/mips.opt:319
msgid ""
"Restrict the use of hardware floating-point instructions to 32-bit operations"
msgstr ""
-#: config/mips/mips.opt:275
+#: config/mips/mips.opt:323
msgid "Use SmartMIPS instructions"
msgstr ""
-#: config/mips/mips.opt:279
+#: config/mips/mips.opt:327
msgid "Prevent the use of all hardware floating-point instructions"
msgstr ""
-#: config/mips/mips.opt:283
+#: config/mips/mips.opt:331
msgid "Optimize lui/addiu address loads"
msgstr ""
-#: config/mips/mips.opt:287
+#: config/mips/mips.opt:335
msgid "Assume all symbols have 32-bit values"
msgstr ""
-#: config/mips/mips.opt:291
+#: config/mips/mips.opt:339
msgid "Use synci instruction to invalidate i-cache"
msgstr ""
-#: config/mips/mips.opt:295
+#: config/mips/mips.opt:343
msgid "-mtune=PROCESSOR\tOptimize the output for PROCESSOR"
msgstr ""
-#: config/mips/mips.opt:299 config/iq2000/iq2000.opt:74
+#: config/mips/mips.opt:347 config/iq2000/iq2000.opt:74
msgid "Put uninitialized constants in ROM (needs -membedded-data)"
msgstr ""
-#: config/mips/mips.opt:303
+#: config/mips/mips.opt:351
msgid "Perform VR4130-specific alignment optimizations"
msgstr ""
-#: config/mips/mips.opt:307
+#: config/mips/mips.opt:355
msgid "Lift restrictions on GOT size"
msgstr ""
+#: config/mips/mips-tables.opt:24
+msgid "Known MIPS CPUs (for use with the -march= and -mtune= options):"
+msgstr ""
+
+#: config/mips/mips-tables.opt:28
+msgid "Known MIPS ISA levels (for use with the -mips option):"
+msgstr ""
+
#: config/fr30/fr30.opt:23
msgid "Assume small address space"
msgstr ""
@@ -8477,51 +8565,51 @@
msgid "Assume the VxWorks vThreads environment"
msgstr ""
-#: config/darwin.opt:50 c-family/c.opt:71 c-family/c.opt:74 c-family/c.opt:77
+#: config/darwin.opt:53 c-family/c.opt:71 c-family/c.opt:74 c-family/c.opt:77
#: c-family/c.opt:80 c-family/c.opt:179 c-family/c.opt:182 c-family/c.opt:220
-#: c-family/c.opt:224 c-family/c.opt:236 c-family/c.opt:1069
-#: c-family/c.opt:1077 common.opt:290 common.opt:293 common.opt:2198
+#: c-family/c.opt:224 c-family/c.opt:236 c-family/c.opt:1077
+#: c-family/c.opt:1085 common.opt:294 common.opt:297 common.opt:2238
#, c-format
msgid "missing filename after %qs"
msgstr ""
-#: config/darwin.opt:111
+#: config/darwin.opt:114
msgid "Generate compile-time CFString objects"
msgstr ""
-#: config/darwin.opt:205
+#: config/darwin.opt:208
msgid "Warn if constant CFString objects contain non-portable characters"
msgstr ""
-#: config/darwin.opt:210
+#: config/darwin.opt:213
msgid "Generate AT&T-style stubs for Mach-O"
msgstr ""
-#: config/darwin.opt:214
+#: config/darwin.opt:217
msgid "Generate code suitable for executables (NOT shared libs)"
msgstr ""
-#: config/darwin.opt:218
+#: config/darwin.opt:221
msgid "Generate code suitable for fast turn around debugging"
msgstr ""
-#: config/darwin.opt:227
+#: config/darwin.opt:230
msgid "The earliest MacOS X version on which this program will run"
msgstr ""
-#: config/darwin.opt:231
+#: config/darwin.opt:234
msgid "Set sizeof(bool) to 1"
msgstr ""
-#: config/darwin.opt:235
+#: config/darwin.opt:238
msgid "Generate code for darwin loadable kernel extensions"
msgstr ""
-#: config/darwin.opt:239
+#: config/darwin.opt:242
msgid "Generate code for the kernel or loadable kernel extensions"
msgstr ""
-#: config/darwin.opt:243
+#: config/darwin.opt:246
msgid ""
"-iframework <dir>\tAdd <dir> to the end of the system framework include path"
msgstr ""
@@ -8690,64 +8778,64 @@
msgid "Set name of main routine for the debugger"
msgstr ""
-#: config/rx/rx.opt:26
+#: config/rx/rx.opt:29
msgid "Store doubles in 64 bits."
msgstr ""
-#: config/rx/rx.opt:30
+#: config/rx/rx.opt:33
msgid "Stores doubles in 32 bits. This is the default."
msgstr ""
-#: config/rx/rx.opt:34
+#: config/rx/rx.opt:37
msgid "Disable the use of RX FPU instructions. "
msgstr ""
-#: config/rx/rx.opt:41
+#: config/rx/rx.opt:44
msgid "Enable the use of RX FPU instructions. This is the default."
msgstr ""
-#: config/rx/rx.opt:47
+#: config/rx/rx.opt:50
msgid "Specify the target RX cpu type."
msgstr ""
-#: config/rx/rx.opt:53
+#: config/rx/rx.opt:68
msgid "Data is stored in big-endian format."
msgstr ""
-#: config/rx/rx.opt:57
+#: config/rx/rx.opt:72
msgid "Data is stored in little-endian format. (Default)."
msgstr ""
-#: config/rx/rx.opt:63
+#: config/rx/rx.opt:78
msgid ""
"Maximum size of global and static variables which can be placed into the "
"small data area."
msgstr ""
-#: config/rx/rx.opt:69
+#: config/rx/rx.opt:84
msgid "Use the simulator runtime."
msgstr ""
-#: config/rx/rx.opt:75
+#: config/rx/rx.opt:90
msgid ""
"Generate assembler output that is compatible with the Renesas AS100 "
"assembler. This may restrict some of the compiler's capabilities. The "
"default is to generate GAS compatable syntax."
msgstr ""
-#: config/rx/rx.opt:81
+#: config/rx/rx.opt:96
msgid "Enable linker relaxation."
msgstr ""
-#: config/rx/rx.opt:87
+#: config/rx/rx.opt:102
msgid "Maximum size in bytes of constant values allowed as operands."
msgstr ""
-#: config/rx/rx.opt:93
+#: config/rx/rx.opt:108
msgid "Specifies the number of registers to reserve for interrupt handlers."
msgstr ""
-#: config/rx/rx.opt:99
+#: config/rx/rx.opt:114
msgid ""
"Specifies whether interrupt functions should save and restore the "
"accumulator register."
@@ -8865,7 +8953,7 @@
"special section (on some targets)"
msgstr ""
-#: config/sol2.opt:35
+#: config/sol2.opt:32
msgid "Pass -z text to linker"
msgstr ""
@@ -8885,8 +8973,8 @@
msgstr ""
#: c-family/c.opt:86 c-family/c.opt:89 c-family/c.opt:92 c-family/c.opt:95
-#: c-family/c.opt:204 c-family/c.opt:212 c-family/c.opt:1065
-#: c-family/c.opt:1085 c-family/c.opt:1089 c-family/c.opt:1093
+#: c-family/c.opt:204 c-family/c.opt:212 c-family/c.opt:1073
+#: c-family/c.opt:1093 c-family/c.opt:1097 c-family/c.opt:1101
#, c-format
msgid "missing path after %qs"
msgstr ""
@@ -9053,842 +9141,848 @@
msgstr ""
#: c-family/c.opt:336
-msgid "Warn if a deprecated compiler feature, class, method, or field is used"
+msgid "Warn about deleting polymorphic objects with non-virtual destructors"
msgstr ""
#: c-family/c.opt:340
-msgid "Warn about compile-time integer division by zero"
+msgid "Warn if a deprecated compiler feature, class, method, or field is used"
msgstr ""
#: c-family/c.opt:344
-msgid "Warn about violations of Effective C++ style rules"
+msgid "Warn about compile-time integer division by zero"
msgstr ""
#: c-family/c.opt:348
-msgid "Warn about an empty body in an if or else statement"
+msgid "Warn about violations of Effective C++ style rules"
msgstr ""
#: c-family/c.opt:352
-msgid "Warn about stray tokens after #elif and #endif"
+msgid "Warn about an empty body in an if or else statement"
msgstr ""
#: c-family/c.opt:356
+msgid "Warn about stray tokens after #elif and #endif"
+msgstr ""
+
+#: c-family/c.opt:360
msgid "Warn about comparison of different enum types"
msgstr ""
-#: c-family/c.opt:364
+#: c-family/c.opt:368
msgid ""
"This switch is deprecated; use -Werror=implicit-function-declaration instead"
msgstr ""
-#: c-family/c.opt:368
+#: c-family/c.opt:372
msgid "Warn if testing floating point numbers for equality"
msgstr ""
-#: c-family/c.opt:372
+#: c-family/c.opt:376
msgid "Warn about printf/scanf/strftime/strfmon format string anomalies"
msgstr ""
-#: c-family/c.opt:376
+#: c-family/c.opt:380
msgid "Warn if passing too many arguments to a function for its format string"
msgstr ""
-#: c-family/c.opt:380
+#: c-family/c.opt:384
msgid "Warn about format strings that are not literals"
msgstr ""
-#: c-family/c.opt:384
+#: c-family/c.opt:388
msgid "Warn about format strings that contain NUL bytes"
msgstr ""
-#: c-family/c.opt:388
+#: c-family/c.opt:392
msgid "Warn about possible security problems with format functions"
msgstr ""
-#: c-family/c.opt:392
+#: c-family/c.opt:396
msgid "Warn about strftime formats yielding 2-digit years"
msgstr ""
-#: c-family/c.opt:396
+#: c-family/c.opt:400
msgid "Warn about zero-length formats"
msgstr ""
-#: c-family/c.opt:403
+#: c-family/c.opt:407
msgid "Warn whenever type qualifiers are ignored."
msgstr ""
-#: c-family/c.opt:407
+#: c-family/c.opt:411
msgid "Warn about variables which are initialized to themselves"
msgstr ""
-#: c-family/c.opt:411
+#: c-family/c.opt:415
msgid "Warn about implicit declarations"
msgstr ""
-#: c-family/c.opt:415
+#: c-family/c.opt:419
msgid "Warn about implicit conversions from \"float\" to \"double\""
msgstr ""
-#: c-family/c.opt:419
+#: c-family/c.opt:423
msgid "Warn about implicit function declarations"
msgstr ""
-#: c-family/c.opt:423
+#: c-family/c.opt:427
msgid "Warn when a declaration does not specify a type"
msgstr ""
-#: c-family/c.opt:430
+#: c-family/c.opt:434
msgid ""
"Warn when there is a cast to a pointer from an integer of a different size"
msgstr ""
-#: c-family/c.opt:434
+#: c-family/c.opt:438
msgid "Warn about invalid uses of the \"offsetof\" macro"
msgstr ""
-#: c-family/c.opt:438
+#: c-family/c.opt:442
msgid "Warn about PCH files that are found but not used"
msgstr ""
-#: c-family/c.opt:442
+#: c-family/c.opt:446
msgid "Warn when a jump misses a variable initialization"
msgstr ""
-#: c-family/c.opt:446
+#: c-family/c.opt:450
msgid ""
"Warn when a logical operator is suspiciously always evaluating to true or "
"false"
msgstr ""
-#: c-family/c.opt:450
+#: c-family/c.opt:454
msgid "Do not warn about using \"long long\" when -pedantic"
msgstr ""
-#: c-family/c.opt:454
+#: c-family/c.opt:458
msgid "Warn about suspicious declarations of \"main\""
msgstr ""
-#: c-family/c.opt:458
+#: c-family/c.opt:462
msgid "Warn about possibly missing braces around initializers"
msgstr ""
-#: c-family/c.opt:462
+#: c-family/c.opt:466
msgid "Warn about global functions without previous declarations"
msgstr ""
-#: c-family/c.opt:466
+#: c-family/c.opt:470
msgid "Warn about missing fields in struct initializers"
msgstr ""
-#: c-family/c.opt:470
+#: c-family/c.opt:474
msgid "Warn about functions which might be candidates for format attributes"
msgstr ""
-#: c-family/c.opt:474
+#: c-family/c.opt:478
msgid "Warn about user-specified include directories that do not exist"
msgstr ""
-#: c-family/c.opt:478
+#: c-family/c.opt:482
msgid ""
"Warn about function parameters declared without a type specifier in K&R-"
"style functions"
msgstr ""
-#: c-family/c.opt:482
+#: c-family/c.opt:486
msgid "Warn about global functions without prototypes"
msgstr ""
-#: c-family/c.opt:486
+#: c-family/c.opt:490
msgid "Warn about use of multi-character character constants"
msgstr ""
-#: c-family/c.opt:490
+#: c-family/c.opt:494
msgid "Warn about \"extern\" declarations not at file scope"
msgstr ""
-#: c-family/c.opt:494
+#: c-family/c.opt:498
msgid ""
"Warn when a noexcept expression evaluates to false even though the "
"expression can't actually throw"
msgstr ""
-#: c-family/c.opt:498
+#: c-family/c.opt:502
msgid ""
"Warn when non-templatized friend functions are declared within a template"
msgstr ""
-#: c-family/c.opt:502
+#: c-family/c.opt:506
msgid "Warn about non-virtual destructors"
msgstr ""
-#: c-family/c.opt:506
+#: c-family/c.opt:510
msgid ""
"Warn about NULL being passed to argument slots marked as requiring non-NULL"
msgstr ""
-#: c-family/c.opt:510
+#: c-family/c.opt:514
msgid "-Wnormalized=<id|nfc|nfkc>\tWarn about non-normalised Unicode strings"
msgstr ""
-#: c-family/c.opt:514
+#: c-family/c.opt:518
msgid "Warn if a C-style cast is used in a program"
msgstr ""
-#: c-family/c.opt:518
+#: c-family/c.opt:522
msgid "Warn for obsolescent usage in a declaration"
msgstr ""
-#: c-family/c.opt:522
+#: c-family/c.opt:526
msgid "Warn if an old-style parameter definition is used"
msgstr ""
-#: c-family/c.opt:526
+#: c-family/c.opt:530
msgid ""
"Warn if a string is longer than the maximum portable length specified by the "
"standard"
msgstr ""
-#: c-family/c.opt:530
+#: c-family/c.opt:534
msgid "Warn about overloaded virtual function names"
msgstr ""
-#: c-family/c.opt:534
+#: c-family/c.opt:538
msgid "Warn about overriding initializers without side effects"
msgstr ""
-#: c-family/c.opt:538
+#: c-family/c.opt:542
msgid "Warn about packed bit-fields whose offset changed in GCC 4.4"
msgstr ""
-#: c-family/c.opt:542
+#: c-family/c.opt:546
msgid "Warn about possibly missing parentheses"
msgstr ""
-#: c-family/c.opt:546
+#: c-family/c.opt:550
msgid "Warn when converting the type of pointers to member functions"
msgstr ""
-#: c-family/c.opt:550
+#: c-family/c.opt:554
msgid "Warn about function pointer arithmetic"
msgstr ""
-#: c-family/c.opt:554
+#: c-family/c.opt:558
msgid "Warn when a pointer is cast to an integer of a different size"
msgstr ""
-#: c-family/c.opt:558
+#: c-family/c.opt:562
msgid "Warn about misuses of pragmas"
msgstr ""
-#: c-family/c.opt:562
+#: c-family/c.opt:566
msgid ""
"Warn if a property for an Objective-C object has no assign semantics "
"specified"
msgstr ""
-#: c-family/c.opt:566
+#: c-family/c.opt:570
msgid "Warn if inherited methods are unimplemented"
msgstr ""
-#: c-family/c.opt:570
+#: c-family/c.opt:574
msgid "Warn about multiple declarations of the same object"
msgstr ""
-#: c-family/c.opt:574
+#: c-family/c.opt:578
msgid "Warn when the compiler reorders code"
msgstr ""
-#: c-family/c.opt:578
+#: c-family/c.opt:582
msgid ""
"Warn whenever a function's return type defaults to \"int\" (C), or about "
"inconsistent return types (C++)"
msgstr ""
-#: c-family/c.opt:582
+#: c-family/c.opt:586
msgid "Warn if a selector has multiple methods"
msgstr ""
-#: c-family/c.opt:586
+#: c-family/c.opt:590
msgid "Warn about possible violations of sequence point rules"
msgstr ""
-#: c-family/c.opt:590
+#: c-family/c.opt:594
msgid "Warn about signed-unsigned comparisons"
msgstr ""
-#: c-family/c.opt:594
+#: c-family/c.opt:598
msgid "Warn when overload promotes from unsigned to signed"
msgstr ""
-#: c-family/c.opt:598
+#: c-family/c.opt:602
msgid "Warn about uncasted NULL used as sentinel"
msgstr ""
-#: c-family/c.opt:602
+#: c-family/c.opt:606
msgid "Warn about unprototyped function declarations"
msgstr ""
-#: c-family/c.opt:606
+#: c-family/c.opt:610
msgid "Warn if type signatures of candidate methods do not match exactly"
msgstr ""
-#: c-family/c.opt:610
+#: c-family/c.opt:614
msgid ""
"Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions "
"are used"
msgstr ""
-#: c-family/c.opt:614
+#: c-family/c.opt:618
msgid "Deprecated. This switch has no effect"
msgstr ""
-#: c-family/c.opt:622
+#: c-family/c.opt:626
msgid "Warn about features not present in traditional C"
msgstr ""
-#: c-family/c.opt:626
+#: c-family/c.opt:630
msgid ""
"Warn of prototypes causing type conversions different from what would happen "
"in the absence of prototype"
msgstr ""
-#: c-family/c.opt:630
+#: c-family/c.opt:634
msgid ""
"Warn if trigraphs are encountered that might affect the meaning of the "
"program"
msgstr ""
-#: c-family/c.opt:634
+#: c-family/c.opt:638
msgid "Warn about @selector()s without previously declared methods"
msgstr ""
-#: c-family/c.opt:638
+#: c-family/c.opt:642
msgid "Warn if an undefined macro is used in an #if directive"
msgstr ""
-#: c-family/c.opt:642
+#: c-family/c.opt:646
msgid "Warn about unrecognized pragmas"
msgstr ""
-#: c-family/c.opt:646
+#: c-family/c.opt:650
msgid "Warn about unsuffixed float constants"
msgstr ""
-#: c-family/c.opt:650
+#: c-family/c.opt:654
msgid "Warn about macros defined in the main file that are not used"
msgstr ""
-#: c-family/c.opt:654
+#: c-family/c.opt:658
msgid ""
"Warn if a caller of a function, marked with attribute warn_unused_result, "
"does not use its return value"
msgstr ""
-#: c-family/c.opt:658
+#: c-family/c.opt:662
msgid "Do not warn about using variadic macros when -pedantic"
msgstr ""
-#: c-family/c.opt:662
+#: c-family/c.opt:666
msgid "Warn if a variable length array is used"
msgstr ""
-#: c-family/c.opt:666
+#: c-family/c.opt:670
msgid "Warn when a register variable is declared volatile"
msgstr ""
-#: c-family/c.opt:670
+#: c-family/c.opt:674
msgid ""
"In C++, nonzero means warn about deprecated conversion from string literals "
"to 'char *'. In C, similar warning, except that the conversion is of course "
"not deprecated by the ISO C standard."
msgstr ""
-#: c-family/c.opt:674
+#: c-family/c.opt:678
msgid "Warn when a pointer differs in signedness in an assignment"
msgstr ""
-#: c-family/c.opt:678
+#: c-family/c.opt:682
msgid "A synonym for -std=c89 (for C) or -std=c++98 (for C++)"
msgstr ""
-#: c-family/c.opt:686
+#: c-family/c.opt:690
msgid "Enforce class member access control semantics"
msgstr ""
-#: c-family/c.opt:689 c-family/c.opt:692 c-family/c.opt:750 c-family/c.opt:766
-#: c-family/c.opt:789 c-family/c.opt:795 c-family/c.opt:802 c-family/c.opt:826
-#: c-family/c.opt:837 c-family/c.opt:840 c-family/c.opt:854 c-family/c.opt:965
-#: c-family/c.opt:976 c-family/c.opt:990 c-family/c.opt:1021
-#: c-family/c.opt:1025 c-family/c.opt:1041 c-family/c-opts.c:561
+#: c-family/c.opt:693 c-family/c.opt:696 c-family/c.opt:758 c-family/c.opt:774
+#: c-family/c.opt:797 c-family/c.opt:803 c-family/c.opt:810 c-family/c.opt:834
+#: c-family/c.opt:845 c-family/c.opt:848 c-family/c.opt:862 c-family/c.opt:973
+#: c-family/c.opt:984 c-family/c.opt:998 c-family/c.opt:1029
+#: c-family/c.opt:1033 c-family/c.opt:1049 c-family/c-opts.c:568
#, gcc-internal-format
msgid "switch %qs is no longer supported"
msgstr ""
-#: c-family/c.opt:693 c-family/c.opt:803 c-family/c.opt:1022
-#: c-family/c.opt:1026 c-family/c.opt:1042
+#: c-family/c.opt:697 c-family/c.opt:811 c-family/c.opt:1030
+#: c-family/c.opt:1034 c-family/c.opt:1050
msgid "No longer supported"
msgstr ""
-#: c-family/c.opt:697
+#: c-family/c.opt:701
msgid "Recognize the \"asm\" keyword"
msgstr ""
-#: c-family/c.opt:701
+#: c-family/c.opt:709
msgid "Recognize built-in functions"
msgstr ""
-#: c-family/c.opt:708
+#: c-family/c.opt:716
msgid "Check the return value of new"
msgstr ""
-#: c-family/c.opt:712
+#: c-family/c.opt:720
msgid "Allow the arguments of the '?' operator to have different types"
msgstr ""
-#: c-family/c.opt:716
+#: c-family/c.opt:724
msgid "Reduce the size of object files"
msgstr ""
-#: c-family/c.opt:719
+#: c-family/c.opt:727
#, c-format
msgid "no class name specified with %qs"
msgstr ""
-#: c-family/c.opt:720
+#: c-family/c.opt:728
msgid "-fconst-string-class=<name>\tUse class <name> for constant strings"
msgstr ""
-#: c-family/c.opt:724
+#: c-family/c.opt:732
msgid "-fconstexpr-depth=<number>\tSpecify maximum constexpr recursion depth"
msgstr ""
-#: c-family/c.opt:728
+#: c-family/c.opt:736
msgid ""
"-fno-deduce-init-list\tdisable deduction of std::initializer_list for a "
"template type parameter from a brace-enclosed initializer-list"
msgstr ""
-#: c-family/c.opt:732 c-family/c.opt:907 common.opt:895 common.opt:1053
-#: common.opt:1323 common.opt:1589 common.opt:1625 common.opt:1710
-#: common.opt:1781 common.opt:1859 common.opt:1875 common.opt:1951
+#: c-family/c.opt:740 c-family/c.opt:915 common.opt:919 common.opt:1093
+#: common.opt:1363 common.opt:1629 common.opt:1665 common.opt:1750
+#: common.opt:1821 common.opt:1899 common.opt:1915 common.opt:1991
msgid "Does nothing. Preserved for backward compatibility."
msgstr ""
-#: c-family/c.opt:736
+#: c-family/c.opt:744
msgid "Preprocess directives only."
msgstr ""
-#: c-family/c.opt:740
+#: c-family/c.opt:748
msgid "Permit '$' as an identifier character"
msgstr ""
-#: c-family/c.opt:747
+#: c-family/c.opt:755
msgid "Generate code to check exception specifications"
msgstr ""
-#: c-family/c.opt:754
+#: c-family/c.opt:762
msgid ""
"-fexec-charset=<cset>\tConvert all strings and character constants to "
"character set <cset>"
msgstr ""
-#: c-family/c.opt:758
+#: c-family/c.opt:766
msgid "Permit universal character names (\\u and \\U) in identifiers"
msgstr ""
-#: c-family/c.opt:762
+#: c-family/c.opt:770
msgid ""
"-finput-charset=<cset>\tSpecify the default character set for source files"
msgstr ""
-#: c-family/c.opt:770
+#: c-family/c.opt:778
msgid "Scope of for-init-statement variables is local to the loop"
msgstr ""
-#: c-family/c.opt:774
+#: c-family/c.opt:782
msgid "Do not assume that standard C libraries and \"main\" exist"
msgstr ""
-#: c-family/c.opt:778
+#: c-family/c.opt:786
msgid "Recognize GNU-defined keywords"
msgstr ""
-#: c-family/c.opt:782
+#: c-family/c.opt:790
msgid "Generate code for GNU runtime environment"
msgstr ""
-#: c-family/c.opt:786
+#: c-family/c.opt:794
msgid "Use traditional GNU semantics for inline functions"
msgstr ""
-#: c-family/c.opt:792
+#: c-family/c.opt:800
msgid ""
"-fhandle-exceptions has been renamed -fexceptions (and is now on by default)"
msgstr ""
-#: c-family/c.opt:799
+#: c-family/c.opt:807
msgid "Assume normal C execution environment"
msgstr ""
-#: c-family/c.opt:807
+#: c-family/c.opt:815
msgid "Export functions even if they can be inlined"
msgstr ""
-#: c-family/c.opt:811
+#: c-family/c.opt:819
msgid "Emit implicit instantiations of inline templates"
msgstr ""
-#: c-family/c.opt:815
+#: c-family/c.opt:823
msgid "Emit implicit instantiations of templates"
msgstr ""
-#: c-family/c.opt:819
+#: c-family/c.opt:827
msgid "Inject friend functions into enclosing namespace"
msgstr ""
-#: c-family/c.opt:823
+#: c-family/c.opt:831
msgid "Don't emit dllexported inline functions unless needed"
msgstr ""
-#: c-family/c.opt:830
+#: c-family/c.opt:838
msgid ""
"Allow implicit conversions between vectors with differing numbers of "
"subparts and/or differing element types."
msgstr ""
-#: c-family/c.opt:834
+#: c-family/c.opt:842
msgid "Don't warn about uses of Microsoft extensions"
msgstr ""
-#: c-family/c.opt:844
+#: c-family/c.opt:852
msgid "Generate code for NeXT (Apple Mac OS X) runtime environment"
msgstr ""
-#: c-family/c.opt:848
+#: c-family/c.opt:856
msgid "Assume that receivers of Objective-C messages may be nil"
msgstr ""
-#: c-family/c.opt:858
+#: c-family/c.opt:866
msgid ""
"Treat a throw() exception specification as noexcept to improve code size"
msgstr ""
-#: c-family/c.opt:862
+#: c-family/c.opt:870
msgid ""
"Specify which ABI to use for Objective-C family code and meta-data "
"generation."
msgstr ""
-#: c-family/c.opt:868
+#: c-family/c.opt:876
msgid ""
"Generate special Objective-C methods to initialize/destroy non-POD C++ "
"ivars, if needed"
msgstr ""
-#: c-family/c.opt:872
+#: c-family/c.opt:880
msgid "Allow fast jumps to the message dispatcher"
msgstr ""
-#: c-family/c.opt:878
+#: c-family/c.opt:886
msgid "Enable Objective-C exception and synchronization syntax"
msgstr ""
-#: c-family/c.opt:882
+#: c-family/c.opt:890
msgid "Enable garbage collection (GC) in Objective-C/Objective-C++ programs"
msgstr ""
-#: c-family/c.opt:886
+#: c-family/c.opt:894
msgid ""
"Enable inline checks for nil receivers with the NeXT runtime and ABI version "
"2."
msgstr ""
-#: c-family/c.opt:891
+#: c-family/c.opt:899
msgid "Enable Objective-C setjmp exception handling runtime"
msgstr ""
-#: c-family/c.opt:895
+#: c-family/c.opt:903
msgid "Conform to the Objective-C 1.0 language as implemented in GCC 4.0"
msgstr ""
-#: c-family/c.opt:899
+#: c-family/c.opt:907
msgid "Enable OpenMP (implies -frecursive in Fortran)"
msgstr ""
-#: c-family/c.opt:903
+#: c-family/c.opt:911
msgid "Recognize C++ keywords like \"compl\" and \"xor\""
msgstr ""
-#: c-family/c.opt:914
+#: c-family/c.opt:922
msgid "Look for and use PCH files even when preprocessing"
msgstr ""
-#: c-family/c.opt:918
+#: c-family/c.opt:926
msgid "Downgrade conformance errors to warnings"
msgstr ""
-#: c-family/c.opt:922
+#: c-family/c.opt:930
msgid "Enable Plan 9 language extensions"
msgstr ""
-#: c-family/c.opt:926
+#: c-family/c.opt:934
msgid "Treat the input file as already preprocessed"
msgstr ""
-#: c-family/c.opt:930
+#: c-family/c.opt:938
msgid ""
"-fno-pretty-templates Do not pretty-print template specializations as the "
"template signature followed by the arguments"
msgstr ""
-#: c-family/c.opt:934
+#: c-family/c.opt:942
msgid ""
"Used in Fix-and-Continue mode to indicate that object files may be swapped "
"in at runtime"
msgstr ""
-#: c-family/c.opt:938
+#: c-family/c.opt:946
msgid "Enable automatic template instantiation"
msgstr ""
-#: c-family/c.opt:942
+#: c-family/c.opt:950
msgid "Generate run time type descriptor information"
msgstr ""
-#: c-family/c.opt:946
+#: c-family/c.opt:954
msgid "Use the same size for double as for float"
msgstr ""
-#: c-family/c.opt:950
+#: c-family/c.opt:958
msgid "Use the narrowest integer type possible for enumeration types"
msgstr ""
-#: c-family/c.opt:954
+#: c-family/c.opt:962
msgid "Force the underlying type for \"wchar_t\" to be \"unsigned short\""
msgstr ""
-#: c-family/c.opt:958
+#: c-family/c.opt:966
msgid "When \"signed\" or \"unsigned\" is not given make the bitfield signed"
msgstr ""
-#: c-family/c.opt:962
+#: c-family/c.opt:970
msgid "Make \"char\" signed by default"
msgstr ""
-#: c-family/c.opt:969
+#: c-family/c.opt:977
msgid "Display statistics accumulated during compilation"
msgstr ""
-#: c-family/c.opt:973
+#: c-family/c.opt:981
msgid ""
"Assume that values of enumeration type are always within the minimum range "
"of that type"
msgstr ""
-#: c-family/c.opt:980
+#: c-family/c.opt:988
msgid "-ftabstop=<number>\tDistance between tab stops for column reporting"
msgstr ""
-#: c-family/c.opt:987
+#: c-family/c.opt:995
msgid "-ftemplate-depth=<number>\tSpecify maximum template instantiation depth"
msgstr ""
-#: c-family/c.opt:994
+#: c-family/c.opt:1002
msgid ""
"-fno-threadsafe-statics\tDo not generate thread-safe code for initializing "
"local statics"
msgstr ""
-#: c-family/c.opt:998
+#: c-family/c.opt:1006
msgid "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned"
msgstr ""
-#: c-family/c.opt:1002
+#: c-family/c.opt:1010
msgid "Make \"char\" unsigned by default"
msgstr ""
-#: c-family/c.opt:1006
+#: c-family/c.opt:1014
msgid "Use __cxa_atexit to register destructors"
msgstr ""
-#: c-family/c.opt:1010
+#: c-family/c.opt:1018
msgid "Use __cxa_get_exception_ptr in exception handling"
msgstr ""
-#: c-family/c.opt:1014
+#: c-family/c.opt:1022
msgid "Marks all inlined methods as having hidden visibility"
msgstr ""
-#: c-family/c.opt:1018
+#: c-family/c.opt:1026
msgid "Changes visibility to match Microsoft Visual Studio by default"
msgstr ""
-#: c-family/c.opt:1030
+#: c-family/c.opt:1038
msgid "Emit common-like symbols as weak symbols"
msgstr ""
-#: c-family/c.opt:1034
+#: c-family/c.opt:1042
msgid ""
"-fwide-exec-charset=<cset>\tConvert all wide strings and character constants "
"to character set <cset>"
msgstr ""
-#: c-family/c.opt:1038
+#: c-family/c.opt:1046
msgid "Generate a #line directive pointing at the current working directory"
msgstr ""
-#: c-family/c.opt:1046
+#: c-family/c.opt:1054
msgid ""
"Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode"
msgstr ""
-#: c-family/c.opt:1050
+#: c-family/c.opt:1058
msgid "Dump declarations to a .decl file"
msgstr ""
-#: c-family/c.opt:1054
+#: c-family/c.opt:1062
msgid "-femit-struct-debug-baseonly\tAggressive reduced debug info for structs"
msgstr ""
-#: c-family/c.opt:1058
+#: c-family/c.opt:1066
msgid ""
"-femit-struct-debug-reduced\tConservative reduced debug info for structs"
msgstr ""
-#: c-family/c.opt:1062
+#: c-family/c.opt:1070
msgid ""
"-femit-struct-debug-detailed=<spec-list>\tDetailed reduced debug info for "
"structs"
msgstr ""
-#: c-family/c.opt:1066
+#: c-family/c.opt:1074
msgid "-idirafter <dir>\tAdd <dir> to the end of the system include path"
msgstr ""
-#: c-family/c.opt:1070
+#: c-family/c.opt:1078
msgid "-imacros <file>\tAccept definition of macros in <file>"
msgstr ""
-#: c-family/c.opt:1074
+#: c-family/c.opt:1082
msgid "-imultilib <dir>\tSet <dir> to be the multilib include subdirectory"
msgstr ""
-#: c-family/c.opt:1078
+#: c-family/c.opt:1086
msgid "-include <file>\tInclude the contents of <file> before other files"
msgstr ""
-#: c-family/c.opt:1082
+#: c-family/c.opt:1090
msgid "-iprefix <path>\tSpecify <path> as a prefix for next two options"
msgstr ""
-#: c-family/c.opt:1086
+#: c-family/c.opt:1094
msgid "-isysroot <dir>\tSet <dir> to be the system root directory"
msgstr ""
-#: c-family/c.opt:1090
+#: c-family/c.opt:1098
msgid "-isystem <dir>\tAdd <dir> to the start of the system include path"
msgstr ""
-#: c-family/c.opt:1094
+#: c-family/c.opt:1102
msgid "-iquote <dir>\tAdd <dir> to the end of the quote include path"
msgstr ""
-#: c-family/c.opt:1098
+#: c-family/c.opt:1106
msgid "-iwithprefix <dir>\tAdd <dir> to the end of the system include path"
msgstr ""
-#: c-family/c.opt:1102
+#: c-family/c.opt:1110
msgid "-iwithprefixbefore <dir>\tAdd <dir> to the end of the main include path"
msgstr ""
-#: c-family/c.opt:1112
+#: c-family/c.opt:1120
msgid ""
"Do not search standard system include directories (those specified with -"
"isystem will still be used)"
msgstr ""
-#: c-family/c.opt:1116
+#: c-family/c.opt:1124
msgid "Do not search standard system include directories for C++"
msgstr ""
-#: c-family/c.opt:1132
+#: c-family/c.opt:1140
msgid "Generate C header of platform-specific features"
msgstr ""
-#: c-family/c.opt:1136
+#: c-family/c.opt:1144
msgid "Remap file names when including files"
msgstr ""
-#: c-family/c.opt:1140
-msgid "Conform to the ISO 1998 C++ standard"
+#: c-family/c.opt:1148 c-family/c.opt:1152
+msgid ""
+"Conform to the ISO 1998 C++ standard revised by the 2003 technical "
+"corrigendum"
msgstr ""
-#: c-family/c.opt:1144
+#: c-family/c.opt:1156
msgid ""
"Conform to the ISO 1998 C++ standard, with extensions that are likely to"
msgstr ""
-#: c-family/c.opt:1151
+#: c-family/c.opt:1163
msgid ""
"Conform to the ISO 201X C standard draft (experimental and incomplete "
"support)"
msgstr ""
-#: c-family/c.opt:1155 c-family/c.opt:1159 c-family/c.opt:1202
+#: c-family/c.opt:1167 c-family/c.opt:1171 c-family/c.opt:1214
msgid "Conform to the ISO 1990 C standard"
msgstr ""
-#: c-family/c.opt:1163 c-family/c.opt:1210
+#: c-family/c.opt:1175 c-family/c.opt:1222
msgid "Conform to the ISO 1999 C standard"
msgstr ""
-#: c-family/c.opt:1167
+#: c-family/c.opt:1179
msgid "Deprecated in favor of -std=c99"
msgstr ""
-#: c-family/c.opt:1171
+#: c-family/c.opt:1183
msgid "Conform to the ISO 1998 C++ standard with GNU extensions"
msgstr ""
-#: c-family/c.opt:1175
+#: c-family/c.opt:1187
msgid "Conform to the ISO 1998 C++ standard, with GNU extensions and"
msgstr ""
-#: c-family/c.opt:1182
+#: c-family/c.opt:1194
msgid ""
"Conform to the ISO 201X C standard draft with GNU extensions (experimental "
"and incomplete support)"
msgstr ""
-#: c-family/c.opt:1186 c-family/c.opt:1190
+#: c-family/c.opt:1198 c-family/c.opt:1202
msgid "Conform to the ISO 1990 C standard with GNU extensions"
msgstr ""
-#: c-family/c.opt:1194
+#: c-family/c.opt:1206
msgid "Conform to the ISO 1999 C standard with GNU extensions"
msgstr ""
-#: c-family/c.opt:1198
+#: c-family/c.opt:1210
msgid "Deprecated in favor of -std=gnu99"
msgstr ""
-#: c-family/c.opt:1206
+#: c-family/c.opt:1218
msgid "Conform to the ISO 1990 C standard as amended in 1994"
msgstr ""
-#: c-family/c.opt:1214
+#: c-family/c.opt:1226
msgid "Deprecated in favor of -std=iso9899:1999"
msgstr ""
-#: c-family/c.opt:1221
+#: c-family/c.opt:1233
msgid "Enable traditional preprocessing"
msgstr ""
-#: c-family/c.opt:1225
+#: c-family/c.opt:1237
msgid "-trigraphs\tSupport ISO C trigraphs"
msgstr ""
-#: c-family/c.opt:1229
+#: c-family/c.opt:1241
msgid "Do not predefine system-specific and GCC-specific macros"
msgstr ""
@@ -9920,1871 +10014,1892 @@
msgid "The resolution file"
msgstr ""
-#: common.opt:259
+#: common.opt:263
msgid "Display this information"
msgstr ""
-#: common.opt:263
+#: common.opt:267
msgid ""
"--help=<class>\tDisplay descriptions of a specific class of options. "
"<class> is one or more of optimizers, target, warnings, undocumented, params"
msgstr ""
-#: common.opt:375
+#: common.opt:379
msgid "Alias for --help=target"
msgstr ""
-#: common.opt:400
+#: common.opt:404
msgid ""
"--param <param>=<value>\tSet parameter <param> to value. See below for a "
"complete list of parameters"
msgstr ""
-#: common.opt:428
+#: common.opt:432
msgid "-O<number>\tSet optimization level to <number>"
msgstr ""
-#: common.opt:432
+#: common.opt:436
msgid "Optimize for space rather than speed"
msgstr ""
-#: common.opt:436
+#: common.opt:440
msgid "Optimize for speed disregarding exact standards compliance"
msgstr ""
-#: common.opt:467
+#: common.opt:480
msgid "This switch is deprecated; use -Wextra instead"
msgstr ""
-#: common.opt:480
+#: common.opt:493
msgid "Warn about returning structures, unions or arrays"
msgstr ""
-#: common.opt:484
+#: common.opt:497
msgid "Warn if an array is accessed out of bounds"
msgstr ""
-#: common.opt:488
+#: common.opt:501
msgid "Warn about inappropriate attribute usage"
msgstr ""
-#: common.opt:492
+#: common.opt:505
msgid "Warn about pointer casts which increase alignment"
msgstr ""
-#: common.opt:496
+#: common.opt:509
msgid "Warn when a #warning directive is encountered"
msgstr ""
-#: common.opt:500
+#: common.opt:513
msgid "Warn about uses of __attribute__((deprecated)) declarations"
msgstr ""
-#: common.opt:504
+#: common.opt:517
msgid "Warn when an optimization pass is disabled"
msgstr ""
-#: common.opt:508
+#: common.opt:521
msgid "Treat all warnings as errors"
msgstr ""
-#: common.opt:512
+#: common.opt:525
msgid "Treat specified warning as error"
msgstr ""
-#: common.opt:516
+#: common.opt:529
msgid "Print extra (possibly unwanted) warnings"
msgstr ""
-#: common.opt:520
+#: common.opt:533
msgid "Exit on the first error occurred"
msgstr ""
-#: common.opt:524
+#: common.opt:537
msgid ""
"-Wframe-larger-than=<number>\tWarn if a function's stack frame requires more "
"than <number> bytes"
msgstr ""
-#: common.opt:528
+#: common.opt:541
msgid "Warn when an inlined function cannot be inlined"
msgstr ""
-#: common.opt:535
+#: common.opt:548
msgid "-Wlarger-than=<number>\tWarn if an object is larger than <number> bytes"
msgstr ""
-#: common.opt:539
+#: common.opt:552
msgid "Warn if the loop cannot be optimized due to nontrivial assumptions."
msgstr ""
-#: common.opt:543 common.opt:595
+#: common.opt:556 common.opt:612
msgid ""
"Warn about functions which might be candidates for __attribute__((noreturn))"
msgstr ""
-#: common.opt:547
+#: common.opt:560
msgid "Warn about constructs not instrumented by -fmudflap"
msgstr ""
-#: common.opt:551
+#: common.opt:564
msgid "Warn about overflow in arithmetic expressions"
msgstr ""
-#: common.opt:555
+#: common.opt:568
msgid "Warn when the packed attribute has no effect on struct layout"
msgstr ""
-#: common.opt:559
+#: common.opt:572
msgid "Warn when padding is required to align structure members"
msgstr ""
-#: common.opt:563
+#: common.opt:576
msgid "Warn when one local variable shadows another"
msgstr ""
-#: common.opt:567
+#: common.opt:580
msgid "Warn when not issuing stack smashing protection for some reason"
msgstr ""
-#: common.opt:571 common.opt:575
+#: common.opt:584
+msgid "Warn if stack usage might be larger than specified amount"
+msgstr ""
+
+#: common.opt:588 common.opt:592
msgid "Warn about code which might break strict aliasing rules"
msgstr ""
-#: common.opt:579 common.opt:583
+#: common.opt:596 common.opt:600
msgid "Warn about optimizations that assume that signed overflow is undefined"
msgstr ""
-#: common.opt:587
+#: common.opt:604
msgid ""
"Warn about functions which might be candidates for __attribute__((const))"
msgstr ""
-#: common.opt:591
+#: common.opt:608
msgid ""
"Warn about functions which might be candidates for __attribute__((pure))"
msgstr ""
-#: common.opt:599
+#: common.opt:616
msgid "Warn about enumerated switches, with no default, missing a case"
msgstr ""
-#: common.opt:603
+#: common.opt:620
msgid "Warn about enumerated switches missing a \"default:\" statement"
msgstr ""
-#: common.opt:607
+#: common.opt:624
msgid "Warn about all enumerated switches missing a specific case"
msgstr ""
-#: common.opt:611
+#: common.opt:628
msgid "Do not suppress warnings from system headers"
msgstr ""
-#: common.opt:615
+#: common.opt:632
msgid "Warn whenever a trampoline is generated"
msgstr ""
-#: common.opt:619
+#: common.opt:636
msgid ""
"Warn if a comparison is always true or always false due to the limited range "
"of the data type"
msgstr ""
-#: common.opt:623
+#: common.opt:640
msgid "Warn about uninitialized automatic variables"
msgstr ""
-#: common.opt:627 common.opt:784 common.opt:788 common.opt:792 common.opt:796
-#: common.opt:1253
-msgid "Does nothing. Preserved for backward compatibility."
+#: common.opt:644
+msgid "Warn about maybe uninitialized automatic variables"
msgstr ""
-#: common.opt:631
+#: common.opt:652
msgid "Enable all -Wunused- warnings"
msgstr ""
-#: common.opt:635
+#: common.opt:656
msgid "Warn when a function parameter is only set, otherwise unused"
msgstr ""
-#: common.opt:639
+#: common.opt:660
msgid "Warn when a variable is only set, otherwise unused"
msgstr ""
-#: common.opt:643
+#: common.opt:664
msgid "Warn when a function is unused"
msgstr ""
-#: common.opt:647
+#: common.opt:668
msgid "Warn when a label is unused"
msgstr ""
-#: common.opt:651
+#: common.opt:672
msgid "Warn when a function parameter is unused"
msgstr ""
-#: common.opt:655
+#: common.opt:676
msgid "Warn when an expression value is unused"
msgstr ""
-#: common.opt:659
+#: common.opt:680
msgid "Warn when a variable is unused"
msgstr ""
-#: common.opt:663
+#: common.opt:684
msgid "Warn in case profiles in -fprofile-use do not match"
msgstr ""
-#: common.opt:679
+#: common.opt:700
msgid "-aux-info <file>\tEmit declaration information into <file>"
msgstr ""
-#: common.opt:698
+#: common.opt:719
msgid "-d<letters>\tEnable dumps from specific passes of the compiler"
msgstr ""
-#: common.opt:702
+#: common.opt:723
msgid "-dumpbase <file>\tSet the file basename to be used for dumps"
msgstr ""
-#: common.opt:706
+#: common.opt:727
msgid "-dumpdir <dir>\tSet the directory name to be used for dumps"
msgstr ""
-#: common.opt:756
+#: common.opt:780
msgid "Align the start of functions"
msgstr ""
-#: common.opt:763
+#: common.opt:787
msgid "Align labels which are only reached by jumping"
msgstr ""
-#: common.opt:770
+#: common.opt:794
msgid "Align all labels"
msgstr ""
-#: common.opt:777
+#: common.opt:801
msgid "Align the start of loops"
msgstr ""
-#: common.opt:800
+#: common.opt:824
msgid "Generate unwind tables that are exact at each instruction boundary"
msgstr ""
-#: common.opt:804
+#: common.opt:828
msgid "Generate auto-inc/dec instructions"
msgstr ""
-#: common.opt:812
+#: common.opt:836
msgid "Generate code to check bounds before indexing arrays"
msgstr ""
-#: common.opt:816
+#: common.opt:840
msgid "Replace add, compare, branch with branch on count register"
msgstr ""
-#: common.opt:820
+#: common.opt:844
msgid "Use profiling information for branch probabilities"
msgstr ""
-#: common.opt:824
+#: common.opt:848
msgid ""
"Perform branch target load optimization before prologue / epilogue threading"
msgstr ""
-#: common.opt:828
+#: common.opt:852
msgid ""
"Perform branch target load optimization after prologue / epilogue threading"
msgstr ""
-#: common.opt:832
+#: common.opt:856
msgid ""
"Restrict target load migration not to re-use registers in any basic block"
msgstr ""
-#: common.opt:836
+#: common.opt:860
msgid ""
"-fcall-saved-<register>\tMark <register> as being preserved across functions"
msgstr ""
-#: common.opt:840
+#: common.opt:864
msgid ""
"-fcall-used-<register>\tMark <register> as being corrupted by function calls"
msgstr ""
-#: common.opt:847
+#: common.opt:871
msgid "Save registers around function calls"
msgstr ""
-#: common.opt:851
+#: common.opt:875
msgid "Compare the results of several data dependence analyzers."
msgstr ""
-#: common.opt:855
+#: common.opt:879
msgid ""
"Looks for opportunities to reduce stack adjustments and stack references."
msgstr ""
-#: common.opt:859
+#: common.opt:883
msgid "Do not put uninitialized globals in the common section"
msgstr ""
-#: common.opt:867
+#: common.opt:891
msgid ""
"-fcompare-debug[=<opts>]\tCompile with and without e.g. -gtoggle, and "
"compare the final-insns dump"
msgstr ""
-#: common.opt:871
+#: common.opt:895
msgid "Run only the second compilation of -fcompare-debug"
msgstr ""
-#: common.opt:875
+#: common.opt:899
msgid "Perform comparison elimination after register allocation has finished"
msgstr ""
-#: common.opt:879
+#: common.opt:903
msgid "Do not perform optimizations increasing noticeably stack usage"
msgstr ""
-#: common.opt:883
+#: common.opt:907
msgid "Perform a register copy-propagation optimization pass"
msgstr ""
-#: common.opt:887
+#: common.opt:911
msgid "Perform cross-jumping optimization"
msgstr ""
-#: common.opt:891
+#: common.opt:915
msgid "When running CSE, follow jumps to their targets"
msgstr ""
-#: common.opt:899
+#: common.opt:923
msgid "Omit range reduction step when performing complex division"
msgstr ""
-#: common.opt:903
+#: common.opt:927
msgid "Complex multiplication and division follow Fortran rules"
msgstr ""
-#: common.opt:907
+#: common.opt:931
msgid "Place data items into their own section"
msgstr ""
-#: common.opt:911
+#: common.opt:935
msgid "List all available debugging counters with their limits and counts."
msgstr ""
-#: common.opt:915
+#: common.opt:939
msgid ""
"-fdbg-cnt=<counter>:<limit>[,<counter>:<limit>,...]\tSet the debug counter "
"limit. "
msgstr ""
-#: common.opt:919
+#: common.opt:943
msgid "Map one directory name to another in debug information"
msgstr ""
-#: common.opt:925
+#: common.opt:947
+msgid "Output .debug_types section when using DWARF v4 debuginfo."
+msgstr ""
+
+#: common.opt:953
msgid "Defer popping functions args from stack until later"
msgstr ""
-#: common.opt:929
+#: common.opt:957
msgid "Attempt to fill delay slots of branch instructions"
msgstr ""
-#: common.opt:933
+#: common.opt:961
msgid "Delete useless null pointer checks"
msgstr ""
-#: common.opt:937
+#: common.opt:965
msgid "Try to convert virtual calls to direct ones."
msgstr ""
-#: common.opt:941
+#: common.opt:969
msgid ""
"-fdiagnostics-show-location=[once|every-line]\tHow often to emit source "
"location at the beginning of line-wrapped diagnostics"
msgstr ""
-#: common.opt:958
+#: common.opt:986
msgid ""
"Amend appropriate diagnostic messages with the command line option that "
"controls them"
msgstr ""
-#: common.opt:962
+#: common.opt:990
+msgid ""
+"-fdisable-[tree|rtl|ipa]-<pass>=range1+range2 disables an optimization pass"
+msgstr ""
+
+#: common.opt:994
+msgid ""
+"-fenable-[tree|rtl|ipa]-<pass>=range1+range2 enables an optimization pass"
+msgstr ""
+
+#: common.opt:998
msgid "-fdump-<type>\tDump various compiler internals to a file"
msgstr ""
-#: common.opt:969
+#: common.opt:1005
msgid ""
"-fdump-final-insns=filename\tDump to filename the insns at the end of "
"translation"
msgstr ""
-#: common.opt:973
+#: common.opt:1009
msgid "-fdump-go-spec=filename\tWrite all declarations to file as Go code"
msgstr ""
-#: common.opt:977
+#: common.opt:1013
msgid "Suppress output of addresses in debugging dumps"
msgstr ""
-#: common.opt:981
+#: common.opt:1017
+msgid "Dump optimization passes"
+msgstr ""
+
+#: common.opt:1021
msgid ""
"Suppress output of instruction numbers, line number notes and addresses in "
"debugging dumps"
msgstr ""
-#: common.opt:985
+#: common.opt:1025
msgid "Suppress output of previous and next insn numbers in debugging dumps"
msgstr ""
-#: common.opt:989
+#: common.opt:1029
msgid "Enable CFI tables via GAS assembler directives."
msgstr ""
-#: common.opt:993
+#: common.opt:1033
msgid "Perform early inlining"
msgstr ""
-#: common.opt:997
+#: common.opt:1037
msgid "Perform DWARF2 duplicate elimination"
msgstr ""
-#: common.opt:1001
+#: common.opt:1041
msgid "Perform interprocedural reduction of aggregates"
msgstr ""
-#: common.opt:1005 common.opt:1009
+#: common.opt:1045 common.opt:1049
msgid "Perform unused type elimination in debug info"
msgstr ""
-#: common.opt:1013
+#: common.opt:1053
msgid "Do not suppress C++ class debug information."
msgstr ""
-#: common.opt:1017
+#: common.opt:1057
msgid "Enable exception handling"
msgstr ""
-#: common.opt:1021
+#: common.opt:1061
msgid "Perform a number of minor, expensive optimizations"
msgstr ""
-#: common.opt:1025
+#: common.opt:1065
msgid ""
"-fexcess-precision=[fast|standard]\tSpecify handling of excess floating-"
"point precision"
msgstr ""
-#: common.opt:1028
+#: common.opt:1068
#, c-format
msgid "unknown excess precision style %qs"
msgstr ""
-#: common.opt:1041
+#: common.opt:1081
msgid "Assume no NaNs or infinities are generated"
msgstr ""
-#: common.opt:1045
+#: common.opt:1085
msgid ""
"-ffixed-<register>\tMark <register> as being unavailable to the compiler"
msgstr ""
-#: common.opt:1049
+#: common.opt:1089
msgid "Don't allocate floats and doubles in extended-precision registers"
msgstr ""
-#: common.opt:1057
-msgid "Perform a forward propagation pass on RTL"
-msgstr ""
-
-#: common.opt:1061
-msgid ""
-"-ffp-contract=[off|on|fast] Perform floating-point expression contraction."
-msgstr ""
-
-#: common.opt:1064
-#, c-format
-msgid "unknown floating point contraction style %qs"
-msgstr ""
-
-#: common.opt:1081
-msgid "Allow function addresses to be held in registers"
-msgstr ""
-
-#: common.opt:1085
-msgid "Place each function into its own section"
-msgstr ""
-
-#: common.opt:1089
-msgid "Perform global common subexpression elimination"
-msgstr ""
-
-#: common.opt:1093
-msgid ""
-"Perform enhanced load motion during global common subexpression elimination"
-msgstr ""
-
#: common.opt:1097
-msgid "Perform store motion after global common subexpression elimination"
+msgid "Perform a forward propagation pass on RTL"
msgstr ""
#: common.opt:1101
msgid ""
+"-ffp-contract=[off|on|fast] Perform floating-point expression contraction."
+msgstr ""
+
+#: common.opt:1104
+#, c-format
+msgid "unknown floating point contraction style %qs"
+msgstr ""
+
+#: common.opt:1121
+msgid "Allow function addresses to be held in registers"
+msgstr ""
+
+#: common.opt:1125
+msgid "Place each function into its own section"
+msgstr ""
+
+#: common.opt:1129
+msgid "Perform global common subexpression elimination"
+msgstr ""
+
+#: common.opt:1133
+msgid ""
+"Perform enhanced load motion during global common subexpression elimination"
+msgstr ""
+
+#: common.opt:1137
+msgid "Perform store motion after global common subexpression elimination"
+msgstr ""
+
+#: common.opt:1141
+msgid ""
"Perform redundant load after store elimination in global common subexpression"
msgstr ""
-#: common.opt:1106
+#: common.opt:1146
msgid ""
"Perform global common subexpression elimination after register allocation"
msgstr ""
-#: common.opt:1112
+#: common.opt:1152
msgid "Enable in and out of Graphite representation"
msgstr ""
-#: common.opt:1116
+#: common.opt:1156
msgid "Enable Graphite Identity transformation"
msgstr ""
-#: common.opt:1120
+#: common.opt:1160
msgid "Mark all loops as parallel"
msgstr ""
-#: common.opt:1124
+#: common.opt:1164
msgid "Enable Loop Strip Mining transformation"
msgstr ""
-#: common.opt:1128
+#: common.opt:1168
msgid "Enable Loop Interchange transformation"
msgstr ""
-#: common.opt:1132
+#: common.opt:1172
msgid "Enable Loop Blocking transformation"
msgstr ""
-#: common.opt:1136
+#: common.opt:1176
msgid "Enable Loop Flattening transformation"
msgstr ""
-#: common.opt:1140
+#: common.opt:1180
msgid "Force bitfield accesses to match their type width"
msgstr ""
-#: common.opt:1144
+#: common.opt:1184
msgid "Enable guessing of branch probabilities"
msgstr ""
-#: common.opt:1152
+#: common.opt:1192
msgid "Process #ident directives"
msgstr ""
-#: common.opt:1156
+#: common.opt:1196
msgid "Perform conversion of conditional jumps to branchless equivalents"
msgstr ""
-#: common.opt:1160
+#: common.opt:1200
msgid "Perform conversion of conditional jumps to conditional execution"
msgstr ""
-#: common.opt:1164
+#: common.opt:1204
msgid "Convert conditional jumps in innermost loops to branchless equivalents"
msgstr ""
-#: common.opt:1168
+#: common.opt:1208
msgid "Also if-convert conditional jumps containing memory writes"
msgstr ""
-#: common.opt:1176
+#: common.opt:1216
msgid "Do not generate .size directives"
msgstr ""
-#: common.opt:1180
+#: common.opt:1220
msgid "Perform indirect inlining"
msgstr ""
-#: common.opt:1189
+#: common.opt:1229
msgid "Pay attention to the \"inline\" keyword"
msgstr ""
-#: common.opt:1193
+#: common.opt:1233
msgid ""
"Integrate simple functions into their callers when code size is known to not "
"growth"
msgstr ""
-#: common.opt:1197
+#: common.opt:1237
msgid "Integrate simple functions into their callers"
msgstr ""
-#: common.opt:1201
+#: common.opt:1241
msgid "Integrate functions called once into their callers"
msgstr ""
-#: common.opt:1208
+#: common.opt:1248
msgid ""
"-finline-limit=<number>\tLimit the size of inlined functions to <number>"
msgstr ""
-#: common.opt:1212
+#: common.opt:1252
msgid "Instrument function entry and exit with profiling calls"
msgstr ""
-#: common.opt:1216
+#: common.opt:1256
msgid ""
"-finstrument-functions-exclude-function-list=name,... Do not instrument "
"listed functions"
msgstr ""
-#: common.opt:1220
+#: common.opt:1260
msgid ""
"-finstrument-functions-exclude-file-list=filename,... Do not instrument "
"functions listed in files"
msgstr ""
-#: common.opt:1224
+#: common.opt:1264
msgid "Perform Interprocedural constant propagation"
msgstr ""
-#: common.opt:1228
+#: common.opt:1268
msgid "Perform cloning to make Interprocedural constant propagation stronger"
msgstr ""
-#: common.opt:1232
+#: common.opt:1272
msgid "Perform interprocedural profile propagation"
msgstr ""
-#: common.opt:1236
+#: common.opt:1276
msgid "Perform interprocedural points-to analysis"
msgstr ""
-#: common.opt:1240
+#: common.opt:1280
msgid "Discover pure and const functions"
msgstr ""
-#: common.opt:1244
+#: common.opt:1284
msgid "Discover readonly and non addressable static variables"
msgstr ""
-#: common.opt:1248
+#: common.opt:1288
msgid "Perform matrix layout flattening and transposing based"
msgstr ""
-#: common.opt:1257
+#: common.opt:1297
msgid "-fira-algorithm=[CB|priority] Set the used IRA algorithm"
msgstr ""
-#: common.opt:1260
+#: common.opt:1300
#, c-format
msgid "unknown IRA algorithm %qs"
msgstr ""
-#: common.opt:1270
+#: common.opt:1310
msgid "-fira-region=[one|all|mixed] Set regions for IRA"
msgstr ""
-#: common.opt:1273
+#: common.opt:1313
#, c-format
msgid "unknown IRA region %qs"
msgstr ""
-#: common.opt:1286
+#: common.opt:1326
msgid "Use IRA based register pressure calculation"
msgstr ""
-#: common.opt:1291
+#: common.opt:1331
msgid "Share slots for saving different hard registers."
msgstr ""
-#: common.opt:1295
+#: common.opt:1335
msgid "Share stack slots for spilled pseudo-registers."
msgstr ""
-#: common.opt:1299
+#: common.opt:1339
msgid "-fira-verbose=<number>\tControl IRA's level of diagnostic messages."
msgstr ""
-#: common.opt:1303
+#: common.opt:1343
msgid "Optimize induction variables on trees"
msgstr ""
-#: common.opt:1307
+#: common.opt:1347
msgid "Use jump tables for sufficiently large switch statements"
msgstr ""
-#: common.opt:1311
+#: common.opt:1351
msgid "Generate code for functions even if they are fully inlined"
msgstr ""
-#: common.opt:1315
+#: common.opt:1355
msgid "Emit static const variables even if they are not used"
msgstr ""
-#: common.opt:1319
+#: common.opt:1359
msgid "Give external symbols a leading underscore"
msgstr ""
-#: common.opt:1327
+#: common.opt:1367
msgid "Enable link-time optimization."
msgstr ""
-#: common.opt:1331
+#: common.opt:1371
msgid "Link-time optimization with number of parallel jobs or jobserver."
msgstr ""
-#: common.opt:1335
+#: common.opt:1375
msgid ""
"Partition functions and vars at linktime based on object files they "
"originate from"
msgstr ""
-#: common.opt:1339
+#: common.opt:1379
msgid ""
"Partition functions and vars at linktime into approximately same sized "
"buckets"
msgstr ""
-#: common.opt:1343
+#: common.opt:1383
msgid "Disable partioning and streaming"
msgstr ""
-#: common.opt:1348
+#: common.opt:1388
msgid ""
"-flto-compression-level=<number>\tUse zlib compression level <number> for IL"
msgstr ""
-#: common.opt:1352
+#: common.opt:1392
msgid "Report various link-time optimization statistics"
msgstr ""
-#: common.opt:1356
+#: common.opt:1396
msgid "Set errno after built-in math functions"
msgstr ""
-#: common.opt:1360
+#: common.opt:1400
msgid "-fmax-errors=<number>\tMaximum number of errors to report"
msgstr ""
-#: common.opt:1364
+#: common.opt:1404
msgid "Report on permanent memory allocation"
msgstr ""
-#: common.opt:1371
+#: common.opt:1411
msgid "Attempt to merge identical constants and constant variables"
msgstr ""
-#: common.opt:1375
+#: common.opt:1415
msgid "Attempt to merge identical constants across compilation units"
msgstr ""
-#: common.opt:1379
+#: common.opt:1419
msgid "Attempt to merge identical debug strings across compilation units"
msgstr ""
-#: common.opt:1383
+#: common.opt:1423
msgid ""
"-fmessage-length=<number>\tLimit diagnostics to <number> characters per "
"line. 0 suppresses line-wrapping"
msgstr ""
-#: common.opt:1387
+#: common.opt:1427
msgid "Perform SMS based modulo scheduling before the first scheduling pass"
msgstr ""
-#: common.opt:1391
+#: common.opt:1431
msgid "Perform SMS based modulo scheduling with register moves allowed"
msgstr ""
-#: common.opt:1395
+#: common.opt:1435
msgid "Move loop invariant computations out of loops"
msgstr ""
-#: common.opt:1399
+#: common.opt:1439
msgid "Add mudflap bounds-checking instrumentation for single-threaded program"
msgstr ""
-#: common.opt:1403
+#: common.opt:1443
msgid "Add mudflap bounds-checking instrumentation for multi-threaded program"
msgstr ""
-#: common.opt:1407
+#: common.opt:1447
msgid "Ignore read operations when inserting mudflap instrumentation"
msgstr ""
-#: common.opt:1411
+#: common.opt:1451
msgid "Use the RTL dead code elimination pass"
msgstr ""
-#: common.opt:1415
+#: common.opt:1455
msgid "Use the RTL dead store elimination pass"
msgstr ""
-#: common.opt:1419
+#: common.opt:1459
msgid ""
"Enable/Disable the traditional scheduling in loops that already passed "
"modulo scheduling"
msgstr ""
-#: common.opt:1423
+#: common.opt:1463
msgid "Support synchronous non-call exceptions"
msgstr ""
-#: common.opt:1427
+#: common.opt:1467
msgid "When possible do not generate stack frames"
msgstr ""
-#: common.opt:1431
+#: common.opt:1471
msgid "Do the full register move optimization pass"
msgstr ""
-#: common.opt:1435
+#: common.opt:1475
msgid "Optimize sibling and tail recursive calls"
msgstr ""
-#: common.opt:1439
+#: common.opt:1479
msgid "Perform partial inlining"
msgstr ""
-#: common.opt:1443 common.opt:1447
+#: common.opt:1483 common.opt:1487
msgid "Report on memory allocation before interprocedural optimization"
msgstr ""
-#: common.opt:1451
+#: common.opt:1491
msgid "Pack structure members together without holes"
msgstr ""
-#: common.opt:1455
+#: common.opt:1495
msgid "-fpack-struct=<number>\tSet initial maximum structure member alignment"
msgstr ""
-#: common.opt:1459
+#: common.opt:1499
msgid "Return small aggregates in memory, not registers"
msgstr ""
-#: common.opt:1463
+#: common.opt:1503
msgid "Perform loop peeling"
msgstr ""
-#: common.opt:1467
+#: common.opt:1507
msgid "Enable machine specific peephole optimizations"
msgstr ""
-#: common.opt:1471
+#: common.opt:1511
msgid "Enable an RTL peephole pass before sched2"
msgstr ""
-#: common.opt:1475
+#: common.opt:1515
msgid "Generate position-independent code if possible (large mode)"
msgstr ""
-#: common.opt:1479
+#: common.opt:1519
msgid ""
"Generate position-independent code for executables if possible (large mode)"
msgstr ""
-#: common.opt:1483
+#: common.opt:1523
msgid "Generate position-independent code if possible (small mode)"
msgstr ""
-#: common.opt:1487
+#: common.opt:1527
msgid ""
"Generate position-independent code for executables if possible (small mode)"
msgstr ""
-#: common.opt:1491
+#: common.opt:1531
msgid "Specify a plugin to load"
msgstr ""
-#: common.opt:1495
+#: common.opt:1535
msgid ""
"-fplugin-arg-<name>-<key>[=<value>]\tSpecify argument <key>=<value> for "
"plugin <name>"
msgstr ""
-#: common.opt:1499
+#: common.opt:1539
msgid "Run predictive commoning optimization."
msgstr ""
-#: common.opt:1503
+#: common.opt:1543
msgid "Generate prefetch instructions, if available, for arrays in loops"
msgstr ""
-#: common.opt:1507
+#: common.opt:1547
msgid "Enable basic program profiling code"
msgstr ""
-#: common.opt:1511
+#: common.opt:1551
msgid "Insert arc-based program profiling code"
msgstr ""
-#: common.opt:1515
+#: common.opt:1555
msgid "Set the top-level directory for storing the profile data."
msgstr ""
-#: common.opt:1520
+#: common.opt:1560
msgid "Enable correction of flow inconsistent profile data input"
msgstr ""
-#: common.opt:1524
+#: common.opt:1564
msgid ""
"Enable common options for generating profile info for profile feedback "
"directed optimizations"
msgstr ""
-#: common.opt:1528
+#: common.opt:1568
msgid ""
"Enable common options for generating profile info for profile feedback "
"directed optimizations, and set -fprofile-dir="
msgstr ""
-#: common.opt:1532
+#: common.opt:1572
msgid ""
"Enable common options for performing profile feedback directed optimizations"
msgstr ""
-#: common.opt:1536
+#: common.opt:1576
msgid ""
"Enable common options for performing profile feedback directed "
"optimizations, and set -fprofile-dir="
msgstr ""
-#: common.opt:1540
+#: common.opt:1580
msgid "Insert code to profile values of expressions"
msgstr ""
-#: common.opt:1547
+#: common.opt:1587
msgid "-frandom-seed=<string>\tMake compile reproducible using <string>"
msgstr ""
-#: common.opt:1557
+#: common.opt:1597
msgid "Record gcc command line switches in the object file."
msgstr ""
-#: common.opt:1561
+#: common.opt:1601
msgid "Return small aggregates in registers"
msgstr ""
-#: common.opt:1565
+#: common.opt:1605
msgid "Enables a register move optimization"
msgstr ""
-#: common.opt:1569
+#: common.opt:1609
msgid "Perform a register renaming optimization pass"
msgstr ""
-#: common.opt:1573
+#: common.opt:1613
msgid "Reorder basic blocks to improve code placement"
msgstr ""
-#: common.opt:1577
+#: common.opt:1617
msgid "Reorder basic blocks and partition into hot and cold sections"
msgstr ""
-#: common.opt:1581
+#: common.opt:1621
msgid "Reorder functions to improve code placement"
msgstr ""
-#: common.opt:1585
+#: common.opt:1625
msgid "Add a common subexpression elimination pass after loop optimizations"
msgstr ""
-#: common.opt:1593
+#: common.opt:1633
msgid "Disable optimizations that assume default FP rounding behavior"
msgstr ""
-#: common.opt:1597
+#: common.opt:1637
msgid "Enable scheduling across basic blocks"
msgstr ""
-#: common.opt:1601
+#: common.opt:1641
msgid "Enable register pressure sensitive insn scheduling"
msgstr ""
-#: common.opt:1605
+#: common.opt:1645
msgid "Allow speculative motion of non-loads"
msgstr ""
-#: common.opt:1609
+#: common.opt:1649
msgid "Allow speculative motion of some loads"
msgstr ""
-#: common.opt:1613
+#: common.opt:1653
msgid "Allow speculative motion of more loads"
msgstr ""
-#: common.opt:1617
+#: common.opt:1657
msgid "-fsched-verbose=<number>\tSet the verbosity level of the scheduler"
msgstr ""
-#: common.opt:1621
+#: common.opt:1661
msgid "If scheduling post reload, do superblock scheduling"
msgstr ""
-#: common.opt:1629
+#: common.opt:1669
msgid "Reschedule instructions before register allocation"
msgstr ""
-#: common.opt:1633
+#: common.opt:1673
msgid "Reschedule instructions after register allocation"
msgstr ""
-#: common.opt:1640
+#: common.opt:1680
msgid "Schedule instructions using selective scheduling algorithm"
msgstr ""
-#: common.opt:1644
+#: common.opt:1684
msgid "Run selective scheduling after reload"
msgstr ""
-#: common.opt:1648
+#: common.opt:1688
msgid "Perform software pipelining of inner loops during selective scheduling"
msgstr ""
-#: common.opt:1652
+#: common.opt:1692
msgid "Perform software pipelining of outer loops during selective scheduling"
msgstr ""
-#: common.opt:1656
+#: common.opt:1696
msgid "Reschedule pipelined regions without pipelining"
msgstr ""
-#: common.opt:1662
+#: common.opt:1702
msgid "Allow premature scheduling of queued insns"
msgstr ""
-#: common.opt:1666
+#: common.opt:1706
msgid ""
"-fsched-stalled-insns=<number>\tSet number of queued insns that can be "
"prematurely scheduled"
msgstr ""
-#: common.opt:1674
+#: common.opt:1714
msgid ""
"Set dependence distance checking in premature scheduling of queued insns"
msgstr ""
-#: common.opt:1678
+#: common.opt:1718
msgid ""
"-fsched-stalled-insns-dep=<number>\tSet dependence distance checking in "
"premature scheduling of queued insns"
msgstr ""
-#: common.opt:1682
+#: common.opt:1722
msgid "Enable the group heuristic in the scheduler"
msgstr ""
-#: common.opt:1686
+#: common.opt:1726
msgid "Enable the critical path heuristic in the scheduler"
msgstr ""
-#: common.opt:1690
+#: common.opt:1730
msgid "Enable the speculative instruction heuristic in the scheduler"
msgstr ""
-#: common.opt:1694
+#: common.opt:1734
msgid "Enable the rank heuristic in the scheduler"
msgstr ""
-#: common.opt:1698
+#: common.opt:1738
msgid "Enable the last instruction heuristic in the scheduler"
msgstr ""
-#: common.opt:1702
+#: common.opt:1742
msgid "Enable the dependent count heuristic in the scheduler"
msgstr ""
-#: common.opt:1706
+#: common.opt:1746
msgid "Access data in the same section from shared anchor points"
msgstr ""
-#: common.opt:1714
+#: common.opt:1754
msgid ""
"Eliminate redundant zero extensions on targets that support implicit "
"extensions."
msgstr ""
-#: common.opt:1718
+#: common.opt:1758
msgid "Show column numbers in diagnostics, when available. Default on"
msgstr ""
-#: common.opt:1722
+#: common.opt:1762
msgid "Disable optimizations observable by IEEE signaling NaNs"
msgstr ""
-#: common.opt:1726
+#: common.opt:1766
msgid ""
"Disable floating point optimizations that ignore the IEEE signedness of zero"
msgstr ""
-#: common.opt:1730
+#: common.opt:1770
msgid "Convert floating point constants to single precision constants"
msgstr ""
-#: common.opt:1734
+#: common.opt:1774
msgid "Split lifetimes of induction variables when loops are unrolled"
msgstr ""
-#: common.opt:1738
+#: common.opt:1778
msgid "Generate discontiguous stack frames"
msgstr ""
-#: common.opt:1742
+#: common.opt:1782
msgid "Split wide types into independent registers"
msgstr ""
-#: common.opt:1746
+#: common.opt:1786
msgid "Apply variable expansion when loops are unrolled"
msgstr ""
-#: common.opt:1750
+#: common.opt:1790
msgid ""
"-fstack-check=[no|generic|specific]\tInsert stack checking code into the "
"program"
msgstr ""
-#: common.opt:1754
+#: common.opt:1794
msgid ""
"Insert stack checking code into the program. Same as -fstack-check=specific"
msgstr ""
-#: common.opt:1761
+#: common.opt:1801
msgid ""
"-fstack-limit-register=<register>\tTrap if the stack goes past <register>"
msgstr ""
-#: common.opt:1765
+#: common.opt:1805
msgid "-fstack-limit-symbol=<name>\tTrap if the stack goes past symbol <name>"
msgstr ""
-#: common.opt:1769
+#: common.opt:1809
msgid "Use propolice as a stack protection method"
msgstr ""
-#: common.opt:1773
+#: common.opt:1813
msgid "Use a stack protection method for every function"
msgstr ""
-#: common.opt:1777
+#: common.opt:1817
msgid "Output stack usage information on a per-function basis"
msgstr ""
-#: common.opt:1789
+#: common.opt:1829
msgid "Assume strict aliasing rules apply"
msgstr ""
-#: common.opt:1793
+#: common.opt:1833
msgid "Treat signed overflow as undefined"
msgstr ""
-#: common.opt:1797
+#: common.opt:1837
msgid "Check for syntax errors, then stop"
msgstr ""
-#: common.opt:1801
+#: common.opt:1841
msgid "Create data files needed by \"gcov\""
msgstr ""
-#: common.opt:1805
+#: common.opt:1845
msgid "Perform jump threading optimizations"
msgstr ""
-#: common.opt:1809
+#: common.opt:1849
msgid "Report the time taken by each compiler pass"
msgstr ""
-#: common.opt:1813
+#: common.opt:1853
msgid ""
"-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]\tSet the "
"default thread-local storage code generation model"
msgstr ""
-#: common.opt:1816
+#: common.opt:1856
#, c-format
msgid "unknown TLS model %qs"
msgstr ""
-#: common.opt:1832
+#: common.opt:1872
msgid "Reorder top level functions, variables, and asms"
msgstr ""
-#: common.opt:1836
+#: common.opt:1876
msgid "Perform superblock formation via tail duplication"
msgstr ""
-#: common.opt:1843
+#: common.opt:1883
msgid "Assume floating-point operations can trap"
msgstr ""
-#: common.opt:1847
+#: common.opt:1887
msgid "Trap for signed overflow in addition, subtraction and multiplication"
msgstr ""
-#: common.opt:1851
+#: common.opt:1891
msgid "Enable SSA-CCP optimization on trees"
msgstr ""
-#: common.opt:1855
+#: common.opt:1895
msgid "Enable SSA-BIT-CCP optimization on trees"
msgstr ""
-#: common.opt:1863
+#: common.opt:1903
msgid "Enable loop header copying on trees"
msgstr ""
-#: common.opt:1867
+#: common.opt:1907
msgid "Replace SSA temporaries with better names in copies"
msgstr ""
-#: common.opt:1871
+#: common.opt:1911
msgid "Enable copy propagation on trees"
msgstr ""
-#: common.opt:1879
+#: common.opt:1919
msgid "Transform condition stores into unconditional ones"
msgstr ""
-#: common.opt:1883
+#: common.opt:1923
msgid "Perform conversions of switch initializations."
msgstr ""
-#: common.opt:1887
+#: common.opt:1927
msgid "Enable SSA dead code elimination optimization on trees"
msgstr ""
-#: common.opt:1891
+#: common.opt:1931
msgid "Enable dominator optimizations"
msgstr ""
-#: common.opt:1895
+#: common.opt:1935
msgid "Enable dead store elimination"
msgstr ""
-#: common.opt:1899
+#: common.opt:1939
msgid "Enable forward propagation on trees"
msgstr ""
-#: common.opt:1903
+#: common.opt:1943
msgid "Enable Full Redundancy Elimination (FRE) on trees"
msgstr ""
-#: common.opt:1907
+#: common.opt:1947
msgid "Enable loop distribution on trees"
msgstr ""
-#: common.opt:1911
+#: common.opt:1951
msgid "Enable loop distribution for patterns transformed into a library call"
msgstr ""
-#: common.opt:1915
+#: common.opt:1955
msgid "Enable loop invariant motion on trees"
msgstr ""
-#: common.opt:1919
+#: common.opt:1959
msgid "Enable loop interchange transforms. Same as -floop-interchange"
msgstr ""
-#: common.opt:1923
+#: common.opt:1963
msgid "Create canonical induction variables in loops"
msgstr ""
-#: common.opt:1927
+#: common.opt:1967
msgid "Enable loop optimizations on tree level"
msgstr ""
-#: common.opt:1931
+#: common.opt:1971
msgid "Enable automatic parallelization of loops"
msgstr ""
-#: common.opt:1935
+#: common.opt:1975
msgid "Enable hoisting loads from conditional pointers."
msgstr ""
-#: common.opt:1939
+#: common.opt:1979
msgid "Enable SSA-PRE optimization on trees"
msgstr ""
-#: common.opt:1943
+#: common.opt:1983
msgid "Perform function-local points-to analysis on trees."
msgstr ""
-#: common.opt:1947
+#: common.opt:1987
msgid "Enable reassociation on tree level"
msgstr ""
-#: common.opt:1955
+#: common.opt:1995
msgid "Enable SSA code sinking on trees"
msgstr ""
-#: common.opt:1959
+#: common.opt:1999
msgid "Perform scalar replacement of aggregates"
msgstr ""
-#: common.opt:1963
+#: common.opt:2003
msgid "Replace temporary expressions in the SSA->normal pass"
msgstr ""
-#: common.opt:1967
+#: common.opt:2007
msgid "Perform live range splitting during the SSA->normal pass"
msgstr ""
-#: common.opt:1971
+#: common.opt:2011
msgid "Perform Value Range Propagation on trees"
msgstr ""
-#: common.opt:1975
+#: common.opt:2015
msgid "Compile whole compilation unit at a time"
msgstr ""
-#: common.opt:1979
+#: common.opt:2019
msgid "Perform loop unrolling when iteration count is known"
msgstr ""
-#: common.opt:1983
+#: common.opt:2023
msgid "Perform loop unrolling for all loops"
msgstr ""
-#: common.opt:1990
+#: common.opt:2030
msgid "Allow loop optimizations to assume that the loops behave in normal way"
msgstr ""
-#: common.opt:1994
+#: common.opt:2034
msgid "Allow optimization for floating-point arithmetic which may change the"
msgstr ""
-#: common.opt:1999
+#: common.opt:2039
msgid "Same as -fassociative-math for expressions which include division."
msgstr ""
-#: common.opt:2007
+#: common.opt:2047
msgid "Allow math optimizations that may violate IEEE or ISO standards"
msgstr ""
-#: common.opt:2011
+#: common.opt:2051
msgid "Perform loop unswitching"
msgstr ""
-#: common.opt:2015
+#: common.opt:2055
msgid "Just generate unwind tables for exception handling"
msgstr ""
-#: common.opt:2027
+#: common.opt:2067
msgid "Perform variable tracking"
msgstr ""
-#: common.opt:2035
+#: common.opt:2075
msgid "Perform variable tracking by annotating assignments"
msgstr ""
-#: common.opt:2041
+#: common.opt:2081
msgid "Toggle -fvar-tracking-assignments"
msgstr ""
-#: common.opt:2045
+#: common.opt:2085
msgid "Perform variable tracking and also tag variables that are uninitialized"
msgstr ""
-#: common.opt:2049
+#: common.opt:2089
msgid "Enable loop vectorization on trees"
msgstr ""
-#: common.opt:2053
+#: common.opt:2093
msgid "Enable basic block vectorization (SLP) on trees"
msgstr ""
-#: common.opt:2057
+#: common.opt:2097
msgid "Enable use of cost model in vectorization"
msgstr ""
-#: common.opt:2061
+#: common.opt:2101
msgid "Enable loop versioning when doing loop vectorization on trees"
msgstr ""
-#: common.opt:2065
+#: common.opt:2105
msgid ""
"-ftree-vectorizer-verbose=<number>\tSet the verbosity level of the vectorizer"
msgstr ""
-#: common.opt:2069
+#: common.opt:2109
msgid "Enable copy propagation of scalar-evolution information."
msgstr ""
-#: common.opt:2079
+#: common.opt:2119
msgid "Add extra commentary to assembler output"
msgstr ""
-#: common.opt:2083
+#: common.opt:2123
msgid ""
"-fvisibility=[default|internal|hidden|protected]\tSet the default symbol "
"visibility"
msgstr ""
-#: common.opt:2086
+#: common.opt:2126
#, c-format
msgid "unrecognized visibility value %qs"
msgstr ""
-#: common.opt:2102
+#: common.opt:2142
msgid "Use expression value profiles in optimizations"
msgstr ""
-#: common.opt:2106
+#: common.opt:2146
msgid "Construct webs and split unrelated uses of single variable"
msgstr ""
-#: common.opt:2110
+#: common.opt:2150
msgid "Enable conditional dead code elimination for builtin calls"
msgstr ""
-#: common.opt:2114
+#: common.opt:2154
msgid "Perform whole program optimizations"
msgstr ""
-#: common.opt:2118
+#: common.opt:2158
msgid "Assume signed arithmetic overflow wraps around"
msgstr ""
-#: common.opt:2122
+#: common.opt:2162
msgid "Put zero initialized data in the bss section"
msgstr ""
-#: common.opt:2126
+#: common.opt:2166
msgid "Generate debug information in default format"
msgstr ""
-#: common.opt:2130
+#: common.opt:2170
msgid "Generate debug information in COFF format"
msgstr ""
-#: common.opt:2134
+#: common.opt:2174
msgid "Generate debug information in DWARF v2 (or later) format"
msgstr ""
-#: common.opt:2138
+#: common.opt:2178
msgid "Generate debug information in default extended format"
msgstr ""
-#: common.opt:2142
+#: common.opt:2182
msgid "Generate debug information in STABS format"
msgstr ""
-#: common.opt:2146
+#: common.opt:2186
msgid "Generate debug information in extended STABS format"
msgstr ""
-#: common.opt:2150
+#: common.opt:2190
msgid "Emit DWARF additions beyond selected version"
msgstr ""
-#: common.opt:2154
+#: common.opt:2194
msgid "Don't emit DWARF additions beyond selected version"
msgstr ""
-#: common.opt:2158
+#: common.opt:2198
msgid "Toggle debug information generation"
msgstr ""
-#: common.opt:2162
+#: common.opt:2202
msgid "Generate debug information in VMS format"
msgstr ""
-#: common.opt:2166
+#: common.opt:2206
msgid "Generate debug information in XCOFF format"
msgstr ""
-#: common.opt:2170
+#: common.opt:2210
msgid "Generate debug information in extended XCOFF format"
msgstr ""
-#: common.opt:2177
+#: common.opt:2217
msgid "-iplugindir=<dir>\tSet <dir> to be the default plugin directory"
msgstr ""
-#: common.opt:2199
+#: common.opt:2239
msgid "-o <file>\tPlace output into <file>"
msgstr ""
-#: common.opt:2203
+#: common.opt:2243
msgid "Enable function profiling"
msgstr ""
-#: common.opt:2210
+#: common.opt:2250
msgid "Issue warnings needed for strict compliance to the standard"
msgstr ""
-#: common.opt:2214
+#: common.opt:2254
msgid "Like -pedantic but issue them as errors"
msgstr ""
-#: common.opt:2251
+#: common.opt:2291
msgid "Do not display functions compiled or elapsed time"
msgstr ""
-#: common.opt:2283
+#: common.opt:2323
msgid "Enable verbose output"
msgstr ""
-#: common.opt:2287
+#: common.opt:2327
msgid "Display the compiler's version"
msgstr ""
-#: common.opt:2291
+#: common.opt:2331
msgid "Suppress warnings"
msgstr ""
-#: common.opt:2301
+#: common.opt:2341
msgid "Create a shared library"
msgstr ""
-#: common.opt:2334
+#: common.opt:2374
msgid "Create a position independent executable"
msgstr ""
-#: go/gofrontend/expressions.cc:882
+#: go/gofrontend/expressions.cc:887
msgid "invalid use of type"
msgstr ""
-#: go/gofrontend/expressions.cc:1992 go/gofrontend/expressions.cc:2686
+#: go/gofrontend/expressions.cc:2040 go/gofrontend/expressions.cc:2728
msgid "floating point constant truncated to integer"
msgstr ""
-#: go/gofrontend/expressions.cc:2566 go/gofrontend/expressions.cc:2636
-#: go/gofrontend/expressions.cc:2652
+#: go/gofrontend/expressions.cc:2608 go/gofrontend/expressions.cc:2678
+#: go/gofrontend/expressions.cc:2694
msgid "constant refers to itself"
msgstr ""
-#: go/gofrontend/expressions.cc:4043
+#: go/gofrontend/expressions.cc:4214
msgid "expected numeric type"
msgstr ""
-#: go/gofrontend/expressions.cc:4050
+#: go/gofrontend/expressions.cc:4221
msgid "expected integer or boolean type"
msgstr ""
-#: go/gofrontend/expressions.cc:4055
+#: go/gofrontend/expressions.cc:4226
msgid "invalid operand for unary %<&%>"
msgstr ""
-#: go/gofrontend/expressions.cc:4063
+#: go/gofrontend/expressions.cc:4234
msgid "expected pointer"
msgstr ""
-#: go/gofrontend/expressions.cc:5456 go/gofrontend/expressions.cc:5707
-#: go/gofrontend/expressions.cc:5723
+#: go/gofrontend/expressions.cc:5627 go/gofrontend/expressions.cc:5878
+#: go/gofrontend/expressions.cc:5894
msgid "incompatible types in binary expression"
msgstr ""
-#: go/gofrontend/expressions.cc:5736
+#: go/gofrontend/expressions.cc:5907
msgid "shift of non-integer operand"
msgstr ""
-#: go/gofrontend/expressions.cc:5741
+#: go/gofrontend/expressions.cc:5912
msgid "shift count not unsigned integer"
msgstr ""
-#: go/gofrontend/expressions.cc:5750
+#: go/gofrontend/expressions.cc:5922
msgid "negative shift count"
msgstr ""
-#: go/gofrontend/expressions.cc:6433
+#: go/gofrontend/expressions.cc:6613
msgid "object is not a method"
msgstr ""
-#: go/gofrontend/expressions.cc:6442
+#: go/gofrontend/expressions.cc:6622
msgid "method type does not match object type"
msgstr ""
-#: go/gofrontend/expressions.cc:6690 go/gofrontend/expressions.cc:6709
-#: go/gofrontend/expressions.cc:7348 go/gofrontend/expressions.cc:7487
-#: go/gofrontend/expressions.cc:7530 go/gofrontend/expressions.cc:7568
-#: go/gofrontend/expressions.cc:8603 go/gofrontend/expressions.cc:8624
+#: go/gofrontend/expressions.cc:6874
+msgid "invalid use of %<...%> with builtin function"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:6882 go/gofrontend/expressions.cc:6993
+#: go/gofrontend/expressions.cc:7672 go/gofrontend/expressions.cc:7809
+#: go/gofrontend/expressions.cc:7852 go/gofrontend/expressions.cc:7890
+#: go/gofrontend/expressions.cc:8917 go/gofrontend/expressions.cc:8938
msgid "not enough arguments"
msgstr ""
-#: go/gofrontend/expressions.cc:6692 go/gofrontend/expressions.cc:7353
-#: go/gofrontend/expressions.cc:7470 go/gofrontend/expressions.cc:7492
-#: go/gofrontend/expressions.cc:7535 go/gofrontend/expressions.cc:7570
-#: go/gofrontend/expressions.cc:8357 go/gofrontend/expressions.cc:8606
-#: go/gofrontend/expressions.cc:8617
+#: go/gofrontend/expressions.cc:6884 go/gofrontend/expressions.cc:7677
+#: go/gofrontend/expressions.cc:7792 go/gofrontend/expressions.cc:7814
+#: go/gofrontend/expressions.cc:7857 go/gofrontend/expressions.cc:7892
+#: go/gofrontend/expressions.cc:8670 go/gofrontend/expressions.cc:8920
+#: go/gofrontend/expressions.cc:8931
msgid "too many arguments"
msgstr ""
-#: go/gofrontend/expressions.cc:7395
-msgid "argument must be array or slice or channel"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7405
-msgid "argument must be string or array or slice or map or channel"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7446
-msgid "unsupported argument type to builtin function"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7458
-msgid "argument must be channel"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7478
-msgid "argument must be a field reference"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7505
-msgid "left argument must be a slice"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7516
-msgid "right argument must be a slice or a string"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7521
-msgid "element types must be the same"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7543
-msgid "arguments 1 and 2 have different types"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7560
-msgid "argument must have complex type"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7578
-msgid "complex arguments must have identical types"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:7580
-msgid "complex arguments must have floating-point type"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:8560
-msgid "expected function"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:8571
-msgid "method call without object"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:8584
-msgid "incompatible type for receiver"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:8982 go/gofrontend/expressions.cc:8995
-msgid "number of results does not match number of values"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:9246 go/gofrontend/expressions.cc:9625
-msgid "index must be integer"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:9250 go/gofrontend/expressions.cc:9629
-msgid "slice end must be integer"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:9305
-msgid "array is not addressable"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:9844
-msgid "incompatible type for map index"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:10163
-msgid "expected interface or pointer to interface"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:10468
-msgid "invalid new of function type"
-msgstr ""
-
-#: go/gofrontend/expressions.cc:10573
+#: go/gofrontend/expressions.cc:7019
msgid "invalid type for make function"
msgstr ""
-#: go/gofrontend/expressions.cc:10732
+#: go/gofrontend/expressions.cc:7029
+msgid "length required when allocating a slice"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7043
+msgid "bad size for make"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7055
+msgid "bad capacity when making slice"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7063
+msgid "too many arguments to make"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7718
+msgid "argument must be array or slice or channel"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7728
+msgid "argument must be string or array or slice or map or channel"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7769
+msgid "unsupported argument type to builtin function"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7780
+msgid "argument must be channel"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7800
+msgid "argument must be a field reference"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7827
+msgid "left argument must be a slice"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7838
+msgid "right argument must be a slice or a string"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7843
+msgid "element types must be the same"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7865
+msgid "arguments 1 and 2 have different types"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7882
+msgid "argument must have complex type"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7900
+msgid "complex arguments must have identical types"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:7902
+msgid "complex arguments must have floating-point type"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:8873
+msgid "expected function"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:8884
+msgid "method call without object"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:8898
+msgid "incompatible type for receiver"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:9297 go/gofrontend/expressions.cc:9310
+msgid "number of results does not match number of values"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:9561 go/gofrontend/expressions.cc:9946
+msgid "index must be integer"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:9565 go/gofrontend/expressions.cc:9950
+msgid "slice end must be integer"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:9620
+msgid "array is not addressable"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:10165
+msgid "incompatible type for map index"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:10489
+msgid "expected interface or pointer to interface"
+msgstr ""
+
+#: go/gofrontend/expressions.cc:10968
msgid "too many expressions for struct"
msgstr ""
-#: go/gofrontend/expressions.cc:10745
+#: go/gofrontend/expressions.cc:10981
msgid "too few expressions for struct"
msgstr ""
-#: go/gofrontend/expressions.cc:11009
+#: go/gofrontend/expressions.cc:11250
msgid "too many elements in composite literal"
msgstr ""
-#: go/gofrontend/expressions.cc:12139 go/gofrontend/expressions.cc:12147
+#: go/gofrontend/expressions.cc:12389 go/gofrontend/expressions.cc:12397
msgid "invalid unsafe.Pointer conversion"
msgstr ""
-#: go/gofrontend/expressions.cc:12152 go/gofrontend/statements.cc:1353
+#: go/gofrontend/expressions.cc:12402 go/gofrontend/statements.cc:1267
msgid "type assertion only valid for interface types"
msgstr ""
-#: go/gofrontend/expressions.cc:12164
+#: go/gofrontend/expressions.cc:12414
msgid "impossible type assertion: type does not implement interface"
msgstr ""
-#: go/gofrontend/expressions.cc:12320 go/gofrontend/statements.cc:1203
+#: go/gofrontend/expressions.cc:12572 go/gofrontend/statements.cc:1135
msgid "expected channel"
msgstr ""
-#: go/gofrontend/expressions.cc:12325 go/gofrontend/statements.cc:1208
+#: go/gofrontend/expressions.cc:12577 go/gofrontend/statements.cc:1140
msgid "invalid receive on send-only channel"
msgstr ""
-#: go/gofrontend/statements.cc:521
+#: go/gofrontend/statements.cc:497
msgid "invalid left hand side of assignment"
msgstr ""
-#: go/gofrontend/statements.cc:932
+#: go/gofrontend/statements.cc:892
msgid "expected map index on right hand side"
msgstr ""
-#: go/gofrontend/statements.cc:1078
+#: go/gofrontend/statements.cc:1018
msgid "expected map index on left hand side"
msgstr ""
-#: go/gofrontend/statements.cc:1814
+#: go/gofrontend/statements.cc:1680
msgid "no object for method call"
msgstr ""
-#: go/gofrontend/statements.cc:2584
+#: go/gofrontend/statements.cc:2287 go/gofrontend/statements.cc:2316
+msgid "not enough arguments to return"
+msgstr ""
+
+#: go/gofrontend/statements.cc:2295
msgid "return with value in function with no return type"
msgstr ""
-#: go/gofrontend/statements.cc:2597
+#: go/gofrontend/statements.cc:2322
msgid "too many values in return statement"
msgstr ""
-#: go/gofrontend/statements.cc:2626
-msgid "not enough values in return statement"
-msgstr ""
-
-#: go/gofrontend/statements.cc:2993
+#: go/gofrontend/statements.cc:2698
msgid "expected boolean expression"
msgstr ""
-#: go/gofrontend/statements.cc:4027
+#: go/gofrontend/statements.cc:3713
msgid "incompatible types in send"
msgstr ""
-#: go/gofrontend/statements.cc:4032
+#: go/gofrontend/statements.cc:3718
msgid "invalid send on receive-only channel"
msgstr ""
-#: go/gofrontend/statements.cc:4723
+#: go/gofrontend/statements.cc:4531
msgid "too many variables for range clause with channel"
msgstr ""
-#: go/gofrontend/statements.cc:4730
-msgid "range clause must have array, slice, setring, map, or channel type"
+#: go/gofrontend/statements.cc:4538
+msgid "range clause must have array, slice, string, map, or channel type"
msgstr ""
-#: go/gofrontend/types.cc:575
+#: go/gofrontend/types.cc:580
msgid "need explicit conversion"
msgstr ""
-#: go/gofrontend/types.cc:577
+#: go/gofrontend/types.cc:582
msgid "multiple value function call in single value context"
msgstr ""
-#: go/gofrontend/types.cc:585
+#: go/gofrontend/types.cc:590
#, c-format
msgid "cannot use type %s as type %s"
msgstr ""
-#: go/gofrontend/types.cc:2491
+#: go/gofrontend/types.cc:2486
msgid "different receiver types"
msgstr ""
-#: go/gofrontend/types.cc:2511 go/gofrontend/types.cc:2524
-#: go/gofrontend/types.cc:2539
+#: go/gofrontend/types.cc:2506 go/gofrontend/types.cc:2519
+#: go/gofrontend/types.cc:2534
msgid "different number of parameters"
msgstr ""
-#: go/gofrontend/types.cc:2532
+#: go/gofrontend/types.cc:2527
msgid "different parameter types"
msgstr ""
-#: go/gofrontend/types.cc:2547
+#: go/gofrontend/types.cc:2542
msgid "different varargs"
msgstr ""
-#: go/gofrontend/types.cc:2556 go/gofrontend/types.cc:2569
-#: go/gofrontend/types.cc:2584
+#: go/gofrontend/types.cc:2551 go/gofrontend/types.cc:2564
+#: go/gofrontend/types.cc:2579
msgid "different number of results"
msgstr ""
-#: go/gofrontend/types.cc:2577
+#: go/gofrontend/types.cc:2572
msgid "different result types"
msgstr ""
-#: go/gofrontend/types.cc:3558
+#: go/gofrontend/types.cc:3524
#, c-format
msgid "implicit assignment of %s%s%s hidden field %s%s%s"
msgstr ""
-#: go/gofrontend/types.cc:4398
-msgid "bad length when making slice"
-msgstr ""
-
-#: go/gofrontend/types.cc:4404
-msgid "bad capacity when making slice"
-msgstr ""
-
-#: go/gofrontend/types.cc:5102
-msgid "bad size when making map"
-msgstr ""
-
-#: go/gofrontend/types.cc:5387
-msgid "bad buffer size when making channel"
-msgstr ""
-
-#: go/gofrontend/types.cc:5882
+#: go/gofrontend/types.cc:5450
#, c-format
msgid "need explicit conversion; missing method %s%s%s"
msgstr ""
-#: go/gofrontend/types.cc:5899 go/gofrontend/types.cc:6034
+#: go/gofrontend/types.cc:5467 go/gofrontend/types.cc:5602
#, c-format
msgid "incompatible type for method %s%s%s"
msgstr ""
-#: go/gofrontend/types.cc:5903 go/gofrontend/types.cc:6038
+#: go/gofrontend/types.cc:5471 go/gofrontend/types.cc:5606
#, c-format
msgid "incompatible type for method %s%s%s (%s)"
msgstr ""
-#: go/gofrontend/types.cc:5975 go/gofrontend/types.cc:5988
+#: go/gofrontend/types.cc:5543 go/gofrontend/types.cc:5556
msgid "pointer to interface type has no methods"
msgstr ""
-#: go/gofrontend/types.cc:5977 go/gofrontend/types.cc:5990
+#: go/gofrontend/types.cc:5545 go/gofrontend/types.cc:5558
msgid "type has no methods"
msgstr ""
-#: go/gofrontend/types.cc:6011
+#: go/gofrontend/types.cc:5579
#, c-format
msgid "ambiguous method %s%s%s"
msgstr ""
-#: go/gofrontend/types.cc:6014
+#: go/gofrontend/types.cc:5582
#, c-format
msgid "missing method %s%s%s"
msgstr ""
-#: go/gofrontend/types.cc:6054
+#: go/gofrontend/types.cc:5622
#, c-format
msgid "method %s%s%s requires a pointer"
msgstr ""
#. Warn about and ignore all others for now, but store them.
-#: attribs.c:306 objc/objc-act.c:4799 objc/objc-act.c:6692
-#: objc/objc-act.c:7878 objc/objc-act.c:7933
+#: attribs.c:306 objc/objc-act.c:5088 objc/objc-act.c:7156
+#: objc/objc-act.c:8343 objc/objc-act.c:8394
#, gcc-internal-format
msgid "%qE attribute directive ignored"
msgstr ""
@@ -11814,141 +11929,141 @@
msgid "multiple hot/cold transitions found (bb %i)"
msgstr ""
-#: bt-load.c:1547
+#: bt-load.c:1546
#, gcc-internal-format
msgid ""
"branch target register load optimization is not intended to be run twice"
msgstr ""
-#: builtins.c:552
+#: builtins.c:565
#, gcc-internal-format
msgid "offset outside bounds of constant string"
msgstr ""
-#: builtins.c:1117
+#: builtins.c:1106
#, gcc-internal-format
msgid "second argument to %<__builtin_prefetch%> must be a constant"
msgstr ""
-#: builtins.c:1124
+#: builtins.c:1113
#, gcc-internal-format
msgid "invalid second argument to %<__builtin_prefetch%>; using zero"
msgstr ""
-#: builtins.c:1132
+#: builtins.c:1121
#, gcc-internal-format
msgid "third argument to %<__builtin_prefetch%> must be a constant"
msgstr ""
-#: builtins.c:1139
+#: builtins.c:1128
#, gcc-internal-format
msgid "invalid third argument to %<__builtin_prefetch%>; using zero"
msgstr ""
-#: builtins.c:4626 gimplify.c:2339
+#: builtins.c:4157 gimplify.c:2338
#, gcc-internal-format
msgid "too few arguments to function %<va_start%>"
msgstr ""
-#: builtins.c:4788
+#: builtins.c:4319
#, gcc-internal-format
msgid "first argument to %<va_arg%> not of type %<va_list%>"
msgstr ""
-#: builtins.c:4804
+#: builtins.c:4335
#, gcc-internal-format
msgid "%qT is promoted to %qT when passed through %<...%>"
msgstr ""
-#: builtins.c:4809
+#: builtins.c:4340
#, gcc-internal-format
msgid "(so you should pass %qT not %qT to %<va_arg%>)"
msgstr ""
#. We can, however, treat "undefined" any way we please.
#. Call abort to encourage the user to fix the program.
-#: builtins.c:4816 c-typeck.c:2775
+#: builtins.c:4347 c-typeck.c:2771
#, gcc-internal-format
msgid "if this code is reached, the program will abort"
msgstr ""
-#: builtins.c:4943
+#: builtins.c:4474
#, gcc-internal-format
msgid "invalid argument to %<__builtin_frame_address%>"
msgstr ""
-#: builtins.c:4945
+#: builtins.c:4476
#, gcc-internal-format
msgid "invalid argument to %<__builtin_return_address%>"
msgstr ""
-#: builtins.c:4958
+#: builtins.c:4489
#, gcc-internal-format
msgid "unsupported argument to %<__builtin_frame_address%>"
msgstr ""
-#: builtins.c:4960
+#: builtins.c:4491
#, gcc-internal-format
msgid "unsupported argument to %<__builtin_return_address%>"
msgstr ""
-#: builtins.c:5194
+#: builtins.c:4725
#, gcc-internal-format
msgid "both arguments to %<__builtin___clear_cache%> must be pointers"
msgstr ""
-#: builtins.c:5289
+#: builtins.c:4820
#, gcc-internal-format
msgid "trampoline generated for nested function %qD"
msgstr ""
-#: builtins.c:5566 builtins.c:5580
+#: builtins.c:5096 builtins.c:5110
#, gcc-internal-format
msgid "%qD changed semantics in GCC 4.4"
msgstr ""
#. All valid uses of __builtin_va_arg_pack () are removed during
#. inlining.
-#: builtins.c:5970 expr.c:9301
+#: builtins.c:5495 expr.c:9326
#, gcc-internal-format
msgid "%Kinvalid use of %<__builtin_va_arg_pack ()%>"
msgstr ""
#. All valid uses of __builtin_va_arg_pack_len () are removed during
#. inlining.
-#: builtins.c:5976
+#: builtins.c:5501
#, gcc-internal-format
msgid "%Kinvalid use of %<__builtin_va_arg_pack_len ()%>"
msgstr ""
-#: builtins.c:6206
+#: builtins.c:5731
#, gcc-internal-format
msgid "%<__builtin_longjmp%> second argument must be 1"
msgstr ""
-#: builtins.c:6801
+#: builtins.c:6326
#, gcc-internal-format
msgid "target format does not support infinity"
msgstr ""
-#: builtins.c:11711
+#: builtins.c:11235
#, gcc-internal-format
msgid "%<va_start%> used in function with fixed args"
msgstr ""
-#: builtins.c:11719
+#: builtins.c:11243
#, gcc-internal-format
msgid "wrong number of arguments to function %<va_start%>"
msgstr ""
#. Evidently an out of date version of <stdarg.h>; can't validate
#. va_start's second argument, but can still work as intended.
-#: builtins.c:11732
+#: builtins.c:11256
#, gcc-internal-format
msgid "%<__builtin_next_arg%> called without an argument"
msgstr ""
-#: builtins.c:11737
+#: builtins.c:11261
#, gcc-internal-format
msgid "wrong number of arguments to function %<__builtin_next_arg%>"
msgstr ""
@@ -11958,44 +12073,44 @@
#. argument. We just warn and set the arg to be the last
#. argument so that we will get wrong-code because of
#. it.
-#: builtins.c:11767
+#: builtins.c:11291
#, gcc-internal-format
msgid "second parameter of %<va_start%> not last named argument"
msgstr ""
-#: builtins.c:11777
+#: builtins.c:11301
#, gcc-internal-format
msgid ""
"undefined behaviour when second parameter of %<va_start%> is declared with "
"%<register%> storage"
msgstr ""
-#: builtins.c:12013
+#: builtins.c:11537
#, gcc-internal-format
msgid "%Kfirst argument of %D must be a pointer, second integer constant"
msgstr ""
-#: builtins.c:12026
+#: builtins.c:11550
#, gcc-internal-format
msgid "%Klast argument of %D is not integer constant between 0 and 3"
msgstr ""
-#: builtins.c:12071 builtins.c:12223 builtins.c:12280
+#: builtins.c:11595 builtins.c:11747 builtins.c:11804
#, gcc-internal-format
msgid "%Kcall to %D will always overflow destination buffer"
msgstr ""
-#: builtins.c:12213
+#: builtins.c:11737
#, gcc-internal-format
msgid "%Kcall to %D might overflow destination buffer"
msgstr ""
-#: builtins.c:12301
+#: builtins.c:11825
#, gcc-internal-format
msgid "%Kattempt to free a non-heap object %qD"
msgstr ""
-#: builtins.c:12304
+#: builtins.c:11828
#, gcc-internal-format
msgid "%Kattempt to free a non-heap object"
msgstr ""
@@ -12005,8 +12120,8 @@
#. an unprototyped function, it is compile-time undefined;
#. making it a constraint in that case was rejected in
#. DR#252.
-#: c-convert.c:101 c-typeck.c:1976 c-typeck.c:5224 c-typeck.c:10274
-#: cp/typeck.c:1829 cp/typeck.c:6524 cp/typeck.c:7203 fortran/convert.c:88
+#: c-convert.c:101 c-typeck.c:1972 c-typeck.c:5211 c-typeck.c:10283
+#: cp/typeck.c:1840 cp/typeck.c:6572 cp/typeck.c:7251 fortran/convert.c:88
#, gcc-internal-format
msgid "void value not ignored as it ought to be"
msgstr ""
@@ -12016,131 +12131,131 @@
msgid "conversion to non-scalar type requested"
msgstr ""
-#: c-decl.c:720
+#: c-decl.c:718
#, gcc-internal-format
msgid "array %q+D assumed to have one element"
msgstr ""
-#: c-decl.c:761
+#: c-decl.c:759
#, gcc-internal-format
msgid "%qD is static but used in inline function %qD which is not static"
msgstr ""
-#: c-decl.c:766
+#: c-decl.c:764
#, gcc-internal-format
msgid "%q+D is static but declared in inline function %qD which is not static"
msgstr ""
-#: c-decl.c:953
+#: c-decl.c:949
#, gcc-internal-format, gfc-internal-format
msgid "GCC supports only %u nested scopes"
msgstr ""
-#: c-decl.c:1105 cp/decl.c:372
+#: c-decl.c:1101 cp/decl.c:373
#, gcc-internal-format
msgid "label %q+D used but not defined"
msgstr ""
-#: c-decl.c:1150
+#: c-decl.c:1146
#, gcc-internal-format
msgid "nested function %q+D declared but never defined"
msgstr ""
-#: c-decl.c:1162
+#: c-decl.c:1158
#, gcc-internal-format
msgid "inline function %q+D declared but never defined"
msgstr ""
-#: c-decl.c:1179 cp/decl.c:627
+#: c-decl.c:1175 cp/decl.c:628
#, gcc-internal-format
msgid "unused variable %q+D"
msgstr ""
-#: c-decl.c:1183
+#: c-decl.c:1179
#, gcc-internal-format
msgid "variable %qD set but not used"
msgstr ""
-#: c-decl.c:1188
+#: c-decl.c:1184
#, gcc-internal-format
msgid "type of array %q+D completed incompatibly with implicit initialization"
msgstr ""
-#: c-decl.c:1467 c-decl.c:5788 c-decl.c:6585 c-decl.c:7293
+#: c-decl.c:1463 c-decl.c:5751 c-decl.c:6551 c-decl.c:7263
#, gcc-internal-format
msgid "originally defined here"
msgstr ""
-#: c-decl.c:1537
+#: c-decl.c:1533
#, gcc-internal-format
msgid ""
"a parameter list with an ellipsis can%'t match an empty parameter name list "
"declaration"
msgstr ""
-#: c-decl.c:1544
+#: c-decl.c:1540
#, gcc-internal-format
msgid ""
"an argument type that has a default promotion can%'t match an empty "
"parameter name list declaration"
msgstr ""
-#: c-decl.c:1585
+#: c-decl.c:1581
#, gcc-internal-format
msgid ""
"prototype for %q+D declares more arguments than previous old-style definition"
msgstr ""
-#: c-decl.c:1591
+#: c-decl.c:1587
#, gcc-internal-format
msgid ""
"prototype for %q+D declares fewer arguments than previous old-style "
"definition"
msgstr ""
-#: c-decl.c:1600
+#: c-decl.c:1596
#, gcc-internal-format
msgid "prototype for %q+D declares argument %d with incompatible type"
msgstr ""
#. If we get here, no errors were found, but do issue a warning
#. for this poor-style construct.
-#: c-decl.c:1613
+#: c-decl.c:1609
#, gcc-internal-format
msgid "prototype for %q+D follows non-prototype definition"
msgstr ""
-#: c-decl.c:1628
+#: c-decl.c:1624
#, gcc-internal-format
msgid "previous definition of %q+D was here"
msgstr ""
-#: c-decl.c:1630
+#: c-decl.c:1626
#, gcc-internal-format
msgid "previous implicit declaration of %q+D was here"
msgstr ""
-#: c-decl.c:1632
+#: c-decl.c:1628
#, gcc-internal-format
msgid "previous declaration of %q+D was here"
msgstr ""
-#: c-decl.c:1672
+#: c-decl.c:1668
#, gcc-internal-format
msgid "%q+D redeclared as different kind of symbol"
msgstr ""
-#: c-decl.c:1676
+#: c-decl.c:1672
#, gcc-internal-format
msgid "built-in function %q+D declared as non-function"
msgstr ""
-#: c-decl.c:1679 c-decl.c:1852 c-decl.c:2542
+#: c-decl.c:1675 c-decl.c:1848 c-decl.c:2538
#, gcc-internal-format
msgid "declaration of %q+D shadows a built-in function"
msgstr ""
-#: c-decl.c:1688
+#: c-decl.c:1684
#, gcc-internal-format
msgid "redeclaration of enumerator %q+D"
msgstr ""
@@ -12148,323 +12263,323 @@
#. If types don't match for a built-in, throw away the
#. built-in. No point in calling locate_old_decl here, it
#. won't print anything.
-#: c-decl.c:1709
+#: c-decl.c:1705
#, gcc-internal-format
msgid "conflicting types for built-in function %q+D"
msgstr ""
-#: c-decl.c:1734 c-decl.c:1747 c-decl.c:1783
+#: c-decl.c:1730 c-decl.c:1743 c-decl.c:1779
#, gcc-internal-format
msgid "conflicting types for %q+D"
msgstr ""
-#: c-decl.c:1763
+#: c-decl.c:1759
#, gcc-internal-format
msgid "conflicting named address spaces (generic vs %s) for %q+D"
msgstr ""
-#: c-decl.c:1767
+#: c-decl.c:1763
#, gcc-internal-format
msgid "conflicting named address spaces (%s vs generic) for %q+D"
msgstr ""
-#: c-decl.c:1771
+#: c-decl.c:1767
#, gcc-internal-format
msgid "conflicting named address spaces (%s vs %s) for %q+D"
msgstr ""
-#: c-decl.c:1780
+#: c-decl.c:1776
#, gcc-internal-format
msgid "conflicting type qualifiers for %q+D"
msgstr ""
-#: c-decl.c:1805
+#: c-decl.c:1801
#, gcc-internal-format
msgid "redefinition of typedef %q+D with different type"
msgstr ""
-#: c-decl.c:1818
+#: c-decl.c:1814
#, gcc-internal-format
msgid "redefinition of typedef %q+D with variably modified type"
msgstr ""
-#: c-decl.c:1825
+#: c-decl.c:1821
#, gcc-internal-format
msgid "redefinition of typedef %q+D"
msgstr ""
-#: c-decl.c:1878 c-decl.c:1981
+#: c-decl.c:1874 c-decl.c:1977
#, gcc-internal-format
msgid "redefinition of %q+D"
msgstr ""
-#: c-decl.c:1913 c-decl.c:2019
+#: c-decl.c:1909 c-decl.c:2015
#, gcc-internal-format
msgid "static declaration of %q+D follows non-static declaration"
msgstr ""
-#: c-decl.c:1923 c-decl.c:1931 c-decl.c:2009 c-decl.c:2016
+#: c-decl.c:1919 c-decl.c:1927 c-decl.c:2005 c-decl.c:2012
#, gcc-internal-format
msgid "non-static declaration of %q+D follows static declaration"
msgstr ""
-#: c-decl.c:1947
+#: c-decl.c:1943
#, gcc-internal-format
msgid "%<gnu_inline%> attribute present on %q+D"
msgstr ""
-#: c-decl.c:1950
+#: c-decl.c:1946
#, gcc-internal-format
msgid "but not here"
msgstr ""
-#: c-decl.c:1968
+#: c-decl.c:1964
#, gcc-internal-format
msgid "thread-local declaration of %q+D follows non-thread-local declaration"
msgstr ""
-#: c-decl.c:1971
+#: c-decl.c:1967
#, gcc-internal-format
msgid "non-thread-local declaration of %q+D follows thread-local declaration"
msgstr ""
-#: c-decl.c:2001
+#: c-decl.c:1997
#, gcc-internal-format
msgid "extern declaration of %q+D follows declaration with no linkage"
msgstr ""
-#: c-decl.c:2037
+#: c-decl.c:2033
#, gcc-internal-format
msgid "declaration of %q+D with no linkage follows extern declaration"
msgstr ""
-#: c-decl.c:2043
+#: c-decl.c:2039
#, gcc-internal-format
msgid "redeclaration of %q+D with no linkage"
msgstr ""
-#: c-decl.c:2069
+#: c-decl.c:2065
#, gcc-internal-format
msgid ""
"redeclaration of %q+D with different visibility (old visibility preserved)"
msgstr ""
-#: c-decl.c:2080
+#: c-decl.c:2076
#, gcc-internal-format
msgid "inline declaration of %qD follows declaration with attribute noinline"
msgstr ""
-#: c-decl.c:2087
+#: c-decl.c:2083
#, gcc-internal-format
msgid "declaration of %q+D with attribute noinline follows inline declaration "
msgstr ""
-#: c-decl.c:2105
+#: c-decl.c:2101
#, gcc-internal-format
msgid "redefinition of parameter %q+D"
msgstr ""
-#: c-decl.c:2132
+#: c-decl.c:2128
#, gcc-internal-format
msgid "redundant redeclaration of %q+D"
msgstr ""
-#: c-decl.c:2529
+#: c-decl.c:2525
#, gcc-internal-format
msgid "declaration of %q+D shadows previous non-variable"
msgstr ""
-#: c-decl.c:2534
+#: c-decl.c:2530
#, gcc-internal-format
msgid "declaration of %q+D shadows a parameter"
msgstr ""
-#: c-decl.c:2537
+#: c-decl.c:2533
#, gcc-internal-format
msgid "declaration of %q+D shadows a global declaration"
msgstr ""
-#: c-decl.c:2547
+#: c-decl.c:2543
#, gcc-internal-format
msgid "declaration of %q+D shadows a previous local"
msgstr ""
-#: c-decl.c:2551 cp/name-lookup.c:1089 cp/name-lookup.c:1131
+#: c-decl.c:2547 cp/name-lookup.c:1101 cp/name-lookup.c:1143
#, gcc-internal-format
msgid "shadowed declaration is here"
msgstr ""
-#: c-decl.c:2678
+#: c-decl.c:2674
#, gcc-internal-format
msgid "nested extern declaration of %qD"
msgstr ""
-#: c-decl.c:2846 c-decl.c:2849
+#: c-decl.c:2842 c-decl.c:2845
#, gcc-internal-format
msgid "implicit declaration of function %qE"
msgstr ""
-#: c-decl.c:2912
+#: c-decl.c:2908
#, gcc-internal-format
msgid "incompatible implicit declaration of built-in function %qD"
msgstr ""
-#: c-decl.c:2921
+#: c-decl.c:2917
#, gcc-internal-format
msgid "incompatible implicit declaration of function %qD"
msgstr ""
-#: c-decl.c:2974
+#: c-decl.c:2970
#, gcc-internal-format
msgid "%qE undeclared here (not in a function)"
msgstr ""
-#: c-decl.c:2980
+#: c-decl.c:2976
#, gcc-internal-format
msgid "%qE undeclared (first use in this function)"
msgstr ""
-#: c-decl.c:2983
+#: c-decl.c:2979
#, gcc-internal-format
msgid ""
"each undeclared identifier is reported only once for each function it "
"appears in"
msgstr ""
-#: c-decl.c:3033 cp/decl.c:2534
+#: c-decl.c:3029 cp/decl.c:2552
#, gcc-internal-format
msgid "label %qE referenced outside of any function"
msgstr ""
-#: c-decl.c:3069
+#: c-decl.c:3065
#, gcc-internal-format
msgid "jump into scope of identifier with variably modified type"
msgstr ""
-#: c-decl.c:3072
+#: c-decl.c:3068
#, gcc-internal-format
msgid "jump skips variable initialization"
msgstr ""
-#: c-decl.c:3073 c-decl.c:3129 c-decl.c:3218
+#: c-decl.c:3069 c-decl.c:3125 c-decl.c:3214
#, gcc-internal-format
msgid "label %qD defined here"
msgstr ""
-#: c-decl.c:3074 c-decl.c:3346
+#: c-decl.c:3070 c-decl.c:3342
#, gcc-internal-format
msgid "%qD declared here"
msgstr ""
-#: c-decl.c:3128 c-decl.c:3217
+#: c-decl.c:3124 c-decl.c:3213
#, gcc-internal-format
msgid "jump into statement expression"
msgstr ""
-#: c-decl.c:3150
+#: c-decl.c:3146
#, gcc-internal-format
msgid "duplicate label declaration %qE"
msgstr ""
-#: c-decl.c:3248 cp/decl.c:2844
+#: c-decl.c:3244 cp/decl.c:2874
#, gcc-internal-format
msgid "duplicate label %qD"
msgstr ""
-#: c-decl.c:3279
+#: c-decl.c:3275
#, gcc-internal-format
msgid ""
"traditional C lacks a separate namespace for labels, identifier %qE conflicts"
msgstr ""
-#: c-decl.c:3344
+#: c-decl.c:3340
#, gcc-internal-format
msgid "switch jumps over variable initialization"
msgstr ""
-#: c-decl.c:3345 c-decl.c:3356
+#: c-decl.c:3341 c-decl.c:3352
#, gcc-internal-format
msgid "switch starts here"
msgstr ""
-#: c-decl.c:3355
+#: c-decl.c:3351
#, gcc-internal-format
msgid "switch jumps into statement expression"
msgstr ""
-#: c-decl.c:3426
+#: c-decl.c:3422
#, gcc-internal-format
msgid "%qE defined as wrong kind of tag"
msgstr ""
-#: c-decl.c:3648 c-typeck.c:10675 c-family/c-common.c:4041
+#: c-decl.c:3644 c-typeck.c:10684 c-family/c-common.c:4084
#, gcc-internal-format
msgid "invalid use of %<restrict%>"
msgstr ""
-#: c-decl.c:3658
+#: c-decl.c:3654
#, gcc-internal-format
msgid "unnamed struct/union that defines no instances"
msgstr ""
-#: c-decl.c:3668
+#: c-decl.c:3664
#, gcc-internal-format
msgid "empty declaration with storage class specifier does not redeclare tag"
msgstr ""
-#: c-decl.c:3682
+#: c-decl.c:3678
#, gcc-internal-format
msgid "empty declaration with type qualifier does not redeclare tag"
msgstr ""
-#: c-decl.c:3704 c-decl.c:3711
+#: c-decl.c:3700 c-decl.c:3707
#, gcc-internal-format
msgid "useless type name in empty declaration"
msgstr ""
-#: c-decl.c:3719
+#: c-decl.c:3715
#, gcc-internal-format
msgid "%<inline%> in empty declaration"
msgstr ""
-#: c-decl.c:3725
+#: c-decl.c:3721
#, gcc-internal-format
msgid "%<auto%> in file-scope empty declaration"
msgstr ""
-#: c-decl.c:3731
+#: c-decl.c:3727
#, gcc-internal-format
msgid "%<register%> in file-scope empty declaration"
msgstr ""
-#: c-decl.c:3737
+#: c-decl.c:3733
#, gcc-internal-format
msgid "useless storage class specifier in empty declaration"
msgstr ""
-#: c-decl.c:3743
+#: c-decl.c:3739
#, gcc-internal-format
msgid "useless %<__thread%> in empty declaration"
msgstr ""
-#: c-decl.c:3752
+#: c-decl.c:3748
#, gcc-internal-format
msgid "useless type qualifier in empty declaration"
msgstr ""
-#: c-decl.c:3759 c-parser.c:1470
+#: c-decl.c:3755 c-parser.c:1470
#, gcc-internal-format
msgid "empty declaration"
msgstr ""
-#: c-decl.c:3830
+#: c-decl.c:3826
#, gcc-internal-format
msgid ""
"ISO C90 does not support %<static%> or type qualifiers in parameter array "
"declarators"
msgstr ""
-#: c-decl.c:3834
+#: c-decl.c:3830
#, gcc-internal-format
msgid "ISO C90 does not support %<[*]%> array declarators"
msgstr ""
@@ -12472,28 +12587,28 @@
#. C99 6.7.5.2p4
#. A function definition isn't function prototype scope C99 6.2.1p4.
#. C99 6.7.5.2p4
-#: c-decl.c:3841 c-decl.c:6156
+#: c-decl.c:3837 c-decl.c:6119
#, gcc-internal-format
msgid "%<[*]%> not allowed in other than function prototype scope"
msgstr ""
-#: c-decl.c:3954
+#: c-decl.c:3950
#, gcc-internal-format
msgid "%q+D is usually a function"
msgstr ""
-#: c-decl.c:3963
+#: c-decl.c:3959
#, gcc-internal-format
msgid "typedef %qD is initialized (use __typeof__ instead)"
msgstr ""
-#: c-decl.c:3968
+#: c-decl.c:3964
#, gcc-internal-format
msgid "function %qD is initialized like a variable"
msgstr ""
#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE.
-#: c-decl.c:3974
+#: c-decl.c:3970
#, gcc-internal-format
msgid "parameter %qD is initialized"
msgstr ""
@@ -12502,272 +12617,272 @@
#. of VLAs themselves count as VLAs, it does not make
#. sense to permit them to be initialized given that
#. ordinary VLAs may not be initialized.
-#: c-decl.c:3993 c-decl.c:4008 c-typeck.c:6281
+#: c-decl.c:3989 c-decl.c:4004 c-typeck.c:6270
#, gcc-internal-format
msgid "variable-sized object may not be initialized"
msgstr ""
-#: c-decl.c:3999
+#: c-decl.c:3995
#, gcc-internal-format
msgid "variable %qD has initializer but incomplete type"
msgstr ""
-#: c-decl.c:4088 cp/decl.c:4290 cp/decl.c:12124
+#: c-decl.c:4084 cp/decl.c:4355 cp/decl.c:12458
#, gcc-internal-format
msgid "inline function %q+D given attribute noinline"
msgstr ""
-#: c-decl.c:4139
+#: c-decl.c:4135
#, gcc-internal-format
msgid "uninitialized const member in %qT is invalid in C++"
msgstr ""
-#: c-decl.c:4141 cp/init.c:1919 cp/init.c:1934
+#: c-decl.c:4137 cp/init.c:1945 cp/init.c:1960
#, gcc-internal-format
msgid "%qD should be initialized"
msgstr ""
-#: c-decl.c:4219
+#: c-decl.c:4215
#, gcc-internal-format
msgid "initializer fails to determine size of %q+D"
msgstr ""
-#: c-decl.c:4224
+#: c-decl.c:4220
#, gcc-internal-format
msgid "array size missing in %q+D"
msgstr ""
-#: c-decl.c:4236
+#: c-decl.c:4232
#, gcc-internal-format
msgid "zero or negative size array %q+D"
msgstr ""
-#: c-decl.c:4291 varasm.c:1964
+#: c-decl.c:4287 varasm.c:1957
#, gcc-internal-format
msgid "storage size of %q+D isn%'t known"
msgstr ""
-#: c-decl.c:4302
+#: c-decl.c:4298
#, gcc-internal-format
msgid "storage size of %q+D isn%'t constant"
msgstr ""
-#: c-decl.c:4352
+#: c-decl.c:4348
#, gcc-internal-format
msgid "ignoring asm-specifier for non-static local variable %q+D"
msgstr ""
-#: c-decl.c:4380
+#: c-decl.c:4376
#, gcc-internal-format
msgid "cannot put object with volatile field into register"
msgstr ""
-#: c-decl.c:4473
+#: c-decl.c:4463
#, gcc-internal-format
msgid "uninitialized const %qD is invalid in C++"
msgstr ""
-#: c-decl.c:4524
+#: c-decl.c:4519
#, gcc-internal-format
msgid "ISO C forbids forward parameter declarations"
msgstr ""
-#: c-decl.c:4614
+#: c-decl.c:4609
#, gcc-internal-format
msgid "defining a type in a compound literal is invalid in C++"
msgstr ""
-#: c-decl.c:4666 c-decl.c:4681
+#: c-decl.c:4661 c-decl.c:4676
#, gcc-internal-format
msgid "bit-field %qs width not an integer constant"
msgstr ""
-#: c-decl.c:4676
+#: c-decl.c:4671
#, gcc-internal-format
msgid "bit-field %qs width not an integer constant expression"
msgstr ""
-#: c-decl.c:4687
+#: c-decl.c:4682
#, gcc-internal-format
msgid "negative width in bit-field %qs"
msgstr ""
-#: c-decl.c:4692
+#: c-decl.c:4687
#, gcc-internal-format
msgid "zero width for bit-field %qs"
msgstr ""
-#: c-decl.c:4702
+#: c-decl.c:4697
#, gcc-internal-format
msgid "bit-field %qs has invalid type"
msgstr ""
-#: c-decl.c:4712
+#: c-decl.c:4707
#, gcc-internal-format
msgid "type of bit-field %qs is a GCC extension"
msgstr ""
-#: c-decl.c:4718
+#: c-decl.c:4713
#, gcc-internal-format
msgid "width of %qs exceeds its type"
msgstr ""
-#: c-decl.c:4731
+#: c-decl.c:4726
#, gcc-internal-format
msgid "%qs is narrower than values of its type"
msgstr ""
-#: c-decl.c:4750
+#: c-decl.c:4745
#, gcc-internal-format
msgid "ISO C90 forbids array %qE whose size can%'t be evaluated"
msgstr ""
-#: c-decl.c:4754
+#: c-decl.c:4749
#, gcc-internal-format
msgid "ISO C90 forbids array whose size can%'t be evaluated"
msgstr ""
-#: c-decl.c:4761
+#: c-decl.c:4756
#, gcc-internal-format
msgid "ISO C90 forbids variable length array %qE"
msgstr ""
-#: c-decl.c:4764
+#: c-decl.c:4759
#, gcc-internal-format
msgid "ISO C90 forbids variable length array"
msgstr ""
-#: c-decl.c:4773
+#: c-decl.c:4768
#, gcc-internal-format
msgid "the size of array %qE can%'t be evaluated"
msgstr ""
-#: c-decl.c:4777
+#: c-decl.c:4772
#, gcc-internal-format
msgid "the size of array can %'t be evaluated"
msgstr ""
-#: c-decl.c:4783
+#: c-decl.c:4778
#, gcc-internal-format
msgid "variable length array %qE is used"
msgstr ""
-#: c-decl.c:4787 cp/decl.c:7649
+#: c-decl.c:4782 cp/decl.c:7913
#, gcc-internal-format
msgid "variable length array is used"
msgstr ""
-#: c-decl.c:4973 c-decl.c:5321 c-decl.c:5331
+#: c-decl.c:4940 c-decl.c:5288 c-decl.c:5298
#, gcc-internal-format
msgid "variably modified %qE at file scope"
msgstr ""
-#: c-decl.c:4975
+#: c-decl.c:4942
#, gcc-internal-format
msgid "variably modified field at file scope"
msgstr ""
-#: c-decl.c:4995
+#: c-decl.c:4962
#, gcc-internal-format
msgid "type defaults to %<int%> in declaration of %qE"
msgstr ""
-#: c-decl.c:4999
+#: c-decl.c:4966
#, gcc-internal-format
msgid "type defaults to %<int%> in type name"
msgstr ""
-#: c-decl.c:5032
+#: c-decl.c:4999
#, gcc-internal-format
msgid "duplicate %<const%>"
msgstr ""
-#: c-decl.c:5034
+#: c-decl.c:5001
#, gcc-internal-format
msgid "duplicate %<restrict%>"
msgstr ""
-#: c-decl.c:5036
+#: c-decl.c:5003
#, gcc-internal-format
msgid "duplicate %<volatile%>"
msgstr ""
-#: c-decl.c:5040
+#: c-decl.c:5007
#, gcc-internal-format, gfc-internal-format
msgid "conflicting named address spaces (%s vs %s)"
msgstr ""
-#: c-decl.c:5064
+#: c-decl.c:5031
#, gcc-internal-format
msgid "function definition declared %<auto%>"
msgstr ""
-#: c-decl.c:5066
+#: c-decl.c:5033
#, gcc-internal-format
msgid "function definition declared %<register%>"
msgstr ""
-#: c-decl.c:5068
+#: c-decl.c:5035
#, gcc-internal-format
msgid "function definition declared %<typedef%>"
msgstr ""
-#: c-decl.c:5070
+#: c-decl.c:5037
#, gcc-internal-format
msgid "function definition declared %<__thread%>"
msgstr ""
-#: c-decl.c:5087
+#: c-decl.c:5054
#, gcc-internal-format
msgid "storage class specified for structure field %qE"
msgstr ""
-#: c-decl.c:5090
+#: c-decl.c:5057
#, gcc-internal-format
msgid "storage class specified for structure field"
msgstr ""
-#: c-decl.c:5094
+#: c-decl.c:5061
#, gcc-internal-format
msgid "storage class specified for parameter %qE"
msgstr ""
-#: c-decl.c:5097
+#: c-decl.c:5064
#, gcc-internal-format
msgid "storage class specified for unnamed parameter"
msgstr ""
-#: c-decl.c:5100 cp/decl.c:8592
+#: c-decl.c:5067 cp/decl.c:8878
#, gcc-internal-format
msgid "storage class specified for typename"
msgstr ""
-#: c-decl.c:5117
+#: c-decl.c:5084
#, gcc-internal-format
msgid "%qE initialized and declared %<extern%>"
msgstr ""
-#: c-decl.c:5121
+#: c-decl.c:5088
#, gcc-internal-format
msgid "%qE has both %<extern%> and initializer"
msgstr ""
-#: c-decl.c:5126
+#: c-decl.c:5093
#, gcc-internal-format
msgid "file-scope declaration of %qE specifies %<auto%>"
msgstr ""
-#: c-decl.c:5130
+#: c-decl.c:5097
#, gcc-internal-format
msgid "file-scope declaration of %qE specifies %<register%>"
msgstr ""
-#: c-decl.c:5135
+#: c-decl.c:5102
#, gcc-internal-format
msgid "nested function %qE declared %<extern%>"
msgstr ""
-#: c-decl.c:5138
+#: c-decl.c:5105
#, gcc-internal-format
msgid "function-scope %qE implicitly auto and declared %<__thread%>"
msgstr ""
@@ -12775,584 +12890,584 @@
#. Only the innermost declarator (making a parameter be of
#. array type which is converted to pointer type)
#. may have static or type qualifiers.
-#: c-decl.c:5185 c-decl.c:5517
+#: c-decl.c:5152 c-decl.c:5482
#, gcc-internal-format
msgid "static or type qualifiers in non-parameter array declarator"
msgstr ""
-#: c-decl.c:5233
+#: c-decl.c:5200
#, gcc-internal-format
msgid "declaration of %qE as array of voids"
msgstr ""
-#: c-decl.c:5235
+#: c-decl.c:5202
#, gcc-internal-format
msgid "declaration of type name as array of voids"
msgstr ""
-#: c-decl.c:5242
+#: c-decl.c:5209
#, gcc-internal-format
msgid "declaration of %qE as array of functions"
msgstr ""
-#: c-decl.c:5245
+#: c-decl.c:5212
#, gcc-internal-format
msgid "declaration of type name as array of functions"
msgstr ""
-#: c-decl.c:5252 c-decl.c:7077
+#: c-decl.c:5219 c-decl.c:7047
#, gcc-internal-format
msgid "invalid use of structure with flexible array member"
msgstr ""
-#: c-decl.c:5278
+#: c-decl.c:5245
#, gcc-internal-format
msgid "size of array %qE has non-integer type"
msgstr ""
-#: c-decl.c:5282
+#: c-decl.c:5249
#, gcc-internal-format
msgid "size of unnamed array has non-integer type"
msgstr ""
-#: c-decl.c:5292
+#: c-decl.c:5259
#, gcc-internal-format
msgid "ISO C forbids zero-size array %qE"
msgstr ""
-#: c-decl.c:5295
+#: c-decl.c:5262
#, gcc-internal-format
msgid "ISO C forbids zero-size array"
msgstr ""
-#: c-decl.c:5304
+#: c-decl.c:5271
#, gcc-internal-format
msgid "size of array %qE is negative"
msgstr ""
-#: c-decl.c:5306
+#: c-decl.c:5273
#, gcc-internal-format
msgid "size of unnamed array is negative"
msgstr ""
-#: c-decl.c:5382 c-decl.c:5747
+#: c-decl.c:5347 c-decl.c:5710
#, gcc-internal-format
msgid "size of array %qE is too large"
msgstr ""
-#: c-decl.c:5385 c-decl.c:5749
+#: c-decl.c:5350 c-decl.c:5712
#, gcc-internal-format
msgid "size of unnamed array is too large"
msgstr ""
-#: c-decl.c:5422
+#: c-decl.c:5387
#, gcc-internal-format
msgid "ISO C90 does not support flexible array members"
msgstr ""
#. C99 6.7.5.2p4
-#: c-decl.c:5443
+#: c-decl.c:5408
#, gcc-internal-format
msgid "%<[*]%> not in a declaration"
msgstr ""
-#: c-decl.c:5456
+#: c-decl.c:5421
#, gcc-internal-format
msgid "array type has incomplete element type"
msgstr ""
-#: c-decl.c:5550
+#: c-decl.c:5515
#, gcc-internal-format
msgid "%qE declared as function returning a function"
msgstr ""
-#: c-decl.c:5553
+#: c-decl.c:5518
#, gcc-internal-format
msgid "type name declared as function returning a function"
msgstr ""
-#: c-decl.c:5560
+#: c-decl.c:5525
#, gcc-internal-format
msgid "%qE declared as function returning an array"
msgstr ""
-#: c-decl.c:5563
+#: c-decl.c:5528
#, gcc-internal-format
msgid "type name declared as function returning an array"
msgstr ""
-#: c-decl.c:5593
+#: c-decl.c:5556
#, gcc-internal-format
msgid "function definition has qualified void return type"
msgstr ""
-#: c-decl.c:5596 cp/decl.c:8698
+#: c-decl.c:5559 cp/decl.c:8984
#, gcc-internal-format
msgid "type qualifiers ignored on function return type"
msgstr ""
-#: c-decl.c:5625 c-decl.c:5763 c-decl.c:5873 c-decl.c:5966
+#: c-decl.c:5588 c-decl.c:5726 c-decl.c:5836 c-decl.c:5929
#, gcc-internal-format
msgid "ISO C forbids qualified function types"
msgstr ""
-#: c-decl.c:5692
+#: c-decl.c:5655
#, gcc-internal-format
msgid "%qs combined with %<auto%> qualifier for %qE"
msgstr ""
-#: c-decl.c:5696
+#: c-decl.c:5659
#, gcc-internal-format
msgid "%qs combined with %<register%> qualifier for %qE"
msgstr ""
-#: c-decl.c:5702
+#: c-decl.c:5665
#, gcc-internal-format
msgid "%qs specified for auto variable %qE"
msgstr ""
-#: c-decl.c:5718
+#: c-decl.c:5681
#, gcc-internal-format
msgid "%qs specified for parameter %qE"
msgstr ""
-#: c-decl.c:5721
+#: c-decl.c:5684
#, gcc-internal-format
msgid "%qs specified for unnamed parameter"
msgstr ""
-#: c-decl.c:5727
+#: c-decl.c:5690
#, gcc-internal-format
msgid "%qs specified for structure field %qE"
msgstr ""
-#: c-decl.c:5730
+#: c-decl.c:5693
#, gcc-internal-format
msgid "%qs specified for structure field"
msgstr ""
-#: c-decl.c:5771
+#: c-decl.c:5734
#, gcc-internal-format
msgid "typedef %q+D declared %<inline%>"
msgstr ""
-#: c-decl.c:5807
+#: c-decl.c:5770
#, gcc-internal-format
msgid "ISO C forbids const or volatile function types"
msgstr ""
#. C99 6.7.2.1p8
-#: c-decl.c:5817
+#: c-decl.c:5780
#, gcc-internal-format
msgid "a member of a structure or union cannot have a variably modified type"
msgstr ""
-#: c-decl.c:5834 cp/decl.c:7871
+#: c-decl.c:5797 cp/decl.c:8141
#, gcc-internal-format
msgid "variable or field %qE declared void"
msgstr ""
-#: c-decl.c:5865
+#: c-decl.c:5828
#, gcc-internal-format
msgid "attributes in parameter array declarator ignored"
msgstr ""
-#: c-decl.c:5899
+#: c-decl.c:5862
#, gcc-internal-format
msgid "parameter %q+D declared %<inline%>"
msgstr ""
-#: c-decl.c:5912
+#: c-decl.c:5875
#, gcc-internal-format
msgid "field %qE declared as a function"
msgstr ""
-#: c-decl.c:5919
+#: c-decl.c:5882
#, gcc-internal-format
msgid "field %qE has incomplete type"
msgstr ""
-#: c-decl.c:5921
+#: c-decl.c:5884
#, gcc-internal-format
msgid "unnamed field has incomplete type"
msgstr ""
-#: c-decl.c:5938 c-decl.c:5949 c-decl.c:5952
+#: c-decl.c:5901 c-decl.c:5912 c-decl.c:5915
#, gcc-internal-format
msgid "invalid storage class for function %qE"
msgstr ""
-#: c-decl.c:6002
+#: c-decl.c:5965
#, gcc-internal-format
msgid "cannot inline function %<main%>"
msgstr ""
-#: c-decl.c:6031
+#: c-decl.c:5994
#, gcc-internal-format
msgid "variable previously declared %<static%> redeclared %<extern%>"
msgstr ""
-#: c-decl.c:6041
+#: c-decl.c:6004
#, gcc-internal-format
msgid "variable %q+D declared %<inline%>"
msgstr ""
-#: c-decl.c:6076
+#: c-decl.c:6039
#, gcc-internal-format
msgid "non-nested function with variably modified type"
msgstr ""
-#: c-decl.c:6078
+#: c-decl.c:6041
#, gcc-internal-format
msgid "object with variably modified type must have no linkage"
msgstr ""
-#: c-decl.c:6161 c-decl.c:7713
+#: c-decl.c:6124 c-decl.c:7683
#, gcc-internal-format
msgid "function declaration isn%'t a prototype"
msgstr ""
-#: c-decl.c:6170
+#: c-decl.c:6133
#, gcc-internal-format
msgid "parameter names (without types) in function declaration"
msgstr ""
-#: c-decl.c:6208
+#: c-decl.c:6171
#, gcc-internal-format
msgid "parameter %u (%q+D) has incomplete type"
msgstr ""
-#: c-decl.c:6212
+#: c-decl.c:6175
#, gcc-internal-format, gfc-internal-format
msgid "parameter %u has incomplete type"
msgstr ""
-#: c-decl.c:6223
+#: c-decl.c:6186
#, gcc-internal-format
msgid "parameter %u (%q+D) has void type"
msgstr ""
-#: c-decl.c:6227
+#: c-decl.c:6190
#, gcc-internal-format, gfc-internal-format
msgid "parameter %u has void type"
msgstr ""
-#: c-decl.c:6309
+#: c-decl.c:6275
#, gcc-internal-format
msgid "%<void%> as only parameter may not be qualified"
msgstr ""
-#: c-decl.c:6313 c-decl.c:6348
+#: c-decl.c:6279 c-decl.c:6314
#, gcc-internal-format
msgid "%<void%> must be the only parameter"
msgstr ""
-#: c-decl.c:6342
+#: c-decl.c:6308
#, gcc-internal-format
msgid "parameter %q+D has just a forward declaration"
msgstr ""
#. The %s will be one of 'struct', 'union', or 'enum'.
-#: c-decl.c:6387
+#: c-decl.c:6353
#, gcc-internal-format
msgid "%<%s %E%> declared inside parameter list"
msgstr ""
#. The %s will be one of 'struct', 'union', or 'enum'.
-#: c-decl.c:6391
+#: c-decl.c:6357
#, gcc-internal-format, gfc-internal-format
msgid "anonymous %s declared inside parameter list"
msgstr ""
-#: c-decl.c:6396
+#: c-decl.c:6362
#, gcc-internal-format
msgid ""
"its scope is only this definition or declaration, which is probably not what "
"you want"
msgstr ""
-#: c-decl.c:6496
+#: c-decl.c:6462
#, gcc-internal-format
msgid "enum type defined here"
msgstr ""
-#: c-decl.c:6502
+#: c-decl.c:6468
#, gcc-internal-format
msgid "struct defined here"
msgstr ""
-#: c-decl.c:6508
+#: c-decl.c:6474
#, gcc-internal-format
msgid "union defined here"
msgstr ""
-#: c-decl.c:6581
+#: c-decl.c:6547
#, gcc-internal-format
msgid "redefinition of %<union %E%>"
msgstr ""
-#: c-decl.c:6583
+#: c-decl.c:6549
#, gcc-internal-format
msgid "redefinition of %<struct %E%>"
msgstr ""
-#: c-decl.c:6592
+#: c-decl.c:6558
#, gcc-internal-format
msgid "nested redefinition of %<union %E%>"
msgstr ""
-#: c-decl.c:6594
+#: c-decl.c:6560
#, gcc-internal-format
msgid "nested redefinition of %<struct %E%>"
msgstr ""
-#: c-decl.c:6626 c-decl.c:7311
+#: c-decl.c:6592 c-decl.c:7281
#, gcc-internal-format
msgid "defining type in %qs expression is invalid in C++"
msgstr ""
-#: c-decl.c:6695 cp/decl.c:4028
+#: c-decl.c:6661 cp/decl.c:4093
#, gcc-internal-format
msgid "declaration does not declare anything"
msgstr ""
-#: c-decl.c:6702
+#: c-decl.c:6668
#, gcc-internal-format
msgid "ISO C99 doesn%'t support unnamed structs/unions"
msgstr ""
-#: c-decl.c:6705
+#: c-decl.c:6671
#, gcc-internal-format
msgid "ISO C90 doesn%'t support unnamed structs/unions"
msgstr ""
-#: c-decl.c:6797 c-decl.c:6816 c-decl.c:6875 objcp/objcp-decl.c:91
+#: c-decl.c:6763 c-decl.c:6782 c-decl.c:6845
#, gcc-internal-format
msgid "duplicate member %q+D"
msgstr ""
-#: c-decl.c:6985
+#: c-decl.c:6955
#, gcc-internal-format
msgid "union has no named members"
msgstr ""
-#: c-decl.c:6987
+#: c-decl.c:6957
#, gcc-internal-format
msgid "union has no members"
msgstr ""
-#: c-decl.c:6992
+#: c-decl.c:6962
#, gcc-internal-format
msgid "struct has no named members"
msgstr ""
-#: c-decl.c:6994
+#: c-decl.c:6964
#, gcc-internal-format
msgid "struct has no members"
msgstr ""
-#: c-decl.c:7057
+#: c-decl.c:7027
#, gcc-internal-format
msgid "flexible array member in union"
msgstr ""
-#: c-decl.c:7063
+#: c-decl.c:7033
#, gcc-internal-format
msgid "flexible array member not at end of struct"
msgstr ""
-#: c-decl.c:7069
+#: c-decl.c:7039
#, gcc-internal-format
msgid "flexible array member in otherwise empty struct"
msgstr ""
-#: c-decl.c:7188
+#: c-decl.c:7158
#, gcc-internal-format
msgid "union cannot be made transparent"
msgstr ""
-#: c-decl.c:7284
+#: c-decl.c:7254
#, gcc-internal-format
msgid "nested redefinition of %<enum %E%>"
msgstr ""
#. This enum is a named one that has been declared already.
-#: c-decl.c:7291
+#: c-decl.c:7261
#, gcc-internal-format
msgid "redeclaration of %<enum %E%>"
msgstr ""
-#: c-decl.c:7366
+#: c-decl.c:7336
#, gcc-internal-format
msgid "enumeration values exceed range of largest integer"
msgstr ""
-#: c-decl.c:7383
+#: c-decl.c:7353
#, gcc-internal-format
msgid "specified mode too small for enumeral values"
msgstr ""
-#: c-decl.c:7488 c-decl.c:7504
+#: c-decl.c:7458 c-decl.c:7474
#, gcc-internal-format
msgid "enumerator value for %qE is not an integer constant"
msgstr ""
-#: c-decl.c:7499
+#: c-decl.c:7469
#, gcc-internal-format
msgid "enumerator value for %qE is not an integer constant expression"
msgstr ""
-#: c-decl.c:7523
+#: c-decl.c:7493
#, gcc-internal-format
msgid "overflow in enumeration values"
msgstr ""
-#: c-decl.c:7531
+#: c-decl.c:7501
#, gcc-internal-format
msgid "ISO C restricts enumerator values to range of %<int%>"
msgstr ""
-#: c-decl.c:7615
+#: c-decl.c:7585
#, gcc-internal-format
msgid "inline function %qD given attribute noinline"
msgstr ""
-#: c-decl.c:7633
+#: c-decl.c:7603
#, gcc-internal-format
msgid "return type is an incomplete type"
msgstr ""
-#: c-decl.c:7643
+#: c-decl.c:7613
#, gcc-internal-format
msgid "return type defaults to %<int%>"
msgstr ""
-#: c-decl.c:7721
+#: c-decl.c:7691
#, gcc-internal-format
msgid "no previous prototype for %qD"
msgstr ""
-#: c-decl.c:7730
+#: c-decl.c:7700
#, gcc-internal-format
msgid "%qD was used with no prototype before its definition"
msgstr ""
-#: c-decl.c:7737
+#: c-decl.c:7707
#, gcc-internal-format
msgid "no previous declaration for %qD"
msgstr ""
-#: c-decl.c:7747
+#: c-decl.c:7717
#, gcc-internal-format
msgid "%qD was used with no declaration before its definition"
msgstr ""
-#: c-decl.c:7766
+#: c-decl.c:7736
#, gcc-internal-format
msgid "return type of %qD is not %<int%>"
msgstr ""
-#: c-decl.c:7772
+#: c-decl.c:7742
#, gcc-internal-format
msgid "%qD is normally a non-static function"
msgstr ""
-#: c-decl.c:7809
+#: c-decl.c:7779
#, gcc-internal-format
msgid "old-style parameter declarations in prototyped function definition"
msgstr ""
-#: c-decl.c:7823
+#: c-decl.c:7793
#, gcc-internal-format
msgid "traditional C rejects ISO C style function definitions"
msgstr ""
-#: c-decl.c:7839
+#: c-decl.c:7809
#, gcc-internal-format
msgid "parameter name omitted"
msgstr ""
-#: c-decl.c:7876
+#: c-decl.c:7846
#, gcc-internal-format
msgid "old-style function definition"
msgstr ""
-#: c-decl.c:7885
+#: c-decl.c:7855
#, gcc-internal-format
msgid "parameter name missing from parameter list"
msgstr ""
-#: c-decl.c:7900
+#: c-decl.c:7870
#, gcc-internal-format
msgid "%qD declared as a non-parameter"
msgstr ""
-#: c-decl.c:7906
+#: c-decl.c:7876
#, gcc-internal-format
msgid "multiple parameters named %qD"
msgstr ""
-#: c-decl.c:7915
+#: c-decl.c:7885
#, gcc-internal-format
msgid "parameter %qD declared with void type"
msgstr ""
-#: c-decl.c:7944 c-decl.c:7948
+#: c-decl.c:7914 c-decl.c:7918
#, gcc-internal-format
msgid "type of %qD defaults to %<int%>"
msgstr ""
-#: c-decl.c:7968
+#: c-decl.c:7938
#, gcc-internal-format
msgid "parameter %qD has incomplete type"
msgstr ""
-#: c-decl.c:7975
+#: c-decl.c:7945
#, gcc-internal-format
msgid "declaration for parameter %qD but no such parameter"
msgstr ""
-#: c-decl.c:8027
+#: c-decl.c:7997
#, gcc-internal-format
msgid "number of arguments doesn%'t match built-in prototype"
msgstr ""
-#: c-decl.c:8038
+#: c-decl.c:8008
#, gcc-internal-format
msgid "number of arguments doesn%'t match prototype"
msgstr ""
-#: c-decl.c:8041 c-decl.c:8083 c-decl.c:8097
+#: c-decl.c:8011 c-decl.c:8053 c-decl.c:8067
#, gcc-internal-format
msgid "prototype declaration"
msgstr ""
-#: c-decl.c:8075
+#: c-decl.c:8045
#, gcc-internal-format
msgid "promoted argument %qD doesn%'t match built-in prototype"
msgstr ""
-#: c-decl.c:8080
+#: c-decl.c:8050
#, gcc-internal-format
msgid "promoted argument %qD doesn%'t match prototype"
msgstr ""
-#: c-decl.c:8090
+#: c-decl.c:8060
#, gcc-internal-format
msgid "argument %qD doesn%'t match built-in prototype"
msgstr ""
-#: c-decl.c:8095
+#: c-decl.c:8065
#, gcc-internal-format
msgid "argument %qD doesn%'t match prototype"
msgstr ""
-#: c-decl.c:8287 cp/decl.c:13001
+#: c-decl.c:8245 cp/decl.c:13327
#, gcc-internal-format
msgid "no return statement in function returning non-void"
msgstr ""
-#: c-decl.c:8307
+#: c-decl.c:8265
#, gcc-internal-format
msgid "parameter %qD set but not used"
msgstr ""
@@ -13360,173 +13475,173 @@
#. If we get here, declarations have been used in a for loop without
#. the C99 for loop scope. This doesn't make much sense, so don't
#. allow it.
-#: c-decl.c:8386
+#: c-decl.c:8344
#, gcc-internal-format
msgid "%<for%> loop initial declarations are only allowed in C99 mode"
msgstr ""
-#: c-decl.c:8391
+#: c-decl.c:8349
#, gcc-internal-format
msgid "use option -std=c99 or -std=gnu99 to compile your code"
msgstr ""
-#: c-decl.c:8425
+#: c-decl.c:8383
#, gcc-internal-format
msgid "declaration of static variable %qD in %<for%> loop initial declaration"
msgstr ""
-#: c-decl.c:8429
+#: c-decl.c:8387
#, gcc-internal-format
msgid ""
"declaration of %<extern%> variable %qD in %<for%> loop initial declaration"
msgstr ""
-#: c-decl.c:8436
+#: c-decl.c:8394
#, gcc-internal-format
msgid "%<struct %E%> declared in %<for%> loop initial declaration"
msgstr ""
-#: c-decl.c:8441
+#: c-decl.c:8399
#, gcc-internal-format
msgid "%<union %E%> declared in %<for%> loop initial declaration"
msgstr ""
-#: c-decl.c:8445
+#: c-decl.c:8403
#, gcc-internal-format
msgid "%<enum %E%> declared in %<for%> loop initial declaration"
msgstr ""
-#: c-decl.c:8449
+#: c-decl.c:8407
#, gcc-internal-format
msgid "declaration of non-variable %qD in %<for%> loop initial declaration"
msgstr ""
-#: c-decl.c:8699
+#: c-decl.c:8659
#, gcc-internal-format
msgid "incompatible address space qualifiers %qs and %qs"
msgstr ""
-#: c-decl.c:8738 c-decl.c:9049 c-decl.c:9438
+#: c-decl.c:8698 c-decl.c:9009 c-decl.c:9398
#, gcc-internal-format
msgid "duplicate %qE"
msgstr ""
-#: c-decl.c:8764 c-decl.c:9060 c-decl.c:9317
+#: c-decl.c:8724 c-decl.c:9020 c-decl.c:9277
#, gcc-internal-format
msgid "two or more data types in declaration specifiers"
msgstr ""
-#: c-decl.c:8776 cp/parser.c:2197
+#: c-decl.c:8736 cp/parser.c:2207
#, gcc-internal-format
msgid "%<long long long%> is too long for GCC"
msgstr ""
-#: c-decl.c:8789
+#: c-decl.c:8749
#, gcc-internal-format
msgid "ISO C90 does not support %<long long%>"
msgstr ""
-#: c-decl.c:8955
+#: c-decl.c:8915
#, gcc-internal-format
msgid "ISO C90 does not support complex types"
msgstr ""
-#: c-decl.c:8994
+#: c-decl.c:8954
#, gcc-internal-format
msgid "ISO C does not support saturating types"
msgstr ""
-#: c-decl.c:9068
+#: c-decl.c:9028
#, gcc-internal-format
msgid "%<__int128%> is not supported for this target"
msgstr ""
-#: c-decl.c:9073
+#: c-decl.c:9033
#, gcc-internal-format
msgid "ISO C does not support %<__int128%> type"
msgstr ""
-#: c-decl.c:9276
+#: c-decl.c:9236
#, gcc-internal-format
msgid "ISO C does not support decimal floating point"
msgstr ""
-#: c-decl.c:9298 c-decl.c:9503 c-parser.c:6035
+#: c-decl.c:9258 c-decl.c:9463 c-parser.c:6048
#, gcc-internal-format
msgid "fixed-point types not supported for this target"
msgstr ""
-#: c-decl.c:9300
+#: c-decl.c:9260
#, gcc-internal-format
msgid "ISO C does not support fixed-point types"
msgstr ""
-#: c-decl.c:9334
+#: c-decl.c:9294
#, gcc-internal-format
msgid "C++ lookup of %qD would return a field, not a type"
msgstr ""
-#: c-decl.c:9347
+#: c-decl.c:9307
#, gcc-internal-format
msgid "%qE fails to be a typedef or built in type"
msgstr ""
-#: c-decl.c:9389
+#: c-decl.c:9349
#, gcc-internal-format
msgid "%qE is not at beginning of declaration"
msgstr ""
-#: c-decl.c:9403
+#: c-decl.c:9363
#, gcc-internal-format
msgid "%<__thread%> used with %<auto%>"
msgstr ""
-#: c-decl.c:9405
+#: c-decl.c:9365
#, gcc-internal-format
msgid "%<__thread%> used with %<register%>"
msgstr ""
-#: c-decl.c:9407
+#: c-decl.c:9367
#, gcc-internal-format
msgid "%<__thread%> used with %<typedef%>"
msgstr ""
-#: c-decl.c:9418
+#: c-decl.c:9378
#, gcc-internal-format
msgid "%<__thread%> before %<extern%>"
msgstr ""
-#: c-decl.c:9427
+#: c-decl.c:9387
#, gcc-internal-format
msgid "%<__thread%> before %<static%>"
msgstr ""
-#: c-decl.c:9443
+#: c-decl.c:9403
#, gcc-internal-format
msgid "multiple storage classes in declaration specifiers"
msgstr ""
-#: c-decl.c:9450
+#: c-decl.c:9410
#, gcc-internal-format
msgid "%<__thread%> used with %qE"
msgstr ""
-#: c-decl.c:9501
+#: c-decl.c:9461
#, gcc-internal-format
msgid "%<_Sat%> is used without %<_Fract%> or %<_Accum%>"
msgstr ""
-#: c-decl.c:9515
+#: c-decl.c:9475
#, gcc-internal-format
msgid "ISO C does not support plain %<complex%> meaning %<double complex%>"
msgstr ""
-#: c-decl.c:9560 c-decl.c:9573 c-decl.c:9599
+#: c-decl.c:9520 c-decl.c:9533 c-decl.c:9559
#, gcc-internal-format
msgid "ISO C does not support complex integer types"
msgstr ""
-#: c-decl.c:9753 toplev.c:497
+#: c-decl.c:9713 toplev.c:498
#, gcc-internal-format
msgid "%q+F used but never defined"
msgstr ""
@@ -13541,27 +13656,27 @@
msgid "ISO C forbids an empty translation unit"
msgstr ""
-#: c-parser.c:1312 c-parser.c:7218
+#: c-parser.c:1312 c-parser.c:7248
#, gcc-internal-format
msgid "ISO C does not allow extra %<;%> outside of a function"
msgstr ""
-#: c-parser.c:1438 c-parser.c:2003 c-parser.c:3216
+#: c-parser.c:1438 c-parser.c:2013 c-parser.c:3229
#, gcc-internal-format
msgid "unknown type name %qE"
msgstr ""
-#: c-parser.c:1458 c-parser.c:8236 cp/parser.c:24992
+#: c-parser.c:1458 c-parser.c:8268 cp/parser.c:25299
#, gcc-internal-format
msgid "expected declaration specifiers"
msgstr ""
-#: c-parser.c:1483 c-parser.c:2576
+#: c-parser.c:1483 c-parser.c:2593
#, gcc-internal-format
msgid "expected %<;%>, identifier or %<(%>"
msgstr ""
-#: c-parser.c:1501 cp/parser.c:22050 cp/parser.c:22123
+#: c-parser.c:1501 cp/parser.c:22339 cp/parser.c:22413
#, gcc-internal-format
msgid "prefix attributes are ignored for methods"
msgstr ""
@@ -13576,12 +13691,12 @@
msgid "unexpected attribute"
msgstr ""
-#: c-parser.c:1599
+#: c-parser.c:1600
#, gcc-internal-format
msgid "data definition has no type or storage class"
msgstr ""
-#: c-parser.c:1674 cp/parser.c:9498
+#: c-parser.c:1675 cp/parser.c:9661
#, gcc-internal-format
msgid "expected %<,%> or %<;%>"
msgstr ""
@@ -13589,207 +13704,207 @@
#. This can appear in many cases looking nothing like a
#. function definition, so we don't give a more specific
#. error suggesting there was one.
-#: c-parser.c:1681 c-parser.c:1697
+#: c-parser.c:1682 c-parser.c:1698
#, gcc-internal-format
msgid "expected %<=%>, %<,%>, %<;%>, %<asm%> or %<__attribute__%>"
msgstr ""
-#: c-parser.c:1689
+#: c-parser.c:1690
#, gcc-internal-format
msgid "ISO C forbids nested functions"
msgstr ""
-#: c-parser.c:1796
+#: c-parser.c:1806
#, gcc-internal-format
msgid "ISO C99 does not support %<_Static_assert%>"
msgstr ""
-#: c-parser.c:1799
+#: c-parser.c:1809
#, gcc-internal-format
msgid "ISO C90 does not support %<_Static_assert%>"
msgstr ""
-#: c-parser.c:1824 c-parser.c:3283 c-parser.c:8291 cp/parser.c:24879
+#: c-parser.c:1834 c-parser.c:3296 c-parser.c:8323 cp/parser.c:25186
#, gcc-internal-format
msgid "expected string literal"
msgstr ""
-#: c-parser.c:1832
+#: c-parser.c:1842
#, gcc-internal-format
msgid "expression in static assertion is not an integer"
msgstr ""
-#: c-parser.c:1839
+#: c-parser.c:1849
#, gcc-internal-format
msgid "expression in static assertion is not an integer constant expression"
msgstr ""
-#: c-parser.c:1844
+#: c-parser.c:1854
#, gcc-internal-format
msgid "expression in static assertion is not constant"
msgstr ""
#. Report the error.
-#: c-parser.c:1849 cp/semantics.c:4690
+#: c-parser.c:1859 cp/semantics.c:4796
#, gcc-internal-format
msgid "static assertion failed: %E"
msgstr ""
-#: c-parser.c:2210 c-parser.c:3066 c-parser.c:3715 c-parser.c:3989
-#: c-parser.c:5090 c-parser.c:5181 c-parser.c:5806 c-parser.c:6089
-#: c-parser.c:6278 c-parser.c:6300 c-parser.c:6408 c-parser.c:6606
-#: c-parser.c:6635 c-parser.c:6820 c-parser.c:6869 c-parser.c:7009
-#: c-parser.c:7040 c-parser.c:7048 c-parser.c:7077 c-parser.c:7091
-#: c-parser.c:7394 c-parser.c:7518 c-parser.c:7945 c-parser.c:7980
-#: c-parser.c:8033 c-parser.c:8086 c-parser.c:8102 c-parser.c:8148
-#: c-parser.c:8410 c-parser.c:9177 cp/parser.c:20708 cp/parser.c:22879
-#: cp/parser.c:22909 cp/parser.c:22975
+#: c-parser.c:2223 c-parser.c:3083 c-parser.c:3728 c-parser.c:4002
+#: c-parser.c:5103 c-parser.c:5194 c-parser.c:5819 c-parser.c:6102
+#: c-parser.c:6291 c-parser.c:6313 c-parser.c:6421 c-parser.c:6618
+#: c-parser.c:6647 c-parser.c:6832 c-parser.c:6881 c-parser.c:7041
+#: c-parser.c:7071 c-parser.c:7079 c-parser.c:7108 c-parser.c:7121
+#: c-parser.c:7426 c-parser.c:7550 c-parser.c:7977 c-parser.c:8012
+#: c-parser.c:8065 c-parser.c:8118 c-parser.c:8134 c-parser.c:8180
+#: c-parser.c:8442 c-parser.c:9209 cp/parser.c:20983 cp/parser.c:23183
+#: cp/parser.c:23213 cp/parser.c:23283
#, gcc-internal-format
msgid "expected identifier"
msgstr ""
-#: c-parser.c:2243 cp/parser.c:13466
+#: c-parser.c:2256 cp/parser.c:13647
#, gcc-internal-format
msgid "comma at end of enumerator list"
msgstr ""
-#: c-parser.c:2249
+#: c-parser.c:2262
#, gcc-internal-format
msgid "expected %<,%> or %<}%>"
msgstr ""
-#: c-parser.c:2279
+#: c-parser.c:2293
#, gcc-internal-format
msgid "ISO C forbids forward references to %<enum%> types"
msgstr ""
-#: c-parser.c:2393
+#: c-parser.c:2409
#, gcc-internal-format
msgid "expected class name"
msgstr ""
-#: c-parser.c:2412 c-parser.c:6936
+#: c-parser.c:2428
#, gcc-internal-format
msgid "extra semicolon in struct or union specified"
msgstr ""
-#: c-parser.c:2441
+#: c-parser.c:2457
#, gcc-internal-format
msgid "no semicolon at end of struct or union"
msgstr ""
-#: c-parser.c:2538 c-parser.c:3529
+#: c-parser.c:2555 c-parser.c:3542
#, gcc-internal-format
msgid "expected specifier-qualifier-list"
msgstr ""
-#: c-parser.c:2549
+#: c-parser.c:2566
#, gcc-internal-format
msgid "ISO C forbids member declarations with no members"
msgstr ""
-#: c-parser.c:2639
+#: c-parser.c:2656
#, gcc-internal-format
msgid "expected %<,%>, %<;%> or %<}%>"
msgstr ""
-#: c-parser.c:2646
+#: c-parser.c:2663
#, gcc-internal-format
msgid "expected %<:%>, %<,%>, %<;%>, %<}%> or %<__attribute__%>"
msgstr ""
-#: c-parser.c:2699
+#: c-parser.c:2716
#, gcc-internal-format
msgid "%<typeof%> applied to a bit-field"
msgstr ""
-#: c-parser.c:2925
+#: c-parser.c:2942
#, gcc-internal-format
msgid "expected identifier or %<(%>"
msgstr ""
-#: c-parser.c:3120
+#: c-parser.c:3141
#, gcc-internal-format
msgid "ISO C requires a named argument before %<...%>"
msgstr ""
-#: c-parser.c:3223
+#: c-parser.c:3236
#, gcc-internal-format
msgid "expected declaration specifiers or %<...%>"
msgstr ""
-#: c-parser.c:3277
+#: c-parser.c:3290
#, gcc-internal-format
msgid "wide string literal in %<asm%>"
msgstr ""
-#: c-parser.c:3629
+#: c-parser.c:3642
#, gcc-internal-format
msgid "ISO C forbids empty initializer braces"
msgstr ""
-#: c-parser.c:3680
+#: c-parser.c:3693
#, gcc-internal-format
msgid "obsolete use of designated initializer with %<:%>"
msgstr ""
-#: c-parser.c:3820
+#: c-parser.c:3833
#, gcc-internal-format
msgid "ISO C forbids specifying range of elements to initialize"
msgstr ""
-#: c-parser.c:3833
+#: c-parser.c:3846
#, gcc-internal-format
msgid "ISO C90 forbids specifying subobject to initialize"
msgstr ""
-#: c-parser.c:3840
+#: c-parser.c:3853
#, gcc-internal-format
msgid "obsolete use of designated initializer without %<=%>"
msgstr ""
-#: c-parser.c:4004
+#: c-parser.c:4017
#, gcc-internal-format
msgid "ISO C forbids label declarations"
msgstr ""
-#: c-parser.c:4010 c-parser.c:4091
+#: c-parser.c:4023 c-parser.c:4104
#, gcc-internal-format
msgid "expected declaration or statement"
msgstr ""
-#: c-parser.c:4042 c-parser.c:4072
+#: c-parser.c:4055 c-parser.c:4085
#, gcc-internal-format
msgid "ISO C90 forbids mixed declarations and code"
msgstr ""
-#: c-parser.c:4099
+#: c-parser.c:4112
#, gcc-internal-format
msgid "expected %<}%> before %<else%>"
msgstr ""
-#: c-parser.c:4104 cp/parser.c:8162
+#: c-parser.c:4117 cp/parser.c:8239
#, gcc-internal-format
msgid "%<else%> without a previous %<if%>"
msgstr ""
-#: c-parser.c:4121
+#: c-parser.c:4134
#, gcc-internal-format
msgid "label at end of compound statement"
msgstr ""
-#: c-parser.c:4166
+#: c-parser.c:4179
#, gcc-internal-format
msgid "expected %<:%> or %<...%>"
msgstr ""
-#: c-parser.c:4197
+#: c-parser.c:4210
#, gcc-internal-format
msgid ""
"a label can only be part of a statement and a declaration is not a statement"
msgstr ""
-#: c-parser.c:4365
+#: c-parser.c:4378
#, gcc-internal-format
msgid "expected identifier or %<*%>"
msgstr ""
@@ -13798,289 +13913,294 @@
#. c_parser_skip_until_found stops at a closing nesting
#. delimiter without consuming it, but here we need to consume
#. it to proceed further.
-#: c-parser.c:4430 cp/parser.c:7894
+#: c-parser.c:4443 cp/parser.c:7967
#, gcc-internal-format
msgid "expected statement"
msgstr ""
-#: c-parser.c:4528 cp/parser.c:8244
+#: c-parser.c:4541 cp/parser.c:8321
#, gcc-internal-format
msgid "suggest braces around empty body in an %<if%> statement"
msgstr ""
-#: c-parser.c:4556 cp/parser.c:8267
+#: c-parser.c:4569 cp/parser.c:8344
#, gcc-internal-format
msgid "suggest braces around empty body in an %<else%> statement"
msgstr ""
-#: c-parser.c:4687
+#: c-parser.c:4700
#, gcc-internal-format
msgid "suggest braces around empty body in %<do%> statement"
msgstr ""
-#: c-parser.c:4803 c-parser.c:4833
+#: c-parser.c:4816 c-parser.c:4846
#, gcc-internal-format
msgid "multiple iterating variables in fast enumeration"
msgstr ""
-#: c-parser.c:4853
+#: c-parser.c:4866
#, gcc-internal-format
msgid "invalid iterating variable in fast enumeration"
msgstr ""
-#: c-parser.c:4886
+#: c-parser.c:4899
#, gcc-internal-format
msgid "missing collection in fast enumeration"
msgstr ""
-#: c-parser.c:4957
+#: c-parser.c:4970
#, gcc-internal-format
msgid "%E qualifier ignored on asm"
msgstr ""
-#: c-parser.c:5311
+#: c-parser.c:5324
#, gcc-internal-format
msgid "ISO C forbids omitting the middle term of a ?: expression"
msgstr ""
-#: c-parser.c:5771
+#: c-parser.c:5784
#, gcc-internal-format
msgid "traditional C rejects the unary plus operator"
msgstr ""
-#: c-parser.c:5896
+#: c-parser.c:5909
#, gcc-internal-format
msgid "%<sizeof%> applied to a bit-field"
msgstr ""
-#: c-parser.c:6100 c-parser.c:6445 c-parser.c:6465
+#: c-parser.c:6113 c-parser.c:6458 c-parser.c:6477
#, gcc-internal-format
msgid "expected expression"
msgstr ""
-#: c-parser.c:6118
+#: c-parser.c:6131
#, gcc-internal-format
msgid "braced-group within expression allowed only inside a function"
msgstr ""
-#: c-parser.c:6131
+#: c-parser.c:6144
#, gcc-internal-format
msgid "ISO C forbids braced-groups within expressions"
msgstr ""
-#: c-parser.c:6340
+#: c-parser.c:6353
#, gcc-internal-format
msgid "first argument to %<__builtin_choose_expr%> not a constant"
msgstr ""
-#: c-parser.c:6500
+#: c-parser.c:6512
#, gcc-internal-format
msgid "compound literal has variable size"
msgstr ""
-#: c-parser.c:6511
+#: c-parser.c:6523
#, gcc-internal-format
msgid "compound literal qualified by address-space qualifier"
msgstr ""
-#: c-parser.c:6516
+#: c-parser.c:6528
#, gcc-internal-format
msgid "ISO C90 forbids compound literals"
msgstr ""
-#: c-parser.c:6840
+#: c-parser.c:6852
#, gcc-internal-format
msgid "expected identifier or %<)%>"
msgstr ""
-#: c-parser.c:7166
+#: c-parser.c:6948
+#, gcc-internal-format
+msgid "extra semicolon"
+msgstr ""
+
+#: c-parser.c:7196
#, gcc-internal-format
msgid "extra semicolon in method definition specified"
msgstr ""
-#: c-parser.c:7297
+#: c-parser.c:7328
#, gcc-internal-format
msgid "method attributes must be specified at the end only"
msgstr ""
-#: c-parser.c:7317
+#: c-parser.c:7348
#, gcc-internal-format
msgid "expected %<;%> or %<{%> after method attribute definition"
msgstr ""
-#: c-parser.c:7437
+#: c-parser.c:7469
#, gcc-internal-format
msgid "objective-c method declaration is expected"
msgstr ""
-#: c-parser.c:7859
+#: c-parser.c:7891
#, gcc-internal-format
msgid "no type or storage class may be specified here,"
msgstr ""
-#: c-parser.c:7949 c-parser.c:8006 cp/parser.c:22935
+#: c-parser.c:7981 c-parser.c:8038 cp/parser.c:23243
#, gcc-internal-format
msgid "unknown property attribute"
msgstr ""
-#: c-parser.c:7970 cp/parser.c:22899
+#: c-parser.c:8002 cp/parser.c:23203
#, gcc-internal-format
msgid "missing %<=%> (after %<getter%> attribute)"
msgstr ""
-#: c-parser.c:7973 cp/parser.c:22902
+#: c-parser.c:8005 cp/parser.c:23206
#, gcc-internal-format
msgid "missing %<=%> (after %<setter%> attribute)"
msgstr ""
-#: c-parser.c:7987 cp/parser.c:22916
+#: c-parser.c:8019 cp/parser.c:23221
#, gcc-internal-format
msgid "the %<setter%> attribute may only be specified once"
msgstr ""
-#: c-parser.c:7992 cp/parser.c:22921
+#: c-parser.c:8024 cp/parser.c:23227
#, gcc-internal-format
msgid "setter name must terminate with %<:%>"
msgstr ""
-#: c-parser.c:7999 cp/parser.c:22928
+#: c-parser.c:8031 cp/parser.c:23235
#, gcc-internal-format
msgid "the %<getter%> attribute may only be specified once"
msgstr ""
-#: c-parser.c:8185 cp/parser.c:24923
+#: c-parser.c:8217 cp/parser.c:25230
#, gcc-internal-format
msgid "%<#pragma omp barrier%> may only be used in compound statements"
msgstr ""
-#: c-parser.c:8196 cp/parser.c:24938
+#: c-parser.c:8228 cp/parser.c:25245
#, gcc-internal-format
msgid "%<#pragma omp flush%> may only be used in compound statements"
msgstr ""
-#: c-parser.c:8207 cp/parser.c:24954
+#: c-parser.c:8239 cp/parser.c:25261
#, gcc-internal-format
msgid "%<#pragma omp taskwait%> may only be used in compound statements"
msgstr ""
-#: c-parser.c:8220 cp/parser.c:24982
+#: c-parser.c:8252 cp/parser.c:25289
#, gcc-internal-format
msgid ""
"%<#pragma omp section%> may only be used in %<#pragma omp sections%> "
"construct"
msgstr ""
-#: c-parser.c:8226 cp/parser.c:24913
+#: c-parser.c:8258 cp/parser.c:25220
#, gcc-internal-format
msgid "%<#pragma GCC pch_preprocess%> must be first"
msgstr ""
-#: c-parser.c:8385 cp/parser.c:23177
+#: c-parser.c:8417 cp/parser.c:23485
#, gcc-internal-format
msgid "too many %qs clauses"
msgstr ""
-#: c-parser.c:8487 cp/parser.c:23292
+#: c-parser.c:8519 cp/parser.c:23600
#, gcc-internal-format
msgid "collapse argument needs positive constant integer expression"
msgstr ""
-#: c-parser.c:8553 cp/parser.c:23343
+#: c-parser.c:8585 cp/parser.c:23651
#, gcc-internal-format
msgid "expected %<none%> or %<shared%>"
msgstr ""
-#: c-parser.c:8644 c-parser.c:8836
+#: c-parser.c:8676 c-parser.c:8868
#, gcc-internal-format
msgid "expected integer expression"
msgstr ""
-#: c-parser.c:8656
+#: c-parser.c:8688
#, gcc-internal-format
msgid "%<num_threads%> value must be positive"
msgstr ""
-#: c-parser.c:8739 cp/parser.c:23495
+#: c-parser.c:8771 cp/parser.c:23803
#, gcc-internal-format
msgid "expected %<+%>, %<*%>, %<-%>, %<&%>, %<^%>, %<|%>, %<&&%>, or %<||%>"
msgstr ""
-#: c-parser.c:8827 cp/parser.c:23580
+#: c-parser.c:8859 cp/parser.c:23888
#, gcc-internal-format
msgid "schedule %<runtime%> does not take a %<chunk_size%> parameter"
msgstr ""
-#: c-parser.c:8831 cp/parser.c:23583
+#: c-parser.c:8863 cp/parser.c:23891
#, gcc-internal-format
msgid "schedule %<auto%> does not take a %<chunk_size%> parameter"
msgstr ""
-#: c-parser.c:8849 cp/parser.c:23599
+#: c-parser.c:8881 cp/parser.c:23907
#, gcc-internal-format
msgid "invalid schedule kind"
msgstr ""
-#: c-parser.c:8969 cp/parser.c:23722
+#: c-parser.c:9001 cp/parser.c:24030
#, gcc-internal-format
msgid "expected %<#pragma omp%> clause"
msgstr ""
-#: c-parser.c:8978 cp/parser.c:23731
+#: c-parser.c:9010 cp/parser.c:24039
#, gcc-internal-format
msgid "%qs is not valid for %qs"
msgstr ""
-#: c-parser.c:9118 cp/parser.c:23882
+#: c-parser.c:9150 cp/parser.c:24190
#, gcc-internal-format
msgid "invalid operator for %<#pragma omp atomic%>"
msgstr ""
-#: c-parser.c:9180 c-parser.c:9201
+#: c-parser.c:9212 c-parser.c:9233
#, gcc-internal-format
msgid "expected %<(%> or end of line"
msgstr ""
-#: c-parser.c:9236 cp/parser.c:24121
+#: c-parser.c:9268 cp/parser.c:24427
#, gcc-internal-format
msgid "for statement expected"
msgstr ""
-#: c-parser.c:9289 cp/semantics.c:4386 cp/semantics.c:4456
+#: c-parser.c:9321 cp/semantics.c:4492 cp/semantics.c:4562
#, gcc-internal-format
msgid "expected iteration declaration or initialization"
msgstr ""
-#: c-parser.c:9369
+#: c-parser.c:9401
#, gcc-internal-format
msgid "not enough perfectly nested loops"
msgstr ""
-#: c-parser.c:9422 cp/parser.c:24462
+#: c-parser.c:9454 cp/parser.c:24769
#, gcc-internal-format
msgid "collapsed loops not perfectly nested"
msgstr ""
-#: c-parser.c:9460 cp/parser.c:24306 cp/parser.c:24344 cp/pt.c:11892
+#: c-parser.c:9492 cp/parser.c:24612 cp/parser.c:24650 cp/pt.c:11984
#, gcc-internal-format
msgid "iteration variable %qD should not be firstprivate"
msgstr ""
-#: c-parser.c:9905
+#: c-parser.c:9937
#, gcc-internal-format
msgid "%qD is not a variable"
msgstr ""
-#: c-parser.c:9907 cp/semantics.c:4011
+#: c-parser.c:9939 cp/semantics.c:4117
#, gcc-internal-format
msgid "%qE declared %<threadprivate%> after first use"
msgstr ""
-#: c-parser.c:9909 cp/semantics.c:4013
+#: c-parser.c:9941 cp/semantics.c:4119
#, gcc-internal-format
msgid "automatic variable %qE cannot be %<threadprivate%>"
msgstr ""
-#: c-parser.c:9913 cp/semantics.c:4015
+#: c-parser.c:9945 cp/semantics.c:4121
#, gcc-internal-format
msgid "%<threadprivate%> %qE has incomplete type"
msgstr ""
@@ -14090,7 +14210,7 @@
msgid "%qD has an incomplete type"
msgstr ""
-#: c-typeck.c:227 cp/call.c:3488
+#: c-typeck.c:227 c-typeck.c:8506 c-typeck.c:8538 cp/call.c:3664
#, gcc-internal-format
msgid "invalid use of void expression"
msgstr ""
@@ -14100,7 +14220,7 @@
msgid "invalid use of flexible array member"
msgstr ""
-#: c-typeck.c:241 cp/typeck2.c:415
+#: c-typeck.c:241 cp/typeck2.c:423
#, gcc-internal-format
msgid "invalid use of array with unspecified bounds"
msgstr ""
@@ -14121,102 +14241,102 @@
msgid "%qT and %qT are in disjoint named address spaces"
msgstr ""
-#: c-typeck.c:561 c-typeck.c:586
+#: c-typeck.c:558 c-typeck.c:583
#, gcc-internal-format
msgid "function types not truly compatible in ISO C"
msgstr ""
-#: c-typeck.c:730
+#: c-typeck.c:726
#, gcc-internal-format
msgid "can%'t mix operands of decimal float and vector types"
msgstr ""
-#: c-typeck.c:735
+#: c-typeck.c:731
#, gcc-internal-format
msgid "can%'t mix operands of decimal float and complex types"
msgstr ""
-#: c-typeck.c:740
+#: c-typeck.c:736
#, gcc-internal-format
msgid "can%'t mix operands of decimal float and other float types"
msgstr ""
-#: c-typeck.c:1216
+#: c-typeck.c:1212
#, gcc-internal-format
msgid "types are not quite compatible"
msgstr ""
-#: c-typeck.c:1220
+#: c-typeck.c:1216
#, gcc-internal-format
msgid "pointer target types incompatible in C++"
msgstr ""
-#: c-typeck.c:1552
+#: c-typeck.c:1548
#, gcc-internal-format
msgid "function return types not compatible due to %<volatile%>"
msgstr ""
-#: c-typeck.c:1728 c-typeck.c:3380
+#: c-typeck.c:1724 c-typeck.c:3375
#, gcc-internal-format
msgid "arithmetic on pointer to an incomplete type"
msgstr ""
-#: c-typeck.c:2144
+#: c-typeck.c:2140
#, gcc-internal-format
msgid "%qT has no member named %qE"
msgstr ""
-#: c-typeck.c:2198
+#: c-typeck.c:2194
#, gcc-internal-format
msgid "request for member %qE in something not a structure or union"
msgstr ""
-#: c-typeck.c:2247
+#: c-typeck.c:2243
#, gcc-internal-format
msgid "dereferencing pointer to incomplete type"
msgstr ""
-#: c-typeck.c:2251
+#: c-typeck.c:2247
#, gcc-internal-format
msgid "dereferencing %<void *%> pointer"
msgstr ""
-#: c-typeck.c:2307
+#: c-typeck.c:2303
#, gcc-internal-format
msgid "subscripted value is neither array nor pointer nor vector"
msgstr ""
-#: c-typeck.c:2319 cp/typeck.c:2857 cp/typeck.c:2951
+#: c-typeck.c:2315 cp/typeck.c:2870 cp/typeck.c:2964
#, gcc-internal-format
msgid "array subscript is not an integer"
msgstr ""
-#: c-typeck.c:2325
+#: c-typeck.c:2321
#, gcc-internal-format
msgid "subscripted value is pointer to function"
msgstr ""
-#: c-typeck.c:2350
+#: c-typeck.c:2346
#, gcc-internal-format
msgid "index value is out of bound"
msgstr ""
-#: c-typeck.c:2394
+#: c-typeck.c:2390
#, gcc-internal-format
msgid "ISO C forbids subscripting %<register%> array"
msgstr ""
-#: c-typeck.c:2397
+#: c-typeck.c:2393
#, gcc-internal-format
msgid "ISO C90 forbids subscripting non-lvalue array"
msgstr ""
-#: c-typeck.c:2505
+#: c-typeck.c:2501
#, gcc-internal-format
msgid "enum constant defined here"
msgstr ""
-#: c-typeck.c:2736
+#: c-typeck.c:2732
#, gcc-internal-format
msgid "called object %qE is not a function"
msgstr ""
@@ -14224,358 +14344,358 @@
#. This situation leads to run-time undefined behavior. We can't,
#. therefore, simply error unless we can prove that all possible
#. executions of the program must execute the code.
-#: c-typeck.c:2772
+#: c-typeck.c:2768
#, gcc-internal-format
msgid "function called through a non-compatible type"
msgstr ""
-#: c-typeck.c:2786 c-typeck.c:2840
+#: c-typeck.c:2782 c-typeck.c:2835
#, gcc-internal-format
msgid "function with qualified void return type called"
msgstr ""
-#: c-typeck.c:2930
+#: c-typeck.c:2925
#, gcc-internal-format
msgid "too many arguments to method %qE"
msgstr ""
-#: c-typeck.c:2933 c-family/c-common.c:8055
+#: c-typeck.c:2928 c-family/c-common.c:8085
#, gcc-internal-format
msgid "too many arguments to function %qE"
msgstr ""
-#: c-typeck.c:2936 c-typeck.c:3170 cp/decl2.c:4190 cp/typeck.c:3307
+#: c-typeck.c:2931 c-typeck.c:3165 cp/decl2.c:4205 cp/typeck.c:3319
#, gcc-internal-format
msgid "declared here"
msgstr ""
-#: c-typeck.c:2971
+#: c-typeck.c:2966
#, gcc-internal-format, gfc-internal-format
msgid "type of formal parameter %d is incomplete"
msgstr ""
-#: c-typeck.c:2986
+#: c-typeck.c:2981
#, gcc-internal-format
msgid ""
"passing argument %d of %qE as integer rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:2991
+#: c-typeck.c:2986
#, gcc-internal-format
msgid ""
"passing argument %d of %qE as integer rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:2996
+#: c-typeck.c:2991
#, gcc-internal-format
msgid ""
"passing argument %d of %qE as complex rather than floating due to prototype"
msgstr ""
-#: c-typeck.c:3001
+#: c-typeck.c:2996
#, gcc-internal-format
msgid ""
"passing argument %d of %qE as floating rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:3006
+#: c-typeck.c:3001
#, gcc-internal-format
msgid ""
"passing argument %d of %qE as complex rather than integer due to prototype"
msgstr ""
-#: c-typeck.c:3011
+#: c-typeck.c:3006
#, gcc-internal-format
msgid ""
"passing argument %d of %qE as floating rather than complex due to prototype"
msgstr ""
-#: c-typeck.c:3024
+#: c-typeck.c:3019
#, gcc-internal-format
msgid ""
"passing argument %d of %qE as %<float%> rather than %<double%> due to "
"prototype"
msgstr ""
-#: c-typeck.c:3049
+#: c-typeck.c:3044
#, gcc-internal-format
msgid "passing argument %d of %qE as %qT rather than %qT due to prototype"
msgstr ""
-#: c-typeck.c:3071
+#: c-typeck.c:3066
#, gcc-internal-format
msgid "passing argument %d of %qE with different width due to prototype"
msgstr ""
-#: c-typeck.c:3095
+#: c-typeck.c:3090
#, gcc-internal-format
msgid "passing argument %d of %qE as unsigned due to prototype"
msgstr ""
-#: c-typeck.c:3100
+#: c-typeck.c:3095
#, gcc-internal-format
msgid "passing argument %d of %qE as signed due to prototype"
msgstr ""
-#: c-typeck.c:3135 cp/call.c:5666
+#: c-typeck.c:3130 cp/call.c:5932
#, gcc-internal-format
msgid "implicit conversion from %qT to %qT when passing argument to function"
msgstr ""
-#: c-typeck.c:3168 c-family/c-common.c:8893 c-family/c-common.c:8942
+#: c-typeck.c:3163 c-family/c-common.c:8925 c-family/c-common.c:8980
#, gcc-internal-format
msgid "too few arguments to function %qE"
msgstr ""
-#: c-typeck.c:3250 c-typeck.c:3255
+#: c-typeck.c:3245 c-typeck.c:3250
#, gcc-internal-format
msgid "comparison with string literal results in unspecified behavior"
msgstr ""
-#: c-typeck.c:3269
+#: c-typeck.c:3264
#, gcc-internal-format
msgid "comparison between %qT and %qT"
msgstr ""
-#: c-typeck.c:3321
+#: c-typeck.c:3316
#, gcc-internal-format
msgid "pointer of type %<void *%> used in subtraction"
msgstr ""
-#: c-typeck.c:3324
+#: c-typeck.c:3319
#, gcc-internal-format
msgid "pointer to a function used in subtraction"
msgstr ""
-#: c-typeck.c:3488
+#: c-typeck.c:3483
#, gcc-internal-format
msgid "ISO C does not support %<~%> for complex conjugation"
msgstr ""
-#: c-typeck.c:3527
+#: c-typeck.c:3522
#, gcc-internal-format
msgid "wrong type argument to unary exclamation mark"
msgstr ""
-#: c-typeck.c:3578
+#: c-typeck.c:3573
#, gcc-internal-format
msgid "increment of enumeration value is invalid in C++"
msgstr ""
-#: c-typeck.c:3581
+#: c-typeck.c:3576
#, gcc-internal-format
msgid "decrement of enumeration value is invalid in C++"
msgstr ""
-#: c-typeck.c:3594
+#: c-typeck.c:3589
#, gcc-internal-format
msgid "ISO C does not support %<++%> and %<--%> on complex types"
msgstr ""
-#: c-typeck.c:3613 c-typeck.c:3645
+#: c-typeck.c:3608 c-typeck.c:3640
#, gcc-internal-format
msgid "wrong type argument to increment"
msgstr ""
-#: c-typeck.c:3615 c-typeck.c:3648
+#: c-typeck.c:3610 c-typeck.c:3643
#, gcc-internal-format
msgid "wrong type argument to decrement"
msgstr ""
-#: c-typeck.c:3635
+#: c-typeck.c:3630
#, gcc-internal-format
msgid "increment of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:3638
+#: c-typeck.c:3633
#, gcc-internal-format
msgid "decrement of pointer to unknown structure"
msgstr ""
-#: c-typeck.c:3722
+#: c-typeck.c:3717
#, gcc-internal-format
msgid "taking address of expression of type %<void%>"
msgstr ""
-#: c-typeck.c:3892 c-family/c-common.c:8649
+#: c-typeck.c:3879 c-family/c-common.c:8679
#, gcc-internal-format
msgid "assignment of read-only location %qE"
msgstr ""
-#: c-typeck.c:3895 c-family/c-common.c:8650
+#: c-typeck.c:3882 c-family/c-common.c:8680
#, gcc-internal-format
msgid "increment of read-only location %qE"
msgstr ""
-#: c-typeck.c:3898 c-family/c-common.c:8651
+#: c-typeck.c:3885 c-family/c-common.c:8681
#, gcc-internal-format
msgid "decrement of read-only location %qE"
msgstr ""
-#: c-typeck.c:3939
+#: c-typeck.c:3926
#, gcc-internal-format
msgid "cannot take address of bit-field %qD"
msgstr ""
-#: c-typeck.c:3967
+#: c-typeck.c:3954
#, gcc-internal-format
msgid "global register variable %qD used in nested function"
msgstr ""
-#: c-typeck.c:3970
+#: c-typeck.c:3957
#, gcc-internal-format
msgid "register variable %qD used in nested function"
msgstr ""
-#: c-typeck.c:3975
+#: c-typeck.c:3962
#, gcc-internal-format
msgid "address of global register variable %qD requested"
msgstr ""
-#: c-typeck.c:3977
+#: c-typeck.c:3964
#, gcc-internal-format
msgid "address of register variable %qD requested"
msgstr ""
-#: c-typeck.c:4071
+#: c-typeck.c:4058
#, gcc-internal-format
msgid "non-lvalue array in conditional expression"
msgstr ""
-#: c-typeck.c:4127 cp/call.c:4337
+#: c-typeck.c:4114 cp/call.c:4549
#, gcc-internal-format
msgid ""
"implicit conversion from %qT to %qT to match other result of conditional"
msgstr ""
-#: c-typeck.c:4201
+#: c-typeck.c:4188
#, gcc-internal-format
msgid "ISO C forbids conditional expr with only one void side"
msgstr ""
-#: c-typeck.c:4218
+#: c-typeck.c:4205
#, gcc-internal-format
msgid "pointers to disjoint address spaces used in conditional expression"
msgstr ""
-#: c-typeck.c:4226 c-typeck.c:4235
+#: c-typeck.c:4213 c-typeck.c:4222
#, gcc-internal-format
msgid "ISO C forbids conditional expr between %<void *%> and function pointer"
msgstr ""
-#: c-typeck.c:4248
+#: c-typeck.c:4235
#, gcc-internal-format
msgid "pointer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:4257 c-typeck.c:4268
+#: c-typeck.c:4244 c-typeck.c:4255
#, gcc-internal-format
msgid "pointer/integer type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:4282
+#: c-typeck.c:4269
#, gcc-internal-format
msgid "type mismatch in conditional expression"
msgstr ""
-#: c-typeck.c:4376
+#: c-typeck.c:4363
#, gcc-internal-format
msgid "left-hand operand of comma expression has no effect"
msgstr ""
-#: c-typeck.c:4446
+#: c-typeck.c:4433
msgid "cast adds %q#v qualifier to function type"
msgstr ""
-#: c-typeck.c:4452
+#: c-typeck.c:4439
msgid "cast discards %q#v qualifier from pointer target type"
msgstr ""
-#: c-typeck.c:4487
+#: c-typeck.c:4474
#, gcc-internal-format
msgid ""
"to be safe all intermediate pointers in cast from %qT to %qT must be %<const"
"%> qualified"
msgstr ""
-#: c-typeck.c:4524
+#: c-typeck.c:4511
#, gcc-internal-format
msgid "cast specifies array type"
msgstr ""
-#: c-typeck.c:4530
+#: c-typeck.c:4517
#, gcc-internal-format
msgid "cast specifies function type"
msgstr ""
-#: c-typeck.c:4546
+#: c-typeck.c:4533
#, gcc-internal-format
msgid "ISO C forbids casting nonscalar to the same type"
msgstr ""
-#: c-typeck.c:4563
+#: c-typeck.c:4550
#, gcc-internal-format
msgid "ISO C forbids casts to union type"
msgstr ""
-#: c-typeck.c:4573
+#: c-typeck.c:4560
#, gcc-internal-format
msgid "cast to union type from type not present in union"
msgstr ""
-#: c-typeck.c:4608
+#: c-typeck.c:4595
#, gcc-internal-format, gfc-internal-format
msgid ""
"cast to %s address space pointer from disjoint generic address space pointer"
msgstr ""
-#: c-typeck.c:4613
+#: c-typeck.c:4600
#, gcc-internal-format, gfc-internal-format
msgid ""
"cast to generic address space pointer from disjoint %s address space pointer"
msgstr ""
-#: c-typeck.c:4618
+#: c-typeck.c:4605
#, gcc-internal-format, gfc-internal-format
msgid "cast to %s address space pointer from disjoint %s address space pointer"
msgstr ""
-#: c-typeck.c:4638
+#: c-typeck.c:4625
#, gcc-internal-format
msgid "cast increases required alignment of target type"
msgstr ""
-#: c-typeck.c:4649
+#: c-typeck.c:4636
#, gcc-internal-format
msgid "cast from pointer to integer of different size"
msgstr ""
-#: c-typeck.c:4654
+#: c-typeck.c:4641
#, gcc-internal-format
msgid "cast from function call of type %qT to non-matching type %qT"
msgstr ""
-#: c-typeck.c:4663 cp/typeck.c:6379
+#: c-typeck.c:4650 cp/typeck.c:6427
#, gcc-internal-format
msgid "cast to pointer from integer of different size"
msgstr ""
-#: c-typeck.c:4677
+#: c-typeck.c:4664
#, gcc-internal-format
msgid "ISO C forbids conversion of function pointer to object pointer type"
msgstr ""
-#: c-typeck.c:4686
+#: c-typeck.c:4673
#, gcc-internal-format
msgid "ISO C forbids conversion of object pointer to function pointer type"
msgstr ""
-#: c-typeck.c:4769
+#: c-typeck.c:4756
#, gcc-internal-format
msgid "defining a type in a cast is invalid in C++"
msgstr ""
-#: c-typeck.c:4908 c-typeck.c:5205
+#: c-typeck.c:4895 c-typeck.c:5192
#, gcc-internal-format
msgid "enum conversion in assignment is invalid in C++"
msgstr ""
@@ -14587,694 +14707,694 @@
#. strings are complete sentences, visible to gettext and checked at
#. compile time. It is the same as WARN_FOR_ASSIGNMENT but with an
#. extra parameter to enumerate qualifiers.
-#: c-typeck.c:5113 c-typeck.c:5143 c-typeck.c:5670
+#: c-typeck.c:5100 c-typeck.c:5130 c-typeck.c:5657
#, gcc-internal-format
msgid "expected %qT but argument is of type %qT"
msgstr ""
-#: c-typeck.c:5203
+#: c-typeck.c:5190
#, gcc-internal-format
msgid "enum conversion when passing argument %d of %qE is invalid in C++"
msgstr ""
-#: c-typeck.c:5207 c-typeck.c:7762
+#: c-typeck.c:5194 c-typeck.c:7759
#, gcc-internal-format
msgid "enum conversion in initialization is invalid in C++"
msgstr ""
-#: c-typeck.c:5209
+#: c-typeck.c:5196
#, gcc-internal-format
msgid "enum conversion in return is invalid in C++"
msgstr ""
-#: c-typeck.c:5238
+#: c-typeck.c:5225
#, gcc-internal-format
msgid "cannot pass rvalue to reference parameter"
msgstr ""
-#: c-typeck.c:5368 c-typeck.c:5591
+#: c-typeck.c:5355 c-typeck.c:5578
msgid ""
"passing argument %d of %qE makes %q#v qualified function pointer from "
"unqualified"
msgstr ""
-#: c-typeck.c:5371 c-typeck.c:5594
+#: c-typeck.c:5358 c-typeck.c:5581
msgid "assignment makes %q#v qualified function pointer from unqualified"
msgstr ""
-#: c-typeck.c:5374 c-typeck.c:5596
+#: c-typeck.c:5361 c-typeck.c:5583
msgid "initialization makes %q#v qualified function pointer from unqualified"
msgstr ""
-#: c-typeck.c:5377 c-typeck.c:5598
+#: c-typeck.c:5364 c-typeck.c:5585
msgid "return makes %q#v qualified function pointer from unqualified"
msgstr ""
-#: c-typeck.c:5384 c-typeck.c:5554
+#: c-typeck.c:5371 c-typeck.c:5541
msgid ""
"passing argument %d of %qE discards %qv qualifier from pointer target type"
msgstr ""
-#: c-typeck.c:5386 c-typeck.c:5556
+#: c-typeck.c:5373 c-typeck.c:5543
msgid "assignment discards %qv qualifier from pointer target type"
msgstr ""
-#: c-typeck.c:5388 c-typeck.c:5558
+#: c-typeck.c:5375 c-typeck.c:5545
msgid "initialization discards %qv qualifier from pointer target type"
msgstr ""
-#: c-typeck.c:5390 c-typeck.c:5560
+#: c-typeck.c:5377 c-typeck.c:5547
msgid "return discards %qv qualifier from pointer target type"
msgstr ""
-#: c-typeck.c:5399
+#: c-typeck.c:5386
#, gcc-internal-format
msgid "ISO C prohibits argument conversion to union type"
msgstr ""
-#: c-typeck.c:5454
+#: c-typeck.c:5441
#, gcc-internal-format
msgid "request for implicit conversion from %qT to %qT not permitted in C++"
msgstr ""
-#: c-typeck.c:5466
+#: c-typeck.c:5453
#, gcc-internal-format
msgid "passing argument %d of %qE from pointer to non-enclosed address space"
msgstr ""
-#: c-typeck.c:5470
+#: c-typeck.c:5457
#, gcc-internal-format
msgid "assignment from pointer to non-enclosed address space"
msgstr ""
-#: c-typeck.c:5474
+#: c-typeck.c:5461
#, gcc-internal-format
msgid "initialization from pointer to non-enclosed address space"
msgstr ""
-#: c-typeck.c:5478
+#: c-typeck.c:5465
#, gcc-internal-format
msgid "return from pointer to non-enclosed address space"
msgstr ""
-#: c-typeck.c:5496
+#: c-typeck.c:5483
#, gcc-internal-format
msgid "argument %d of %qE might be a candidate for a format attribute"
msgstr ""
-#: c-typeck.c:5502
+#: c-typeck.c:5489
#, gcc-internal-format
msgid "assignment left-hand side might be a candidate for a format attribute"
msgstr ""
-#: c-typeck.c:5507
+#: c-typeck.c:5494
#, gcc-internal-format
msgid ""
"initialization left-hand side might be a candidate for a format attribute"
msgstr ""
-#: c-typeck.c:5512 cp/typeck.c:7337
+#: c-typeck.c:5499 cp/typeck.c:7385
#, gcc-internal-format
msgid "return type might be a candidate for a format attribute"
msgstr ""
-#: c-typeck.c:5536
+#: c-typeck.c:5523
#, gcc-internal-format
msgid ""
"ISO C forbids passing argument %d of %qE between function pointer and %<void "
"*%>"
msgstr ""
-#: c-typeck.c:5539
+#: c-typeck.c:5526
#, gcc-internal-format
msgid "ISO C forbids assignment between function pointer and %<void *%>"
msgstr ""
-#: c-typeck.c:5541
+#: c-typeck.c:5528
#, gcc-internal-format
msgid "ISO C forbids initialization between function pointer and %<void *%>"
msgstr ""
-#: c-typeck.c:5543
+#: c-typeck.c:5530
#, gcc-internal-format
msgid "ISO C forbids return between function pointer and %<void *%>"
msgstr ""
-#: c-typeck.c:5572
+#: c-typeck.c:5559
#, gcc-internal-format
msgid "pointer targets in passing argument %d of %qE differ in signedness"
msgstr ""
-#: c-typeck.c:5574
+#: c-typeck.c:5561
#, gcc-internal-format
msgid "pointer targets in assignment differ in signedness"
msgstr ""
-#: c-typeck.c:5576
+#: c-typeck.c:5563
#, gcc-internal-format
msgid "pointer targets in initialization differ in signedness"
msgstr ""
-#: c-typeck.c:5578
+#: c-typeck.c:5565
#, gcc-internal-format
msgid "pointer targets in return differ in signedness"
msgstr ""
-#: c-typeck.c:5607
+#: c-typeck.c:5594
#, gcc-internal-format
msgid "passing argument %d of %qE from incompatible pointer type"
msgstr ""
-#: c-typeck.c:5609
+#: c-typeck.c:5596
#, gcc-internal-format
msgid "assignment from incompatible pointer type"
msgstr ""
-#: c-typeck.c:5610
+#: c-typeck.c:5597
#, gcc-internal-format
msgid "initialization from incompatible pointer type"
msgstr ""
-#: c-typeck.c:5612
+#: c-typeck.c:5599
#, gcc-internal-format
msgid "return from incompatible pointer type"
msgstr ""
#. ??? This should not be an error when inlining calls to
#. unprototyped functions.
-#: c-typeck.c:5620 c-typeck.c:6170 cp/typeck.c:1855
+#: c-typeck.c:5607 c-typeck.c:6159 cp/typeck.c:1866
#, gcc-internal-format
msgid "invalid use of non-lvalue array"
msgstr ""
-#: c-typeck.c:5630
+#: c-typeck.c:5617
#, gcc-internal-format
msgid "passing argument %d of %qE makes pointer from integer without a cast"
msgstr ""
-#: c-typeck.c:5632
+#: c-typeck.c:5619
#, gcc-internal-format
msgid "assignment makes pointer from integer without a cast"
msgstr ""
-#: c-typeck.c:5634
+#: c-typeck.c:5621
#, gcc-internal-format
msgid "initialization makes pointer from integer without a cast"
msgstr ""
-#: c-typeck.c:5636
+#: c-typeck.c:5623
#, gcc-internal-format
msgid "return makes pointer from integer without a cast"
msgstr ""
-#: c-typeck.c:5644
+#: c-typeck.c:5631
#, gcc-internal-format
msgid "passing argument %d of %qE makes integer from pointer without a cast"
msgstr ""
-#: c-typeck.c:5646
+#: c-typeck.c:5633
#, gcc-internal-format
msgid "assignment makes integer from pointer without a cast"
msgstr ""
-#: c-typeck.c:5648
+#: c-typeck.c:5635
#, gcc-internal-format
msgid "initialization makes integer from pointer without a cast"
msgstr ""
-#: c-typeck.c:5650
+#: c-typeck.c:5637
#, gcc-internal-format
msgid "return makes integer from pointer without a cast"
msgstr ""
-#: c-typeck.c:5667 c-family/c-common.c:8910 config/mep/mep.c:6331
+#: c-typeck.c:5654 c-family/c-common.c:8942 config/mep/mep.c:6320
#, gcc-internal-format
msgid "incompatible type for argument %d of %qE"
msgstr ""
-#: c-typeck.c:5673
+#: c-typeck.c:5660
#, gcc-internal-format
msgid "incompatible types when assigning to type %qT from type %qT"
msgstr ""
-#: c-typeck.c:5678
+#: c-typeck.c:5665
#, gcc-internal-format
msgid "incompatible types when initializing type %qT using type %qT"
msgstr ""
-#: c-typeck.c:5683
+#: c-typeck.c:5670
#, gcc-internal-format
msgid "incompatible types when returning type %qT but %qT was expected"
msgstr ""
-#: c-typeck.c:5747
+#: c-typeck.c:5734
#, gcc-internal-format
msgid "traditional C rejects automatic aggregate initialization"
msgstr ""
-#: c-typeck.c:5921 c-typeck.c:5938 c-typeck.c:5956
+#: c-typeck.c:5910 c-typeck.c:5927 c-typeck.c:5945
#, gcc-internal-format
msgid "(near initialization for %qs)"
msgstr ""
-#: c-typeck.c:5971
+#: c-typeck.c:5960
#, gcc-internal-format
msgid "array initialized from parenthesized string constant"
msgstr ""
-#: c-typeck.c:6044 c-typeck.c:6919
+#: c-typeck.c:6033 c-typeck.c:6908
#, gcc-internal-format
msgid "initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:6054 cp/typeck2.c:818
+#: c-typeck.c:6043 cp/typeck2.c:838
#, gcc-internal-format
msgid "char-array initialized from wide string"
msgstr ""
-#: c-typeck.c:6062
+#: c-typeck.c:6051
#, gcc-internal-format
msgid "wide character array initialized from non-wide string"
msgstr ""
-#: c-typeck.c:6068
+#: c-typeck.c:6057
#, gcc-internal-format
msgid "wide character array initialized from incompatible wide string"
msgstr ""
-#: c-typeck.c:6102
+#: c-typeck.c:6091
#, gcc-internal-format
msgid "array of inappropriate type initialized from string constant"
msgstr ""
-#: c-typeck.c:6196
+#: c-typeck.c:6185
#, gcc-internal-format
msgid "array initialized from non-constant array expression"
msgstr ""
-#: c-typeck.c:6210 c-typeck.c:6213 c-typeck.c:6221 c-typeck.c:6260
-#: c-typeck.c:7735
+#: c-typeck.c:6199 c-typeck.c:6202 c-typeck.c:6210 c-typeck.c:6249
+#: c-typeck.c:7732
#, gcc-internal-format
msgid "initializer element is not constant"
msgstr ""
-#: c-typeck.c:6226 c-typeck.c:6272 c-typeck.c:7745
+#: c-typeck.c:6215 c-typeck.c:6261 c-typeck.c:7742
#, gcc-internal-format
msgid "initializer element is not a constant expression"
msgstr ""
-#: c-typeck.c:6267 c-typeck.c:7740
+#: c-typeck.c:6256 c-typeck.c:7737
#, gcc-internal-format
msgid "initializer element is not computable at load time"
msgstr ""
-#: c-typeck.c:6285
+#: c-typeck.c:6274
#, gcc-internal-format
msgid "invalid initializer"
msgstr ""
-#: c-typeck.c:6559 cp/decl.c:5357
+#: c-typeck.c:6548 cp/decl.c:5471
#, gcc-internal-format
msgid "opaque vector types cannot be initialized"
msgstr ""
-#: c-typeck.c:6774
+#: c-typeck.c:6763
#, gcc-internal-format
msgid "extra brace group at end of initializer"
msgstr ""
-#: c-typeck.c:6795
+#: c-typeck.c:6784
#, gcc-internal-format
msgid "missing braces around initializer"
msgstr ""
-#: c-typeck.c:6856
+#: c-typeck.c:6845
#, gcc-internal-format
msgid "braces around scalar initializer"
msgstr ""
-#: c-typeck.c:6916
+#: c-typeck.c:6905
#, gcc-internal-format
msgid "initialization of flexible array member in a nested context"
msgstr ""
-#: c-typeck.c:6947
+#: c-typeck.c:6944
#, gcc-internal-format
msgid "missing initializer"
msgstr ""
-#: c-typeck.c:6969
+#: c-typeck.c:6966
#, gcc-internal-format
msgid "empty scalar initializer"
msgstr ""
-#: c-typeck.c:6974
+#: c-typeck.c:6971
#, gcc-internal-format
msgid "extra elements in scalar initializer"
msgstr ""
-#: c-typeck.c:7085 c-typeck.c:7166
+#: c-typeck.c:7082 c-typeck.c:7163
#, gcc-internal-format
msgid "array index in non-array initializer"
msgstr ""
-#: c-typeck.c:7090 c-typeck.c:7222
+#: c-typeck.c:7087 c-typeck.c:7219
#, gcc-internal-format
msgid "field name not in record or union initializer"
msgstr ""
-#: c-typeck.c:7139
+#: c-typeck.c:7136
#, gcc-internal-format
msgid "array index in initializer not of integer type"
msgstr ""
-#: c-typeck.c:7148 c-typeck.c:7157
+#: c-typeck.c:7145 c-typeck.c:7154
#, gcc-internal-format
msgid "array index in initializer is not an integer constant expression"
msgstr ""
-#: c-typeck.c:7162 c-typeck.c:7164
+#: c-typeck.c:7159 c-typeck.c:7161
#, gcc-internal-format
msgid "nonconstant array index in initializer"
msgstr ""
-#: c-typeck.c:7168 c-typeck.c:7171
+#: c-typeck.c:7165 c-typeck.c:7168
#, gcc-internal-format
msgid "array index in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:7185
+#: c-typeck.c:7182
#, gcc-internal-format
msgid "empty index range in initializer"
msgstr ""
-#: c-typeck.c:7194
+#: c-typeck.c:7191
#, gcc-internal-format
msgid "array index range in initializer exceeds array bounds"
msgstr ""
-#: c-typeck.c:7229
+#: c-typeck.c:7226
#, gcc-internal-format
msgid "unknown field %qE specified in initializer"
msgstr ""
-#: c-typeck.c:7281 c-typeck.c:7308 c-typeck.c:7836
+#: c-typeck.c:7278 c-typeck.c:7305 c-typeck.c:7833
#, gcc-internal-format
msgid "initialized field with side-effects overwritten"
msgstr ""
-#: c-typeck.c:7283 c-typeck.c:7310 c-typeck.c:7838
+#: c-typeck.c:7280 c-typeck.c:7307 c-typeck.c:7835
#, gcc-internal-format
msgid "initialized field overwritten"
msgstr ""
-#: c-typeck.c:8055
+#: c-typeck.c:8052
#, gcc-internal-format
msgid "excess elements in char array initializer"
msgstr ""
-#: c-typeck.c:8062 c-typeck.c:8123
+#: c-typeck.c:8059 c-typeck.c:8120
#, gcc-internal-format
msgid "excess elements in struct initializer"
msgstr ""
-#: c-typeck.c:8138
+#: c-typeck.c:8135
#, gcc-internal-format
msgid "non-static initialization of a flexible array member"
msgstr ""
-#: c-typeck.c:8209
+#: c-typeck.c:8206
#, gcc-internal-format
msgid "excess elements in union initializer"
msgstr ""
-#: c-typeck.c:8231
+#: c-typeck.c:8228
#, gcc-internal-format
msgid "traditional C rejects initialization of unions"
msgstr ""
-#: c-typeck.c:8299
+#: c-typeck.c:8296
#, gcc-internal-format
msgid "excess elements in array initializer"
msgstr ""
-#: c-typeck.c:8333
+#: c-typeck.c:8330
#, gcc-internal-format
msgid "excess elements in vector initializer"
msgstr ""
-#: c-typeck.c:8365
+#: c-typeck.c:8362
#, gcc-internal-format
msgid "excess elements in scalar initializer"
msgstr ""
-#: c-typeck.c:8577
+#: c-typeck.c:8586
#, gcc-internal-format
msgid "ISO C forbids %<goto *expr;%>"
msgstr ""
-#: c-typeck.c:8599 cp/typeck.c:7550
+#: c-typeck.c:8608 cp/typeck.c:7598
#, gcc-internal-format
msgid "function declared %<noreturn%> has a %<return%> statement"
msgstr ""
-#: c-typeck.c:8622
+#: c-typeck.c:8631
#, gcc-internal-format
msgid "%<return%> with no value, in function returning non-void"
msgstr ""
-#: c-typeck.c:8632
+#: c-typeck.c:8641
#, gcc-internal-format
msgid "%<return%> with a value, in function returning void"
msgstr ""
-#: c-typeck.c:8634
+#: c-typeck.c:8643
#, gcc-internal-format
msgid "ISO C forbids %<return%> with expression, in function returning void"
msgstr ""
-#: c-typeck.c:8695
+#: c-typeck.c:8704
#, gcc-internal-format
msgid "function returns address of local variable"
msgstr ""
-#: c-typeck.c:8768 cp/semantics.c:1038
+#: c-typeck.c:8777 cp/semantics.c:1036
#, gcc-internal-format
msgid "switch quantity not an integer"
msgstr ""
-#: c-typeck.c:8781
+#: c-typeck.c:8790
#, gcc-internal-format
msgid "%<long%> switch expression not converted to %<int%> in ISO C"
msgstr ""
-#: c-typeck.c:8817 c-typeck.c:8825
+#: c-typeck.c:8826 c-typeck.c:8834
#, gcc-internal-format
msgid "case label is not an integer constant expression"
msgstr ""
-#: c-typeck.c:8831 cp/parser.c:7997
+#: c-typeck.c:8840 cp/parser.c:8070
#, gcc-internal-format
msgid "case label not within a switch statement"
msgstr ""
-#: c-typeck.c:8833
+#: c-typeck.c:8842
#, gcc-internal-format
msgid "%<default%> label not within a switch statement"
msgstr ""
-#: c-typeck.c:8916 cp/parser.c:8293
+#: c-typeck.c:8925 cp/parser.c:8370
#, gcc-internal-format
msgid "suggest explicit braces to avoid ambiguous %<else%>"
msgstr ""
-#: c-typeck.c:9025 cp/cp-gimplify.c:91 cp/parser.c:8885
+#: c-typeck.c:9034 cp/cp-gimplify.c:92 cp/parser.c:9048
#, gcc-internal-format
msgid "break statement not within loop or switch"
msgstr ""
-#: c-typeck.c:9027 cp/parser.c:8906
+#: c-typeck.c:9036 cp/parser.c:9069
#, gcc-internal-format
msgid "continue statement not within a loop"
msgstr ""
-#: c-typeck.c:9032 cp/parser.c:8896
+#: c-typeck.c:9041 cp/parser.c:9059
#, gcc-internal-format
msgid "break statement used with OpenMP for loop"
msgstr ""
-#: c-typeck.c:9058 cp/cp-gimplify.c:411
+#: c-typeck.c:9067 cp/cp-gimplify.c:412
#, gcc-internal-format
msgid "statement with no effect"
msgstr ""
-#: c-typeck.c:9084
+#: c-typeck.c:9093
#, gcc-internal-format
msgid "expression statement has incomplete type"
msgstr ""
-#: c-typeck.c:9686 cp/typeck.c:3860
+#: c-typeck.c:9695 cp/typeck.c:3872
#, gcc-internal-format
msgid "right shift count is negative"
msgstr ""
-#: c-typeck.c:9697 cp/typeck.c:3867
+#: c-typeck.c:9706 cp/typeck.c:3879
#, gcc-internal-format
msgid "right shift count >= width of type"
msgstr ""
-#: c-typeck.c:9738 cp/typeck.c:3889
+#: c-typeck.c:9747 cp/typeck.c:3901
#, gcc-internal-format
msgid "left shift count is negative"
msgstr ""
-#: c-typeck.c:9745 cp/typeck.c:3895
+#: c-typeck.c:9754 cp/typeck.c:3907
#, gcc-internal-format
msgid "left shift count >= width of type"
msgstr ""
-#: c-typeck.c:9766 cp/typeck.c:3941
+#: c-typeck.c:9775 cp/typeck.c:3953
#, gcc-internal-format
msgid "comparing floating point with == or != is unsafe"
msgstr ""
-#: c-typeck.c:9783 c-typeck.c:9803
+#: c-typeck.c:9792 c-typeck.c:9812
#, gcc-internal-format
msgid ""
"the comparison will always evaluate as %<false%> for the address of %qD will "
"never be NULL"
msgstr ""
-#: c-typeck.c:9789 c-typeck.c:9809
+#: c-typeck.c:9798 c-typeck.c:9818
#, gcc-internal-format
msgid ""
"the comparison will always evaluate as %<true%> for the address of %qD will "
"never be NULL"
msgstr ""
-#: c-typeck.c:9830 c-typeck.c:9905
+#: c-typeck.c:9839 c-typeck.c:9914
#, gcc-internal-format
msgid "comparison of pointers to disjoint address spaces"
msgstr ""
-#: c-typeck.c:9837 c-typeck.c:9843
+#: c-typeck.c:9846 c-typeck.c:9852
#, gcc-internal-format
msgid "ISO C forbids comparison of %<void *%> with function pointer"
msgstr ""
-#: c-typeck.c:9850 c-typeck.c:9915
+#: c-typeck.c:9859 c-typeck.c:9924
#, gcc-internal-format
msgid "comparison of distinct pointer types lacks a cast"
msgstr ""
-#: c-typeck.c:9862 c-typeck.c:9867 c-typeck.c:9941 c-typeck.c:9946
+#: c-typeck.c:9871 c-typeck.c:9876 c-typeck.c:9950 c-typeck.c:9955
#, gcc-internal-format
msgid "comparison between pointer and integer"
msgstr ""
-#: c-typeck.c:9893
+#: c-typeck.c:9902
#, gcc-internal-format
msgid "comparison of complete and incomplete pointers"
msgstr ""
-#: c-typeck.c:9895
+#: c-typeck.c:9904
#, gcc-internal-format
msgid "ISO C forbids ordered comparisons of pointers to functions"
msgstr ""
-#: c-typeck.c:9900
+#: c-typeck.c:9909
#, gcc-internal-format
msgid "ordered comparison of pointer with null pointer"
msgstr ""
-#: c-typeck.c:9923 c-typeck.c:9926 c-typeck.c:9933 c-typeck.c:9936
+#: c-typeck.c:9932 c-typeck.c:9935 c-typeck.c:9942 c-typeck.c:9945
#, gcc-internal-format
msgid "ordered comparison of pointer with integer zero"
msgstr ""
-#: c-typeck.c:9980 cp/typeck.c:4254
+#: c-typeck.c:9989 cp/typeck.c:4266
#, gcc-internal-format
msgid ""
"implicit conversion from %qT to %qT to match other operand of binary "
"expression"
msgstr ""
-#: c-typeck.c:10262
+#: c-typeck.c:10271
#, gcc-internal-format
msgid "used array that cannot be converted to pointer where scalar is required"
msgstr ""
-#: c-typeck.c:10266
+#: c-typeck.c:10275
#, gcc-internal-format
msgid "used struct type value where scalar is required"
msgstr ""
-#: c-typeck.c:10270
+#: c-typeck.c:10279
#, gcc-internal-format
msgid "used union type value where scalar is required"
msgstr ""
-#: c-typeck.c:10431 cp/semantics.c:3894
+#: c-typeck.c:10440 cp/semantics.c:3998
#, gcc-internal-format
msgid "%qE has invalid type for %<reduction%>"
msgstr ""
-#: c-typeck.c:10466 cp/semantics.c:3907
+#: c-typeck.c:10475 cp/semantics.c:4011
#, gcc-internal-format
msgid "%qE has invalid type for %<reduction(%s)%>"
msgstr ""
-#: c-typeck.c:10483 cp/semantics.c:3917
+#: c-typeck.c:10492 cp/semantics.c:4021
#, gcc-internal-format
msgid "%qE must be %<threadprivate%> for %<copyin%>"
msgstr ""
-#: c-typeck.c:10493 cp/semantics.c:3714
+#: c-typeck.c:10502 cp/semantics.c:3818
#, gcc-internal-format
msgid "%qE is not a variable in clause %qs"
msgstr ""
-#: c-typeck.c:10501 c-typeck.c:10523 c-typeck.c:10545
+#: c-typeck.c:10510 c-typeck.c:10532 c-typeck.c:10554
#, gcc-internal-format
msgid "%qE appears more than once in data clauses"
msgstr ""
-#: c-typeck.c:10516 cp/semantics.c:3737
+#: c-typeck.c:10525 cp/semantics.c:3841
#, gcc-internal-format
msgid "%qE is not a variable in clause %<firstprivate%>"
msgstr ""
-#: c-typeck.c:10538 cp/semantics.c:3759
+#: c-typeck.c:10547 cp/semantics.c:3863
#, gcc-internal-format
msgid "%qE is not a variable in clause %<lastprivate%>"
msgstr ""
-#: c-typeck.c:10600 cp/semantics.c:3958
+#: c-typeck.c:10609 cp/semantics.c:4063
#, gcc-internal-format
msgid "%qE is predetermined %qs for %qs"
msgstr ""
-#: c-typeck.c:10689
+#: c-typeck.c:10698
#, gcc-internal-format
msgid "C++ requires promoted type, not enum type, in %<va_arg%>"
msgstr ""
-#: calls.c:2076
+#: calls.c:2089
#, gcc-internal-format
msgid "function call has aggregate value"
msgstr ""
-#: cfgexpand.c:1106 function.c:1018 varasm.c:1990
+#: cfgexpand.c:1070 function.c:1018 varasm.c:1983
#, gcc-internal-format
msgid "size of variable %q+D is too large"
msgstr ""
-#: cfgexpand.c:4049
+#: cfgexpand.c:4041
#, gcc-internal-format
msgid "stack protector not protecting local variables: variable length buffer"
msgstr ""
-#: cfgexpand.c:4053
+#: cfgexpand.c:4045
#, gcc-internal-format, gfc-internal-format
msgid ""
"stack protector not protecting function: all local arrays are less than %d "
@@ -15366,7 +15486,7 @@
msgid "%s does not support can_remove_branch_p"
msgstr ""
-#: cfghooks.c:394
+#: cfghooks.c:393
#, gcc-internal-format, gfc-internal-format
msgid "%s does not support redirect_edge_and_branch_force"
msgstr ""
@@ -15421,27 +15541,32 @@
msgid "%s does not support make_forwarder_block"
msgstr ""
-#: cfghooks.c:881
+#: cfghooks.c:889
+#, gcc-internal-format, gfc-internal-format
+msgid "%s does not support force_nonfallthru"
+msgstr ""
+
+#: cfghooks.c:917
#, gcc-internal-format, gfc-internal-format
msgid "%s does not support can_duplicate_block_p"
msgstr ""
-#: cfghooks.c:903
+#: cfghooks.c:939
#, gcc-internal-format, gfc-internal-format
msgid "%s does not support duplicate_block"
msgstr ""
-#: cfghooks.c:978
+#: cfghooks.c:1014
#, gcc-internal-format, gfc-internal-format
msgid "%s does not support block_ends_with_call_p"
msgstr ""
-#: cfghooks.c:989
+#: cfghooks.c:1025
#, gcc-internal-format, gfc-internal-format
msgid "%s does not support block_ends_with_condjump_p"
msgstr ""
-#: cfghooks.c:1007
+#: cfghooks.c:1043
#, gcc-internal-format, gfc-internal-format
msgid "%s does not support flow_call_edges_add"
msgstr ""
@@ -15541,375 +15666,515 @@
msgid "%d exits recorded for loop %d (having %d exits)"
msgstr ""
-#: cfgrtl.c:1840
+#: cfgrtl.c:1806
#, gcc-internal-format, gfc-internal-format
msgid "BB_RTL flag not set for block %d"
msgstr ""
-#: cfgrtl.c:1847
+#: cfgrtl.c:1813
#, gcc-internal-format, gfc-internal-format
msgid "insn %d basic block pointer is %d, should be %d"
msgstr ""
-#: cfgrtl.c:1858
+#: cfgrtl.c:1824
#, gcc-internal-format, gfc-internal-format
msgid "insn %d in header of bb %d has non-NULL basic block"
msgstr ""
-#: cfgrtl.c:1866
+#: cfgrtl.c:1832
#, gcc-internal-format, gfc-internal-format
msgid "insn %d in footer of bb %d has non-NULL basic block"
msgstr ""
-#: cfgrtl.c:1888
+#: cfgrtl.c:1854
#, gcc-internal-format
msgid "verify_flow_info: REG_BR_PROB does not match cfg %wi %i"
msgstr ""
-#: cfgrtl.c:1903
+#: cfgrtl.c:1869
#, gcc-internal-format, gfc-internal-format
msgid "fallthru edge crosses section boundary (bb %i)"
msgstr ""
-#: cfgrtl.c:1927
+#: cfgrtl.c:1893
#, gcc-internal-format, gfc-internal-format
msgid "missing REG_EH_REGION note in the end of bb %i"
msgstr ""
-#: cfgrtl.c:1932
+#: cfgrtl.c:1898
#, gcc-internal-format, gfc-internal-format
msgid "too many eh edges %i"
msgstr ""
-#: cfgrtl.c:1940
+#: cfgrtl.c:1906
#, gcc-internal-format, gfc-internal-format
msgid "too many outgoing branch edges from bb %i"
msgstr ""
-#: cfgrtl.c:1945
+#: cfgrtl.c:1911
#, gcc-internal-format, gfc-internal-format
msgid "fallthru edge after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1950
+#: cfgrtl.c:1916
#, gcc-internal-format, gfc-internal-format
msgid "wrong number of branch edges after unconditional jump %i"
msgstr ""
-#: cfgrtl.c:1957
+#: cfgrtl.c:1923
#, gcc-internal-format, gfc-internal-format
msgid "wrong amount of branch edges after conditional jump %i"
msgstr ""
-#: cfgrtl.c:1963
+#: cfgrtl.c:1929
#, gcc-internal-format, gfc-internal-format
msgid "call edges for non-call insn in bb %i"
msgstr ""
-#: cfgrtl.c:1972
+#: cfgrtl.c:1938
#, gcc-internal-format, gfc-internal-format
msgid "abnormal edges for no purpose in bb %i"
msgstr ""
-#: cfgrtl.c:1984
+#: cfgrtl.c:1950
#, gcc-internal-format, gfc-internal-format
msgid "insn %d inside basic block %d but block_for_insn is NULL"
msgstr ""
-#: cfgrtl.c:1988
+#: cfgrtl.c:1954
#, gcc-internal-format, gfc-internal-format
msgid "insn %d inside basic block %d but block_for_insn is %i"
msgstr ""
-#: cfgrtl.c:2002 cfgrtl.c:2012
+#: cfgrtl.c:1968 cfgrtl.c:1978
#, gcc-internal-format, gfc-internal-format
msgid "NOTE_INSN_BASIC_BLOCK is missing for block %d"
msgstr ""
-#: cfgrtl.c:2025
+#: cfgrtl.c:1991
#, gcc-internal-format, gfc-internal-format
msgid "NOTE_INSN_BASIC_BLOCK %d in middle of basic block %d"
msgstr ""
-#: cfgrtl.c:2035
+#: cfgrtl.c:2001
#, gcc-internal-format, gfc-internal-format
msgid "in basic block %d:"
msgstr ""
-#: cfgrtl.c:2087 cfgrtl.c:2177
+#: cfgrtl.c:2053 cfgrtl.c:2143
#, gcc-internal-format, gfc-internal-format
msgid "insn %d outside of basic blocks has non-NULL bb field"
msgstr ""
-#: cfgrtl.c:2095
+#: cfgrtl.c:2061
#, gcc-internal-format, gfc-internal-format
msgid "end insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:2108
+#: cfgrtl.c:2074
#, gcc-internal-format, gfc-internal-format
msgid "insn %d is in multiple basic blocks (%d and %d)"
msgstr ""
-#: cfgrtl.c:2120
+#: cfgrtl.c:2086
#, gcc-internal-format, gfc-internal-format
msgid "head insn %d for block %d not found in the insn stream"
msgstr ""
-#: cfgrtl.c:2137
+#: cfgrtl.c:2103
#, gcc-internal-format, gfc-internal-format
msgid "missing barrier after block %i"
msgstr ""
-#: cfgrtl.c:2153
+#: cfgrtl.c:2119
#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Incorrect blocks for fallthru %i->%i"
msgstr ""
-#: cfgrtl.c:2162
+#: cfgrtl.c:2128
#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Incorrect fallthru %i->%i"
msgstr ""
-#: cfgrtl.c:2195
+#: cfgrtl.c:2161
#, gcc-internal-format
msgid "basic blocks not laid down consecutively"
msgstr ""
-#: cfgrtl.c:2232
+#: cfgrtl.c:2198
#, gcc-internal-format, gfc-internal-format
msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr ""
-#: cgraph.c:2052
+#: cgraph.c:1974
#, gcc-internal-format
msgid "%D renamed after being referenced in assembly"
msgstr ""
-#: cgraphunit.c:416
+#: cgraphunit.c:410
#, gcc-internal-format
msgid "caller edge count is negative"
msgstr ""
-#: cgraphunit.c:421
+#: cgraphunit.c:415
#, gcc-internal-format
msgid "caller edge frequency is negative"
msgstr ""
-#: cgraphunit.c:426
+#: cgraphunit.c:420
#, gcc-internal-format
msgid "caller edge frequency is too large"
msgstr ""
-#: cgraphunit.c:435
+#: cgraphunit.c:434
#, gcc-internal-format, gfc-internal-format
msgid "caller edge frequency %i does not match BB frequency %i"
msgstr ""
-#: cgraphunit.c:471
+#: cgraphunit.c:470
#, gcc-internal-format, gfc-internal-format
msgid "aux field set for edge %s->%s"
msgstr ""
-#: cgraphunit.c:478
+#: cgraphunit.c:477
#, gcc-internal-format
msgid "execution count is negative"
msgstr ""
-#: cgraphunit.c:483
+#: cgraphunit.c:482
#, gcc-internal-format
msgid "externally visible inline clone"
msgstr ""
-#: cgraphunit.c:488
+#: cgraphunit.c:487
#, gcc-internal-format
msgid "inline clone with address taken"
msgstr ""
-#: cgraphunit.c:493
+#: cgraphunit.c:492
#, gcc-internal-format
msgid "inline clone is needed"
msgstr ""
-#: cgraphunit.c:500
+#: cgraphunit.c:499
#, gcc-internal-format, gfc-internal-format
msgid "aux field set for indirect edge from %s"
msgstr ""
-#: cgraphunit.c:507
+#: cgraphunit.c:506
#, gcc-internal-format, gfc-internal-format
msgid ""
"An indirect edge from %s is not marked as indirect or has associated "
"indirect_info, the corresponding statement is: "
msgstr ""
-#: cgraphunit.c:524
+#: cgraphunit.c:523
#, gcc-internal-format
msgid "inlined_to pointer is wrong"
msgstr ""
-#: cgraphunit.c:529
+#: cgraphunit.c:528
#, gcc-internal-format
msgid "multiple inline callers"
msgstr ""
-#: cgraphunit.c:536
+#: cgraphunit.c:535
#, gcc-internal-format
msgid "inlined_to pointer set for noninline callers"
msgstr ""
-#: cgraphunit.c:545
+#: cgraphunit.c:544
#, gcc-internal-format
msgid "inlined_to pointer is set but no predecessors found"
msgstr ""
-#: cgraphunit.c:550
+#: cgraphunit.c:549
#, gcc-internal-format
msgid "inlined_to pointer refers to itself"
msgstr ""
-#: cgraphunit.c:556
+#: cgraphunit.c:555
#, gcc-internal-format
msgid "node not found in cgraph_hash"
msgstr ""
-#: cgraphunit.c:568
+#: cgraphunit.c:567
#, gcc-internal-format
msgid "node has wrong clone_of"
msgstr ""
-#: cgraphunit.c:580
+#: cgraphunit.c:579
#, gcc-internal-format
msgid "node has wrong clone list"
msgstr ""
-#: cgraphunit.c:586
+#: cgraphunit.c:585
#, gcc-internal-format
msgid "node is in clone list but it is not clone"
msgstr ""
-#: cgraphunit.c:591
+#: cgraphunit.c:590
#, gcc-internal-format
msgid "node has wrong prev_clone pointer"
msgstr ""
-#: cgraphunit.c:596
+#: cgraphunit.c:595
#, gcc-internal-format
msgid "double linked list of clones corrupted"
msgstr ""
-#: cgraphunit.c:605
+#: cgraphunit.c:604
#, gcc-internal-format
msgid "non-DECL_ONE_ONLY node in a same_comdat_group list"
msgstr ""
-#: cgraphunit.c:610
+#: cgraphunit.c:609
#, gcc-internal-format
msgid "node is alone in a comdat group"
msgstr ""
-#: cgraphunit.c:617
+#: cgraphunit.c:616
#, gcc-internal-format
msgid "same_comdat_group is not a circular list"
msgstr ""
-#: cgraphunit.c:652
+#: cgraphunit.c:633
+#, gcc-internal-format
+msgid "Alias has call edges"
+msgstr ""
+
+#: cgraphunit.c:639
+#, gcc-internal-format
+msgid "Alias has non-alias refernece"
+msgstr ""
+
+#: cgraphunit.c:644
+#, gcc-internal-format
+msgid "Alias has more than one alias reference"
+msgstr ""
+
+#: cgraphunit.c:651
+#, gcc-internal-format
+msgid "Analyzed alias has no reference"
+msgstr ""
+
+#: cgraphunit.c:659
+#, gcc-internal-format
+msgid "No edge out of thunk node"
+msgstr ""
+
+#: cgraphunit.c:664
+#, gcc-internal-format
+msgid "More than one edge out of thunk node"
+msgstr ""
+
+#: cgraphunit.c:669
+#, gcc-internal-format
+msgid "Thunk is not supposed to have body"
+msgstr ""
+
+#: cgraphunit.c:699
#, gcc-internal-format
msgid "shared call_stmt:"
msgstr ""
-#: cgraphunit.c:662
-#, gcc-internal-format
-msgid "edge points to same body alias:"
-msgstr ""
-
-#: cgraphunit.c:674
+#: cgraphunit.c:717
#, gcc-internal-format
msgid "edge points to wrong declaration:"
msgstr ""
-#: cgraphunit.c:685
-#, gcc-internal-format
-msgid "a call to thunk improperly represented in the call graph:"
-msgstr ""
-
-#: cgraphunit.c:693
+#: cgraphunit.c:726
#, gcc-internal-format
msgid ""
"an indirect edge with unknown callee corresponding to a call_stmt with a "
"known declaration:"
msgstr ""
-#: cgraphunit.c:703
+#: cgraphunit.c:736
#, gcc-internal-format
msgid "missing callgraph edge for call stmt:"
msgstr ""
-#: cgraphunit.c:719
+#: cgraphunit.c:752
#, gcc-internal-format, gfc-internal-format
msgid "edge %s->%s has no corresponding call_stmt"
msgstr ""
-#: cgraphunit.c:731
+#: cgraphunit.c:764
#, gcc-internal-format, gfc-internal-format
msgid "an indirect edge from %s has no corresponding call_stmt"
msgstr ""
-#: cgraphunit.c:742
+#: cgraphunit.c:775
#, gcc-internal-format
msgid "verify_cgraph_node failed"
msgstr ""
-#: cgraphunit.c:817
+#: cgraphunit.c:919
#, gcc-internal-format
msgid "%<weakref%> attribute should be accompanied with an %<alias%> attribute"
msgstr ""
-#: cgraphunit.c:872 cgraphunit.c:909
+#: cgraphunit.c:974 cgraphunit.c:1019
#, gcc-internal-format
msgid "%<externally_visible%> attribute have effect only on public objects"
msgstr ""
-#: cgraphunit.c:881
+#: cgraphunit.c:983
#, gcc-internal-format
msgid "%<weakref%> attribute ignored because function is defined"
msgstr ""
-#: cgraphunit.c:919
+#: cgraphunit.c:995
+#, gcc-internal-format
+msgid "always_inline function might not be inlinable"
+msgstr ""
+
+#: cgraphunit.c:1029
#, gcc-internal-format
msgid "%<weakref%> attribute ignored because variable is initialized"
msgstr ""
-#: cgraphunit.c:1167 cgraphunit.c:1193
+#: cgraphunit.c:1368
#, gcc-internal-format
msgid "failed to reclaim unneeded function"
msgstr ""
-#: cgraphunit.c:1931
+#: cgraphunit.c:1394
+#, gcc-internal-format
+msgid "failed to reclaim unneeded functionin same comdat group"
+msgstr ""
+
+#: cgraphunit.c:2145
#, gcc-internal-format
msgid "nodes with unreleased memory found"
msgstr ""
-#: collect2.c:1489 opts.c:792
+#: collect2.c:901
+#, gcc-internal-format
+msgid "COLLECT_LTO_WRAPPER must be set"
+msgstr ""
+
+#: collect2.c:1227
+#, gcc-internal-format
+msgid "no arguments"
+msgstr ""
+
+#: collect2.c:1444 opts.c:780
#, gcc-internal-format
msgid "LTO support has not been enabled in this configuration"
msgstr ""
-#: collect2.c:1577
+#: collect2.c:1532
#, gcc-internal-format, gfc-internal-format
msgid "unknown demangling style '%s'"
msgstr ""
-#: collect2.c:1972
+#: collect2.c:1628 collect2.c:1811 collect2.c:1846
+#, gcc-internal-format
+msgid "fopen %s: %m"
+msgstr ""
+
+#: collect2.c:1631 collect2.c:1816 collect2.c:1849
+#, gcc-internal-format
+msgid "fclose %s: %m"
+msgstr ""
+
+#: collect2.c:1913
+#, gcc-internal-format
+msgid "can't get program status: %m"
+msgstr ""
+
+#: collect2.c:1921
#, gcc-internal-format, gfc-internal-format
msgid "%s terminated with signal %d [%s]%s"
msgstr ""
-#: collect2.c:2792
+#: collect2.c:1982
+#, gcc-internal-format, gfc-internal-format
+msgid "could not open response file %s"
+msgstr ""
+
+#: collect2.c:1987
+#, gcc-internal-format, gfc-internal-format
+msgid "could not write to response file %s"
+msgstr ""
+
+#: collect2.c:1992
+#, gcc-internal-format, gfc-internal-format
+msgid "could not close response file %s"
+msgstr ""
+
+#: collect2.c:2025
+#, gcc-internal-format, gfc-internal-format
+msgid "cannot find '%s'"
+msgstr ""
+
+#: collect2.c:2029 collect2.c:2565 collect2.c:2761 gcc.c:2642
+#, gcc-internal-format
+msgid "pex_init failed: %m"
+msgstr ""
+
+#: collect2.c:2038 collect2.c:2574 collect2.c:2769 gcc.c:7019
+#, gcc-internal-format
+msgid "%s: %m"
+msgstr ""
+
+#: collect2.c:2539
+#, gcc-internal-format
+msgid "cannot find 'nm'"
+msgstr ""
+
+#: collect2.c:2587
+#, gcc-internal-format
+msgid "can't open nm output: %m"
+msgstr ""
+
+#: collect2.c:2670
+#, gcc-internal-format, gfc-internal-format
+msgid "init function found in object %s"
+msgstr ""
+
+#: collect2.c:2680
+#, gcc-internal-format, gfc-internal-format
+msgid "fini function found in object %s"
+msgstr ""
+
+#: collect2.c:2736
#, gcc-internal-format
msgid "cannot find 'ldd'"
msgstr ""
+#: collect2.c:2782
+#, gcc-internal-format
+msgid "can't open ldd output: %m"
+msgstr ""
+
+#: collect2.c:2800
+#, gcc-internal-format, gfc-internal-format
+msgid "dynamic dependency %s not found"
+msgstr ""
+
+#: collect2.c:2812
+#, gcc-internal-format, gfc-internal-format
+msgid "unable to open dynamic dependency '%s'"
+msgstr ""
+
+#: collect2.c:2973
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: not a COFF file"
+msgstr ""
+
+#: collect2.c:3103
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: cannot open as COFF file"
+msgstr ""
+
+#: collect2.c:3161
+#, gcc-internal-format, gfc-internal-format
+msgid "library lib%s not found"
+msgstr ""
+
#: convert.c:88
#, gcc-internal-format
msgid "cannot convert to a pointer type"
@@ -15960,77 +16225,93 @@
msgid "aggregate value used where a fixed-point was expected"
msgstr ""
-#: coverage.c:184
+#: coverage.c:187
#, gcc-internal-format
msgid "%qs is not a gcov data file"
msgstr ""
-#: coverage.c:195
+#: coverage.c:198
#, gcc-internal-format
msgid "%qs is version %q.*s, expected version %q.*s"
msgstr ""
-#: coverage.c:275 coverage.c:283
+#: coverage.c:281 coverage.c:290
#, gcc-internal-format, gfc-internal-format
-msgid "coverage mismatch for function %u while reading execution counters"
+msgid "Profile data for function %u is corrupted"
msgstr ""
-#: coverage.c:277 coverage.c:369
+#: coverage.c:282
#, gcc-internal-format
-msgid "checksum is %x instead of %x"
-msgstr ""
-
-#: coverage.c:285 coverage.c:372
-#, gcc-internal-format, gfc-internal-format
-msgid "number of counters is %d instead of %d"
+msgid "checksum is (%x,%x) instead of (%x,%x)"
msgstr ""
#: coverage.c:291
#, gcc-internal-format, gfc-internal-format
+msgid "number of counters is %d instead of %d"
+msgstr ""
+
+#: coverage.c:297
+#, gcc-internal-format, gfc-internal-format
msgid "cannot merge separate %s counters for function %u"
msgstr ""
-#: coverage.c:312
+#: coverage.c:318
#, gcc-internal-format
msgid "%qs has overflowed"
msgstr ""
-#: coverage.c:349
+#: coverage.c:355
#, gcc-internal-format
msgid "no coverage for function %qE found"
msgstr ""
-#: coverage.c:364
+#: coverage.c:369
#, gcc-internal-format
-msgid "coverage mismatch for function %qE while reading counter %qs"
+msgid ""
+"The control flow of function %qE does not match its profile data (counter "
+"%qs)"
msgstr ""
-#: coverage.c:378
+#: coverage.c:373
+#, gcc-internal-format
+msgid ""
+"Use -Wno-error=coverage-mismatch to tolerate the mismatch but performance "
+"may drop if the function is hot"
+msgstr ""
+
+#: coverage.c:379
#, gcc-internal-format
msgid "coverage mismatch ignored"
msgstr ""
-#: coverage.c:380
+#: coverage.c:381
#, gcc-internal-format
msgid "execution counts estimated"
msgstr ""
-#: coverage.c:381
+#: coverage.c:382
#, gcc-internal-format
msgid "execution counts assumed to be zero"
msgstr ""
-#: coverage.c:384
+#: coverage.c:385
#, gcc-internal-format
msgid "this can result in poorly optimized code"
msgstr ""
-#: coverage.c:568
+#: coverage.c:393
+#, gcc-internal-format
+msgid ""
+"Source location for function %qE have changed, the profile data may be out "
+"of date"
+msgstr ""
+
+#: coverage.c:605
#, gcc-internal-format, gfc-internal-format
msgid "cannot open %s"
msgstr ""
-#: coverage.c:603
+#: coverage.c:642
#, gcc-internal-format
msgid "error writing %qs"
msgstr ""
@@ -16045,6 +16326,16 @@
msgid "too many input files"
msgstr ""
+#: cprop.c:1696 gcse.c:3680
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: %d basic blocks and %d edges/basic block"
+msgstr ""
+
+#: cprop.c:1709 gcse.c:3693
+#, gcc-internal-format, gfc-internal-format
+msgid "%s: %d basic blocks and %d registers"
+msgstr ""
+
#: dbgcnt.c:135
#, gcc-internal-format
msgid "cannot find a valid counter:value pair:"
@@ -16060,7 +16351,7 @@
msgid " %s"
msgstr ""
-#: dbxout.c:3262
+#: dbxout.c:3363
#, gcc-internal-format
msgid "common symbol debug info is not structured as symbol+offset"
msgstr ""
@@ -16080,39 +16371,39 @@
msgid "dominator of %d should be %d, not %d"
msgstr ""
-#: dwarf2out.c:4171
+#: dwarf2out.c:4156
#, gcc-internal-format
msgid ""
"multiple EH personalities are supported only with assemblers supporting ."
"cfi_personality directive"
msgstr ""
-#: dwarf2out.c:5750
+#: dwarf2out.c:5902
#, gcc-internal-format, gfc-internal-format
msgid "DW_LOC_OP %s not implemented"
msgstr ""
-#: dwarf2out.c:13620
+#: dwarf2out.c:13761
#, gcc-internal-format, gfc-internal-format
msgid "non-delegitimized UNSPEC %s (%d) found in variable location"
msgstr ""
-#: emit-rtl.c:2480
+#: emit-rtl.c:2484
#, gcc-internal-format
msgid "invalid rtl sharing found in the insn"
msgstr ""
-#: emit-rtl.c:2482
+#: emit-rtl.c:2486
#, gcc-internal-format
msgid "shared rtx"
msgstr ""
-#: emit-rtl.c:2484
+#: emit-rtl.c:2488
#, gcc-internal-format
msgid "internal consistency failure"
msgstr ""
-#: emit-rtl.c:3587
+#: emit-rtl.c:3613
#, gcc-internal-format
msgid "ICE: emit_insn used where emit_jump_insn needed:\n"
msgstr ""
@@ -16177,34 +16468,34 @@
msgid "verify_eh_tree failed"
msgstr ""
-#: explow.c:1420
+#: explow.c:1411
#, gcc-internal-format
msgid "stack limits not supported on this target"
msgstr ""
-#: expmed.c:1678
+#: expmed.c:1688
#, gcc-internal-format
msgid ""
"multiple accesses to volatile structure member because of packed attribute"
msgstr ""
-#: expmed.c:1682
+#: expmed.c:1692
#, gcc-internal-format
msgid ""
"multiple accesses to volatile structure bitfield because of packed attribute"
msgstr ""
-#: expmed.c:1692
+#: expmed.c:1702
#, gcc-internal-format
msgid "mis-aligned access used for structure member"
msgstr ""
-#: expmed.c:1695
+#: expmed.c:1705
#, gcc-internal-format
msgid "mis-aligned access used for structure bitfield"
msgstr ""
-#: expmed.c:1701
+#: expmed.c:1711
#, gcc-internal-format
msgid ""
"when a volatile object spans multiple type-sized locations, the compiler "
@@ -16213,32 +16504,32 @@
"code may fail at runtime if the hardware does not allow this access"
msgstr ""
-#: expr.c:9308
+#: expr.c:9333
#, gcc-internal-format
msgid "%Kcall to %qs declared with attribute error: %s"
msgstr ""
-#: expr.c:9315
+#: expr.c:9340
#, gcc-internal-format
msgid "%Kcall to %qs declared with attribute warning: %s"
msgstr ""
-#: final.c:1471
+#: final.c:1472
#, gcc-internal-format
msgid "invalid argument %qs to -fdebug-prefix-map"
msgstr ""
-#: final.c:1584
+#: final.c:1585
#, gcc-internal-format
msgid "the frame size of %wd bytes is larger than %wd bytes"
msgstr ""
-#: final.c:4360 toplev.c:1407 tree-optimize.c:171
+#: final.c:4358 toplev.c:1403 tree-optimize.c:171
#, gcc-internal-format
msgid "could not open final insn dump file %qs: %m"
msgstr ""
-#: final.c:4425 tree-optimize.c:187
+#: final.c:4411 tree-optimize.c:187
#, gcc-internal-format
msgid "could not close final insn dump file %qs: %m"
msgstr ""
@@ -16248,57 +16539,57 @@
msgid "large fixed-point constant implicitly truncated to fixed-point type"
msgstr ""
-#: fold-const.c:655
+#: fold-const.c:664
#, gcc-internal-format
msgid "assuming signed overflow does not occur when negating a division"
msgstr ""
-#: fold-const.c:3493 fold-const.c:3505
+#: fold-const.c:3461 fold-const.c:3473
#, gcc-internal-format, gfc-internal-format
msgid "comparison is always %d due to width of bit-field"
msgstr ""
-#: fold-const.c:4842
+#: fold-const.c:4810
#, gcc-internal-format
msgid "assuming signed overflow does not occur when simplifying range test"
msgstr ""
-#: fold-const.c:5288 fold-const.c:5302
+#: fold-const.c:5256 fold-const.c:5270
#, gcc-internal-format, gfc-internal-format
msgid "comparison is always %d"
msgstr ""
-#: fold-const.c:5435
+#: fold-const.c:5403
#, gcc-internal-format
msgid "%<or%> of unmatched not-equal tests is always 1"
msgstr ""
-#: fold-const.c:5440
+#: fold-const.c:5408
#, gcc-internal-format
msgid "%<and%> of mutually exclusive equal-tests is always 0"
msgstr ""
-#: fold-const.c:8411
+#: fold-const.c:8380
#, gcc-internal-format
msgid ""
"assuming signed overflow does not occur when reducing constant in comparison"
msgstr ""
-#: fold-const.c:8576
+#: fold-const.c:8545
#, gcc-internal-format
msgid ""
"assuming signed overflow does not occur when changing X +- C1 cmp C2 to X "
"cmp C1 +- C2"
msgstr ""
-#: fold-const.c:8815
+#: fold-const.c:8784
#, gcc-internal-format
msgid ""
"assuming signed overflow does not occur when combining constants around a "
"comparison"
msgstr ""
-#: fold-const.c:13771
+#: fold-const.c:13772
#, gcc-internal-format
msgid "fold check: original tree changed by fold"
msgstr ""
@@ -16308,162 +16599,157 @@
msgid "total size of local objects too large"
msgstr ""
-#: function.c:1740 gimplify.c:5077
+#: function.c:1740 gimplify.c:5063
#, gcc-internal-format
msgid "impossible constraint in %<asm%>"
msgstr ""
-#: function.c:3987
+#: function.c:3976
#, gcc-internal-format
msgid "variable %q+D might be clobbered by %<longjmp%> or %<vfork%>"
msgstr ""
-#: function.c:4008
+#: function.c:3997
#, gcc-internal-format
msgid "argument %q+D might be clobbered by %<longjmp%> or %<vfork%>"
msgstr ""
-#: function.c:4494
+#: function.c:4519
#, gcc-internal-format
msgid "function returns an aggregate"
msgstr ""
-#: function.c:4888
+#: function.c:4912
#, gcc-internal-format
msgid "unused parameter %q+D"
msgstr ""
-#: gcc.c:1712 gcc.c:1732
+#: gcc.c:1724 gcc.c:1744
#, gcc-internal-format, gfc-internal-format
msgid "specs %%include syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1758 gcc.c:1767 gcc.c:1777 gcc.c:1787
+#: gcc.c:1770 gcc.c:1779 gcc.c:1789 gcc.c:1799
#, gcc-internal-format, gfc-internal-format
msgid "specs %%rename syntax malformed after %ld characters"
msgstr ""
-#: gcc.c:1797
+#: gcc.c:1809
#, gcc-internal-format, gfc-internal-format
msgid "specs %s spec was not found to be renamed"
msgstr ""
-#: gcc.c:1804
+#: gcc.c:1816
#, gcc-internal-format
msgid "%s: attempt to rename spec %qs to already defined spec %qs"
msgstr ""
-#: gcc.c:1825
+#: gcc.c:1837
#, gcc-internal-format, gfc-internal-format
msgid "specs unknown %% command after %ld characters"
msgstr ""
-#: gcc.c:1836 gcc.c:1849
+#: gcc.c:1848 gcc.c:1861
#, gcc-internal-format, gfc-internal-format
msgid "specs file malformed after %ld characters"
msgstr ""
-#: gcc.c:1901
+#: gcc.c:1913
#, gcc-internal-format
msgid "spec file has no spec for linking"
msgstr ""
-#: gcc.c:2430
+#: gcc.c:2442
#, gcc-internal-format
msgid "system path %qs is not absolute"
msgstr ""
-#: gcc.c:2507
+#: gcc.c:2519
#, gcc-internal-format
msgid "-pipe not supported"
msgstr ""
-#: gcc.c:2630
-#, gcc-internal-format
-msgid "pex_init failed: %m"
-msgstr ""
-
-#: gcc.c:2669
+#: gcc.c:2681
#, gcc-internal-format
msgid "failed to get exit status: %m"
msgstr ""
-#: gcc.c:2675
+#: gcc.c:2687
#, gcc-internal-format
msgid "failed to get process times: %m"
msgstr ""
-#: gcc.c:2701
+#: gcc.c:2713
#, gcc-internal-format, gfc-internal-format
msgid "%s (program %s)"
msgstr ""
-#: gcc.c:3118 opts-common.c:958 opts-common.c:1030
+#: gcc.c:3130 opts-common.c:987 opts-common.c:1059
#, gcc-internal-format
msgid "unrecognized command line option %qs"
msgstr ""
-#: gcc.c:3381
+#: gcc.c:3393
#, gcc-internal-format
msgid "%qs is an unknown -save-temps option"
msgstr ""
-#: gcc.c:3839
+#: gcc.c:3851
#, gcc-internal-format
msgid "-pipe ignored because -save-temps specified"
msgstr ""
-#: gcc.c:3925
+#: gcc.c:3937
#, gcc-internal-format
msgid "%<-x %s%> after last input file has no effect"
msgstr ""
-#: gcc.c:4092
+#: gcc.c:4104
#, gcc-internal-format
msgid "unable to locate default linker script %qs in the library search paths"
msgstr ""
-#: gcc.c:4295
+#: gcc.c:4307
#, gcc-internal-format
msgid "switch %qs does not start with %<-%>"
msgstr ""
-#: gcc.c:4298
+#: gcc.c:4310
#, gcc-internal-format
msgid "spec-generated switch is just %<-%>"
msgstr ""
-#: gcc.c:4389
+#: gcc.c:4401
#, gcc-internal-format, gfc-internal-format
msgid "could not open temporary response file %s"
msgstr ""
-#: gcc.c:4395
+#: gcc.c:4407
#, gcc-internal-format, gfc-internal-format
msgid "could not write to temporary response file %s"
msgstr ""
-#: gcc.c:4401
+#: gcc.c:4413
#, gcc-internal-format, gfc-internal-format
msgid "could not close temporary response file %s"
msgstr ""
-#: gcc.c:4524
+#: gcc.c:4536
#, gcc-internal-format
msgid "spec %qs invalid"
msgstr ""
-#: gcc.c:4673
+#: gcc.c:4685
#, gcc-internal-format
msgid "spec %qs has invalid %<%%0%c%>"
msgstr ""
-#: gcc.c:4984
+#: gcc.c:4995
#, gcc-internal-format
msgid "spec %qs has invalid %<%%W%c%>"
msgstr ""
-#: gcc.c:5006
+#: gcc.c:5017
#, gcc-internal-format
msgid "spec %qs has invalid %<%%x%c%>"
msgstr ""
@@ -16471,234 +16757,219 @@
#. Catch the case where a spec string contains something like
#. '%{foo:%*}'. i.e. there is no * in the pattern on the left
#. hand side of the :.
-#: gcc.c:5194
+#: gcc.c:5205
#, gcc-internal-format
msgid "spec failure: %<%%*%> has not been initialized by pattern match"
msgstr ""
-#: gcc.c:5203
+#: gcc.c:5214
#, gcc-internal-format, gfc-internal-format
msgid "use of obsolete %%[ operator in specs"
msgstr ""
-#: gcc.c:5284
+#: gcc.c:5295
#, gcc-internal-format
msgid "spec failure: unrecognized spec option %qc"
msgstr ""
-#: gcc.c:5344
+#: gcc.c:5355
#, gcc-internal-format
msgid "unknown spec function %qs"
msgstr ""
-#: gcc.c:5362
+#: gcc.c:5373
#, gcc-internal-format
msgid "error in args to spec function %qs"
msgstr ""
-#: gcc.c:5410
+#: gcc.c:5421
#, gcc-internal-format
msgid "malformed spec function name"
msgstr ""
#. )
-#: gcc.c:5413
+#: gcc.c:5424
#, gcc-internal-format
msgid "no arguments for spec function"
msgstr ""
-#: gcc.c:5432
+#: gcc.c:5443
#, gcc-internal-format
msgid "malformed spec function arguments"
msgstr ""
-#: gcc.c:5678
+#: gcc.c:5689
#, gcc-internal-format
msgid "braced spec %qs is invalid at %qc"
msgstr ""
-#: gcc.c:5766
+#: gcc.c:5777
#, gcc-internal-format
msgid "braced spec body %qs is invalid"
msgstr ""
-#: gcc.c:6015
+#: gcc.c:6026
#, gcc-internal-format, gfc-internal-format
msgid "%s: could not determine length of compare-debug file %s"
msgstr ""
-#: gcc.c:6026
+#: gcc.c:6037
#, gcc-internal-format, gfc-internal-format
msgid "%s: -fcompare-debug failure (length)"
msgstr ""
-#: gcc.c:6036 gcc.c:6077
+#: gcc.c:6047 gcc.c:6088
#, gcc-internal-format, gfc-internal-format
msgid "%s: could not open compare-debug file %s"
msgstr ""
-#: gcc.c:6056 gcc.c:6093
+#: gcc.c:6067 gcc.c:6104
#, gcc-internal-format, gfc-internal-format
msgid "%s: -fcompare-debug failure"
msgstr ""
-#: gcc.c:6167
+#: gcc.c:6178
#, gcc-internal-format
msgid "atexit failed"
msgstr ""
-#: gcc.c:6346
+#: gcc.c:6357
#, gcc-internal-format
msgid "spec failure: more than one arg to SYSROOT_SUFFIX_SPEC"
msgstr ""
-#: gcc.c:6369
+#: gcc.c:6380
#, gcc-internal-format
msgid "spec failure: more than one arg to SYSROOT_HEADERS_SUFFIX_SPEC"
msgstr ""
-#: gcc.c:6479
+#: gcc.c:6490
#, gcc-internal-format
msgid "unrecognized option %<-%s%>"
msgstr ""
#. The error status indicates that only one set of fixed
#. headers should be built.
-#: gcc.c:6556
+#: gcc.c:6567
#, gcc-internal-format
msgid "not configured with sysroot headers suffix"
msgstr ""
-#: gcc.c:6639
+#: gcc.c:6650
#, gcc-internal-format
msgid "no input files"
msgstr ""
-#: gcc.c:6688
+#: gcc.c:6699
#, gcc-internal-format
msgid "cannot specify -o with -c, -S or -E with multiple files"
msgstr ""
-#: gcc.c:6718
+#: gcc.c:6729
#, gcc-internal-format, gfc-internal-format
msgid "%s: %s compiler not installed on this system"
msgstr ""
-#: gcc.c:6742
+#: gcc.c:6751
#, gcc-internal-format
msgid "recompiling with -fcompare-debug"
msgstr ""
-#: gcc.c:6758
+#: gcc.c:6767
#, gcc-internal-format
msgid "during -fcompare-debug recompilation"
msgstr ""
-#: gcc.c:6767
+#: gcc.c:6776
#, gcc-internal-format
msgid "comparing final insns dumps"
msgstr ""
-#: gcc.c:6870
+#: gcc.c:6877
#, gcc-internal-format
msgid "-fuse-linker-plugin, but "
msgstr ""
-#: gcc.c:6900
+#: gcc.c:6907
#, gcc-internal-format, gfc-internal-format
msgid "%s: linker input file unused because linking not done"
msgstr ""
-#: gcc.c:6941
+#: gcc.c:6948
#, gcc-internal-format, gfc-internal-format
msgid "language %s not recognized"
msgstr ""
-#: gcc.c:7012
-#, gcc-internal-format
-msgid "%s: %m"
-msgstr ""
-
-#: gcc.c:7167
+#: gcc.c:7174
#, gcc-internal-format
msgid "multilib spec %qs is invalid"
msgstr ""
-#: gcc.c:7359
+#: gcc.c:7366
#, gcc-internal-format
msgid "multilib exclusions %qs is invalid"
msgstr ""
-#: gcc.c:7417 gcc.c:7558
+#: gcc.c:7424 gcc.c:7565
#, gcc-internal-format
msgid "multilib select %qs is invalid"
msgstr ""
-#: gcc.c:7596
+#: gcc.c:7603
#, gcc-internal-format
msgid "multilib exclusion %qs is invalid"
msgstr ""
-#: gcc.c:7802
+#: gcc.c:7809
#, gcc-internal-format
msgid "environment variable %qs not defined"
msgstr ""
-#: gcc.c:7914 gcc.c:7919
+#: gcc.c:7921 gcc.c:7926
#, gcc-internal-format
msgid "invalid version number %qs"
msgstr ""
-#: gcc.c:7962
+#: gcc.c:7969
#, gcc-internal-format, gfc-internal-format
msgid "too few arguments to %%:version-compare"
msgstr ""
-#: gcc.c:7968
+#: gcc.c:7975
#, gcc-internal-format, gfc-internal-format
msgid "too many arguments to %%:version-compare"
msgstr ""
-#: gcc.c:8009
+#: gcc.c:8016
#, gcc-internal-format
msgid "unknown operator %qs in %%:version-compare"
msgstr ""
-#: gcc.c:8122
+#: gcc.c:8129
#, gcc-internal-format, gfc-internal-format
msgid "too many arguments to %%:compare-debug-dump-opt"
msgstr ""
-#: gcc.c:8190
+#: gcc.c:8197
#, gcc-internal-format, gfc-internal-format
msgid "too many arguments to %%:compare-debug-self-opt"
msgstr ""
-#: gcc.c:8225
+#: gcc.c:8232
#, gcc-internal-format, gfc-internal-format
msgid "too few arguments to %%:compare-debug-auxbase-opt"
msgstr ""
-#: gcc.c:8228
+#: gcc.c:8235
#, gcc-internal-format, gfc-internal-format
msgid "too many arguments to %%:compare-debug-auxbase-opt"
msgstr ""
-#: gcc.c:8235
+#: gcc.c:8242
#, gcc-internal-format, gfc-internal-format
msgid "argument to %%:compare-debug-auxbase-opt does not end in .gk"
msgstr ""
-#: gcse.c:5171
-#, gcc-internal-format, gfc-internal-format
-msgid "%s: %d basic blocks and %d edges/basic block"
-msgstr ""
-
-#: gcse.c:5184
-#, gcc-internal-format, gfc-internal-format
-msgid "%s: %d basic blocks and %d registers"
-msgstr ""
-
#: ggc-common.c:467 ggc-common.c:475 ggc-common.c:549 ggc-common.c:568
#: ggc-page.c:2170 ggc-page.c:2201 ggc-page.c:2208 ggc-zone.c:2420
#: ggc-zone.c:2431 ggc-zone.c:2435
@@ -16742,94 +17013,94 @@
msgid "can%'t seek PCH file: %m"
msgstr ""
-#: gimple.c:1071
+#: gimple.c:1125
#, gcc-internal-format, gfc-internal-format
msgid "gimple check: expected %s(%s), have %s(%s) in %s, at %s:%d"
msgstr ""
-#: gimplify.c:2441
+#: gimplify.c:2443
#, gcc-internal-format
msgid "using result of function returning %<void%>"
msgstr ""
-#: gimplify.c:4962
+#: gimplify.c:4948
#, gcc-internal-format, gfc-internal-format
msgid "invalid lvalue in asm output %d"
msgstr ""
-#: gimplify.c:5078
+#: gimplify.c:5064
#, gcc-internal-format, gfc-internal-format
msgid "non-memory input %d must stay in memory"
msgstr ""
-#: gimplify.c:5100
+#: gimplify.c:5086
#, gcc-internal-format, gfc-internal-format
msgid "memory input %d is not directly addressable"
msgstr ""
-#: gimplify.c:5568
+#: gimplify.c:5553
#, gcc-internal-format
msgid "threadprivate variable %qE used in untied task"
msgstr ""
-#: gimplify.c:5569 gimplify.c:5631
+#: gimplify.c:5555 gimplify.c:5617
#, gcc-internal-format
msgid "enclosing task"
msgstr ""
-#: gimplify.c:5628
+#: gimplify.c:5614
#, gcc-internal-format
msgid "%qE not specified in enclosing parallel"
msgstr ""
-#: gimplify.c:5633
+#: gimplify.c:5619
#, gcc-internal-format
msgid "enclosing parallel"
msgstr ""
-#: gimplify.c:5738
+#: gimplify.c:5724
#, gcc-internal-format
msgid "iteration variable %qE should be private"
msgstr ""
-#: gimplify.c:5752
+#: gimplify.c:5738
#, gcc-internal-format
msgid "iteration variable %qE should not be firstprivate"
msgstr ""
-#: gimplify.c:5755
+#: gimplify.c:5741
#, gcc-internal-format
msgid "iteration variable %qE should not be reduction"
msgstr ""
-#: gimplify.c:5918
+#: gimplify.c:5904
#, gcc-internal-format
msgid "%s variable %qE is private in outer context"
msgstr ""
-#: gimplify.c:7511
+#: gimplify.c:7545
#, gcc-internal-format
msgid "gimplification failed"
msgstr ""
-#: godump.c:1040
+#: godump.c:1117
#, gcc-internal-format
msgid "could not close Go dump file: %m"
msgstr ""
-#: godump.c:1052
+#: godump.c:1129
#, gcc-internal-format
msgid "could not open Go dump file %qs: %m"
msgstr ""
-#: graph.c:411 toplev.c:1517 java/jcf-parse.c:1751 java/jcf-parse.c:1890
-#: objc/objc-act.c:477
+#: graph.c:411 toplev.c:1513 java/jcf-parse.c:1751 java/jcf-parse.c:1889
+#: objc/objc-act.c:476
#, gcc-internal-format
msgid "can%'t open %s: %m"
msgstr ""
-#: graphite-clast-to-gimple.c:1228 graphite-poly.c:691 toplev.c:928
-#: toplev.c:1115
+#: graphite-clast-to-gimple.c:1227 graphite-poly.c:691 toplev.c:929
+#: toplev.c:1134
#, gcc-internal-format
msgid "can%'t open %s for writing: %m"
msgstr ""
@@ -16876,57 +17147,65 @@
#. Fatal error here. We do not want to support compiling ltrans units with
#. different version of compiler or different flags than the WPA unit, so
#. this should never happen.
-#: ipa-reference.c:1198
+#: ipa-inline-analysis.c:2457
+#, gcc-internal-format
+msgid "ipa inline summary is missing in input file"
+msgstr ""
+
+#. Fatal error here. We do not want to support compiling ltrans units with
+#. different version of compiler or different flags than the WPA unit, so
+#. this should never happen.
+#: ipa-reference.c:1207
#, gcc-internal-format
msgid "ipa reference summary is missing in ltrans unit"
msgstr ""
-#: ira.c:1377 ira.c:1390 ira.c:1404
+#: ira.c:1815 ira.c:1828 ira.c:1842
#, gcc-internal-format, gfc-internal-format
msgid "%s cannot be used in asm here"
msgstr ""
-#: lto-cgraph.c:1070
+#: lto-cgraph.c:996
#, gcc-internal-format, gfc-internal-format
msgid "bytecode stream: found multiple instances of cgraph node %d"
msgstr ""
-#: lto-cgraph.c:1223
+#: lto-cgraph.c:1127
#, gcc-internal-format
msgid "bytecode stream: no caller found while reading edge"
msgstr ""
-#: lto-cgraph.c:1229
+#: lto-cgraph.c:1133
#, gcc-internal-format
msgid "bytecode stream: no callee found while reading edge"
msgstr ""
-#: lto-cgraph.c:1295
+#: lto-cgraph.c:1197
#, gcc-internal-format
msgid "bytecode stream: found empty cgraph node"
msgstr ""
-#: lto-cgraph.c:1469
+#: lto-cgraph.c:1371
#, gcc-internal-format, gfc-internal-format
msgid "At most %i profile runs is supported. Perhaps corrupted profile?"
msgstr ""
-#: lto-cgraph.c:1516
+#: lto-cgraph.c:1419
#, gcc-internal-format, gfc-internal-format
msgid "Profile information in %s corrupted"
msgstr ""
-#: lto-cgraph.c:1551
+#: lto-cgraph.c:1454
#, gcc-internal-format, gfc-internal-format
msgid "cannot find LTO cgraph in %s"
msgstr ""
-#: lto-cgraph.c:1561
+#: lto-cgraph.c:1464
#, gcc-internal-format, gfc-internal-format
msgid "cannot find LTO varpool in %s"
msgstr ""
-#: lto-cgraph.c:1569
+#: lto-cgraph.c:1472
#, gcc-internal-format, gfc-internal-format
msgid "cannot find LTO section refs in %s"
msgstr ""
@@ -16937,12 +17216,17 @@
msgid "compressed stream: %s"
msgstr ""
-#: lto-section-in.c:68
+#: lto-section-in.c:531
#, gcc-internal-format, gfc-internal-format
msgid ""
"bytecode stream: trying to read %d bytes after the end of the input buffer"
msgstr ""
+#: lto-section-in.c:541
+#, gcc-internal-format, gfc-internal-format
+msgid "%s out of range: Range is %i to %i, value is %i"
+msgstr ""
+
#: lto-streamer-in.c:80
#, gcc-internal-format, gfc-internal-format
msgid "bytecode stream: unexpected tag %s"
@@ -16958,213 +17242,203 @@
msgid "bytecode stream: expected tag %s instead of %s"
msgstr ""
-#: lto-streamer-in.c:152
+#: lto-streamer-in.c:155
#, gcc-internal-format
msgid "bytecode stream: string too long for the string table"
msgstr ""
-#: lto-streamer-in.c:226
+#: lto-streamer-in.c:231
#, gcc-internal-format
msgid "bytecode stream: found non-null terminated string"
msgstr ""
-#: lto-streamer-in.c:1003
+#: lto-streamer-in.c:1053
#, gcc-internal-format
msgid "use of type %<%E%> with two mismatching declarations at field %<%E%>"
msgstr ""
-#: lto-streamer-in.c:1009
+#: lto-streamer-in.c:1059
#, gcc-internal-format
msgid "original type declared here"
msgstr ""
-#: lto-streamer-in.c:1011
+#: lto-streamer-in.c:1061
#, gcc-internal-format
msgid "field in mismatching type declared here"
msgstr ""
-#: lto-streamer-in.c:1017
+#: lto-streamer-in.c:1067
#, gcc-internal-format
msgid "type of field declared here"
msgstr ""
-#: lto-streamer-in.c:1024
+#: lto-streamer-in.c:1074
#, gcc-internal-format
msgid "type of mismatching field declared here"
msgstr ""
-#: lto-streamer-in.c:1045
+#: lto-streamer-in.c:1103
#, gcc-internal-format, gfc-internal-format
msgid "bytecode stream: unknown GIMPLE statement tag %s"
msgstr ""
-#: lto-streamer-in.c:2317
+#: lto-streamer-in.c:1743 lto-streamer-in.c:2456
#, gcc-internal-format
-msgid "cl_target_option size mismatch in LTO reader and writer"
+msgid "machine independent builtin code out of range"
msgstr ""
-#: lto-streamer-in.c:2411
-#, gcc-internal-format
-msgid "optimization options not supported yet"
-msgstr ""
-
-#: lto-streamer-in.c:2561
-#, gcc-internal-format
-msgid "bytecode stream: tried to jump backwards in the stream"
-msgstr ""
-
-#: lto-streamer-in.c:2605
+#: lto-streamer-in.c:1748 lto-streamer-in.c:2464
#, gcc-internal-format
msgid "target specific builtin not available"
msgstr ""
-#: lto-streamer-out.c:1234
+#: lto-streamer-in.c:2331
#, gcc-internal-format
-msgid "gimple bytecode streams do not support the optimization attribute"
+msgid "cl_target_option size mismatch in LTO reader and writer"
msgstr ""
-#: lto-streamer-out.c:1258
+#: lto-streamer-out.c:1271
#, gcc-internal-format
-msgid "tree code %qs is not supported in gimple streams"
+msgid "tree code %qs is not supported in %s streams"
msgstr ""
-#: lto-streamer-out.c:1302
+#: lto-streamer-out.c:1319
#, gcc-internal-format
msgid ""
"gimple bytecode streams do not support machine specific builtin functions on "
"this target"
msgstr ""
-#: lto-streamer.c:161
+#: lto-streamer.c:164
#, gcc-internal-format, gfc-internal-format
msgid "bytecode stream: unexpected LTO section %s"
msgstr ""
-#: lto-streamer.c:795
+#: lto-streamer.c:714
#, gcc-internal-format, gfc-internal-format
msgid ""
"bytecode stream generated with LTO version %d.%d instead of the expected %d."
"%d"
msgstr ""
-#: lto-symtab.c:542
+#: lto-symtab.c:472
#, gcc-internal-format
msgid "%qD has already been defined"
msgstr ""
-#: lto-symtab.c:544
+#: lto-symtab.c:474
#, gcc-internal-format
msgid "previously defined here"
msgstr ""
-#: lto-symtab.c:626
+#: lto-symtab.c:555
#, gcc-internal-format
msgid "type of %qD does not match original declaration"
msgstr ""
-#: lto-symtab.c:633
+#: lto-symtab.c:562
#, gcc-internal-format
msgid "alignment of %qD is bigger than original declaration"
msgstr ""
-#: lto-symtab.c:639 lto-symtab.c:745
+#: lto-symtab.c:568 lto-symtab.c:674
#, gcc-internal-format
msgid "previously declared here"
msgstr ""
-#: lto-symtab.c:670
+#: lto-symtab.c:599
#, gcc-internal-format
msgid "multiple prevailing defs for %qE"
msgstr ""
-#: lto-symtab.c:728
+#: lto-symtab.c:657
#, gcc-internal-format
msgid "variable %qD redeclared as function"
msgstr ""
-#: lto-symtab.c:734
+#: lto-symtab.c:663
#, gcc-internal-format
msgid "function %qD redeclared as variable"
msgstr ""
-#: omp-low.c:1830
+#: omp-low.c:1831
#, gcc-internal-format
msgid ""
"barrier region may not be closely nested inside of work-sharing, critical, "
"ordered, master or explicit task region"
msgstr ""
-#: omp-low.c:1835
+#: omp-low.c:1836
#, gcc-internal-format
msgid ""
"work-sharing region may not be closely nested inside of work-sharing, "
"critical, ordered, master or explicit task region"
msgstr ""
-#: omp-low.c:1853
+#: omp-low.c:1854
#, gcc-internal-format
msgid ""
"master region may not be closely nested inside of work-sharing or explicit "
"task region"
msgstr ""
-#: omp-low.c:1868
+#: omp-low.c:1869
#, gcc-internal-format
msgid ""
"ordered region may not be closely nested inside of critical or explicit task "
"region"
msgstr ""
-#: omp-low.c:1874
+#: omp-low.c:1875
#, gcc-internal-format
msgid ""
"ordered region must be closely nested inside a loop region with an ordered "
"clause"
msgstr ""
-#: omp-low.c:1889
+#: omp-low.c:1890
#, gcc-internal-format
msgid ""
"critical region may not be nested inside a critical region with the same name"
msgstr ""
-#: omp-low.c:6781 cp/decl.c:2808 cp/parser.c:8893 cp/parser.c:8913
+#: omp-low.c:6785 cp/decl.c:2838 cp/parser.c:9056 cp/parser.c:9076
#, gcc-internal-format
msgid "invalid exit from OpenMP structured block"
msgstr ""
-#: omp-low.c:6783 omp-low.c:6788
+#: omp-low.c:6787 omp-low.c:6792
#, gcc-internal-format
msgid "invalid entry to OpenMP structured block"
msgstr ""
#. Otherwise, be vague and lazy, but efficient.
-#: omp-low.c:6791
+#: omp-low.c:6795
#, gcc-internal-format
msgid "invalid branch to/from an OpenMP structured block"
msgstr ""
-#: opts-common.c:969
+#: opts-common.c:998
#, gcc-internal-format
msgid "command line option %qs is not supported by this configuration"
msgstr ""
-#: opts-common.c:979
+#: opts-common.c:1008
#, gcc-internal-format
msgid "missing argument to %qs"
msgstr ""
-#: opts-common.c:985 opts.c:539
+#: opts-common.c:1014 opts.c:535
#, gcc-internal-format
msgid "argument to %qs should be a non-negative integer"
msgstr ""
-#: opts-common.c:1000
+#: opts-common.c:1029
#, gcc-internal-format
msgid "unrecognized argument in option %qs"
msgstr ""
-#: opts-common.c:1016
+#: opts-common.c:1045
#, gcc-internal-format
msgid "valid arguments to %qs are: %s"
msgstr ""
@@ -17185,17 +17459,17 @@
msgid "unrecognized command line option \"%s\""
msgstr ""
-#: opts-global.c:375
+#: opts-global.c:370
#, gcc-internal-format
msgid "unrecognized command line option %<-fdump-%s%>"
msgstr ""
-#: opts-global.c:387 opts-global.c:395
+#: opts-global.c:390 opts-global.c:398
#, gcc-internal-format
msgid "plugin support is disabled; configure with --enable-plugin"
msgstr ""
-#: opts-global.c:419
+#: opts-global.c:422
#, gcc-internal-format
msgid "unrecognized register name %qs"
msgstr ""
@@ -17217,131 +17491,126 @@
"femit-struct-debug-detailed=ind:...%>"
msgstr ""
-#: opts.c:653
+#: opts.c:649
#, gcc-internal-format
msgid "section anchors must be disabled when unit-at-a-time is disabled"
msgstr ""
-#: opts.c:657
+#: opts.c:653
#, gcc-internal-format
msgid "toplevel reorder must be disabled when unit-at-a-time is disabled"
msgstr ""
-#: opts.c:679
+#: opts.c:675
#, gcc-internal-format
msgid "section anchors must be disabled when toplevel reorder is disabled"
msgstr ""
-#: opts.c:714 config/darwin.c:2900 config/sh/sh.c:981
+#: opts.c:710 config/darwin.c:2900 config/sh/sh.c:806
#, gcc-internal-format
msgid ""
"-freorder-blocks-and-partition does not work with exceptions on this "
"architecture"
msgstr ""
-#: opts.c:729 config/sh/sh.c:989
+#: opts.c:725 config/sh/sh.c:814
#, gcc-internal-format
msgid ""
"-freorder-blocks-and-partition does not support unwind info on this "
"architecture"
msgstr ""
-#: opts.c:746 config/pa/pa.c:568
+#: opts.c:742 config/pa/pa.c:522
#, gcc-internal-format
msgid "-freorder-blocks-and-partition does not work on this architecture"
msgstr ""
-#: opts.c:765
-#, gcc-internal-format
-msgid "-fira-algorithm=CB does not work on this architecture"
-msgstr ""
-
-#: opts.c:801
+#: opts.c:789
#, gcc-internal-format
msgid "only one -flto-partition value can be specified"
msgstr ""
-#: opts.c:812
+#: opts.c:800
#, gcc-internal-format
msgid "%<-fsplit-stack%> is not supported by this compiler configuration"
msgstr ""
-#: opts.c:1185
+#: opts.c:1198
#, gcc-internal-format
msgid "unrecognized include_flags 0x%x passed to print_specific_help"
msgstr ""
-#: opts.c:1360
+#: opts.c:1369
#, gcc-internal-format
msgid "--help argument %q.*s is ambiguous, please be more specific"
msgstr ""
-#: opts.c:1369
+#: opts.c:1378
#, gcc-internal-format
msgid "unrecognized argument to --help= option: %q.*s"
msgstr ""
-#: opts.c:1506
+#: opts.c:1520
#, gcc-internal-format, gfc-internal-format
msgid "structure alignment must be a small power of two, not %d"
msgstr ""
-#: opts.c:1619
+#: opts.c:1633
#, gcc-internal-format, gfc-internal-format
msgid "unknown stack check parameter \"%s\""
msgstr ""
-#: opts.c:1649
+#: opts.c:1668
#, gcc-internal-format, gfc-internal-format
msgid "dwarf version %d is not supported"
msgstr ""
-#: opts.c:1717
+#: opts.c:1741
#, gcc-internal-format, gfc-internal-format
msgid "%s: --param arguments should be of the form NAME=VALUE"
msgstr ""
-#: opts.c:1723
+#: opts.c:1747
#, gcc-internal-format
msgid "invalid --param value %qs"
msgstr ""
-#: opts.c:1841
+#: opts.c:1865
#, gcc-internal-format
msgid "target system does not support debug output"
msgstr ""
-#: opts.c:1850
+#: opts.c:1874
#, gcc-internal-format, gfc-internal-format
msgid "debug format \"%s\" conflicts with prior selection"
msgstr ""
-#: opts.c:1866
+#: opts.c:1890
#, gcc-internal-format, gfc-internal-format
msgid "unrecognised debug output level \"%s\""
msgstr ""
-#: opts.c:1868
+#: opts.c:1892
#, gcc-internal-format, gfc-internal-format
msgid "debug output level %s is too high"
msgstr ""
-#: opts.c:1888
+#: opts.c:1912
#, gcc-internal-format
msgid "getting core file size maximum limit: %m"
msgstr ""
-#: opts.c:1891
+#: opts.c:1915
#, gcc-internal-format
msgid "setting core file size limit to maximum: %m"
msgstr ""
-#: opts.c:1939
+#: opts.c:1963
#, gcc-internal-format, gfc-internal-format
msgid "unrecognized gcc debugging option: %c"
msgstr ""
-#: opts.c:1965
+#: opts.c:1989
#, gcc-internal-format, gfc-internal-format
msgid "-Werror=%s: no option -%s"
msgstr ""
@@ -17362,27 +17631,72 @@
msgid "invalid parameter %qs"
msgstr ""
-#: passes.c:592
+#: passes.c:693
+#, gcc-internal-format
+msgid "unrecognized option -fenable"
+msgstr ""
+
+#: passes.c:695
+#, gcc-internal-format
+msgid "unrecognized option -fdisable"
+msgstr ""
+
+#: passes.c:703
+#, gcc-internal-format, gfc-internal-format
+msgid "unknown pass %s specified in -fenable"
+msgstr ""
+
+#: passes.c:705
+#, gcc-internal-format, gfc-internal-format
+msgid "unknown pass %s specified in -fdisble"
+msgstr ""
+
+#: passes.c:732 passes.c:822
+#, gcc-internal-format, gfc-internal-format
+msgid "enable pass %s for functions in the range of [%u, %u]"
+msgstr ""
+
+#: passes.c:735 passes.c:833
+#, gcc-internal-format, gfc-internal-format
+msgid "disable pass %s for functions in the range of [%u, %u]"
+msgstr ""
+
+#: passes.c:771 passes.c:799
+#, gcc-internal-format, gfc-internal-format
+msgid "Invalid range %s in option %s"
+msgstr ""
+
+#: passes.c:818
+#, gcc-internal-format, gfc-internal-format
+msgid "enable pass %s for function %s"
+msgstr ""
+
+#: passes.c:829
+#, gcc-internal-format, gfc-internal-format
+msgid "disable pass %s for function %s"
+msgstr ""
+
+#: passes.c:1042
#, gcc-internal-format
msgid "invalid pass positioning operation"
msgstr ""
-#: passes.c:634
+#: passes.c:1084
#, gcc-internal-format
msgid "plugin cannot register a missing pass"
msgstr ""
-#: passes.c:637
+#: passes.c:1087
#, gcc-internal-format
msgid "plugin cannot register an unnamed pass"
msgstr ""
-#: passes.c:641
+#: passes.c:1091
#, gcc-internal-format
msgid "plugin cannot register pass %qs without reference pass name"
msgstr ""
-#: passes.c:659
+#: passes.c:1109
#, gcc-internal-format
msgid "pass %qs not found but is referenced by new pass %qs"
msgstr ""
@@ -17457,44 +17771,44 @@
msgid "-iplugindir <dir> option not passed from the gcc driver"
msgstr ""
-#: profile.c:417
+#: profile.c:413
#, gcc-internal-format
msgid "corrupted profile info: edge count exceeds maximal count"
msgstr ""
-#: profile.c:421
+#: profile.c:417
#, gcc-internal-format, gfc-internal-format
msgid "corrupted profile info: edge from %i to %i exceeds maximal count"
msgstr ""
-#: profile.c:465
+#: profile.c:463
#, gcc-internal-format
msgid "corrupted profile info: run_max * runs < sum_max"
msgstr ""
-#: profile.c:471
+#: profile.c:469
#, gcc-internal-format
msgid "corrupted profile info: sum_all is smaller than sum_max"
msgstr ""
-#: profile.c:637
+#: profile.c:635
#, gcc-internal-format
msgid "correcting inconsistent profile data"
msgstr ""
-#: profile.c:647
+#: profile.c:645
#, gcc-internal-format
msgid "corrupted profile info: profile data is not flow-consistent"
msgstr ""
-#: profile.c:664
+#: profile.c:662
#, gcc-internal-format, gfc-internal-format
msgid ""
"corrupted profile info: number of iterations for basic block %d thought to "
"be %i"
msgstr ""
-#: profile.c:685
+#: profile.c:683
#, gcc-internal-format, gfc-internal-format
msgid ""
"corrupted profile info: number of executions for edge %d-%d thought to be %i"
@@ -17545,149 +17859,154 @@
msgid "validate_value_data: [%u] Non-empty reg in chain (%s %u %i)"
msgstr ""
-#: reginfo.c:779
+#: reginfo.c:783
#, gcc-internal-format
msgid "can%'t use %qs as a call-saved register"
msgstr ""
-#: reginfo.c:783
+#: reginfo.c:787
#, gcc-internal-format
msgid "can%'t use %qs as a call-used register"
msgstr ""
-#: reginfo.c:795
+#: reginfo.c:799
#, gcc-internal-format
msgid "can%'t use %qs as a fixed register"
msgstr ""
-#: reginfo.c:821 config/ia64/ia64.c:5624 config/ia64/ia64.c:5631
-#: config/pa/pa.c:436 config/pa/pa.c:443 config/sh/sh.c:8880
-#: config/sh/sh.c:8887 config/spu/spu.c:5122 config/spu/spu.c:5129
+#: reginfo.c:825 config/ia64/ia64.c:5597 config/ia64/ia64.c:5604
+#: config/pa/pa.c:425 config/pa/pa.c:432 config/sh/sh.c:8735
+#: config/sh/sh.c:8742 config/spu/spu.c:5129 config/spu/spu.c:5136
#, gcc-internal-format, gfc-internal-format
msgid "unknown register name: %s"
msgstr ""
-#: reginfo.c:832
+#: reginfo.c:838
#, gcc-internal-format
msgid "stack register used for global register variable"
msgstr ""
-#: reginfo.c:838
+#: reginfo.c:844
#, gcc-internal-format
msgid "global register variable follows a function definition"
msgstr ""
-#: reginfo.c:842
+#: reginfo.c:849
#, gcc-internal-format
-msgid "register used for two global register variables"
+msgid "register of %qD used for multiple global register variables"
msgstr ""
-#: reginfo.c:847
+#: reginfo.c:852
+#, gcc-internal-format
+msgid "conflicts with %qD"
+msgstr ""
+
+#: reginfo.c:857
#, gcc-internal-format
msgid "call-clobbered register used for global register variable"
msgstr ""
-#: reload.c:1269
+#: reload.c:1273
#, gcc-internal-format
msgid "cannot reload integer constant operand in %<asm%>"
msgstr ""
-#: reload.c:1283
+#: reload.c:1287
#, gcc-internal-format
msgid "impossible register constraint in %<asm%>"
msgstr ""
-#: reload.c:3630
+#: reload.c:3633
#, gcc-internal-format
msgid "%<&%> constraint used with no register class"
msgstr ""
-#: reload.c:3806 reload.c:4066
+#: reload.c:3809 reload.c:4068
#, gcc-internal-format
msgid "inconsistent operand constraints in an %<asm%>"
msgstr ""
-#: reload1.c:1256
+#: reload1.c:1253
#, gcc-internal-format
msgid "%<asm%> operand has impossible constraints"
msgstr ""
-#: reload1.c:1276
+#: reload1.c:1273
#, gcc-internal-format
msgid "frame size too large for reliable stack checking"
msgstr ""
-#: reload1.c:1279
+#: reload1.c:1276
#, gcc-internal-format
msgid "try reducing the number of local variables"
msgstr ""
-#: reload1.c:2092
+#: reload1.c:2100
#, gcc-internal-format
msgid "can%'t find a register in class %qs while reloading %<asm%>"
msgstr ""
-#: reload1.c:2097
+#: reload1.c:2105
#, gcc-internal-format
msgid "unable to find a register to spill in class %qs"
msgstr ""
-#: reload1.c:4625
+#: reload1.c:4659
#, gcc-internal-format
msgid "%<asm%> operand requires impossible reload"
msgstr ""
-#: reload1.c:6014
+#: reload1.c:6045
#, gcc-internal-format
msgid "%<asm%> operand constraint incompatible with operand size"
msgstr ""
-#: reload1.c:7853
+#: reload1.c:7861
#, gcc-internal-format
msgid "output operand is constant in %<asm%>"
msgstr ""
-#: rtl.c:737
+#: rtl.c:738
#, gcc-internal-format, gfc-internal-format
msgid "RTL check: access of elt %d of '%s' with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:747
+#: rtl.c:748
#, gcc-internal-format, gfc-internal-format
msgid ""
"RTL check: expected elt %d type '%c', have '%c' (rtx %s) in %s, at %s:%d"
msgstr ""
-#: rtl.c:757
+#: rtl.c:758
#, gcc-internal-format, gfc-internal-format
msgid ""
"RTL check: expected elt %d type '%c' or '%c', have '%c' (rtx %s) in %s, at "
"%s:%d"
msgstr ""
-#: rtl.c:766
+#: rtl.c:767
#, gcc-internal-format, gfc-internal-format
msgid "RTL check: expected code '%s', have '%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:776
+#: rtl.c:777
#, gcc-internal-format, gfc-internal-format
msgid "RTL check: expected code '%s' or '%s', have '%s' in %s, at %s:%d"
msgstr ""
-#: rtl.c:803
+#: rtl.c:804
#, gcc-internal-format, gfc-internal-format
msgid ""
"RTL check: attempt to treat non-block symbol as a block symbol in %s, at %s:"
"%d"
msgstr ""
-#: rtl.c:813
+#: rtl.c:814
#, gcc-internal-format, gfc-internal-format
msgid "RTL check: access of elt %d of vector with last elt %d in %s, at %s:%d"
msgstr ""
-#: rtl.c:824
+#: rtl.c:825
#, gcc-internal-format, gfc-internal-format
msgid "RTL flag check: %s used with unexpected rtx code '%s' in %s, at %s:%d"
msgstr ""
@@ -17807,77 +18126,67 @@
msgid "undefined named operand %qs"
msgstr ""
-#: stmt.c:1566 cp/cvt.c:1098 cp/cvt.c:1342
+#: stmt.c:1566 cp/cvt.c:1109 cp/cvt.c:1353
#, gcc-internal-format
msgid "value computed is not used"
msgstr ""
-#: stor-layout.c:158
-#, gcc-internal-format
-msgid "type size can%'t be explicitly evaluated"
-msgstr ""
-
-#: stor-layout.c:160
-#, gcc-internal-format
-msgid "variable-size type declared outside of any function"
-msgstr ""
-
-#: stor-layout.c:748
+#: stor-layout.c:710
#, gcc-internal-format
msgid "size of %q+D is %d bytes"
msgstr ""
-#: stor-layout.c:750
+#: stor-layout.c:712
#, gcc-internal-format
msgid "size of %q+D is larger than %wd bytes"
msgstr ""
-#: stor-layout.c:1167
+#: stor-layout.c:1129
#, gcc-internal-format
msgid "packed attribute causes inefficient alignment for %q+D"
msgstr ""
-#: stor-layout.c:1171
+#: stor-layout.c:1133
#, gcc-internal-format
msgid "packed attribute is unnecessary for %q+D"
msgstr ""
-#: stor-layout.c:1189
+#: stor-layout.c:1151
#, gcc-internal-format
msgid "padding struct to align %q+D"
msgstr ""
-#: stor-layout.c:1250
+#: stor-layout.c:1212
#, gcc-internal-format
msgid "offset of packed bit-field %qD has changed in GCC 4.4"
msgstr ""
-#: stor-layout.c:1556
+#: stor-layout.c:1518
#, gcc-internal-format
msgid "padding struct size to alignment boundary"
msgstr ""
-#: stor-layout.c:1584
+#: stor-layout.c:1546
#, gcc-internal-format
msgid "packed attribute causes inefficient alignment for %qE"
msgstr ""
-#: stor-layout.c:1588
+#: stor-layout.c:1550
#, gcc-internal-format
msgid "packed attribute is unnecessary for %qE"
msgstr ""
-#: stor-layout.c:1594
+#: stor-layout.c:1556
#, gcc-internal-format
msgid "packed attribute causes inefficient alignment"
msgstr ""
-#: stor-layout.c:1596
+#: stor-layout.c:1558
#, gcc-internal-format
msgid "packed attribute is unnecessary"
msgstr ""
-#: stor-layout.c:2068
+#: stor-layout.c:2025
#, gcc-internal-format
msgid "alignment of array elements is greater than element size"
msgstr ""
@@ -17897,59 +18206,84 @@
msgid "nested function trampolines not supported on this target"
msgstr ""
-#: targhooks.c:1178
+#: targhooks.c:1161
#, gcc-internal-format
msgid "target attribute is not supported on this machine"
msgstr ""
-#: targhooks.c:1188
+#: targhooks.c:1171
#, gcc-internal-format
msgid "#pragma GCC target is not supported for this machine"
msgstr ""
-#: tlink.c:486
+#: tlink.c:481
+#, gcc-internal-format
+msgid "removing .rpo file: %m"
+msgstr ""
+
+#: tlink.c:483
+#, gcc-internal-format
+msgid "renaming .rpo file: %m"
+msgstr ""
+
+#: tlink.c:487
#, gcc-internal-format, gfc-internal-format
msgid "repository file '%s' does not contain command-line arguments"
msgstr ""
-#: tlink.c:734
+#: tlink.c:735
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' was assigned to '%s', but was not defined during recompilation, or vice "
"versa"
msgstr ""
-#: tlink.c:804
+#: tlink.c:805
#, gcc-internal-format, gfc-internal-format
msgid "ld returned %d exit status"
msgstr ""
-#: toplev.c:499
+#: toplev.c:500
#, gcc-internal-format
msgid "%q+F declared %<static%> but never defined"
msgstr ""
-#: toplev.c:527
+#: toplev.c:528
#, gcc-internal-format
msgid "%q+D defined but not used"
msgstr ""
-#: toplev.c:949
+#: toplev.c:950
#, gcc-internal-format
msgid "-frecord-gcc-switches is not supported by the current target"
msgstr ""
-#: toplev.c:1058
+#: toplev.c:1057
#, gcc-internal-format
-msgid "-fstack-usage not supported for this target"
+msgid "stack usage computation not supported for this target"
msgstr ""
-#: toplev.c:1295
+#: toplev.c:1111
+#, gcc-internal-format
+msgid "stack usage might be unbounded"
+msgstr ""
+
+#: toplev.c:1115
+#, gcc-internal-format
+msgid "stack usage might be %wd bytes"
+msgstr ""
+
+#: toplev.c:1118
+#, gcc-internal-format
+msgid "stack usage is %wd bytes"
+msgstr ""
+
+#: toplev.c:1291
#, gcc-internal-format
msgid "this target does not support %qs"
msgstr ""
-#: toplev.c:1323
+#: toplev.c:1319
#, gcc-internal-format
msgid ""
"Graphite loop optimizations cannot be used (-fgraphite, -fgraphite-identity, "
@@ -17957,821 +18291,821 @@
"parallelize-all, and -ftree-loop-linear)"
msgstr ""
-#: toplev.c:1352
+#: toplev.c:1348
#, gcc-internal-format
msgid "instruction scheduling not supported on this target machine"
msgstr ""
-#: toplev.c:1356
+#: toplev.c:1352
#, gcc-internal-format
msgid "this target machine does not have delayed branches"
msgstr ""
-#: toplev.c:1370
+#: toplev.c:1366
#, gcc-internal-format, gfc-internal-format
msgid "-f%sleading-underscore not supported on this target machine"
msgstr ""
-#: toplev.c:1413
+#: toplev.c:1409
#, gcc-internal-format
msgid "could not close zeroed insn dump file %qs: %m"
msgstr ""
-#: toplev.c:1452
+#: toplev.c:1448
#, gcc-internal-format, gfc-internal-format
msgid "target system does not support the \"%s\" debug format"
msgstr ""
-#: toplev.c:1464
+#: toplev.c:1460
#, gcc-internal-format
msgid "variable tracking requested, but useless unless producing debug info"
msgstr ""
-#: toplev.c:1467
+#: toplev.c:1463
#, gcc-internal-format
msgid "variable tracking requested, but not supported by this debug format"
msgstr ""
-#: toplev.c:1501
+#: toplev.c:1497
#, gcc-internal-format
msgid "var-tracking-assignments changes selective scheduling"
msgstr ""
-#: toplev.c:1524
+#: toplev.c:1520
#, gcc-internal-format
msgid "-ffunction-sections not supported for this target"
msgstr ""
-#: toplev.c:1529
+#: toplev.c:1525
#, gcc-internal-format
msgid "-fdata-sections not supported for this target"
msgstr ""
-#: toplev.c:1536
+#: toplev.c:1532
#, gcc-internal-format
msgid "-ffunction-sections disabled; it makes profiling impossible"
msgstr ""
-#: toplev.c:1543
+#: toplev.c:1539
#, gcc-internal-format
msgid "-fprefetch-loop-arrays not supported for this target"
msgstr ""
-#: toplev.c:1549
+#: toplev.c:1545
#, gcc-internal-format
msgid ""
"-fprefetch-loop-arrays not supported for this target (try -march switches)"
msgstr ""
-#: toplev.c:1558
+#: toplev.c:1554
#, gcc-internal-format
msgid "-fprefetch-loop-arrays is not supported with -Os"
msgstr ""
-#: toplev.c:1569
+#: toplev.c:1565
#, gcc-internal-format
msgid "-fassociative-math disabled; other options take precedence"
msgstr ""
-#: toplev.c:1585
+#: toplev.c:1581
#, gcc-internal-format
msgid "-fstack-protector not supported for this target"
msgstr ""
-#: toplev.c:1598
+#: toplev.c:1594
#, gcc-internal-format
msgid "unwind tables currently require a frame pointer for correctness"
msgstr ""
-#: toplev.c:1848
+#: toplev.c:1859
#, gcc-internal-format
msgid "error writing to %s: %m"
msgstr ""
-#: toplev.c:1850 java/jcf-parse.c:1770
+#: toplev.c:1861 java/jcf-parse.c:1770
#, gcc-internal-format
msgid "error closing %s: %m"
msgstr ""
-#: tree-cfg.c:2554
+#: tree-cfg.c:2550
#, gcc-internal-format
msgid "constant not recomputed when ADDR_EXPR changed"
msgstr ""
-#: tree-cfg.c:2559
+#: tree-cfg.c:2555
#, gcc-internal-format
msgid "side effects not recomputed when ADDR_EXPR changed"
msgstr ""
-#: tree-cfg.c:2570
+#: tree-cfg.c:2566
#, gcc-internal-format
msgid "DECL_GIMPLE_REG_P set on a variable with address taken"
msgstr ""
-#: tree-cfg.c:2599
+#: tree-cfg.c:2595
#, gcc-internal-format
msgid "SSA name in freelist but still referenced"
msgstr ""
-#: tree-cfg.c:2605 tree-cfg.c:3740
+#: tree-cfg.c:2601 tree-cfg.c:3765
#, gcc-internal-format
msgid "INDIRECT_REF in gimple IL"
msgstr ""
-#: tree-cfg.c:2613
+#: tree-cfg.c:2609
#, gcc-internal-format
msgid "invalid first operand of MEM_REF"
msgstr ""
-#: tree-cfg.c:2619
+#: tree-cfg.c:2615
#, gcc-internal-format
msgid "invalid offset operand of MEM_REF"
msgstr ""
-#: tree-cfg.c:2632
+#: tree-cfg.c:2628
#, gcc-internal-format
msgid "ASSERT_EXPR with an always-false condition"
msgstr ""
-#: tree-cfg.c:2638
+#: tree-cfg.c:2634
#, gcc-internal-format
msgid "MODIFY_EXPR not expected while having tuples"
msgstr ""
-#: tree-cfg.c:2665 tree-ssa.c:836
+#: tree-cfg.c:2661 tree-ssa.c:871
#, gcc-internal-format
msgid "address taken, but ADDRESSABLE bit not set"
msgstr ""
-#: tree-cfg.c:2676
+#: tree-cfg.c:2672
#, gcc-internal-format
msgid "non-integral used in condition"
msgstr ""
-#: tree-cfg.c:2681
+#: tree-cfg.c:2677
#, gcc-internal-format
msgid "invalid conditional operand"
msgstr ""
-#: tree-cfg.c:2728
+#: tree-cfg.c:2724
#, gcc-internal-format
msgid "invalid position or size operand to BIT_FIELD_REF"
msgstr ""
-#: tree-cfg.c:2735
+#: tree-cfg.c:2731
#, gcc-internal-format
msgid ""
"integral result type precision does not match field size of BIT_FIELD_REF"
msgstr ""
-#: tree-cfg.c:2743
+#: tree-cfg.c:2739
#, gcc-internal-format
msgid ""
"mode precision of non-integral result does not match field size of "
"BIT_FIELD_REF"
msgstr ""
-#: tree-cfg.c:2754
+#: tree-cfg.c:2750
#, gcc-internal-format
msgid "invalid reference prefix"
msgstr ""
-#: tree-cfg.c:2765
+#: tree-cfg.c:2761
#, gcc-internal-format
msgid "invalid operand to plus/minus, type is a pointer"
msgstr ""
-#: tree-cfg.c:2776
+#: tree-cfg.c:2772
#, gcc-internal-format
msgid "invalid operand to pointer plus, first operand is not a pointer"
msgstr ""
-#: tree-cfg.c:2784
+#: tree-cfg.c:2780
#, gcc-internal-format
msgid ""
"invalid operand to pointer plus, second operand is not an integer with type "
"of sizetype"
msgstr ""
-#: tree-cfg.c:2855
+#: tree-cfg.c:2831
+#, gcc-internal-format
+msgid "invalid CASE_CHAIN"
+msgstr ""
+
+#: tree-cfg.c:2859
#, gcc-internal-format
msgid "invalid expression for min lvalue"
msgstr ""
-#: tree-cfg.c:2866
+#: tree-cfg.c:2870
#, gcc-internal-format
msgid "invalid operand in indirect reference"
msgstr ""
-#: tree-cfg.c:2895
+#: tree-cfg.c:2899
#, gcc-internal-format
msgid "invalid operands to array reference"
msgstr ""
-#: tree-cfg.c:2906
+#: tree-cfg.c:2910
#, gcc-internal-format
msgid "type mismatch in array reference"
msgstr ""
-#: tree-cfg.c:2915
+#: tree-cfg.c:2919
#, gcc-internal-format
msgid "type mismatch in array range reference"
msgstr ""
-#: tree-cfg.c:2926
+#: tree-cfg.c:2930
#, gcc-internal-format
msgid "type mismatch in real/imagpart reference"
msgstr ""
-#: tree-cfg.c:2936
+#: tree-cfg.c:2940
#, gcc-internal-format
msgid "type mismatch in component reference"
msgstr ""
-#: tree-cfg.c:2953
+#: tree-cfg.c:2957
#, gcc-internal-format
msgid "conversion of an SSA_NAME on the left hand side"
msgstr ""
-#: tree-cfg.c:2960
+#: tree-cfg.c:2964
#, gcc-internal-format
msgid "conversion of register to a different size"
msgstr ""
-#: tree-cfg.c:2975
+#: tree-cfg.c:2979
#, gcc-internal-format
msgid "invalid address operand in MEM_REF"
msgstr ""
-#: tree-cfg.c:2982
+#: tree-cfg.c:2986
#, gcc-internal-format
msgid "invalid offset operand in MEM_REF"
msgstr ""
-#: tree-cfg.c:2992
+#: tree-cfg.c:2996
#, gcc-internal-format
-msgid "invalid address operand in in TARGET_MEM_REF"
+msgid "invalid address operand in TARGET_MEM_REF"
msgstr ""
-#: tree-cfg.c:2999
+#: tree-cfg.c:3003
#, gcc-internal-format
msgid "invalid offset operand in TARGET_MEM_REF"
msgstr ""
-#: tree-cfg.c:3052
+#: tree-cfg.c:3057
+#, gcc-internal-format
+msgid "gimple call has two targets"
+msgstr ""
+
+#: tree-cfg.c:3066
+#, gcc-internal-format
+msgid "gimple call has no target"
+msgstr ""
+
+#: tree-cfg.c:3073
#, gcc-internal-format
msgid "invalid function in gimple call"
msgstr ""
-#: tree-cfg.c:3061
+#: tree-cfg.c:3083
#, gcc-internal-format
msgid "non-function in gimple call"
msgstr ""
-#: tree-cfg.c:3069
-#, gcc-internal-format
-msgid "invalid LHS in gimple call"
-msgstr ""
-
-#: tree-cfg.c:3075
-#, gcc-internal-format
-msgid "LHS in noreturn call"
-msgstr ""
-
-#: tree-cfg.c:3091
-#, gcc-internal-format
-msgid "invalid conversion in gimple call"
-msgstr ""
-
-#: tree-cfg.c:3100
-#, gcc-internal-format
-msgid "invalid static chain in gimple call"
-msgstr ""
-
-#: tree-cfg.c:3111
-#, gcc-internal-format
-msgid "static chain in indirect gimple call"
-msgstr ""
-
-#: tree-cfg.c:3118
-#, gcc-internal-format
-msgid "static chain with function that doesn%'t use one"
-msgstr ""
-
-#: tree-cfg.c:3136
-#, gcc-internal-format
-msgid "invalid argument to gimple call"
-msgstr ""
-
-#: tree-cfg.c:3156
-#, gcc-internal-format
-msgid "invalid operands in gimple comparison"
-msgstr ""
-
-#: tree-cfg.c:3174
-#, gcc-internal-format
-msgid "type mismatch in comparison expression"
-msgstr ""
-
-#: tree-cfg.c:3200
-#, gcc-internal-format
-msgid "non-register as LHS of unary operation"
-msgstr ""
-
-#: tree-cfg.c:3206
-#, gcc-internal-format
-msgid "invalid operand in unary operation"
-msgstr ""
-
-#: tree-cfg.c:3241
-#, gcc-internal-format
-msgid "invalid types in nop conversion"
-msgstr ""
-
-#: tree-cfg.c:3256
-#, gcc-internal-format
-msgid "invalid types in address space conversion"
-msgstr ""
-
-#: tree-cfg.c:3270
-#, gcc-internal-format
-msgid "invalid types in fixed-point conversion"
-msgstr ""
-
-#: tree-cfg.c:3283
-#, gcc-internal-format
-msgid "invalid types in conversion to floating point"
-msgstr ""
-
-#: tree-cfg.c:3296
-#, gcc-internal-format
-msgid "invalid types in conversion to integer"
-msgstr ""
-
-#: tree-cfg.c:3331
-#, gcc-internal-format
-msgid "non-trivial conversion in unary operation"
-msgstr ""
-
-#: tree-cfg.c:3358
-#, gcc-internal-format
-msgid "non-register as LHS of binary operation"
-msgstr ""
-
-#: tree-cfg.c:3365
-#, gcc-internal-format
-msgid "invalid operands in binary operation"
-msgstr ""
-
-#: tree-cfg.c:3380
-#, gcc-internal-format
-msgid "type mismatch in complex expression"
-msgstr ""
-
-#: tree-cfg.c:3409
-#, gcc-internal-format
-msgid "type mismatch in shift expression"
-msgstr ""
-
-#: tree-cfg.c:3432
-#, gcc-internal-format
-msgid "type mismatch in vector shift expression"
-msgstr ""
-
-#: tree-cfg.c:3445
-#, gcc-internal-format
-msgid "non-element sized vector shift of floating point vector"
-msgstr ""
-
-#: tree-cfg.c:3464
-#, gcc-internal-format
-msgid "invalid non-vector operands to vector valued plus"
-msgstr ""
-
-#: tree-cfg.c:3484
-#, gcc-internal-format
-msgid "invalid (pointer) operands to plus/minus"
-msgstr ""
-
-#: tree-cfg.c:3499
-#, gcc-internal-format
-msgid "type mismatch in pointer plus expression"
-msgstr ""
-
-#: tree-cfg.c:3522
-#, gcc-internal-format
-msgid "type mismatch in binary truth expression"
-msgstr ""
-
-#: tree-cfg.c:3595
-#, gcc-internal-format
-msgid "type mismatch in binary expression"
-msgstr ""
-
-#: tree-cfg.c:3625
-#, gcc-internal-format
-msgid "non-register as LHS of ternary operation"
-msgstr ""
-
-#: tree-cfg.c:3633
-#, gcc-internal-format
-msgid "invalid operands in ternary operation"
-msgstr ""
-
-#: tree-cfg.c:3649
-#, gcc-internal-format
-msgid "type mismatch in widening multiply-accumulate expression"
-msgstr ""
-
-#: tree-cfg.c:3663
-#, gcc-internal-format
-msgid "type mismatch in fused multiply-add expression"
-msgstr ""
-
-#: tree-cfg.c:3698
-#, gcc-internal-format
-msgid "non-trivial conversion at assignment"
-msgstr ""
-
-#: tree-cfg.c:3715
-#, gcc-internal-format
-msgid "invalid operand in unary expression"
-msgstr ""
-
-#: tree-cfg.c:3729
-#, gcc-internal-format
-msgid "type mismatch in address expression"
-msgstr ""
-
-#: tree-cfg.c:3755 tree-cfg.c:3781
-#, gcc-internal-format
-msgid "invalid rhs for gimple memory store"
-msgstr ""
-
-#: tree-cfg.c:3797
-#, gcc-internal-format
-msgid "invalid COND_EXPR in gimple assignment"
-msgstr ""
-
-#: tree-cfg.c:3859
-#, gcc-internal-format
-msgid "invalid operand in return statement"
-msgstr ""
-
-#: tree-cfg.c:3873
-#, gcc-internal-format
-msgid "invalid conversion in return statement"
-msgstr ""
-
-#: tree-cfg.c:3897
-#, gcc-internal-format
-msgid "goto destination is neither a label nor a pointer"
-msgstr ""
-
-#: tree-cfg.c:3912
-#, gcc-internal-format
-msgid "invalid operand to switch statement"
-msgstr ""
-
-#: tree-cfg.c:3932
-#, gcc-internal-format
-msgid "invalid PHI result"
-msgstr ""
-
-#: tree-cfg.c:3944
-#, gcc-internal-format
-msgid "invalid PHI argument"
-msgstr ""
-
-#: tree-cfg.c:3950
-#, gcc-internal-format, gfc-internal-format
-msgid "incompatible types in PHI argument %u"
-msgstr ""
-
-#: tree-cfg.c:3997
-#, gcc-internal-format
-msgid "invalid comparison code in gimple cond"
-msgstr ""
-
-#: tree-cfg.c:4005
-#, gcc-internal-format
-msgid "invalid labels in gimple cond"
-msgstr ""
-
-#: tree-cfg.c:4104
-#, gcc-internal-format
-msgid "verify_gimple failed"
-msgstr ""
-
-#: tree-cfg.c:4139
-#, gcc-internal-format
-msgid "invalid function in call statement"
-msgstr ""
-
-#: tree-cfg.c:4150
+#: tree-cfg.c:3094
#, gcc-internal-format
msgid "invalid pure const state for function"
msgstr ""
-#: tree-cfg.c:4163 tree-ssa.c:1013 tree-ssa.c:1023
+#: tree-cfg.c:3102
#, gcc-internal-format
-msgid "in statement"
+msgid "invalid LHS in gimple call"
msgstr ""
-#: tree-cfg.c:4178
+#: tree-cfg.c:3108
#, gcc-internal-format
-msgid "statement marked for throw, but doesn%'t"
+msgid "LHS in noreturn call"
msgstr ""
-#: tree-cfg.c:4183
+#: tree-cfg.c:3125
#, gcc-internal-format
-msgid "statement marked for throw in middle of block"
+msgid "invalid conversion in gimple call"
msgstr ""
-#: tree-cfg.c:4255
+#: tree-cfg.c:3134
#, gcc-internal-format
-msgid "dead STMT in EH table"
+msgid "invalid static chain in gimple call"
msgstr ""
-#: tree-cfg.c:4293
+#: tree-cfg.c:3145
#, gcc-internal-format
-msgid "gimple_bb (phi) is set to a wrong basic block"
+msgid "static chain in indirect gimple call"
msgstr ""
-#: tree-cfg.c:4304
+#: tree-cfg.c:3152
#, gcc-internal-format
-msgid "missing PHI def"
+msgid "static chain with function that doesn%'t use one"
msgstr ""
-#: tree-cfg.c:4315
+#: tree-cfg.c:3170
#, gcc-internal-format
-msgid "PHI argument is not a GIMPLE value"
+msgid "invalid argument to gimple call"
msgstr ""
-#: tree-cfg.c:4324 tree-cfg.c:4397
+#: tree-cfg.c:3190
#, gcc-internal-format
-msgid "incorrect sharing of tree nodes"
+msgid "invalid operands in gimple comparison"
msgstr ""
-#: tree-cfg.c:4347
+#: tree-cfg.c:3208
#, gcc-internal-format
-msgid "invalid GIMPLE statement"
+msgid "type mismatch in comparison expression"
msgstr ""
-#: tree-cfg.c:4356
+#: tree-cfg.c:3232
#, gcc-internal-format
-msgid "gimple_bb (stmt) is set to a wrong basic block"
+msgid "non-register as LHS of unary operation"
msgstr ""
-#: tree-cfg.c:4369
+#: tree-cfg.c:3238
+#, gcc-internal-format
+msgid "invalid operand in unary operation"
+msgstr ""
+
+#: tree-cfg.c:3273
+#, gcc-internal-format
+msgid "invalid types in nop conversion"
+msgstr ""
+
+#: tree-cfg.c:3288
+#, gcc-internal-format
+msgid "invalid types in address space conversion"
+msgstr ""
+
+#: tree-cfg.c:3302
+#, gcc-internal-format
+msgid "invalid types in fixed-point conversion"
+msgstr ""
+
+#: tree-cfg.c:3315
+#, gcc-internal-format
+msgid "invalid types in conversion to floating point"
+msgstr ""
+
+#: tree-cfg.c:3328
+#, gcc-internal-format
+msgid "invalid types in conversion to integer"
+msgstr ""
+
+#: tree-cfg.c:3353
+#, gcc-internal-format
+msgid "invalid types in truth not"
+msgstr ""
+
+#: tree-cfg.c:3375
+#, gcc-internal-format
+msgid "non-trivial conversion in unary operation"
+msgstr ""
+
+#: tree-cfg.c:3400
+#, gcc-internal-format
+msgid "non-register as LHS of binary operation"
+msgstr ""
+
+#: tree-cfg.c:3407
+#, gcc-internal-format
+msgid "invalid operands in binary operation"
+msgstr ""
+
+#: tree-cfg.c:3422
+#, gcc-internal-format
+msgid "type mismatch in complex expression"
+msgstr ""
+
+#: tree-cfg.c:3451
+#, gcc-internal-format
+msgid "type mismatch in shift expression"
+msgstr ""
+
+#: tree-cfg.c:3474
+#, gcc-internal-format
+msgid "type mismatch in vector shift expression"
+msgstr ""
+
+#: tree-cfg.c:3487
+#, gcc-internal-format
+msgid "non-element sized vector shift of floating point vector"
+msgstr ""
+
+#: tree-cfg.c:3506
+#, gcc-internal-format
+msgid "invalid non-vector operands to vector valued plus"
+msgstr ""
+
+#: tree-cfg.c:3526
+#, gcc-internal-format
+msgid "invalid (pointer) operands to plus/minus"
+msgstr ""
+
+#: tree-cfg.c:3541
+#, gcc-internal-format
+msgid "type mismatch in pointer plus expression"
+msgstr ""
+
+#: tree-cfg.c:3622
+#, gcc-internal-format
+msgid "type mismatch in binary expression"
+msgstr ""
+
+#: tree-cfg.c:3650
+#, gcc-internal-format
+msgid "non-register as LHS of ternary operation"
+msgstr ""
+
+#: tree-cfg.c:3658
+#, gcc-internal-format
+msgid "invalid operands in ternary operation"
+msgstr ""
+
+#: tree-cfg.c:3674
+#, gcc-internal-format
+msgid "type mismatch in widening multiply-accumulate expression"
+msgstr ""
+
+#: tree-cfg.c:3688
+#, gcc-internal-format
+msgid "type mismatch in fused multiply-add expression"
+msgstr ""
+
+#: tree-cfg.c:3723
+#, gcc-internal-format
+msgid "non-trivial conversion at assignment"
+msgstr ""
+
+#: tree-cfg.c:3740
+#, gcc-internal-format
+msgid "invalid operand in unary expression"
+msgstr ""
+
+#: tree-cfg.c:3754
+#, gcc-internal-format
+msgid "type mismatch in address expression"
+msgstr ""
+
+#: tree-cfg.c:3780 tree-cfg.c:3806
+#, gcc-internal-format
+msgid "invalid rhs for gimple memory store"
+msgstr ""
+
+#: tree-cfg.c:3822
+#, gcc-internal-format
+msgid "invalid COND_EXPR in gimple assignment"
+msgstr ""
+
+#: tree-cfg.c:3884
+#, gcc-internal-format
+msgid "invalid operand in return statement"
+msgstr ""
+
+#: tree-cfg.c:3898
+#, gcc-internal-format
+msgid "invalid conversion in return statement"
+msgstr ""
+
+#: tree-cfg.c:3922
+#, gcc-internal-format
+msgid "goto destination is neither a label nor a pointer"
+msgstr ""
+
+#: tree-cfg.c:3937
+#, gcc-internal-format
+msgid "invalid operand to switch statement"
+msgstr ""
+
+#: tree-cfg.c:3980
#, gcc-internal-format
msgid "incorrect entry in label_to_block_map"
msgstr ""
-#: tree-cfg.c:4379
+#: tree-cfg.c:3990
#, gcc-internal-format
msgid "incorrect setting of landing pad number"
msgstr ""
-#: tree-cfg.c:4413
+#: tree-cfg.c:4018
#, gcc-internal-format
-msgid "verify_stmts failed"
+msgid "invalid comparison code in gimple cond"
msgstr ""
-#: tree-cfg.c:4436
+#: tree-cfg.c:4026
+#, gcc-internal-format
+msgid "invalid labels in gimple cond"
+msgstr ""
+
+#: tree-cfg.c:4084 tree-cfg.c:4093
+#, gcc-internal-format
+msgid "invalid PHI result"
+msgstr ""
+
+#: tree-cfg.c:4103
+#, gcc-internal-format
+msgid "missing PHI def"
+msgstr ""
+
+#: tree-cfg.c:4117
+#, gcc-internal-format
+msgid "invalid PHI argument"
+msgstr ""
+
+#: tree-cfg.c:4124
+#, gcc-internal-format, gfc-internal-format
+msgid "incompatible types in PHI argument %u"
+msgstr ""
+
+#: tree-cfg.c:4187 tree-cfg.c:4383
+#, gcc-internal-format
+msgid "verify_gimple failed"
+msgstr ""
+
+#: tree-cfg.c:4248
+#, gcc-internal-format
+msgid "dead STMT in EH table"
+msgstr ""
+
+#: tree-cfg.c:4282
+#, gcc-internal-format
+msgid "gimple_bb (phi) is set to a wrong basic block"
+msgstr ""
+
+#: tree-cfg.c:4294 tree-cfg.c:4328
+#, gcc-internal-format
+msgid "incorrect sharing of tree nodes"
+msgstr ""
+
+#: tree-cfg.c:4317
+#, gcc-internal-format
+msgid "gimple_bb (stmt) is set to a wrong basic block"
+msgstr ""
+
+#: tree-cfg.c:4343 tree-ssa.c:1048 tree-ssa.c:1058
+#, gcc-internal-format
+msgid "in statement"
+msgstr ""
+
+#: tree-cfg.c:4358
+#, gcc-internal-format
+msgid "statement marked for throw, but doesn%'t"
+msgstr ""
+
+#: tree-cfg.c:4365
+#, gcc-internal-format
+msgid "statement marked for throw in middle of block"
+msgstr ""
+
+#: tree-cfg.c:4406
#, gcc-internal-format
msgid "ENTRY_BLOCK has IL associated with it"
msgstr ""
-#: tree-cfg.c:4442
+#: tree-cfg.c:4412
#, gcc-internal-format
msgid "EXIT_BLOCK has IL associated with it"
msgstr ""
-#: tree-cfg.c:4449
+#: tree-cfg.c:4419
#, gcc-internal-format, gfc-internal-format
msgid "fallthru to exit from bb %d"
msgstr ""
-#: tree-cfg.c:4473
+#: tree-cfg.c:4443
#, gcc-internal-format
msgid "nonlocal label "
msgstr ""
-#: tree-cfg.c:4482
+#: tree-cfg.c:4452
#, gcc-internal-format
msgid "EH landing pad label "
msgstr ""
-#: tree-cfg.c:4491 tree-cfg.c:4500 tree-cfg.c:4525
+#: tree-cfg.c:4461 tree-cfg.c:4470 tree-cfg.c:4495
#, gcc-internal-format
msgid "label "
msgstr ""
-#: tree-cfg.c:4515
+#: tree-cfg.c:4485
#, gcc-internal-format, gfc-internal-format
msgid "control flow in the middle of basic block %d"
msgstr ""
-#: tree-cfg.c:4548
+#: tree-cfg.c:4518
#, gcc-internal-format, gfc-internal-format
msgid "fallthru edge after a control statement in bb %d"
msgstr ""
-#: tree-cfg.c:4561
+#: tree-cfg.c:4531
#, gcc-internal-format, gfc-internal-format
msgid "true/false edge after a non-GIMPLE_COND in bb %d"
msgstr ""
-#: tree-cfg.c:4584 tree-cfg.c:4606 tree-cfg.c:4623 tree-cfg.c:4692
+#: tree-cfg.c:4554 tree-cfg.c:4576 tree-cfg.c:4593 tree-cfg.c:4662
#, gcc-internal-format, gfc-internal-format
msgid "wrong outgoing edge flags at end of bb %d"
msgstr ""
-#: tree-cfg.c:4594
+#: tree-cfg.c:4564
#, gcc-internal-format, gfc-internal-format
msgid "explicit goto at end of bb %d"
msgstr ""
-#: tree-cfg.c:4628
+#: tree-cfg.c:4598
#, gcc-internal-format, gfc-internal-format
msgid "return edge does not point to exit in bb %d"
msgstr ""
-#: tree-cfg.c:4658
+#: tree-cfg.c:4628
#, gcc-internal-format
msgid "found default case not at the start of case vector"
msgstr ""
-#: tree-cfg.c:4666
+#: tree-cfg.c:4636
#, gcc-internal-format
msgid "case labels not sorted: "
msgstr ""
-#: tree-cfg.c:4683
+#: tree-cfg.c:4653
#, gcc-internal-format, gfc-internal-format
msgid "extra outgoing edge %d->%d"
msgstr ""
-#: tree-cfg.c:4706
+#: tree-cfg.c:4676
#, gcc-internal-format, gfc-internal-format
msgid "missing edge %i->%i"
msgstr ""
-#: tree-cfg.c:7346
+#: tree-cfg.c:7336
#, gcc-internal-format
msgid "%<noreturn%> function does return"
msgstr ""
-#: tree-cfg.c:7366
+#: tree-cfg.c:7356
#, gcc-internal-format
msgid "control reaches end of non-void function"
msgstr ""
-#: tree-cfg.c:7502
+#: tree-cfg.c:7494
#, gcc-internal-format
msgid ""
"ignoring return value of %qD, declared with attribute warn_unused_result"
msgstr ""
-#: tree-cfg.c:7507
+#: tree-cfg.c:7499
#, gcc-internal-format
msgid ""
"ignoring return value of function declared with attribute warn_unused_result"
msgstr ""
-#: tree-dump.c:935
+#: tree-dump.c:931
#, gcc-internal-format
msgid "could not open dump file %qs: %m"
msgstr ""
-#: tree-dump.c:1068
+#: tree-dump.c:1064
#, gcc-internal-format
msgid "ignoring unknown option %q.*s in %<-fdump-%s%>"
msgstr ""
-#: tree-eh.c:4035
+#: tree-eh.c:4045
#, gcc-internal-format, gfc-internal-format
msgid "BB %i has multiple EH edges"
msgstr ""
-#: tree-eh.c:4047
+#: tree-eh.c:4057
#, gcc-internal-format, gfc-internal-format
msgid "BB %i can not throw but has an EH edge"
msgstr ""
-#: tree-eh.c:4055
+#: tree-eh.c:4065
#, gcc-internal-format, gfc-internal-format
msgid "BB %i last statement has incorrectly set lp"
msgstr ""
-#: tree-eh.c:4061
+#: tree-eh.c:4071
#, gcc-internal-format, gfc-internal-format
msgid "BB %i is missing an EH edge"
msgstr ""
-#: tree-eh.c:4067
+#: tree-eh.c:4077
#, gcc-internal-format, gfc-internal-format
msgid "Incorrect EH edge %i->%i"
msgstr ""
-#: tree-eh.c:4101 tree-eh.c:4120
+#: tree-eh.c:4111 tree-eh.c:4130
#, gcc-internal-format, gfc-internal-format
msgid "BB %i is missing an edge"
msgstr ""
-#: tree-eh.c:4137
+#: tree-eh.c:4147
#, gcc-internal-format, gfc-internal-format
msgid "BB %i too many fallthru edges"
msgstr ""
-#: tree-eh.c:4146
+#: tree-eh.c:4156
#, gcc-internal-format, gfc-internal-format
msgid "BB %i has incorrect edge"
msgstr ""
-#: tree-eh.c:4152
+#: tree-eh.c:4162
#, gcc-internal-format, gfc-internal-format
msgid "BB %i has incorrect fallthru edge"
msgstr ""
-#: tree-inline.c:2954
+#: tree-inline.c:2958
#, gcc-internal-format
msgid "function %q+F can never be copied because it receives a non-local goto"
msgstr ""
-#: tree-inline.c:2968
+#: tree-inline.c:2972
#, gcc-internal-format
msgid ""
"function %q+F can never be copied because it saves address of local label in "
"a static variable"
msgstr ""
-#: tree-inline.c:3005
+#: tree-inline.c:3012
#, gcc-internal-format
msgid ""
"function %q+F can never be inlined because it uses alloca (override using "
"the always_inline attribute)"
msgstr ""
-#: tree-inline.c:3019
+#: tree-inline.c:3026
#, gcc-internal-format
msgid "function %q+F can never be inlined because it uses setjmp"
msgstr ""
-#: tree-inline.c:3033
+#: tree-inline.c:3040
#, gcc-internal-format
msgid ""
"function %q+F can never be inlined because it uses variable argument lists"
msgstr ""
-#: tree-inline.c:3045
+#: tree-inline.c:3052
#, gcc-internal-format
msgid ""
"function %q+F can never be inlined because it uses setjmp-longjmp exception "
"handling"
msgstr ""
-#: tree-inline.c:3053
+#: tree-inline.c:3060
#, gcc-internal-format
msgid "function %q+F can never be inlined because it uses non-local goto"
msgstr ""
-#: tree-inline.c:3065
+#: tree-inline.c:3072
#, gcc-internal-format
msgid ""
"function %q+F can never be inlined because it uses __builtin_return or "
"__builtin_apply_args"
msgstr ""
-#: tree-inline.c:3085
+#: tree-inline.c:3092
#, gcc-internal-format
msgid "function %q+F can never be inlined because it contains a computed goto"
msgstr ""
-#: tree-inline.c:3188
+#: tree-inline.c:3172
#, gcc-internal-format
msgid ""
"function %q+F can never be inlined because it is suppressed using -fno-inline"
msgstr ""
-#: tree-inline.c:3196
+#: tree-inline.c:3180
#, gcc-internal-format
msgid ""
"function %q+F can never be inlined because it uses attributes conflicting "
"with inlining"
msgstr ""
-#: tree-inline.c:3812 tree-inline.c:3823
+#: tree-inline.c:3749
#, gcc-internal-format
-msgid "inlining failed in call to %q+F: %s"
+msgid "inlining failed in call to always_inline %q+F: %s"
msgstr ""
-#: tree-inline.c:3814 tree-inline.c:3825
+#: tree-inline.c:3751 tree-inline.c:3766
#, gcc-internal-format
msgid "called from here"
msgstr ""
+#: tree-inline.c:3764
+#, gcc-internal-format
+msgid "inlining failed in call to %q+F: %s"
+msgstr ""
+
#: tree-mudflap.c:895
#, gcc-internal-format
msgid "mudflap checking not yet implemented for ARRAY_RANGE_REF"
@@ -18792,600 +19126,610 @@
msgid "mudflap: this language is not supported"
msgstr ""
-#: tree-optimize.c:450
+#: tree-optimize.c:444
#, gcc-internal-format
msgid "size of return value of %q+D is %u bytes"
msgstr ""
-#: tree-optimize.c:453
+#: tree-optimize.c:447
#, gcc-internal-format
msgid "size of return value of %q+D is larger than %wd bytes"
msgstr ""
-#: tree-outof-ssa.c:783 tree-outof-ssa.c:840 tree-ssa-coalesce.c:952
-#: tree-ssa-coalesce.c:967 tree-ssa-coalesce.c:1189 tree-ssa-live.c:1302
+#: tree-outof-ssa.c:783 tree-outof-ssa.c:840 tree-ssa-coalesce.c:951
+#: tree-ssa-coalesce.c:966 tree-ssa-coalesce.c:1188 tree-ssa-live.c:1296
#, gcc-internal-format
msgid "SSA corruption"
msgstr ""
-#: tree-profile.c:397
+#: tree-profile.c:408
#, gcc-internal-format
msgid "unimplemented functionality"
msgstr ""
-#: tree-ssa-uninit.c:1959 tree-ssa.c:1737
+#: tree-ssa-uninit.c:1959 tree-ssa.c:1771
#, gcc-internal-format
msgid "%qD may be used uninitialized in this function"
msgstr ""
-#: tree-ssa.c:584
+#: tree-ssa.c:619
#, gcc-internal-format
msgid "expected an SSA_NAME object"
msgstr ""
-#: tree-ssa.c:590
+#: tree-ssa.c:625
#, gcc-internal-format
msgid "type mismatch between an SSA_NAME and its symbol"
msgstr ""
-#: tree-ssa.c:596
+#: tree-ssa.c:631
#, gcc-internal-format
msgid "found an SSA_NAME that had been released into the free pool"
msgstr ""
-#: tree-ssa.c:602
+#: tree-ssa.c:637
#, gcc-internal-format
msgid "found a virtual definition for a GIMPLE register"
msgstr ""
-#: tree-ssa.c:608
+#: tree-ssa.c:643
#, gcc-internal-format
msgid "virtual SSA name for non-VOP decl"
msgstr ""
-#: tree-ssa.c:614
+#: tree-ssa.c:649
#, gcc-internal-format
msgid "found a real definition for a non-register"
msgstr ""
-#: tree-ssa.c:621
+#: tree-ssa.c:656
#, gcc-internal-format
msgid "found a default name with a non-empty defining statement"
msgstr ""
-#: tree-ssa.c:650
+#: tree-ssa.c:685
#, gcc-internal-format
msgid "RESULT_DECL should be read only when DECL_BY_REFERENCE is set"
msgstr ""
-#: tree-ssa.c:656
+#: tree-ssa.c:691
#, gcc-internal-format, gfc-internal-format
msgid "SSA_NAME created in two different blocks %i and %i"
msgstr ""
-#: tree-ssa.c:665 tree-ssa.c:1054
+#: tree-ssa.c:700 tree-ssa.c:1089
#, gcc-internal-format
msgid "SSA_NAME_DEF_STMT is wrong"
msgstr ""
-#: tree-ssa.c:717
+#: tree-ssa.c:752
#, gcc-internal-format
msgid "missing definition"
msgstr ""
-#: tree-ssa.c:723
+#: tree-ssa.c:758
#, gcc-internal-format, gfc-internal-format
msgid "definition in block %i does not dominate use in block %i"
msgstr ""
-#: tree-ssa.c:731
+#: tree-ssa.c:766
#, gcc-internal-format, gfc-internal-format
msgid "definition in block %i follows the use"
msgstr ""
-#: tree-ssa.c:738
+#: tree-ssa.c:773
#, gcc-internal-format
msgid "SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set"
msgstr ""
-#: tree-ssa.c:746
+#: tree-ssa.c:781
#, gcc-internal-format
msgid "no immediate_use list"
msgstr ""
-#: tree-ssa.c:758
+#: tree-ssa.c:793
#, gcc-internal-format
msgid "wrong immediate use list"
msgstr ""
-#: tree-ssa.c:792
+#: tree-ssa.c:827
#, gcc-internal-format
msgid "incoming edge count does not match number of PHI arguments"
msgstr ""
-#: tree-ssa.c:806
+#: tree-ssa.c:841
#, gcc-internal-format, gfc-internal-format
msgid "PHI argument is missing for edge %d->%d"
msgstr ""
-#: tree-ssa.c:815
+#: tree-ssa.c:850
#, gcc-internal-format
msgid "PHI argument is not SSA_NAME, or invariant"
msgstr ""
-#: tree-ssa.c:843
+#: tree-ssa.c:878
#, gcc-internal-format, gfc-internal-format
msgid "wrong edge %d->%d for PHI argument"
msgstr ""
-#: tree-ssa.c:924
+#: tree-ssa.c:959
#, gcc-internal-format, gfc-internal-format
msgid "AUX pointer initialized for edge %d->%d"
msgstr ""
-#: tree-ssa.c:952
+#: tree-ssa.c:987
#, gcc-internal-format
msgid "stmt (%p) marked modified after optimization pass: "
msgstr ""
-#: tree-ssa.c:971
+#: tree-ssa.c:1006
#, gcc-internal-format
msgid "statement makes a memory store, but has no VDEFS"
msgstr ""
-#: tree-ssa.c:986
+#: tree-ssa.c:1021
#, gcc-internal-format
msgid "statement has VDEF operand not in defs list"
msgstr ""
-#: tree-ssa.c:991
+#: tree-ssa.c:1026
#, gcc-internal-format
msgid "statement has VDEF but no VUSE operand"
msgstr ""
-#: tree-ssa.c:997
+#: tree-ssa.c:1032
#, gcc-internal-format
msgid "VDEF and VUSE do not use the same symbol"
msgstr ""
-#: tree-ssa.c:1006
+#: tree-ssa.c:1041
#, gcc-internal-format
msgid "statement has VUSE operand not in uses list"
msgstr ""
-#: tree-ssa.c:1035
+#: tree-ssa.c:1070
#, gcc-internal-format
msgid "number of operands and imm-links don%'t agree in statement"
msgstr ""
-#: tree-ssa.c:1083
+#: tree-ssa.c:1118
#, gcc-internal-format
msgid "verify_ssa failed"
msgstr ""
-#: tree-ssa.c:1661
+#: tree-ssa.c:1693 varasm.c:321
#, gcc-internal-format
msgid "%qD was declared here"
msgstr ""
-#: tree-ssa.c:1734
+#: tree-ssa.c:1767
#, gcc-internal-format
msgid "%qD is used uninitialized in this function"
msgstr ""
-#: tree-vrp.c:5271
+#: tree-vrp.c:5295
#, gcc-internal-format
msgid "array subscript is outside array bounds"
msgstr ""
-#: tree-vrp.c:5283 tree-vrp.c:5370
+#: tree-vrp.c:5307 tree-vrp.c:5394
#, gcc-internal-format
msgid "array subscript is above array bounds"
msgstr ""
-#: tree-vrp.c:5290 tree-vrp.c:5358
+#: tree-vrp.c:5314 tree-vrp.c:5382
#, gcc-internal-format
msgid "array subscript is below array bounds"
msgstr ""
-#: tree-vrp.c:5997
+#: tree-vrp.c:6021
#, gcc-internal-format
msgid ""
"assuming signed overflow does not occur when simplifying conditional to "
"constant"
msgstr ""
-#: tree-vrp.c:6003
+#: tree-vrp.c:6027
#, gcc-internal-format
msgid "assuming signed overflow does not occur when simplifying conditional"
msgstr ""
-#: tree-vrp.c:6047
+#: tree-vrp.c:6071
#, gcc-internal-format
msgid "comparison always false due to limited range of data type"
msgstr ""
-#: tree-vrp.c:6049
+#: tree-vrp.c:6073
#, gcc-internal-format
msgid "comparison always true due to limited range of data type"
msgstr ""
-#: tree-vrp.c:6901
+#: tree-vrp.c:6925
#, gcc-internal-format
msgid ""
"assuming signed overflow does not occur when simplifying %</%> or %<%%%> to "
"%<>>%> or %<&%>"
msgstr ""
-#: tree-vrp.c:6983
+#: tree-vrp.c:7007
#, gcc-internal-format
msgid ""
"assuming signed overflow does not occur when simplifying %<abs (X)%> to %<X"
"%> or %<-X%>"
msgstr ""
-#: tree.c:4241
+#: tree.c:4230
#, gcc-internal-format
msgid "ignoring attributes applied to %qT after definition"
msgstr ""
-#: tree.c:5381
+#: tree.c:5416
#, gcc-internal-format
msgid "%q+D already declared with dllexport attribute: dllimport ignored"
msgstr ""
-#: tree.c:5393
+#: tree.c:5428
#, gcc-internal-format
msgid ""
"%q+D redeclared without dllimport attribute after being referenced with dll "
"linkage"
msgstr ""
-#: tree.c:5408
+#: tree.c:5443
#, gcc-internal-format
msgid "%q+D redeclared without dllimport attribute: previous dllimport ignored"
msgstr ""
-#: tree.c:5468 tree.c:5480 tree.c:5490 c-family/c-common.c:5728
-#: c-family/c-common.c:5747 c-family/c-common.c:5765 c-family/c-common.c:5793
-#: c-family/c-common.c:5820 c-family/c-common.c:5846 c-family/c-common.c:5865
-#: c-family/c-common.c:5882 c-family/c-common.c:5906 c-family/c-common.c:5929
-#: c-family/c-common.c:5946 c-family/c-common.c:5974 c-family/c-common.c:5995
-#: c-family/c-common.c:6016 c-family/c-common.c:6042 c-family/c-common.c:6073
-#: c-family/c-common.c:6110 c-family/c-common.c:6137 c-family/c-common.c:6181
-#: c-family/c-common.c:6265 c-family/c-common.c:6295 c-family/c-common.c:6349
-#: c-family/c-common.c:6695 c-family/c-common.c:6713 c-family/c-common.c:6775
-#: c-family/c-common.c:6818 c-family/c-common.c:6889 c-family/c-common.c:7017
-#: c-family/c-common.c:7085 c-family/c-common.c:7143 c-family/c-common.c:7191
-#: c-family/c-common.c:7270 c-family/c-common.c:7294 c-family/c-common.c:7580
-#: c-family/c-common.c:7603 c-family/c-common.c:7642 c-family/c-common.c:7731
-#: c-family/c-common.c:7880 config/darwin.c:1897 config/arm/arm.c:4825
-#: config/arm/arm.c:4853 config/arm/arm.c:4870 config/avr/avr.c:5070
-#: config/h8300/h8300.c:5424 config/h8300/h8300.c:5448 config/i386/i386.c:5345
-#: config/i386/i386.c:29677 config/ia64/ia64.c:731
-#: config/rs6000/rs6000.c:25290 config/spu/spu.c:3959
-#: ada/gcc-interface/utils.c:5291 lto/lto-lang.c:203
+#: tree.c:5503 tree.c:5515 tree.c:5525 c-family/c-common.c:5766
+#: c-family/c-common.c:5785 c-family/c-common.c:5803 c-family/c-common.c:5831
+#: c-family/c-common.c:5858 c-family/c-common.c:5884 c-family/c-common.c:5903
+#: c-family/c-common.c:5920 c-family/c-common.c:5944 c-family/c-common.c:5967
+#: c-family/c-common.c:5984 c-family/c-common.c:6012 c-family/c-common.c:6033
+#: c-family/c-common.c:6054 c-family/c-common.c:6080 c-family/c-common.c:6111
+#: c-family/c-common.c:6148 c-family/c-common.c:6175 c-family/c-common.c:6219
+#: c-family/c-common.c:6303 c-family/c-common.c:6333 c-family/c-common.c:6387
+#: c-family/c-common.c:6733 c-family/c-common.c:6751 c-family/c-common.c:6813
+#: c-family/c-common.c:6856 c-family/c-common.c:6927 c-family/c-common.c:7055
+#: c-family/c-common.c:7123 c-family/c-common.c:7181 c-family/c-common.c:7229
+#: c-family/c-common.c:7308 c-family/c-common.c:7332 c-family/c-common.c:7623
+#: c-family/c-common.c:7646 c-family/c-common.c:7685 c-family/c-common.c:7763
+#: c-family/c-common.c:7912 config/darwin.c:1897 config/arm/arm.c:4594
+#: config/arm/arm.c:4622 config/arm/arm.c:4639 config/avr/avr.c:5048
+#: config/h8300/h8300.c:5397 config/h8300/h8300.c:5421 config/i386/i386.c:4741
+#: config/i386/i386.c:29223 config/ia64/ia64.c:713
+#: config/rs6000/rs6000.c:24766 config/spu/spu.c:3963
+#: ada/gcc-interface/utils.c:5355 lto/lto-lang.c:203
#, gcc-internal-format
msgid "%qE attribute ignored"
msgstr ""
-#: tree.c:5508
+#: tree.c:5543
#, gcc-internal-format
msgid "inline function %q+D declared as dllimport: attribute ignored"
msgstr ""
-#: tree.c:5516
+#: tree.c:5551
#, gcc-internal-format
msgid "function %q+D definition is marked dllimport"
msgstr ""
-#: tree.c:5524
+#: tree.c:5559
#, gcc-internal-format
msgid "variable %q+D definition is marked dllimport"
msgstr ""
-#: tree.c:5552
+#: tree.c:5587
#, gcc-internal-format
msgid "external linkage required for symbol %q+D because of %qE attribute"
msgstr ""
-#: tree.c:5566
+#: tree.c:5601
#, gcc-internal-format
msgid ""
"%qE implies default visibility, but %qD has already been declared with a "
"different visibility"
msgstr ""
-#: tree.c:7266
+#: tree.c:7294
#, gcc-internal-format
msgid "arrays of functions are not meaningful"
msgstr ""
-#: tree.c:7424
+#: tree.c:7461
#, gcc-internal-format
msgid "function return type cannot be function"
msgstr ""
-#: tree.c:8656 tree.c:8741 tree.c:8802
+#: tree.c:8743 tree.c:8828 tree.c:8889
#, gcc-internal-format, gfc-internal-format
msgid "tree check: %s, have %s in %s, at %s:%d"
msgstr ""
-#: tree.c:8693
+#: tree.c:8780
#, gcc-internal-format, gfc-internal-format
msgid "tree check: expected none of %s, have %s in %s, at %s:%d"
msgstr ""
-#: tree.c:8706
+#: tree.c:8793
#, gcc-internal-format
msgid "tree check: expected class %qs, have %qs (%s) in %s, at %s:%d"
msgstr ""
-#: tree.c:8755
+#: tree.c:8842
#, gcc-internal-format
msgid "tree check: did not expect class %qs, have %qs (%s) in %s, at %s:%d"
msgstr ""
-#: tree.c:8768
+#: tree.c:8855
#, gcc-internal-format, gfc-internal-format
msgid "tree check: expected omp_clause %s, have %s in %s, at %s:%d"
msgstr ""
-#: tree.c:8828
+#: tree.c:8915
#, gcc-internal-format
msgid ""
"tree check: expected tree that contains %qs structure, have %qs in %s, at %s:"
"%d"
msgstr ""
-#: tree.c:8842
+#: tree.c:8929
#, gcc-internal-format, gfc-internal-format
msgid "tree check: accessed elt %d of tree_vec with %d elts in %s, at %s:%d"
msgstr ""
-#: tree.c:8855
+#: tree.c:8942
#, gcc-internal-format, gfc-internal-format
msgid "tree check: accessed operand %d of %s with %d operands in %s, at %s:%d"
msgstr ""
-#: tree.c:8868
+#: tree.c:8955
#, gcc-internal-format, gfc-internal-format
msgid ""
"tree check: accessed operand %d of omp_clause %s with %d operands in %s, at "
"%s:%d"
msgstr ""
-#: tree.c:11087
+#: tree.c:11148
#, gcc-internal-format
msgid "%qD is deprecated (declared at %s:%d): %s"
msgstr ""
-#: tree.c:11091
+#: tree.c:11152
#, gcc-internal-format
msgid "%qD is deprecated (declared at %s:%d)"
msgstr ""
-#: tree.c:11116
+#: tree.c:11177
#, gcc-internal-format
msgid "%qE is deprecated (declared at %s:%d): %s"
msgstr ""
-#: tree.c:11120
+#: tree.c:11181
#, gcc-internal-format
msgid "%qE is deprecated (declared at %s:%d)"
msgstr ""
-#: tree.c:11127
+#: tree.c:11188
#, gcc-internal-format, gfc-internal-format
msgid "type is deprecated (declared at %s:%d): %s"
msgstr ""
-#: tree.c:11131
+#: tree.c:11192
#, gcc-internal-format, gfc-internal-format
msgid "type is deprecated (declared at %s:%d)"
msgstr ""
-#: tree.c:11140
+#: tree.c:11201
#, gcc-internal-format
msgid "%qE is deprecated: %s"
msgstr ""
-#: tree.c:11143
+#: tree.c:11204
#, gcc-internal-format
msgid "%qE is deprecated"
msgstr ""
-#: tree.c:11148
+#: tree.c:11209
#, gcc-internal-format, gfc-internal-format
msgid "type is deprecated: %s"
msgstr ""
-#: tree.c:11151
+#: tree.c:11212
#, gcc-internal-format
msgid "type is deprecated"
msgstr ""
-#: value-prof.c:375
+#: value-prof.c:376
#, gcc-internal-format
msgid "dead histogram"
msgstr ""
-#: value-prof.c:406
+#: value-prof.c:407
#, gcc-internal-format
msgid ""
"Histogram value statement does not correspond to the statement it is "
"associated with"
msgstr ""
-#: value-prof.c:419
+#: value-prof.c:420
#, gcc-internal-format
msgid "verify_histograms failed"
msgstr ""
-#: value-prof.c:466
+#: value-prof.c:467
#, gcc-internal-format, gfc-internal-format
msgid ""
"correcting inconsistent value profile: %s profiler overall count (%d) does "
"not match BB count (%d)"
msgstr ""
-#: value-prof.c:476
+#: value-prof.c:477
#, gcc-internal-format, gfc-internal-format
msgid ""
"corrupted value profile: %s profile counter (%d out of %d) inconsistent with "
"basic-block count (%d)"
msgstr ""
-#: var-tracking.c:6472
+#: value-prof.c:1105 value-prof.c:1107
+#, gcc-internal-format, gfc-internal-format
+msgid "Inconsistent profile: indirect call target (%d) does not exist"
+msgstr ""
+
+#: value-prof.c:1129
+#, gcc-internal-format, gfc-internal-format
+msgid "Skipping target %s with mismatching types for icall "
+msgstr ""
+
+#: var-tracking.c:6484
#, gcc-internal-format
msgid ""
"variable tracking size limit exceeded with -fvar-tracking-assignments, "
"retrying without"
msgstr ""
-#: var-tracking.c:6476
+#: var-tracking.c:6488
#, gcc-internal-format
msgid "variable tracking size limit exceeded"
msgstr ""
-#: varasm.c:320
+#: varasm.c:317
#, gcc-internal-format
-msgid "%+D causes a section type conflict"
+msgid "%+D causes a section type conflict with %D"
msgstr ""
-#: varasm.c:980
+#: varasm.c:956
#, gcc-internal-format
msgid ""
"alignment of %q+D is greater than maximum object file alignment. Using %d"
msgstr ""
-#: varasm.c:1218 varasm.c:1226
+#: varasm.c:1194 varasm.c:1202
#, gcc-internal-format
msgid "register name not specified for %q+D"
msgstr ""
-#: varasm.c:1228
+#: varasm.c:1204
#, gcc-internal-format
msgid "invalid register name for %q+D"
msgstr ""
-#: varasm.c:1230
+#: varasm.c:1206
#, gcc-internal-format
msgid "data type of %q+D isn%'t suitable for a register"
msgstr ""
-#: varasm.c:1233
+#: varasm.c:1209
#, gcc-internal-format
msgid "register specified for %q+D isn%'t suitable for data type"
msgstr ""
-#: varasm.c:1243
+#: varasm.c:1219
#, gcc-internal-format
msgid "global register variable has initial value"
msgstr ""
-#: varasm.c:1247
+#: varasm.c:1223
#, gcc-internal-format
msgid "optimization may eliminate reads and/or writes to register variables"
msgstr ""
-#: varasm.c:1285
+#: varasm.c:1261
#, gcc-internal-format
msgid "register name given for non-register variable %q+D"
msgstr ""
-#: varasm.c:1402
+#: varasm.c:1378
#, gcc-internal-format
msgid "global destructors not supported on this target"
msgstr ""
-#: varasm.c:1468
+#: varasm.c:1444
#, gcc-internal-format
msgid "global constructors not supported on this target"
msgstr ""
-#: varasm.c:1848
+#: varasm.c:1841
#, gcc-internal-format
msgid "thread-local COMMON data not implemented"
msgstr ""
-#: varasm.c:1877
+#: varasm.c:1870
#, gcc-internal-format
msgid ""
"requested alignment for %q+D is greater than implemented alignment of %wu"
msgstr ""
-#: varasm.c:4556
+#: varasm.c:4548
#, gcc-internal-format
msgid "initializer for integer/fixed-point value is too complicated"
msgstr ""
-#: varasm.c:4561
+#: varasm.c:4553
#, gcc-internal-format
msgid "initializer for floating value is not a floating constant"
msgstr ""
-#: varasm.c:4867
+#: varasm.c:4858
#, gcc-internal-format
msgid "invalid initial value for member %qE"
msgstr ""
-#: varasm.c:5215
+#: varasm.c:5206
#, gcc-internal-format
msgid "weak declaration of %q+D must be public"
msgstr ""
-#: varasm.c:5217
+#: varasm.c:5208
#, gcc-internal-format
msgid "weak declaration of %q+D not supported"
msgstr ""
-#: varasm.c:5246 varasm.c:5825
+#: varasm.c:5237 varasm.c:5816
#, gcc-internal-format
msgid "only weak aliases are supported in this configuration"
msgstr ""
-#: varasm.c:5465
+#: varasm.c:5456
#, gcc-internal-format
msgid "weakref is not supported in this configuration"
msgstr ""
-#: varasm.c:5488 varasm.c:5822
+#: varasm.c:5479 varasm.c:5813
#, gcc-internal-format
msgid "ifunc is not supported in this configuration"
msgstr ""
-#: varasm.c:5742
+#: varasm.c:5733
#, gcc-internal-format
msgid "%q+D aliased to undefined symbol %qE"
msgstr ""
-#: varasm.c:5756
+#: varasm.c:5747
#, gcc-internal-format
msgid "%q+D aliased to external symbol %qE"
msgstr ""
-#: varasm.c:5799
+#: varasm.c:5790
#, gcc-internal-format
msgid "weakref %q+D ultimately targets itself"
msgstr ""
-#: varasm.c:5808
+#: varasm.c:5799
#, gcc-internal-format
msgid "weakref %q+D must have static linkage"
msgstr ""
-#: varasm.c:5815
+#: varasm.c:5806
#, gcc-internal-format
msgid "alias definitions not supported in this configuration"
msgstr ""
-#: varasm.c:5883 config/sol2.c:153 config/i386/winnt.c:247
+#: varasm.c:5874 config/sol2.c:155 config/i386/winnt.c:254
#, gcc-internal-format
msgid "visibility attribute not supported in this configuration; ignored"
msgstr ""
-#: vec.c:524
+#: vec.c:516
#, gcc-internal-format, gfc-internal-format
msgid "vector %s %s domain error, in %s at %s:%u"
msgstr ""
@@ -19396,1410 +19740,1410 @@
msgid "no sclass for %s stab (0x%x)"
msgstr ""
-#: c-family/c-common.c:878
+#: c-family/c-common.c:884
#, gcc-internal-format
msgid "%qD is not defined outside of function scope"
msgstr ""
-#: c-family/c-common.c:928
+#: c-family/c-common.c:934
#, gcc-internal-format
msgid ""
"string length %qd is greater than the length %qd ISO C%d compilers are "
"required to support"
msgstr ""
-#: c-family/c-common.c:1422 c-family/c-common.c:1434 cp/semantics.c:6092
-#: cp/semantics.c:7258
+#: c-family/c-common.c:1428 c-family/c-common.c:1440 cp/semantics.c:6162
+#: cp/semantics.c:7505
#, gcc-internal-format
msgid "overflow in constant expression"
msgstr ""
-#: c-family/c-common.c:1457
+#: c-family/c-common.c:1463
#, gcc-internal-format
msgid "integer overflow in expression"
msgstr ""
-#: c-family/c-common.c:1462
+#: c-family/c-common.c:1468
#, gcc-internal-format
msgid "floating point overflow in expression"
msgstr ""
-#: c-family/c-common.c:1466
+#: c-family/c-common.c:1472
#, gcc-internal-format
msgid "fixed-point overflow in expression"
msgstr ""
-#: c-family/c-common.c:1470
+#: c-family/c-common.c:1476
#, gcc-internal-format
msgid "vector overflow in expression"
msgstr ""
-#: c-family/c-common.c:1476
+#: c-family/c-common.c:1482
#, gcc-internal-format
msgid "complex integer overflow in expression"
msgstr ""
-#: c-family/c-common.c:1479
+#: c-family/c-common.c:1485
#, gcc-internal-format
msgid "complex floating point overflow in expression"
msgstr ""
-#: c-family/c-common.c:1522
+#: c-family/c-common.c:1528
#, gcc-internal-format
msgid "logical %<or%> applied to non-boolean constant"
msgstr ""
-#: c-family/c-common.c:1525
+#: c-family/c-common.c:1531
#, gcc-internal-format
msgid "logical %<and%> applied to non-boolean constant"
msgstr ""
-#: c-family/c-common.c:1570
+#: c-family/c-common.c:1576
#, gcc-internal-format
msgid "logical %<or%> of collectively exhaustive tests is always true"
msgstr ""
-#: c-family/c-common.c:1574
+#: c-family/c-common.c:1580
#, gcc-internal-format
msgid "logical %<and%> of mutually exclusive tests is always false"
msgstr ""
-#: c-family/c-common.c:1609
+#: c-family/c-common.c:1615
#, gcc-internal-format
msgid "type-punning to incomplete type might break strict-aliasing rules"
msgstr ""
-#: c-family/c-common.c:1624
+#: c-family/c-common.c:1630
#, gcc-internal-format
msgid "dereferencing type-punned pointer will break strict-aliasing rules"
msgstr ""
-#: c-family/c-common.c:1631 c-family/c-common.c:1649
+#: c-family/c-common.c:1637 c-family/c-common.c:1655
#, gcc-internal-format
msgid "dereferencing type-punned pointer might break strict-aliasing rules"
msgstr ""
-#: c-family/c-common.c:1680
+#: c-family/c-common.c:1686
#, gcc-internal-format
msgid "first argument of %q+D should be %<int%>"
msgstr ""
-#: c-family/c-common.c:1689
+#: c-family/c-common.c:1695
#, gcc-internal-format
msgid "second argument of %q+D should be %<char **%>"
msgstr ""
-#: c-family/c-common.c:1698
+#: c-family/c-common.c:1704
#, gcc-internal-format
msgid "third argument of %q+D should probably be %<char **%>"
msgstr ""
-#: c-family/c-common.c:1708
+#: c-family/c-common.c:1715
#, gcc-internal-format
msgid "%q+D takes only zero or two arguments"
msgstr ""
-#: c-family/c-common.c:1757
+#: c-family/c-common.c:1764
#, gcc-internal-format
msgid ""
"use -flax-vector-conversions to permit conversions between vectors with "
"differing element types or numbers of subparts"
msgstr ""
-#: c-family/c-common.c:1913
+#: c-family/c-common.c:1943
#, gcc-internal-format
msgid "conversion to %qT from boolean expression"
msgstr ""
-#: c-family/c-common.c:1934
+#: c-family/c-common.c:1964
#, gcc-internal-format
msgid "negative integer implicitly converted to unsigned type"
msgstr ""
-#: c-family/c-common.c:1937
+#: c-family/c-common.c:1967
#, gcc-internal-format
msgid "conversion of unsigned constant value to negative integer"
msgstr ""
-#: c-family/c-common.c:1964
+#: c-family/c-common.c:1994
#, gcc-internal-format
msgid "conversion to %qT alters %qT constant value"
msgstr ""
-#: c-family/c-common.c:2056
+#: c-family/c-common.c:2086
#, gcc-internal-format
msgid "conversion to %qT from %qT may change the sign of the result"
msgstr ""
-#: c-family/c-common.c:2093
+#: c-family/c-common.c:2123
#, gcc-internal-format
msgid "conversion to %qT from %qT may alter its value"
msgstr ""
-#: c-family/c-common.c:2121
+#: c-family/c-common.c:2151
#, gcc-internal-format
msgid "large integer implicitly truncated to unsigned type"
msgstr ""
-#: c-family/c-common.c:2127 c-family/c-common.c:2134 c-family/c-common.c:2142
+#: c-family/c-common.c:2157 c-family/c-common.c:2164 c-family/c-common.c:2172
#, gcc-internal-format
msgid "overflow in implicit constant conversion"
msgstr ""
-#: c-family/c-common.c:2314
+#: c-family/c-common.c:2344
#, gcc-internal-format
msgid "operation on %qE may be undefined"
msgstr ""
-#: c-family/c-common.c:2622
+#: c-family/c-common.c:2655
#, gcc-internal-format
msgid "case label does not reduce to an integer constant"
msgstr ""
-#: c-family/c-common.c:2662
+#: c-family/c-common.c:2695
#, gcc-internal-format
msgid "case label value is less than minimum value for type"
msgstr ""
-#: c-family/c-common.c:2670
+#: c-family/c-common.c:2703
#, gcc-internal-format
msgid "case label value exceeds maximum value for type"
msgstr ""
-#: c-family/c-common.c:2678
+#: c-family/c-common.c:2711
#, gcc-internal-format
msgid "lower value in case label range less than minimum value for type"
msgstr ""
-#: c-family/c-common.c:2687
+#: c-family/c-common.c:2720
#, gcc-internal-format
msgid "upper value in case label range exceeds maximum value for type"
msgstr ""
-#: c-family/c-common.c:2766
+#: c-family/c-common.c:2799
#, gcc-internal-format
msgid ""
"GCC cannot support operators with integer types and fixed-point types that "
"have too many integral and fractional bits together"
msgstr ""
-#: c-family/c-common.c:3268
+#: c-family/c-common.c:3301
#, gcc-internal-format
msgid "invalid operands to binary %s (have %qT and %qT)"
msgstr ""
-#: c-family/c-common.c:3517
+#: c-family/c-common.c:3550
#, gcc-internal-format
msgid "comparison is always false due to limited range of data type"
msgstr ""
-#: c-family/c-common.c:3519
+#: c-family/c-common.c:3552
#, gcc-internal-format
msgid "comparison is always true due to limited range of data type"
msgstr ""
-#: c-family/c-common.c:3598
+#: c-family/c-common.c:3631
#, gcc-internal-format
msgid "comparison of unsigned expression >= 0 is always true"
msgstr ""
-#: c-family/c-common.c:3608
+#: c-family/c-common.c:3641
#, gcc-internal-format
msgid "comparison of unsigned expression < 0 is always false"
msgstr ""
-#: c-family/c-common.c:3650
+#: c-family/c-common.c:3683
#, gcc-internal-format
msgid "pointer of type %<void *%> used in arithmetic"
msgstr ""
-#: c-family/c-common.c:3656
+#: c-family/c-common.c:3689
#, gcc-internal-format
msgid "pointer to a function used in arithmetic"
msgstr ""
-#: c-family/c-common.c:3662
+#: c-family/c-common.c:3695
#, gcc-internal-format
msgid "pointer to member function used in arithmetic"
msgstr ""
-#: c-family/c-common.c:3874
+#: c-family/c-common.c:3907
#, gcc-internal-format
msgid "the address of %qD will always evaluate as %<true%>"
msgstr ""
-#: c-family/c-common.c:3959 cp/semantics.c:610 cp/typeck.c:7362
+#: c-family/c-common.c:4002 cp/semantics.c:605 cp/typeck.c:7410
#, gcc-internal-format
msgid "suggest parentheses around assignment used as truth value"
msgstr ""
-#: c-family/c-common.c:4234
+#: c-family/c-common.c:4277
#, gcc-internal-format
msgid "invalid application of %<sizeof%> to a function type"
msgstr ""
-#: c-family/c-common.c:4247
+#: c-family/c-common.c:4290
#, gcc-internal-format
msgid "invalid application of %qs to a void type"
msgstr ""
-#: c-family/c-common.c:4255
+#: c-family/c-common.c:4298
#, gcc-internal-format
msgid "invalid application of %qs to incomplete type %qT "
msgstr ""
-#: c-family/c-common.c:4297
+#: c-family/c-common.c:4340
#, gcc-internal-format
msgid "%<__alignof%> applied to a bit-field"
msgstr ""
-#: c-family/c-common.c:5013
+#: c-family/c-common.c:5051
#, gcc-internal-format
msgid "cannot disable built-in function %qs"
msgstr ""
-#: c-family/c-common.c:5205
+#: c-family/c-common.c:5243
#, gcc-internal-format
msgid "pointers are not permitted as case values"
msgstr ""
-#: c-family/c-common.c:5212
+#: c-family/c-common.c:5250
#, gcc-internal-format
msgid "range expressions in switch statements are non-standard"
msgstr ""
-#: c-family/c-common.c:5238
+#: c-family/c-common.c:5276
#, gcc-internal-format
msgid "empty range specified"
msgstr ""
-#: c-family/c-common.c:5298
+#: c-family/c-common.c:5336
#, gcc-internal-format
msgid "duplicate (or overlapping) case value"
msgstr ""
-#: c-family/c-common.c:5300
+#: c-family/c-common.c:5338
#, gcc-internal-format
msgid "this is the first entry overlapping that value"
msgstr ""
-#: c-family/c-common.c:5304
+#: c-family/c-common.c:5342
#, gcc-internal-format
msgid "duplicate case value"
msgstr ""
-#: c-family/c-common.c:5305
+#: c-family/c-common.c:5343
#, gcc-internal-format
msgid "previously used here"
msgstr ""
-#: c-family/c-common.c:5309
+#: c-family/c-common.c:5347
#, gcc-internal-format
msgid "multiple default labels in one switch"
msgstr ""
-#: c-family/c-common.c:5311
+#: c-family/c-common.c:5349
#, gcc-internal-format
msgid "this is the first default label"
msgstr ""
-#: c-family/c-common.c:5363
+#: c-family/c-common.c:5401
#, gcc-internal-format
msgid "case value %qs not in enumerated type"
msgstr ""
-#: c-family/c-common.c:5368
+#: c-family/c-common.c:5406
#, gcc-internal-format
msgid "case value %qs not in enumerated type %qT"
msgstr ""
-#: c-family/c-common.c:5427
+#: c-family/c-common.c:5465
#, gcc-internal-format
msgid "switch missing default case"
msgstr ""
-#: c-family/c-common.c:5499
+#: c-family/c-common.c:5537
#, gcc-internal-format
msgid "enumeration value %qE not handled in switch"
msgstr ""
-#: c-family/c-common.c:5525
+#: c-family/c-common.c:5563
#, gcc-internal-format
msgid "taking the address of a label is non-standard"
msgstr ""
-#: c-family/c-common.c:5717
+#: c-family/c-common.c:5755
#, gcc-internal-format
msgid "%qE attribute ignored for field of type %qT"
msgstr ""
-#: c-family/c-common.c:5811 c-family/c-common.c:5837
+#: c-family/c-common.c:5849 c-family/c-common.c:5875
#, gcc-internal-format
msgid "%qE attribute conflicts with attribute %s"
msgstr ""
-#: c-family/c-common.c:5951 lto/lto-lang.c:208
+#: c-family/c-common.c:5989 lto/lto-lang.c:208
#, gcc-internal-format
msgid "%qE attribute has no effect on unit local functions"
msgstr ""
-#: c-family/c-common.c:6104
+#: c-family/c-common.c:6142
#, gcc-internal-format
msgid "%qE attribute have effect only on public objects"
msgstr ""
-#: c-family/c-common.c:6202
+#: c-family/c-common.c:6240
#, gcc-internal-format
msgid "destructor priorities are not supported"
msgstr ""
-#: c-family/c-common.c:6204
+#: c-family/c-common.c:6242
#, gcc-internal-format
msgid "constructor priorities are not supported"
msgstr ""
-#: c-family/c-common.c:6221
+#: c-family/c-common.c:6259
#, gcc-internal-format, gfc-internal-format
msgid "destructor priorities from 0 to %d are reserved for the implementation"
msgstr ""
-#: c-family/c-common.c:6226
+#: c-family/c-common.c:6264
#, gcc-internal-format, gfc-internal-format
msgid "constructor priorities from 0 to %d are reserved for the implementation"
msgstr ""
-#: c-family/c-common.c:6234
+#: c-family/c-common.c:6272
#, gcc-internal-format, gfc-internal-format
msgid "destructor priorities must be integers from 0 to %d inclusive"
msgstr ""
-#: c-family/c-common.c:6237
+#: c-family/c-common.c:6275
#, gcc-internal-format, gfc-internal-format
msgid "constructor priorities must be integers from 0 to %d inclusive"
msgstr ""
-#: c-family/c-common.c:6393
+#: c-family/c-common.c:6431
#, gcc-internal-format
msgid "unknown machine mode %qE"
msgstr ""
-#: c-family/c-common.c:6422
+#: c-family/c-common.c:6460
#, gcc-internal-format
msgid "specifying vector types with __attribute__ ((mode)) is deprecated"
msgstr ""
-#: c-family/c-common.c:6425
+#: c-family/c-common.c:6463
#, gcc-internal-format
msgid "use __attribute__ ((vector_size)) instead"
msgstr ""
-#: c-family/c-common.c:6434
+#: c-family/c-common.c:6472
#, gcc-internal-format
msgid "unable to emulate %qs"
msgstr ""
-#: c-family/c-common.c:6445
+#: c-family/c-common.c:6483
#, gcc-internal-format
msgid "invalid pointer mode %qs"
msgstr ""
-#: c-family/c-common.c:6462
+#: c-family/c-common.c:6500
#, gcc-internal-format
msgid "signedness of type and machine mode %qs don%'t match"
msgstr ""
-#: c-family/c-common.c:6473
+#: c-family/c-common.c:6511
#, gcc-internal-format
msgid "no data type for mode %qs"
msgstr ""
-#: c-family/c-common.c:6483
+#: c-family/c-common.c:6521
#, gcc-internal-format
msgid "cannot use mode %qs for enumeral types"
msgstr ""
-#: c-family/c-common.c:6510
+#: c-family/c-common.c:6548
#, gcc-internal-format
msgid "mode %qs applied to inappropriate type"
msgstr ""
-#: c-family/c-common.c:6542
+#: c-family/c-common.c:6580
#, gcc-internal-format
msgid "section attribute cannot be specified for local variables"
msgstr ""
-#: c-family/c-common.c:6553 config/bfin/bfin.c:5656 config/bfin/bfin.c:5707
-#: config/bfin/bfin.c:5734 config/bfin/bfin.c:5747
+#: c-family/c-common.c:6591 config/bfin/bfin.c:5336 config/bfin/bfin.c:5387
+#: config/bfin/bfin.c:5414 config/bfin/bfin.c:5427
#, gcc-internal-format
msgid "section of %q+D conflicts with previous declaration"
msgstr ""
-#: c-family/c-common.c:6561
+#: c-family/c-common.c:6599
#, gcc-internal-format
msgid "section of %q+D cannot be overridden"
msgstr ""
-#: c-family/c-common.c:6569
+#: c-family/c-common.c:6607
#, gcc-internal-format
msgid "section attribute not allowed for %q+D"
msgstr ""
-#: c-family/c-common.c:6576
+#: c-family/c-common.c:6614
#, gcc-internal-format
msgid "section attributes are not supported for this target"
msgstr ""
-#: c-family/c-common.c:6608
+#: c-family/c-common.c:6646
#, gcc-internal-format
msgid "requested alignment is not a constant"
msgstr ""
-#: c-family/c-common.c:6613
+#: c-family/c-common.c:6651
#, gcc-internal-format
msgid "requested alignment is not a power of 2"
msgstr ""
-#: c-family/c-common.c:6618
+#: c-family/c-common.c:6656
#, gcc-internal-format
msgid "requested alignment is too large"
msgstr ""
-#: c-family/c-common.c:6646
+#: c-family/c-common.c:6684
#, gcc-internal-format
msgid "alignment may not be specified for %q+D"
msgstr ""
-#: c-family/c-common.c:6653
+#: c-family/c-common.c:6691
#, gcc-internal-format
msgid ""
"alignment for %q+D was previously specified as %d and may not be decreased"
msgstr ""
-#: c-family/c-common.c:6657
+#: c-family/c-common.c:6695
#, gcc-internal-format
msgid "alignment for %q+D must be at least %d"
msgstr ""
-#: c-family/c-common.c:6682
+#: c-family/c-common.c:6720
#, gcc-internal-format
msgid "inline function %q+D declared weak"
msgstr ""
-#: c-family/c-common.c:6687
+#: c-family/c-common.c:6725
#, gcc-internal-format
msgid "indirect function %q+D cannot be declared weak"
msgstr ""
-#: c-family/c-common.c:6724
+#: c-family/c-common.c:6762
#, gcc-internal-format
msgid "%q+D defined both normally and as %qE attribute"
msgstr ""
-#: c-family/c-common.c:6732
+#: c-family/c-common.c:6770
#, gcc-internal-format
msgid "weak %q+D cannot be defined %qE"
msgstr ""
-#: c-family/c-common.c:6749
+#: c-family/c-common.c:6787
#, gcc-internal-format
msgid "attribute %qE argument not a string"
msgstr ""
-#: c-family/c-common.c:6825
+#: c-family/c-common.c:6863
#, gcc-internal-format
msgid "indirect function %q+D cannot be declared weakref"
msgstr ""
-#: c-family/c-common.c:6847
+#: c-family/c-common.c:6885
#, gcc-internal-format
msgid "weakref attribute must appear before alias attribute"
msgstr ""
-#: c-family/c-common.c:6876
+#: c-family/c-common.c:6914
#, gcc-internal-format
msgid "%qE attribute ignored on non-class types"
msgstr ""
-#: c-family/c-common.c:6882
+#: c-family/c-common.c:6920
#, gcc-internal-format
msgid "%qE attribute ignored because %qT is already defined"
msgstr ""
-#: c-family/c-common.c:6895
+#: c-family/c-common.c:6933
#, gcc-internal-format
msgid "visibility argument not a string"
msgstr ""
-#: c-family/c-common.c:6907
+#: c-family/c-common.c:6945
#, gcc-internal-format
msgid "%qE attribute ignored on types"
msgstr ""
-#: c-family/c-common.c:6923
+#: c-family/c-common.c:6961
#, gcc-internal-format
msgid ""
"visibility argument must be one of \"default\", \"hidden\", \"protected\" or "
"\"internal\""
msgstr ""
-#: c-family/c-common.c:6934
+#: c-family/c-common.c:6972
#, gcc-internal-format
msgid "%qD redeclared with different visibility"
msgstr ""
-#: c-family/c-common.c:6937 c-family/c-common.c:6941
+#: c-family/c-common.c:6975 c-family/c-common.c:6979
#, gcc-internal-format
msgid "%qD was declared %qs which implies default visibility"
msgstr ""
-#: c-family/c-common.c:7025
+#: c-family/c-common.c:7063
#, gcc-internal-format
msgid "tls_model argument not a string"
msgstr ""
-#: c-family/c-common.c:7038
+#: c-family/c-common.c:7076
#, gcc-internal-format
msgid ""
"tls_model argument must be one of \"local-exec\", \"initial-exec\", \"local-"
"dynamic\" or \"global-dynamic\""
msgstr ""
-#: c-family/c-common.c:7058 c-family/c-common.c:7164 c-family/c-common.c:7922
-#: config/m32c/m32c.c:3157
+#: c-family/c-common.c:7096 c-family/c-common.c:7202 c-family/c-common.c:7954
+#: config/m32c/m32c.c:3147
#, gcc-internal-format
msgid "%qE attribute applies only to functions"
msgstr ""
-#: c-family/c-common.c:7064 c-family/c-common.c:7170 c-family/c-common.c:7928
+#: c-family/c-common.c:7102 c-family/c-common.c:7208 c-family/c-common.c:7960
#, gcc-internal-format
msgid "can%'t set %qE attribute after definition"
msgstr ""
-#: c-family/c-common.c:7110
+#: c-family/c-common.c:7148
#, gcc-internal-format
msgid "alloc_size parameter outside range"
msgstr ""
-#: c-family/c-common.c:7227
+#: c-family/c-common.c:7265
#, gcc-internal-format
msgid "deprecated message is not a string"
msgstr ""
-#: c-family/c-common.c:7268
+#: c-family/c-common.c:7306
#, gcc-internal-format
msgid "%qE attribute ignored for %qE"
msgstr ""
-#: c-family/c-common.c:7328
+#: c-family/c-common.c:7366
#, gcc-internal-format
msgid "invalid vector type for attribute %qE"
msgstr ""
-#: c-family/c-common.c:7334 ada/gcc-interface/utils.c:5415
-#: ada/gcc-interface/utils.c:5509
+#: c-family/c-common.c:7372 ada/gcc-interface/utils.c:5473
+#: ada/gcc-interface/utils.c:5567
#, gcc-internal-format
msgid "vector size not an integral multiple of component size"
msgstr ""
-#: c-family/c-common.c:7340 ada/gcc-interface/utils.c:5421
-#: ada/gcc-interface/utils.c:5515
+#: c-family/c-common.c:7378 ada/gcc-interface/utils.c:5479
+#: ada/gcc-interface/utils.c:5573
#, gcc-internal-format
msgid "zero vector size"
msgstr ""
-#: c-family/c-common.c:7348 ada/gcc-interface/utils.c:5429
-#: ada/gcc-interface/utils.c:5522
+#: c-family/c-common.c:7386 ada/gcc-interface/utils.c:5487
+#: ada/gcc-interface/utils.c:5580
#, gcc-internal-format
msgid "number of components of the vector not a power of two"
msgstr ""
-#: c-family/c-common.c:7376 ada/gcc-interface/utils.c:5147
+#: c-family/c-common.c:7414 ada/gcc-interface/utils.c:5214
#, gcc-internal-format
msgid "nonnull attribute without arguments on a non-prototype"
msgstr ""
-#: c-family/c-common.c:7391 ada/gcc-interface/utils.c:5162
+#: c-family/c-common.c:7428 ada/gcc-interface/utils.c:5228
#, gcc-internal-format, gfc-internal-format
msgid "nonnull argument has invalid operand number (argument %lu)"
msgstr ""
-#: c-family/c-common.c:7410 ada/gcc-interface/utils.c:5181
+#: c-family/c-common.c:7450 ada/gcc-interface/utils.c:5250
#, gcc-internal-format, gfc-internal-format
msgid ""
"nonnull argument with out-of-range operand number (argument %lu, operand %lu)"
msgstr ""
-#: c-family/c-common.c:7418 ada/gcc-interface/utils.c:5190
+#: c-family/c-common.c:7458 ada/gcc-interface/utils.c:5259
#, gcc-internal-format, gfc-internal-format
msgid ""
"nonnull argument references non-pointer operand (argument %lu, operand %lu)"
msgstr ""
-#: c-family/c-common.c:7494
+#: c-family/c-common.c:7537
#, gcc-internal-format
msgid "not enough variable arguments to fit a sentinel"
msgstr ""
-#: c-family/c-common.c:7508
+#: c-family/c-common.c:7551
#, gcc-internal-format
msgid "missing sentinel in function call"
msgstr ""
-#: c-family/c-common.c:7549
+#: c-family/c-common.c:7592
#, gcc-internal-format, gfc-internal-format
msgid "null argument where non-null required (argument %lu)"
msgstr ""
-#: c-family/c-common.c:7614
+#: c-family/c-common.c:7657
#, gcc-internal-format
msgid "cleanup argument not an identifier"
msgstr ""
-#: c-family/c-common.c:7621
+#: c-family/c-common.c:7664
#, gcc-internal-format
msgid "cleanup argument not a function"
msgstr ""
-#: c-family/c-common.c:7660
+#: c-family/c-common.c:7701
#, gcc-internal-format
msgid "%qE attribute requires prototypes with named arguments"
msgstr ""
-#: c-family/c-common.c:7671
+#: c-family/c-common.c:7709
#, gcc-internal-format
msgid "%qE attribute only applies to variadic functions"
msgstr ""
-#: c-family/c-common.c:7683 ada/gcc-interface/utils.c:5237
+#: c-family/c-common.c:7721 ada/gcc-interface/utils.c:5301
#, gcc-internal-format
msgid "requested position is not an integer constant"
msgstr ""
-#: c-family/c-common.c:7691 ada/gcc-interface/utils.c:5244
+#: c-family/c-common.c:7729 ada/gcc-interface/utils.c:5308
#, gcc-internal-format
msgid "requested position is less than zero"
msgstr ""
-#: c-family/c-common.c:7817
+#: c-family/c-common.c:7849
#, gcc-internal-format, gfc-internal-format
msgid "bad option %s to optimize attribute"
msgstr ""
-#: c-family/c-common.c:7820
+#: c-family/c-common.c:7852
#, gcc-internal-format, gfc-internal-format
msgid "bad option %s to pragma attribute"
msgstr ""
-#: c-family/c-common.c:8049
+#: c-family/c-common.c:8079
#, gcc-internal-format
msgid "not enough arguments to function %qE"
msgstr ""
-#: c-family/c-common.c:8085 c-family/c-common.c:8131
+#: c-family/c-common.c:8115 c-family/c-common.c:8161
#, gcc-internal-format
msgid "non-floating-point argument in call to function %qE"
msgstr ""
-#: c-family/c-common.c:8108
+#: c-family/c-common.c:8138
#, gcc-internal-format
msgid "non-floating-point arguments in call to function %qE"
msgstr ""
-#: c-family/c-common.c:8124
+#: c-family/c-common.c:8154
#, gcc-internal-format
msgid "non-const integer argument %u in call to function %qE"
msgstr ""
-#: c-family/c-common.c:8460
+#: c-family/c-common.c:8490
#, gcc-internal-format
msgid "cannot apply %<offsetof%> to static data member %qD"
msgstr ""
-#: c-family/c-common.c:8465
+#: c-family/c-common.c:8495
#, gcc-internal-format
msgid "cannot apply %<offsetof%> when %<operator[]%> is overloaded"
msgstr ""
-#: c-family/c-common.c:8472
+#: c-family/c-common.c:8502
#, gcc-internal-format
msgid "cannot apply %<offsetof%> to a non constant address"
msgstr ""
-#: c-family/c-common.c:8485 cp/typeck.c:4918
+#: c-family/c-common.c:8515 cp/typeck.c:4934
#, gcc-internal-format
msgid "attempt to take address of bit-field structure member %qD"
msgstr ""
-#: c-family/c-common.c:8544
+#: c-family/c-common.c:8574
#, gcc-internal-format
msgid "index %E denotes an offset greater than size of %qT"
msgstr ""
-#: c-family/c-common.c:8580
+#: c-family/c-common.c:8610
#, gcc-internal-format
msgid ""
"the omitted middle operand in ?: will always be %<true%>, suggest explicit "
"middle operand"
msgstr ""
-#: c-family/c-common.c:8601
+#: c-family/c-common.c:8631
#, gcc-internal-format
msgid "assignment of member %qD in read-only object"
msgstr ""
-#: c-family/c-common.c:8603
+#: c-family/c-common.c:8633
#, gcc-internal-format
msgid "increment of member %qD in read-only object"
msgstr ""
-#: c-family/c-common.c:8605
+#: c-family/c-common.c:8635
#, gcc-internal-format
msgid "decrement of member %qD in read-only object"
msgstr ""
-#: c-family/c-common.c:8607
+#: c-family/c-common.c:8637
#, gcc-internal-format
msgid "member %qD in read-only object used as %<asm%> output"
msgstr ""
-#: c-family/c-common.c:8611
+#: c-family/c-common.c:8641
#, gcc-internal-format
msgid "assignment of read-only member %qD"
msgstr ""
-#: c-family/c-common.c:8612
+#: c-family/c-common.c:8642
#, gcc-internal-format
msgid "increment of read-only member %qD"
msgstr ""
-#: c-family/c-common.c:8613
+#: c-family/c-common.c:8643
#, gcc-internal-format
msgid "decrement of read-only member %qD"
msgstr ""
-#: c-family/c-common.c:8614
+#: c-family/c-common.c:8644
#, gcc-internal-format
msgid "read-only member %qD used as %<asm%> output"
msgstr ""
-#: c-family/c-common.c:8618
+#: c-family/c-common.c:8648
#, gcc-internal-format
msgid "assignment of read-only variable %qD"
msgstr ""
-#: c-family/c-common.c:8619
+#: c-family/c-common.c:8649
#, gcc-internal-format
msgid "increment of read-only variable %qD"
msgstr ""
-#: c-family/c-common.c:8620
+#: c-family/c-common.c:8650
#, gcc-internal-format
msgid "decrement of read-only variable %qD"
msgstr ""
-#: c-family/c-common.c:8621
+#: c-family/c-common.c:8651
#, gcc-internal-format
msgid "read-only variable %qD used as %<asm%> output"
msgstr ""
-#: c-family/c-common.c:8624
+#: c-family/c-common.c:8654
#, gcc-internal-format
msgid "assignment of read-only parameter %qD"
msgstr ""
-#: c-family/c-common.c:8625
+#: c-family/c-common.c:8655
#, gcc-internal-format
msgid "increment of read-only parameter %qD"
msgstr ""
-#: c-family/c-common.c:8626
+#: c-family/c-common.c:8656
#, gcc-internal-format
msgid "decrement of read-only parameter %qD"
msgstr ""
-#: c-family/c-common.c:8627
+#: c-family/c-common.c:8657
#, gcc-internal-format
msgid "read-only parameter %qD use as %<asm%> output"
msgstr ""
-#: c-family/c-common.c:8632
+#: c-family/c-common.c:8662
#, gcc-internal-format
msgid "assignment of read-only named return value %qD"
msgstr ""
-#: c-family/c-common.c:8634
+#: c-family/c-common.c:8664
#, gcc-internal-format
msgid "increment of read-only named return value %qD"
msgstr ""
-#: c-family/c-common.c:8636
+#: c-family/c-common.c:8666
#, gcc-internal-format
msgid "decrement of read-only named return value %qD"
msgstr ""
-#: c-family/c-common.c:8638
+#: c-family/c-common.c:8668
#, gcc-internal-format
msgid "read-only named return value %qD used as %<asm%>output"
msgstr ""
-#: c-family/c-common.c:8643
+#: c-family/c-common.c:8673
#, gcc-internal-format
msgid "assignment of function %qD"
msgstr ""
-#: c-family/c-common.c:8644
+#: c-family/c-common.c:8674
#, gcc-internal-format
msgid "increment of function %qD"
msgstr ""
-#: c-family/c-common.c:8645
+#: c-family/c-common.c:8675
#, gcc-internal-format
msgid "decrement of function %qD"
msgstr ""
-#: c-family/c-common.c:8646
+#: c-family/c-common.c:8676
#, gcc-internal-format
msgid "function %qD used as %<asm%> output"
msgstr ""
-#: c-family/c-common.c:8652
+#: c-family/c-common.c:8682
#, gcc-internal-format
msgid "read-only location %qE used as %<asm%> output"
msgstr ""
-#: c-family/c-common.c:8666
+#: c-family/c-common.c:8696
#, gcc-internal-format
msgid "lvalue required as left operand of assignment"
msgstr ""
-#: c-family/c-common.c:8669
+#: c-family/c-common.c:8699
#, gcc-internal-format
msgid "lvalue required as increment operand"
msgstr ""
-#: c-family/c-common.c:8672
+#: c-family/c-common.c:8702
#, gcc-internal-format
msgid "lvalue required as decrement operand"
msgstr ""
-#: c-family/c-common.c:8675
+#: c-family/c-common.c:8705
#, gcc-internal-format
msgid "lvalue required as unary %<&%> operand"
msgstr ""
-#: c-family/c-common.c:8678
+#: c-family/c-common.c:8708
#, gcc-internal-format
msgid "lvalue required in asm statement"
msgstr ""
-#: c-family/c-common.c:8695
+#: c-family/c-common.c:8725
#, gcc-internal-format
msgid "invalid type argument (have %qT)"
msgstr ""
-#: c-family/c-common.c:8699
+#: c-family/c-common.c:8729
#, gcc-internal-format
msgid "invalid type argument of array indexing (have %qT)"
msgstr ""
-#: c-family/c-common.c:8704
+#: c-family/c-common.c:8734
#, gcc-internal-format
msgid "invalid type argument of unary %<*%> (have %qT)"
msgstr ""
-#: c-family/c-common.c:8709
+#: c-family/c-common.c:8739
#, gcc-internal-format
msgid "invalid type argument of %<->%> (have %qT)"
msgstr ""
-#: c-family/c-common.c:8714
+#: c-family/c-common.c:8744
#, gcc-internal-format
msgid "invalid type argument of implicit conversion (have %qT)"
msgstr ""
-#: c-family/c-common.c:8845
+#: c-family/c-common.c:8877
#, gcc-internal-format
msgid "size of array is too large"
msgstr ""
-#: c-family/c-common.c:9104
+#: c-family/c-common.c:9142
#, gcc-internal-format
msgid "array subscript has type %<char%>"
msgstr ""
-#: c-family/c-common.c:9139
+#: c-family/c-common.c:9177
#, gcc-internal-format
msgid "suggest parentheses around %<+%> inside %<<<%>"
msgstr ""
-#: c-family/c-common.c:9142
+#: c-family/c-common.c:9180
#, gcc-internal-format
msgid "suggest parentheses around %<-%> inside %<<<%>"
msgstr ""
-#: c-family/c-common.c:9148
+#: c-family/c-common.c:9186
#, gcc-internal-format
msgid "suggest parentheses around %<+%> inside %<>>%>"
msgstr ""
-#: c-family/c-common.c:9151
+#: c-family/c-common.c:9189
#, gcc-internal-format
msgid "suggest parentheses around %<-%> inside %<>>%>"
msgstr ""
-#: c-family/c-common.c:9157
+#: c-family/c-common.c:9195
#, gcc-internal-format
msgid "suggest parentheses around %<&&%> within %<||%>"
msgstr ""
-#: c-family/c-common.c:9166
+#: c-family/c-common.c:9204
#, gcc-internal-format
msgid "suggest parentheses around arithmetic in operand of %<|%>"
msgstr ""
-#: c-family/c-common.c:9171
+#: c-family/c-common.c:9209
#, gcc-internal-format
msgid "suggest parentheses around comparison in operand of %<|%>"
msgstr ""
-#: c-family/c-common.c:9175
+#: c-family/c-common.c:9213
#, gcc-internal-format
msgid ""
"suggest parentheses around operand of %<!%> or change %<|%> to %<||%> or %<!"
"%> to %<~%>"
msgstr ""
-#: c-family/c-common.c:9185
+#: c-family/c-common.c:9223
#, gcc-internal-format
msgid "suggest parentheses around arithmetic in operand of %<^%>"
msgstr ""
-#: c-family/c-common.c:9190
+#: c-family/c-common.c:9228
#, gcc-internal-format
msgid "suggest parentheses around comparison in operand of %<^%>"
msgstr ""
-#: c-family/c-common.c:9196
+#: c-family/c-common.c:9234
#, gcc-internal-format
msgid "suggest parentheses around %<+%> in operand of %<&%>"
msgstr ""
-#: c-family/c-common.c:9199
+#: c-family/c-common.c:9237
#, gcc-internal-format
msgid "suggest parentheses around %<-%> in operand of %<&%>"
msgstr ""
-#: c-family/c-common.c:9204
+#: c-family/c-common.c:9242
#, gcc-internal-format
msgid "suggest parentheses around comparison in operand of %<&%>"
msgstr ""
-#: c-family/c-common.c:9208
+#: c-family/c-common.c:9246
#, gcc-internal-format
msgid ""
"suggest parentheses around operand of %<!%> or change %<&%> to %<&&%> or %<!"
"%> to %<~%>"
msgstr ""
-#: c-family/c-common.c:9216
+#: c-family/c-common.c:9254
#, gcc-internal-format
msgid "suggest parentheses around comparison in operand of %<==%>"
msgstr ""
-#: c-family/c-common.c:9222
+#: c-family/c-common.c:9260
#, gcc-internal-format
msgid "suggest parentheses around comparison in operand of %<!=%>"
msgstr ""
-#: c-family/c-common.c:9233
+#: c-family/c-common.c:9271
#, gcc-internal-format
msgid "comparisons like %<X<=Y<=Z%> do not have their mathematical meaning"
msgstr ""
-#: c-family/c-common.c:9248
+#: c-family/c-common.c:9286
#, gcc-internal-format
msgid "label %q+D defined but not used"
msgstr ""
-#: c-family/c-common.c:9250
+#: c-family/c-common.c:9288
#, gcc-internal-format
msgid "label %q+D declared but not defined"
msgstr ""
-#: c-family/c-common.c:9270
+#: c-family/c-common.c:9304
#, gcc-internal-format
msgid "division by zero"
msgstr ""
-#: c-family/c-common.c:9302
+#: c-family/c-common.c:9336
#, gcc-internal-format
msgid "comparison between types %qT and %qT"
msgstr ""
-#: c-family/c-common.c:9353
+#: c-family/c-common.c:9387
#, gcc-internal-format
msgid "comparison between signed and unsigned integer expressions"
msgstr ""
-#: c-family/c-common.c:9404
+#: c-family/c-common.c:9438
#, gcc-internal-format
msgid "promoted ~unsigned is always non-zero"
msgstr ""
-#: c-family/c-common.c:9407
+#: c-family/c-common.c:9441
#, gcc-internal-format
msgid "comparison of promoted ~unsigned with constant"
msgstr ""
-#: c-family/c-common.c:9417
+#: c-family/c-common.c:9451
#, gcc-internal-format
msgid "comparison of promoted ~unsigned with unsigned"
msgstr ""
-#: c-family/c-format.c:127 c-family/c-format.c:314
+#: c-family/c-format.c:126 c-family/c-format.c:313
#, gcc-internal-format
msgid "format string has invalid operand number"
msgstr ""
-#: c-family/c-format.c:144
+#: c-family/c-format.c:142
#, gcc-internal-format
msgid "function does not return string type"
msgstr ""
-#: c-family/c-format.c:177
+#: c-family/c-format.c:176
#, gcc-internal-format
msgid "format string argument is not a string type"
msgstr ""
-#: c-family/c-format.c:203
+#: c-family/c-format.c:202
#, gcc-internal-format
msgid "found a %<%s%> reference but the format argument should be a string"
msgstr ""
-#: c-family/c-format.c:206
+#: c-family/c-format.c:205
#, gcc-internal-format
msgid "found a %qT but the format argument should be a string"
msgstr ""
-#: c-family/c-format.c:216
+#: c-family/c-format.c:215
#, gcc-internal-format
msgid "format argument should be a %<%s%> reference but a string was found"
msgstr ""
-#: c-family/c-format.c:238
+#: c-family/c-format.c:237
#, gcc-internal-format
msgid "format argument should be a %<%s%> reference"
msgstr ""
-#: c-family/c-format.c:282
+#: c-family/c-format.c:281
#, gcc-internal-format
msgid "unrecognized format specifier"
msgstr ""
-#: c-family/c-format.c:297
+#: c-family/c-format.c:296
#, gcc-internal-format
msgid "%qE is only allowed in Objective-C dialects"
msgstr ""
-#: c-family/c-format.c:306
+#: c-family/c-format.c:305
#, gcc-internal-format
msgid "%qE is an unrecognized format function type"
msgstr ""
-#: c-family/c-format.c:320
+#: c-family/c-format.c:319
#, gcc-internal-format
msgid "%<...%> has invalid operand number"
msgstr ""
-#: c-family/c-format.c:327
+#: c-family/c-format.c:326
#, gcc-internal-format
msgid "format string argument follows the args to be formatted"
msgstr ""
-#: c-family/c-format.c:1066
+#: c-family/c-format.c:1065
#, gcc-internal-format
msgid "function might be possible candidate for %qs format attribute"
msgstr ""
-#: c-family/c-format.c:1158 c-family/c-format.c:1179 c-family/c-format.c:2224
+#: c-family/c-format.c:1155 c-family/c-format.c:1176 c-family/c-format.c:2221
#, gcc-internal-format
msgid "missing $ operand number in format"
msgstr ""
-#: c-family/c-format.c:1188
+#: c-family/c-format.c:1185
#, gcc-internal-format, gfc-internal-format
msgid "%s does not support %%n$ operand number formats"
msgstr ""
-#: c-family/c-format.c:1195
+#: c-family/c-format.c:1192
#, gcc-internal-format
msgid "operand number out of range in format"
msgstr ""
-#: c-family/c-format.c:1218
+#: c-family/c-format.c:1215
#, gcc-internal-format, gfc-internal-format
msgid "format argument %d used more than once in %s format"
msgstr ""
-#: c-family/c-format.c:1250
+#: c-family/c-format.c:1247
#, gcc-internal-format
msgid "$ operand number used after format without operand number"
msgstr ""
-#: c-family/c-format.c:1281
+#: c-family/c-format.c:1278
#, gcc-internal-format, gfc-internal-format
msgid "format argument %d unused before used argument %d in $-style format"
msgstr ""
-#: c-family/c-format.c:1376
+#: c-family/c-format.c:1373
#, gcc-internal-format
msgid "format not a string literal, format string not checked"
msgstr ""
-#: c-family/c-format.c:1391 c-family/c-format.c:1394
+#: c-family/c-format.c:1388 c-family/c-format.c:1391
#, gcc-internal-format
msgid "format not a string literal and no format arguments"
msgstr ""
-#: c-family/c-format.c:1397
+#: c-family/c-format.c:1394
#, gcc-internal-format
msgid "format not a string literal, argument types not checked"
msgstr ""
-#: c-family/c-format.c:1410
+#: c-family/c-format.c:1407
#, gcc-internal-format
msgid "too many arguments for format"
msgstr ""
-#: c-family/c-format.c:1413
+#: c-family/c-format.c:1410
#, gcc-internal-format
msgid "unused arguments in $-style format"
msgstr ""
-#: c-family/c-format.c:1416
+#: c-family/c-format.c:1413
#, gcc-internal-format, gfc-internal-format
msgid "zero-length %s format string"
msgstr ""
-#: c-family/c-format.c:1420
+#: c-family/c-format.c:1417
#, gcc-internal-format
msgid "format is a wide character string"
msgstr ""
-#: c-family/c-format.c:1423
+#: c-family/c-format.c:1420
#, gcc-internal-format
msgid "unterminated format string"
msgstr ""
-#: c-family/c-format.c:1667
+#: c-family/c-format.c:1664
#, gcc-internal-format
msgid "spurious trailing %<%%%> in format"
msgstr ""
-#: c-family/c-format.c:1711 c-family/c-format.c:1991
+#: c-family/c-format.c:1708 c-family/c-format.c:1988
#, gcc-internal-format, gfc-internal-format
msgid "repeated %s in format"
msgstr ""
-#: c-family/c-format.c:1724
+#: c-family/c-format.c:1721
#, gcc-internal-format
msgid "missing fill character at end of strfmon format"
msgstr ""
-#: c-family/c-format.c:1812
+#: c-family/c-format.c:1809
#, gcc-internal-format, gfc-internal-format
msgid "zero width in %s format"
msgstr ""
-#: c-family/c-format.c:1830
+#: c-family/c-format.c:1827
#, gcc-internal-format, gfc-internal-format
msgid "empty left precision in %s format"
msgstr ""
-#: c-family/c-format.c:1906
+#: c-family/c-format.c:1903
#, gcc-internal-format, gfc-internal-format
msgid "empty precision in %s format"
msgstr ""
-#: c-family/c-format.c:1975
+#: c-family/c-format.c:1972
#, gcc-internal-format
msgid "%s does not support the %qs %s length modifier"
msgstr ""
-#: c-family/c-format.c:2008
+#: c-family/c-format.c:2005
#, gcc-internal-format
msgid "conversion lacks type at end of format"
msgstr ""
-#: c-family/c-format.c:2019
+#: c-family/c-format.c:2016
#, gcc-internal-format
msgid "unknown conversion type character %qc in format"
msgstr ""
-#: c-family/c-format.c:2022
+#: c-family/c-format.c:2019
#, gcc-internal-format
msgid "unknown conversion type character 0x%x in format"
msgstr ""
-#: c-family/c-format.c:2029
+#: c-family/c-format.c:2026
#, gcc-internal-format
msgid "%s does not support the %<%%%c%> %s format"
msgstr ""
-#: c-family/c-format.c:2045
+#: c-family/c-format.c:2042
#, gcc-internal-format
msgid "%s used with %<%%%c%> %s format"
msgstr ""
-#: c-family/c-format.c:2054
+#: c-family/c-format.c:2051
#, gcc-internal-format, gfc-internal-format
msgid "%s does not support %s"
msgstr ""
-#: c-family/c-format.c:2064
+#: c-family/c-format.c:2061
#, gcc-internal-format
msgid "%s does not support %s with the %<%%%c%> %s format"
msgstr ""
-#: c-family/c-format.c:2100
+#: c-family/c-format.c:2097
#, gcc-internal-format
msgid "%s ignored with %s and %<%%%c%> %s format"
msgstr ""
-#: c-family/c-format.c:2104
+#: c-family/c-format.c:2101
#, gcc-internal-format, gfc-internal-format
msgid "%s ignored with %s in %s format"
msgstr ""
-#: c-family/c-format.c:2111
+#: c-family/c-format.c:2108
#, gcc-internal-format
msgid "use of %s and %s together with %<%%%c%> %s format"
msgstr ""
-#: c-family/c-format.c:2115
+#: c-family/c-format.c:2112
#, gcc-internal-format, gfc-internal-format
msgid "use of %s and %s together in %s format"
msgstr ""
-#: c-family/c-format.c:2134
+#: c-family/c-format.c:2131
#, gcc-internal-format
msgid "%<%%%c%> yields only last 2 digits of year in some locales"
msgstr ""
-#: c-family/c-format.c:2137
+#: c-family/c-format.c:2134
#, gcc-internal-format
msgid "%<%%%c%> yields only last 2 digits of year"
msgstr ""
#. The end of the format string was reached.
-#: c-family/c-format.c:2154
+#: c-family/c-format.c:2151
#, gcc-internal-format
msgid "no closing %<]%> for %<%%[%> format"
msgstr ""
-#: c-family/c-format.c:2168
+#: c-family/c-format.c:2165
#, gcc-internal-format
msgid "use of %qs length modifier with %qc type character"
msgstr ""
-#: c-family/c-format.c:2186
+#: c-family/c-format.c:2183
#, gcc-internal-format
msgid "%s does not support the %<%%%s%c%> %s format"
msgstr ""
-#: c-family/c-format.c:2203
+#: c-family/c-format.c:2200
#, gcc-internal-format
msgid "operand number specified with suppressed assignment"
msgstr ""
-#: c-family/c-format.c:2206
+#: c-family/c-format.c:2203
#, gcc-internal-format
msgid "operand number specified for format taking no argument"
msgstr ""
-#: c-family/c-format.c:2291
+#: c-family/c-format.c:2288
#, gcc-internal-format
msgid "embedded %<\\0%> in format"
msgstr ""
-#: c-family/c-format.c:2360
+#: c-family/c-format.c:2357
#, gcc-internal-format, gfc-internal-format
msgid "writing through null pointer (argument %d)"
msgstr ""
-#: c-family/c-format.c:2368
+#: c-family/c-format.c:2365
#, gcc-internal-format, gfc-internal-format
msgid "reading through null pointer (argument %d)"
msgstr ""
-#: c-family/c-format.c:2388
+#: c-family/c-format.c:2385
#, gcc-internal-format, gfc-internal-format
msgid "writing into constant object (argument %d)"
msgstr ""
-#: c-family/c-format.c:2399
+#: c-family/c-format.c:2396
#, gcc-internal-format, gfc-internal-format
msgid "extra type qualifiers in format argument (argument %d)"
msgstr ""
-#: c-family/c-format.c:2515
+#: c-family/c-format.c:2512
#, gcc-internal-format
msgid ""
"%s %<%s%.*s%> expects argument of type %<%s%s%>, but argument %d has type %qT"
msgstr ""
-#: c-family/c-format.c:2522
+#: c-family/c-format.c:2519
#, gcc-internal-format
msgid "%s %<%s%.*s%> expects a matching %<%s%s%> argument"
msgstr ""
-#: c-family/c-format.c:2530
+#: c-family/c-format.c:2527
#, gcc-internal-format
msgid ""
"%s %<%s%.*s%> expects argument of type %<%T%s%>, but argument %d has type %qT"
msgstr ""
-#: c-family/c-format.c:2537
+#: c-family/c-format.c:2534
#, gcc-internal-format
msgid "%s %<%s%.*s%> expects a matching %<%T%s%> argument"
msgstr ""
-#: c-family/c-format.c:2597 c-family/c-format.c:2603 c-family/c-format.c:2754
+#: c-family/c-format.c:2594 c-family/c-format.c:2600 c-family/c-format.c:2751
#, gcc-internal-format
msgid "%<__gcc_host_wide_int__%> is not defined as a type"
msgstr ""
-#: c-family/c-format.c:2610 c-family/c-format.c:2764
+#: c-family/c-format.c:2607 c-family/c-format.c:2761
#, gcc-internal-format
msgid "%<__gcc_host_wide_int__%> is not defined as %<long%> or %<long long%>"
msgstr ""
-#: c-family/c-format.c:2660
+#: c-family/c-format.c:2657
#, gcc-internal-format
msgid "%<locus%> is not defined as a type"
msgstr ""
-#: c-family/c-format.c:2713
+#: c-family/c-format.c:2710
#, gcc-internal-format
msgid "%<location_t%> is not defined as a type"
msgstr ""
-#: c-family/c-format.c:2730
+#: c-family/c-format.c:2727
#, gcc-internal-format
msgid "%<tree%> is not defined as a type"
msgstr ""
-#: c-family/c-format.c:2735
+#: c-family/c-format.c:2732
#, gcc-internal-format
msgid "%<tree%> is not defined as a pointer type"
msgstr ""
-#: c-family/c-format.c:3008
+#: c-family/c-format.c:3005
#, gcc-internal-format
msgid "args to be formatted is not %<...%>"
msgstr ""
-#: c-family/c-format.c:3020
+#: c-family/c-format.c:3017
#, gcc-internal-format
msgid "strftime formats cannot format arguments"
msgstr ""
@@ -20885,7 +21229,7 @@
msgid "repeated %<@%> before Objective-C string"
msgstr ""
-#: c-family/c-lex.c:964 cp/parser.c:3113
+#: c-family/c-lex.c:964 cp/parser.c:3123
#, gcc-internal-format
msgid "unsupported non-standard concatenation of string literals"
msgstr ""
@@ -20900,7 +21244,7 @@
msgid "invalid expression type for %<#pragma omp atomic%>"
msgstr ""
-#: c-family/c-omp.c:256 cp/semantics.c:4481
+#: c-family/c-omp.c:256 cp/semantics.c:4587
#, gcc-internal-format
msgid "invalid type for iteration variable %qE"
msgstr ""
@@ -20910,137 +21254,137 @@
msgid "%qE is not initialized"
msgstr ""
-#: c-family/c-omp.c:286 cp/semantics.c:4396
+#: c-family/c-omp.c:286 cp/semantics.c:4502
#, gcc-internal-format
msgid "missing controlling predicate"
msgstr ""
-#: c-family/c-omp.c:368 cp/semantics.c:4153
+#: c-family/c-omp.c:368 cp/semantics.c:4259
#, gcc-internal-format
msgid "invalid controlling predicate"
msgstr ""
-#: c-family/c-omp.c:375 cp/semantics.c:4402
+#: c-family/c-omp.c:375 cp/semantics.c:4508
#, gcc-internal-format
msgid "missing increment expression"
msgstr ""
-#: c-family/c-omp.c:444 cp/semantics.c:4258
+#: c-family/c-omp.c:444 cp/semantics.c:4364
#, gcc-internal-format
msgid "invalid increment expression"
msgstr ""
-#: c-family/c-opts.c:303
+#: c-family/c-opts.c:308
#, gcc-internal-format
msgid "-I- specified twice"
msgstr ""
-#: c-family/c-opts.c:306
+#: c-family/c-opts.c:311
#, gcc-internal-format
msgid "obsolete option -I- used, please use -iquote instead"
msgstr ""
-#: c-family/c-opts.c:486
+#: c-family/c-opts.c:493
#, gcc-internal-format
msgid "-Werror=normalized=: set -Wnormalized=nfc"
msgstr ""
-#: c-family/c-opts.c:500
+#: c-family/c-opts.c:507
#, gcc-internal-format
msgid "argument %qs to %<-Wnormalized%> not recognized"
msgstr ""
-#: c-family/c-opts.c:723 fortran/cpp.c:347
+#: c-family/c-opts.c:730 fortran/cpp.c:347
#, gcc-internal-format
msgid "output filename specified twice"
msgstr ""
-#: c-family/c-opts.c:852
+#: c-family/c-opts.c:869
#, gcc-internal-format
msgid "-fexcess-precision=standard for C++"
msgstr ""
-#: c-family/c-opts.c:865
+#: c-family/c-opts.c:882
#, gcc-internal-format
msgid "-fno-gnu89-inline is only supported in GNU99 or C99 mode"
msgstr ""
-#: c-family/c-opts.c:944
+#: c-family/c-opts.c:961
#, gcc-internal-format
msgid "-Wformat-y2k ignored without -Wformat"
msgstr ""
-#: c-family/c-opts.c:946
+#: c-family/c-opts.c:963
#, gcc-internal-format
msgid "-Wformat-extra-args ignored without -Wformat"
msgstr ""
-#: c-family/c-opts.c:948
+#: c-family/c-opts.c:965
#, gcc-internal-format
msgid "-Wformat-zero-length ignored without -Wformat"
msgstr ""
-#: c-family/c-opts.c:950
+#: c-family/c-opts.c:967
#, gcc-internal-format
msgid "-Wformat-nonliteral ignored without -Wformat"
msgstr ""
-#: c-family/c-opts.c:952
+#: c-family/c-opts.c:969
#, gcc-internal-format
msgid "-Wformat-contains-nul ignored without -Wformat"
msgstr ""
-#: c-family/c-opts.c:954
+#: c-family/c-opts.c:971
#, gcc-internal-format
msgid "-Wformat-security ignored without -Wformat"
msgstr ""
-#: c-family/c-opts.c:984
+#: c-family/c-opts.c:1001
#, gcc-internal-format
msgid "opening output file %s: %m"
msgstr ""
-#: c-family/c-opts.c:989
+#: c-family/c-opts.c:1006
#, gcc-internal-format, gfc-internal-format
msgid "too many filenames given. Type %s --help for usage"
msgstr ""
-#: c-family/c-opts.c:1112
+#: c-family/c-opts.c:1129
#, gcc-internal-format
msgid "opening dependency file %s: %m"
msgstr ""
-#: c-family/c-opts.c:1122
+#: c-family/c-opts.c:1139
#, gcc-internal-format
msgid "closing dependency file %s: %m"
msgstr ""
-#: c-family/c-opts.c:1125
+#: c-family/c-opts.c:1142
#, gcc-internal-format
msgid "when writing output to %s: %m"
msgstr ""
-#: c-family/c-opts.c:1205
+#: c-family/c-opts.c:1222
#, gcc-internal-format
msgid "to generate dependencies you must specify either -M or -MM"
msgstr ""
-#: c-family/c-opts.c:1228
+#: c-family/c-opts.c:1245
#, gcc-internal-format
msgid "-MG may only be used with -M or -MM"
msgstr ""
-#: c-family/c-opts.c:1258
+#: c-family/c-opts.c:1275
#, gcc-internal-format
msgid "-fdirectives-only is incompatible with -Wunused_macros"
msgstr ""
-#: c-family/c-opts.c:1260
+#: c-family/c-opts.c:1277
#, gcc-internal-format
msgid "-fdirectives-only is incompatible with -traditional"
msgstr ""
-#: c-family/c-opts.c:1411
+#: c-family/c-opts.c:1428
#, gcc-internal-format
msgid "too late for # directive to set debug directory"
msgstr ""
@@ -21388,11 +21732,121 @@
msgid "ISO C does not support %<#pragma STDC FLOAT_CONST_DECIMAL64%>"
msgstr ""
-#: c-family/c-semantics.c:167
+#: c-family/c-semantics.c:159
#, gcc-internal-format, gfc-internal-format
msgid "wrong type argument to %s"
msgstr ""
+#: common/config/alpha/alpha-common.c:65
+#, gcc-internal-format
+msgid "bad value %qs for -mtls-size switch"
+msgstr ""
+
+#: common/config/bfin/bfin-common.c:305 common/config/m68k/m68k-common.c:58
+#, gcc-internal-format, gfc-internal-format
+msgid "-mshared-library-id=%s is not between 0 and %d"
+msgstr ""
+
+#: common/config/bfin/bfin-common.c:324
+#, gcc-internal-format, gfc-internal-format
+msgid "-mcpu=%s is not valid"
+msgstr ""
+
+#: common/config/bfin/bfin-common.c:360
+#, gcc-internal-format, gfc-internal-format
+msgid "-mcpu=%s has invalid silicon revision"
+msgstr ""
+
+#: common/config/i386/i386-common.c:528
+#, gcc-internal-format
+msgid "-malign-loops is obsolete, use -falign-loops"
+msgstr ""
+
+#: common/config/i386/i386-common.c:530
+#, gcc-internal-format, gfc-internal-format
+msgid "-malign-loops=%d is not between 0 and %d"
+msgstr ""
+
+#: common/config/i386/i386-common.c:537
+#, gcc-internal-format
+msgid "-malign-jumps is obsolete, use -falign-jumps"
+msgstr ""
+
+#: common/config/i386/i386-common.c:539
+#, gcc-internal-format, gfc-internal-format
+msgid "-malign-jumps=%d is not between 0 and %d"
+msgstr ""
+
+#: common/config/i386/i386-common.c:547
+#, gcc-internal-format
+msgid "-malign-functions is obsolete, use -falign-functions"
+msgstr ""
+
+#: common/config/i386/i386-common.c:549
+#, gcc-internal-format, gfc-internal-format
+msgid "-malign-functions=%d is not between 0 and %d"
+msgstr ""
+
+#: common/config/i386/i386-common.c:558
+#, gcc-internal-format, gfc-internal-format
+msgid "-mbranch-cost=%d is not between 0 and 5"
+msgstr ""
+
+#: common/config/i386/i386-common.c:606
+#, gcc-internal-format
+msgid "%<-fsplit-stack%> currently only supported on GNU/Linux"
+msgstr ""
+
+#: common/config/i386/i386-common.c:612
+#, gcc-internal-format
+msgid "%<-fsplit-stack%> requires assembler support for CFI directives"
+msgstr ""
+
+#: common/config/ia64/ia64-common.c:59
+#, gcc-internal-format
+msgid "bad value %<%s%> for -mtls-size= switch"
+msgstr ""
+
+#: common/config/rs6000/rs6000-common.c:196
+#, gcc-internal-format, gfc-internal-format
+msgid "unknown -mdebug-%s switch"
+msgstr ""
+
+#: common/config/rs6000/rs6000-common.c:242
+#, gcc-internal-format, gfc-internal-format
+msgid "unknown switch -mlong-double-%s"
+msgstr ""
+
+#: common/config/rs6000/rs6000-common.c:252
+#, gcc-internal-format
+msgid "-msingle-float option equivalent to -mhard-float"
+msgstr ""
+
+#: common/config/rs6000/rs6000-common.c:268
+#, gcc-internal-format
+msgid "-msimple-fpu option ignored"
+msgstr ""
+
+#: common/config/rx/rx-common.c:60
+#, gcc-internal-format
+msgid "the RX200 cpu does not have FPU hardware"
+msgstr ""
+
+#: common/config/s390/s390-common.c:94
+#, gcc-internal-format
+msgid "stack guard value must be an exact power of 2"
+msgstr ""
+
+#: common/config/s390/s390-common.c:99
+#, gcc-internal-format
+msgid "stack size must be an exact power of 2"
+msgstr ""
+
+#: common/config/v850/v850-common.c:48
+#, gcc-internal-format
+msgid "value passed in %qs is too large"
+msgstr ""
+
#: config/darwin-c.c:85
#, gcc-internal-format
msgid "too many #pragma options align=reset"
@@ -21589,7 +22043,7 @@
msgid "junk at end of %<#pragma fini%>"
msgstr ""
-#: config/sol2.c:54
+#: config/sol2.c:56
#, gcc-internal-format
msgid "ignoring %<#pragma align%> for explicitly aligned %q+D"
msgstr ""
@@ -21613,7 +22067,7 @@
#. coalesced sections. Weak aliases (or any other kind of aliases) are
#. not supported. Weak symbols that aren't visible outside the .s file
#. are not supported.
-#: config/darwin.h:440
+#: config/darwin.h:441
#, gcc-internal-format
msgid "alias definitions not supported in Mach-O; ignored"
msgstr ""
@@ -21624,317 +22078,282 @@
msgid "profiler support for VxWorks"
msgstr ""
-#: config/alpha/alpha.c:239 config/rs6000/rs6000.c:4429
-#, gcc-internal-format
-msgid "bad value %qs for -mtls-size switch"
-msgstr ""
-
-#: config/alpha/alpha.c:318
+#: config/alpha/alpha.c:275
#, gcc-internal-format
msgid "bad value %qs for -mtrap-precision switch"
msgstr ""
-#: config/alpha/alpha.c:332
+#: config/alpha/alpha.c:289
#, gcc-internal-format
msgid "bad value %qs for -mfp-rounding-mode switch"
msgstr ""
-#: config/alpha/alpha.c:347
+#: config/alpha/alpha.c:304
#, gcc-internal-format
msgid "bad value %qs for -mfp-trap-mode switch"
msgstr ""
-#: config/alpha/alpha.c:361
+#: config/alpha/alpha.c:318
#, gcc-internal-format
msgid "bad value %qs for -mcpu switch"
msgstr ""
-#: config/alpha/alpha.c:373
+#: config/alpha/alpha.c:330
#, gcc-internal-format
msgid "bad value %qs for -mtune switch"
msgstr ""
-#: config/alpha/alpha.c:381
+#: config/alpha/alpha.c:338
#, gcc-internal-format
msgid "fp software completion requires -mtrap-precision=i"
msgstr ""
-#: config/alpha/alpha.c:397
+#: config/alpha/alpha.c:354
#, gcc-internal-format
msgid "rounding mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:402
+#: config/alpha/alpha.c:359
#, gcc-internal-format
msgid "trap mode not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:406
+#: config/alpha/alpha.c:363
#, gcc-internal-format
msgid "128-bit long double not supported for VAX floats"
msgstr ""
-#: config/alpha/alpha.c:434
+#: config/alpha/alpha.c:391
#, gcc-internal-format, gfc-internal-format
msgid "L%d cache latency unknown for %s"
msgstr ""
-#: config/alpha/alpha.c:449
+#: config/alpha/alpha.c:406
#, gcc-internal-format
msgid "bad value %qs for -mmemory-latency"
msgstr ""
-#: config/alpha/alpha.c:6640 config/alpha/alpha.c:6643 config/s390/s390.c:9204
-#: config/s390/s390.c:9207
+#: config/alpha/alpha.c:6444 config/alpha/alpha.c:6447 config/s390/s390.c:9132
+#: config/s390/s390.c:9135
#, gcc-internal-format
msgid "bad builtin fcode"
msgstr ""
-#: config/arm/arm.c:1338 config/sparc/sparc.c:868
-#, gcc-internal-format, gfc-internal-format
-msgid "bad value (%s) for %s switch"
-msgstr ""
-
-#: config/arm/arm.c:1477
+#: config/arm/arm.c:1308
#, gcc-internal-format, gfc-internal-format
msgid "switch -mcpu=%s conflicts with -march=%s switch"
msgstr ""
-#: config/arm/arm.c:1602
-#, gcc-internal-format, gfc-internal-format
-msgid "invalid __fp16 format option: -mfp16-format=%s"
-msgstr ""
-
-#: config/arm/arm.c:1619
-#, gcc-internal-format, gfc-internal-format
-msgid "invalid ABI option: -mabi=%s"
-msgstr ""
-
-#: config/arm/arm.c:1627
+#: config/arm/arm.c:1425
#, gcc-internal-format
msgid "target CPU does not support ARM mode"
msgstr ""
-#: config/arm/arm.c:1633
+#: config/arm/arm.c:1431
#, gcc-internal-format
msgid "target CPU does not support interworking"
msgstr ""
-#: config/arm/arm.c:1639
+#: config/arm/arm.c:1437
#, gcc-internal-format
msgid "target CPU does not support THUMB instructions"
msgstr ""
-#: config/arm/arm.c:1657
+#: config/arm/arm.c:1455
#, gcc-internal-format
msgid ""
"enabling backtrace support is only meaningful when compiling for the Thumb"
msgstr ""
-#: config/arm/arm.c:1660
+#: config/arm/arm.c:1458
#, gcc-internal-format
msgid ""
"enabling callee interworking support is only meaningful when compiling for "
"the Thumb"
msgstr ""
-#: config/arm/arm.c:1664
+#: config/arm/arm.c:1462
#, gcc-internal-format
msgid "-mapcs-stack-check incompatible with -mno-apcs-frame"
msgstr ""
-#: config/arm/arm.c:1672
+#: config/arm/arm.c:1470
#, gcc-internal-format
msgid "-fpic and -mapcs-reent are incompatible"
msgstr ""
-#: config/arm/arm.c:1675
+#: config/arm/arm.c:1473
#, gcc-internal-format
msgid "APCS reentrant code not supported. Ignored"
msgstr ""
-#: config/arm/arm.c:1683
+#: config/arm/arm.c:1481
#, gcc-internal-format
msgid "-g with -mno-apcs-frame may not give sensible debugging"
msgstr ""
-#: config/arm/arm.c:1686
+#: config/arm/arm.c:1484
#, gcc-internal-format
msgid "passing floating point arguments in fp regs not yet supported"
msgstr ""
-#: config/arm/arm.c:1746
+#: config/arm/arm.c:1545
#, gcc-internal-format
msgid "iwmmxt requires an AAPCS compatible ABI for proper operation"
msgstr ""
-#: config/arm/arm.c:1749
+#: config/arm/arm.c:1548
#, gcc-internal-format
msgid "iwmmxt abi requires an iwmmxt capable cpu"
msgstr ""
-#: config/arm/arm.c:1758
-#, gcc-internal-format, gfc-internal-format
-msgid "invalid floating point emulation option: -mfpe=%s"
-msgstr ""
-
-#: config/arm/arm.c:1786
-#, gcc-internal-format, gfc-internal-format
-msgid "invalid floating point option: -mfpu=%s"
-msgstr ""
-
-#: config/arm/arm.c:1825
-#, gcc-internal-format, gfc-internal-format
-msgid "invalid floating point abi: -mfloat-abi=%s"
-msgstr ""
-
-#: config/arm/arm.c:1833
+#: config/arm/arm.c:1596
#, gcc-internal-format
msgid "FPA is unsupported in the AAPCS"
msgstr ""
-#: config/arm/arm.c:1838
+#: config/arm/arm.c:1601
#, gcc-internal-format
msgid "AAPCS does not support -mcaller-super-interworking"
msgstr ""
-#: config/arm/arm.c:1841
+#: config/arm/arm.c:1604
#, gcc-internal-format
msgid "AAPCS does not support -mcallee-super-interworking"
msgstr ""
-#: config/arm/arm.c:1848
+#: config/arm/arm.c:1611
#, gcc-internal-format
msgid "iWMMXt and hardware floating point"
msgstr ""
-#: config/arm/arm.c:1852
+#: config/arm/arm.c:1615
#, gcc-internal-format
msgid "Thumb-2 iWMMXt"
msgstr ""
-#: config/arm/arm.c:1856
+#: config/arm/arm.c:1619
#, gcc-internal-format
msgid "__fp16 and no ldrh"
msgstr ""
-#: config/arm/arm.c:1876
+#: config/arm/arm.c:1639
#, gcc-internal-format
msgid "-mfloat-abi=hard and VFP"
msgstr ""
-#: config/arm/arm.c:1900
-#, gcc-internal-format, gfc-internal-format
-msgid "invalid thread pointer option: -mtp=%s"
-msgstr ""
-
-#: config/arm/arm.c:1913
+#: config/arm/arm.c:1664
#, gcc-internal-format
msgid "can not use -mtp=cp15 with 16-bit Thumb"
msgstr ""
-#: config/arm/arm.c:1927
-#, gcc-internal-format, gfc-internal-format
-msgid "structure size boundary can only be set to %s"
+#: config/arm/arm.c:1680
+#, gcc-internal-format
+msgid "structure size boundary can only be set to 8, 32 or 64"
msgstr ""
-#: config/arm/arm.c:1933
+#: config/arm/arm.c:1682
+#, gcc-internal-format
+msgid "structure size boundary can only be set to 8 or 32"
+msgstr ""
+
+#: config/arm/arm.c:1690
#, gcc-internal-format
msgid "RTP PIC is incompatible with Thumb"
msgstr ""
-#: config/arm/arm.c:1942
+#: config/arm/arm.c:1699
#, gcc-internal-format
msgid "RTP PIC is incompatible with -msingle-pic-base"
msgstr ""
-#: config/arm/arm.c:1954
+#: config/arm/arm.c:1711
#, gcc-internal-format
msgid "-mpic-register= is useless without -fpic"
msgstr ""
-#: config/arm/arm.c:1963
+#: config/arm/arm.c:1720
#, gcc-internal-format, gfc-internal-format
msgid "unable to use '%s' for PIC register"
msgstr ""
-#: config/arm/arm.c:2002
+#: config/arm/arm.c:1754
#, gcc-internal-format
msgid "-freorder-blocks-and-partition not supported on this architecture"
msgstr ""
-#: config/arm/arm.c:3869
+#: config/arm/arm.c:3634
#, gcc-internal-format
msgid "non-AAPCS derived PCS variant"
msgstr ""
-#: config/arm/arm.c:3871
+#: config/arm/arm.c:3636
#, gcc-internal-format
msgid "variadic functions must use the base AAPCS variant"
msgstr ""
-#: config/arm/arm.c:3890
+#: config/arm/arm.c:3655
#, gcc-internal-format
msgid "PCS variant"
msgstr ""
-#: config/arm/arm.c:4085
+#: config/arm/arm.c:3850
#, gcc-internal-format
msgid "Thumb-1 hard-float VFP ABI"
msgstr ""
-#: config/arm/arm.c:4793 config/arm/arm.c:4811 config/avr/avr.c:5090
-#: config/avr/avr.c:5106 config/bfin/bfin.c:5555 config/bfin/bfin.c:5616
-#: config/bfin/bfin.c:5645 config/h8300/h8300.c:5400 config/i386/i386.c:5300
-#: config/i386/i386.c:29571 config/i386/i386.c:29622 config/i386/i386.c:29702
-#: config/m68k/m68k.c:835 config/mcore/mcore.c:3092 config/mep/mep.c:4029
-#: config/mep/mep.c:4043 config/mep/mep.c:4117 config/rs6000/rs6000.c:25216
-#: config/rx/rx.c:2226 config/sh/sh.c:9021 config/sh/sh.c:9039
-#: config/sh/sh.c:9068 config/sh/sh.c:9150 config/sh/sh.c:9173
-#: config/spu/spu.c:3901 config/stormy16/stormy16.c:2195
-#: config/v850/v850.c:2138
+#: config/arm/arm.c:4562 config/arm/arm.c:4580 config/avr/avr.c:5068
+#: config/avr/avr.c:5084 config/bfin/bfin.c:5235 config/bfin/bfin.c:5296
+#: config/bfin/bfin.c:5325 config/h8300/h8300.c:5373 config/i386/i386.c:4696
+#: config/i386/i386.c:29117 config/i386/i386.c:29168 config/i386/i386.c:29248
+#: config/m68k/m68k.c:698 config/mcore/mcore.c:3075 config/mep/mep.c:4016
+#: config/mep/mep.c:4030 config/mep/mep.c:4104 config/rs6000/rs6000.c:24692
+#: config/rx/rx.c:2260 config/sh/sh.c:8876 config/sh/sh.c:8894
+#: config/sh/sh.c:8923 config/sh/sh.c:9005 config/sh/sh.c:9028
+#: config/spu/spu.c:3905 config/stormy16/stormy16.c:2199
+#: config/v850/v850.c:2056
#, gcc-internal-format
msgid "%qE attribute only applies to functions"
msgstr ""
-#: config/arm/arm.c:17801
+#: config/arm/arm.c:17742
#, gcc-internal-format
msgid "unable to compute real location of stacked parameter"
msgstr ""
-#: config/arm/arm.c:19383
+#: config/arm/arm.c:19478
#, gcc-internal-format
msgid "argument must be a constant"
msgstr ""
#. @@@ better error message
-#: config/arm/arm.c:19691 config/arm/arm.c:19728
+#: config/arm/arm.c:19801 config/arm/arm.c:19838
#, gcc-internal-format
msgid "selector must be an immediate"
msgstr ""
#. @@@ better error message
-#: config/arm/arm.c:19771
+#: config/arm/arm.c:19881
#, gcc-internal-format
msgid "mask must be an immediate"
msgstr ""
-#: config/arm/arm.c:20547
+#: config/arm/arm.c:20657
#, gcc-internal-format
msgid "no low registers available for popping high registers"
msgstr ""
-#: config/arm/arm.c:20772
+#: config/arm/arm.c:20882
#, gcc-internal-format
msgid "interrupt Service Routines cannot be coded in Thumb mode"
msgstr ""
-#: config/arm/arm.c:23053
+#: config/arm/arm.c:23154
#, gcc-internal-format
msgid "the mangling of %<va_list%> has changed in GCC 4.4"
msgstr ""
-#: config/arm/pe.c:158 config/mcore/mcore.c:2967
+#: config/arm/pe.c:158 config/mcore/mcore.c:2950
#, gcc-internal-format
msgid "initialized variable %q+D is marked dllimport"
msgstr ""
@@ -21944,134 +22363,136 @@
msgid "static variable %q+D is marked dllimport"
msgstr ""
-#: config/avr/avr.c:271
-#, gcc-internal-format
-msgid "unrecognized argument to -mmcu= option: %qs"
-msgstr ""
-
-#: config/avr/avr.c:272
-#, gcc-internal-format
-msgid "See --target-help for supported MCUs"
-msgstr ""
-
-#: config/avr/avr.c:514
+#: config/avr/avr.c:472
#, gcc-internal-format
msgid "'builtin_return_address' contains only 2 bytes of address"
msgstr ""
-#: config/avr/avr.c:1311
+#: config/avr/avr.c:1271
#, gcc-internal-format
msgid "pointer offset from symbol maybe incorrect"
msgstr ""
-#: config/avr/avr.c:1368
+#: config/avr/avr.c:1328
#, gcc-internal-format
msgid "accessing data memory with program memory address"
msgstr ""
-#: config/avr/avr.c:1408
+#: config/avr/avr.c:1368
#, gcc-internal-format
msgid "accessing program memory with data memory address"
msgstr ""
-#: config/avr/avr.c:4904
+#: config/avr/avr.c:1748
+#, gcc-internal-format, gfc-internal-format
+msgid "Register %s is needed to pass a parameter but is fixed"
+msgstr ""
+
+#: config/avr/avr.c:4882
#, gcc-internal-format
msgid "%qs appears to be a misspelled interrupt handler"
msgstr ""
-#: config/avr/avr.c:4913
+#: config/avr/avr.c:4891
#, gcc-internal-format
msgid "%qs appears to be a misspelled signal handler"
msgstr ""
-#: config/avr/avr.c:5063
+#: config/avr/avr.c:5041
#, gcc-internal-format
msgid "only initialized variables can be placed into program memory area"
msgstr ""
-#: config/avr/avr.c:5197
+#: config/avr/avr.c:5140
+#, gcc-internal-format
+msgid ""
+"variable %q+D must be const in order to be put into read-only section by "
+"means of %<__attribute__((progmem))%>"
+msgstr ""
+
+#: config/avr/avr.c:5255
#, gcc-internal-format
msgid "only uninitialized variables can be placed in the .noinit section"
msgstr ""
-#: config/avr/avr.c:5211
+#: config/avr/avr.c:5271
#, gcc-internal-format
msgid "MCU %qs supported for assembler only"
msgstr ""
-#: config/bfin/bfin.c:2561 config/m68k/m68k.c:559
-#, gcc-internal-format, gfc-internal-format
-msgid "-mshared-library-id=%s is not between 0 and %d"
+#: config/avr/avr.c:6800
+#, gcc-internal-format
+msgid "__builtin_avr_delay_cycles expects a compile time integer constant."
msgstr ""
-#: config/bfin/bfin.c:2580
-#, gcc-internal-format, gfc-internal-format
-msgid "-mcpu=%s is not valid"
+#: config/bfin/bfin.c:2350
+#, gcc-internal-format
+msgid "-mfdpic is not supported, please use a bfin-linux-uclibc target"
msgstr ""
-#: config/bfin/bfin.c:2616
-#, gcc-internal-format, gfc-internal-format
-msgid "-mcpu=%s has invalid silicon revision"
-msgstr ""
-
-#: config/bfin/bfin.c:2677
+#: config/bfin/bfin.c:2355
#, gcc-internal-format
msgid "-mshared-library-id= specified without -mid-shared-library"
msgstr ""
-#: config/bfin/bfin.c:2680
+#: config/bfin/bfin.c:2359
+#, gcc-internal-format
+msgid "-fstack-limit- options are ignored with -mfdpic; use -mstack-check-l1"
+msgstr ""
+
+#: config/bfin/bfin.c:2364
#, gcc-internal-format
msgid "can%'t use multiple stack checking methods together"
msgstr ""
-#: config/bfin/bfin.c:2683
+#: config/bfin/bfin.c:2367
#, gcc-internal-format
msgid "ID shared libraries and FD-PIC mode can%'t be used together"
msgstr ""
-#: config/bfin/bfin.c:2688 config/m68k/m68k.c:660
+#: config/bfin/bfin.c:2372 config/m68k/m68k.c:523
#, gcc-internal-format
msgid "cannot specify both -msep-data and -mid-shared-library"
msgstr ""
-#: config/bfin/bfin.c:2708
+#: config/bfin/bfin.c:2392
#, gcc-internal-format
msgid "-mmulticore can only be used with BF561"
msgstr ""
-#: config/bfin/bfin.c:2711
+#: config/bfin/bfin.c:2395
#, gcc-internal-format
msgid "-mcorea should be used with -mmulticore"
msgstr ""
-#: config/bfin/bfin.c:2714
+#: config/bfin/bfin.c:2398
#, gcc-internal-format
msgid "-mcoreb should be used with -mmulticore"
msgstr ""
-#: config/bfin/bfin.c:2717
+#: config/bfin/bfin.c:2401
#, gcc-internal-format
msgid "-mcorea and -mcoreb can%'t be used together"
msgstr ""
-#: config/bfin/bfin.c:5560
+#: config/bfin/bfin.c:5240
#, gcc-internal-format
msgid "multiple function type attributes specified"
msgstr ""
-#: config/bfin/bfin.c:5627
+#: config/bfin/bfin.c:5307
#, gcc-internal-format
msgid ""
"can%'t apply both longcall and shortcall attributes to the same function"
msgstr ""
-#: config/bfin/bfin.c:5677 config/i386/winnt.c:61 config/mep/mep.c:3933
-#: config/mep/mep.c:4071
+#: config/bfin/bfin.c:5357 config/i386/winnt.c:61 config/mep/mep.c:3920
+#: config/mep/mep.c:4058
#, gcc-internal-format
msgid "%qE attribute only applies to variables"
msgstr ""
-#: config/bfin/bfin.c:5684
+#: config/bfin/bfin.c:5364
#, gcc-internal-format
msgid "%qE attribute cannot be specified for local variables"
msgstr ""
@@ -22080,83 +22501,83 @@
#. an operator, for immediate output. If that ever happens for
#. MULT, we need to apply TARGET_MUL_BUG in the caller. Make sure
#. we notice.
-#: config/cris/cris.c:520
+#: config/cris/cris.c:504
#, gcc-internal-format
msgid "MULT case in cris_op_str"
msgstr ""
-#: config/cris/cris.c:859
+#: config/cris/cris.c:843
#, gcc-internal-format
msgid "invalid use of ':' modifier"
msgstr ""
-#: config/cris/cris.c:1046 config/moxie/moxie.c:189
+#: config/cris/cris.c:1030 config/moxie/moxie.c:189
#, gcc-internal-format, gfc-internal-format
msgid "internal error: bad register: %d"
msgstr ""
-#: config/cris/cris.c:1634
+#: config/cris/cris.c:1607
#, gcc-internal-format
msgid "internal error: sideeffect-insn affecting main effect"
msgstr ""
-#: config/cris/cris.c:1731
+#: config/cris/cris.c:1704
#, gcc-internal-format
msgid "unknown cc_attr value"
msgstr ""
#. If we get here, the caller got its initial tests wrong.
-#: config/cris/cris.c:2116
+#: config/cris/cris.c:2089
#, gcc-internal-format
msgid "internal error: cris_side_effect_mode_ok with bad operands"
msgstr ""
-#: config/cris/cris.c:2410
+#: config/cris/cris.c:2323
#, gcc-internal-format, gfc-internal-format
msgid "-max-stackframe=%d is not usable, not between 0 and %d"
msgstr ""
-#: config/cris/cris.c:2438
+#: config/cris/cris.c:2351
#, gcc-internal-format, gfc-internal-format
msgid "unknown CRIS version specification in -march= or -mcpu= : %s"
msgstr ""
-#: config/cris/cris.c:2474
+#: config/cris/cris.c:2387
#, gcc-internal-format, gfc-internal-format
msgid "unknown CRIS cpu version specification in -mtune= : %s"
msgstr ""
-#: config/cris/cris.c:2495
+#: config/cris/cris.c:2408
#, gcc-internal-format
msgid "-fPIC and -fpic are not supported in this configuration"
msgstr ""
-#: config/cris/cris.c:2510
+#: config/cris/cris.c:2423
#, gcc-internal-format
msgid "that particular -g option is invalid with -maout and -melinux"
msgstr ""
-#: config/cris/cris.c:2736
+#: config/cris/cris.c:2649
#, gcc-internal-format
msgid "unknown src"
msgstr ""
-#: config/cris/cris.c:2797
+#: config/cris/cris.c:2710
#, gcc-internal-format
msgid "unknown dest"
msgstr ""
-#: config/cris/cris.c:3082
+#: config/cris/cris.c:2995
#, gcc-internal-format, gfc-internal-format
msgid "stackframe too big: %d bytes"
msgstr ""
-#: config/cris/cris.c:3574 config/cris/cris.c:3602
+#: config/cris/cris.c:3487 config/cris/cris.c:3515
#, gcc-internal-format
msgid "expand_binop failed in movsi got"
msgstr ""
-#: config/cris/cris.c:3684
+#: config/cris/cris.c:3597
#, gcc-internal-format
msgid "emitting PIC operand, but PIC register isn%'t set up"
msgstr ""
@@ -22210,77 +22631,77 @@
#. See cris.c for TARGET_ASM_FUNCTION_PROLOGUE and
#. TARGET_ASM_FUNCTION_EPILOGUE.
#. Node: Profiling
-#: config/cris/cris.h:876
+#: config/cris/cris.h:879
#, gcc-internal-format
msgid "no FUNCTION_PROFILER for CRIS"
msgstr ""
-#: config/frv/frv.c:8667
+#: config/frv/frv.c:8625
#, gcc-internal-format
msgid "accumulator is not a constant integer"
msgstr ""
-#: config/frv/frv.c:8672
+#: config/frv/frv.c:8630
#, gcc-internal-format
msgid "accumulator number is out of bounds"
msgstr ""
-#: config/frv/frv.c:8683
+#: config/frv/frv.c:8641
#, gcc-internal-format
msgid "inappropriate accumulator for %qs"
msgstr ""
-#: config/frv/frv.c:8759
+#: config/frv/frv.c:8717
#, gcc-internal-format
msgid "invalid IACC argument"
msgstr ""
-#: config/frv/frv.c:8782
+#: config/frv/frv.c:8740
#, gcc-internal-format
msgid "%qs expects a constant argument"
msgstr ""
-#: config/frv/frv.c:8787
+#: config/frv/frv.c:8745
#, gcc-internal-format
msgid "constant argument out of range for %qs"
msgstr ""
-#: config/frv/frv.c:9268
+#: config/frv/frv.c:9226
#, gcc-internal-format
msgid "media functions are not available unless -mmedia is used"
msgstr ""
-#: config/frv/frv.c:9280
+#: config/frv/frv.c:9238
#, gcc-internal-format
msgid "this media function is only available on the fr500"
msgstr ""
-#: config/frv/frv.c:9308
+#: config/frv/frv.c:9266
#, gcc-internal-format
msgid "this media function is only available on the fr400 and fr550"
msgstr ""
-#: config/frv/frv.c:9327
+#: config/frv/frv.c:9285
#, gcc-internal-format
msgid "this builtin function is only available on the fr405 and fr450"
msgstr ""
-#: config/frv/frv.c:9336
+#: config/frv/frv.c:9294
#, gcc-internal-format
msgid "this builtin function is only available on the fr500 and fr550"
msgstr ""
-#: config/frv/frv.c:9348
+#: config/frv/frv.c:9306
#, gcc-internal-format
msgid "this builtin function is only available on the fr450"
msgstr ""
-#: config/h8300/h8300.c:343
+#: config/h8300/h8300.c:338
#, gcc-internal-format
msgid "-ms2600 is used without -ms"
msgstr ""
-#: config/h8300/h8300.c:349
+#: config/h8300/h8300.c:344
#, gcc-internal-format
msgid "-mn is used without -mh or -ms"
msgstr ""
@@ -22295,361 +22716,293 @@
msgid "can%'t set position in PCH file: %m"
msgstr ""
-#: config/i386/i386.c:3517 config/i386/i386.c:3806
+#: config/i386/i386.c:3002 config/i386/i386.c:3291
#, gcc-internal-format, gfc-internal-format
msgid "bad value (%s) for %stune=%s %s"
msgstr ""
-#: config/i386/i386.c:3520
+#: config/i386/i386.c:3005
#, gcc-internal-format, gfc-internal-format
msgid ""
"%stune=x86-64%s is deprecated; use %stune=k8%s or %stune=generic%s instead "
"as appropriate"
msgstr ""
-#: config/i386/i386.c:3566
-#, gcc-internal-format, gfc-internal-format
-msgid "bad value (%s) for %sstringop-strategy=%s %s"
+#. rep; movq isn't available in 32-bit code.
+#: config/i386/i386.c:3035
+#, gcc-internal-format
+msgid "-mstringop-strategy=rep_8byte not supported for 32-bit code"
msgstr ""
-#: config/i386/i386.c:3583
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown ABI (%s) for %sabi=%s %s"
-msgstr ""
-
-#: config/i386/i386.c:3598
-#, gcc-internal-format, gfc-internal-format
-msgid "code model %s does not support PIC mode"
-msgstr ""
-
-#: config/i386/i386.c:3604
-#, gcc-internal-format, gfc-internal-format
-msgid "bad value (%s) for %scmodel=%s %s"
-msgstr ""
-
-#: config/i386/i386.c:3628
-#, gcc-internal-format, gfc-internal-format
-msgid "bad value (%s) for %sasm=%s %s"
-msgstr ""
-
-#: config/i386/i386.c:3632
+#: config/i386/i386.c:3056 config/i386/i386.c:3065 config/i386/i386.c:3074
+#: config/i386/i386.c:3082 config/i386/i386.c:3093
#, gcc-internal-format
msgid "code model %qs not supported in the %s bit mode"
msgstr ""
-#: config/i386/i386.c:3635
+#: config/i386/i386.c:3080 config/i386/i386.c:3089
+#, gcc-internal-format, gfc-internal-format
+msgid "code model %s does not support PIC mode"
+msgstr ""
+
+#: config/i386/i386.c:3116
+#, gcc-internal-format
+msgid "-masm=intel not supported in this configuration"
+msgstr ""
+
+#: config/i386/i386.c:3120
#, gcc-internal-format, gfc-internal-format
msgid "%i-bit mode not compiled in"
msgstr ""
-#: config/i386/i386.c:3647 config/i386/i386.c:3768
+#: config/i386/i386.c:3132 config/i386/i386.c:3253
#, gcc-internal-format
msgid "CPU you selected does not support x86-64 instruction set"
msgstr ""
-#: config/i386/i386.c:3738
+#: config/i386/i386.c:3223
#, gcc-internal-format, gfc-internal-format
msgid "generic CPU can be used only for %stune=%s %s"
msgstr ""
-#: config/i386/i386.c:3741
+#: config/i386/i386.c:3226
#, gcc-internal-format, gfc-internal-format
msgid "bad value (%s) for %sarch=%s %s"
msgstr ""
-#: config/i386/i386.c:3856
-#, gcc-internal-format, gfc-internal-format
-msgid "%sregparm%s is ignored in 64-bit mode"
+#: config/i386/i386.c:3341
+#, gcc-internal-format
+msgid "-mregparm is ignored in 64-bit mode"
msgstr ""
-#: config/i386/i386.c:3859
+#: config/i386/i386.c:3344
#, gcc-internal-format, gfc-internal-format
-msgid "%sregparm=%d%s is not between 0 and %d"
+msgid "-mregparm=%d is not between 0 and %d"
msgstr ""
-#: config/i386/i386.c:3872
-#, gcc-internal-format, gfc-internal-format
-msgid "%salign-loops%s is obsolete, use -falign-loops%s"
-msgstr ""
-
-#: config/i386/i386.c:3878 config/i386/i386.c:3893 config/i386/i386.c:3908
-#, gcc-internal-format, gfc-internal-format
-msgid "%salign-loops=%d%s is not between 0 and %d"
-msgstr ""
-
-#: config/i386/i386.c:3887
-#, gcc-internal-format, gfc-internal-format
-msgid "%salign-jumps%s is obsolete, use -falign-jumps%s"
-msgstr ""
-
-#: config/i386/i386.c:3902
-#, gcc-internal-format, gfc-internal-format
-msgid "%salign-functions%s is obsolete, use -falign-functions%s"
-msgstr ""
-
-#: config/i386/i386.c:3937
-#, gcc-internal-format, gfc-internal-format
-msgid "%sbranch-cost=%d%s is not between 0 and 5"
-msgstr ""
-
-#: config/i386/i386.c:3945
-#, gcc-internal-format, gfc-internal-format
-msgid "%slarge-data-threshold=%d%s is negative"
-msgstr ""
-
-#: config/i386/i386.c:3957
-#, gcc-internal-format, gfc-internal-format
-msgid "bad value (%s) for %stls-dialect=%s %s"
-msgstr ""
-
-#: config/i386/i386.c:3965
-#, gcc-internal-format, gfc-internal-format
-msgid "pc%d is not valid precision setting (32, 64 or 80)"
-msgstr ""
-
-#: config/i386/i386.c:3981
+#: config/i386/i386.c:3385
#, gcc-internal-format, gfc-internal-format
msgid "%srtd%s is ignored in 64bit mode"
msgstr ""
-#: config/i386/i386.c:4041
-#, gcc-internal-format, gfc-internal-format
-msgid "%spreferred-stack-boundary%s is not supported for this target"
+#: config/i386/i386.c:3445
+#, gcc-internal-format
+msgid "-mpreferred-stack-boundary is not supported for this target"
msgstr ""
-#: config/i386/i386.c:4044
+#: config/i386/i386.c:3448
#, gcc-internal-format, gfc-internal-format
-msgid "%spreferred-stack-boundary=%d%s is not between %d and %d"
+msgid "-mpreferred-stack-boundary=%d is not between %d and %d"
msgstr ""
-#: config/i386/i386.c:4064
+#: config/i386/i386.c:3469
#, gcc-internal-format, gfc-internal-format
msgid "-mincoming-stack-boundary=%d is not between %d and 12"
msgstr ""
-#: config/i386/i386.c:4077
+#: config/i386/i386.c:3483
#, gcc-internal-format, gfc-internal-format
msgid "%ssseregparm%s used without SSE enabled"
msgstr ""
-#: config/i386/i386.c:4088 config/i386/i386.c:4102
+#: config/i386/i386.c:3491
#, gcc-internal-format
msgid "SSE instruction set disabled, using 387 arithmetics"
msgstr ""
-#: config/i386/i386.c:4107
+#: config/i386/i386.c:3496
#, gcc-internal-format
msgid "387 instruction set disabled, using SSE arithmetics"
msgstr ""
-#: config/i386/i386.c:4114
-#, gcc-internal-format, gfc-internal-format
-msgid "bad value (%s) for %sfpmath=%s %s"
-msgstr ""
-
-#: config/i386/i386.c:4130
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown vectorization library ABI type (%s) for %sveclibabi=%s %s"
-msgstr ""
-
-#: config/i386/i386.c:4151
+#: config/i386/i386.c:3540
#, gcc-internal-format, gfc-internal-format
msgid ""
"unwind tables currently require either a frame pointer or %saccumulate-"
"outgoing-args%s for correctness"
msgstr ""
-#: config/i386/i386.c:4164
+#: config/i386/i386.c:3553
#, gcc-internal-format, gfc-internal-format
msgid "stack probing requires %saccumulate-outgoing-args%s for correctness"
msgstr ""
-#: config/i386/i386.c:4250
+#: config/i386/i386.c:3640
#, gcc-internal-format
msgid "-mfentry isn%'t supported for 32-bit in combination with -fpic"
msgstr ""
-#: config/i386/i386.c:4257
+#: config/i386/i386.c:3647
#, gcc-internal-format
msgid "-mno-fentry isn%'t compatible with SEH"
msgstr ""
-#: config/i386/i386.c:4671
+#: config/i386/i386.c:4073 config/i386/i386.c:4120
#, gcc-internal-format, gfc-internal-format
msgid "attribute(target(\"%s\")) is unknown"
msgstr ""
-#: config/i386/i386.c:4699
+#: config/i386/i386.c:4101
#, gcc-internal-format, gfc-internal-format
msgid "option(\"%s\") was already specified"
msgstr ""
-#: config/i386/i386.c:5313 config/i386/i386.c:5364
+#: config/i386/i386.c:4709 config/i386/i386.c:4760
#, gcc-internal-format
msgid "fastcall and regparm attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5318
+#: config/i386/i386.c:4714
#, gcc-internal-format
msgid "regparam and thiscall attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5325 config/i386/i386.c:29591
+#: config/i386/i386.c:4721 config/i386/i386.c:29137
#, gcc-internal-format
msgid "%qE attribute requires an integer constant argument"
msgstr ""
-#: config/i386/i386.c:5331
+#: config/i386/i386.c:4727
#, gcc-internal-format
msgid "argument to %qE attribute larger than %d"
msgstr ""
-#: config/i386/i386.c:5356 config/i386/i386.c:5399
+#: config/i386/i386.c:4752 config/i386/i386.c:4795
#, gcc-internal-format
msgid "fastcall and cdecl attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5360
+#: config/i386/i386.c:4756
#, gcc-internal-format
msgid "fastcall and stdcall attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5368 config/i386/i386.c:5417
+#: config/i386/i386.c:4764 config/i386/i386.c:4813
#, gcc-internal-format
msgid "fastcall and thiscall attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5378 config/i386/i386.c:5395
+#: config/i386/i386.c:4774 config/i386/i386.c:4791
#, gcc-internal-format
msgid "stdcall and cdecl attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5382
+#: config/i386/i386.c:4778
#, gcc-internal-format
msgid "stdcall and fastcall attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5386 config/i386/i386.c:5413
+#: config/i386/i386.c:4782 config/i386/i386.c:4809
#, gcc-internal-format
msgid "stdcall and thiscall attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5403 config/i386/i386.c:5421
+#: config/i386/i386.c:4799 config/i386/i386.c:4817
#, gcc-internal-format
msgid "cdecl and thiscall attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:5409
+#: config/i386/i386.c:4805
#, gcc-internal-format
msgid "%qE attribute is used for none class-method"
msgstr ""
-#: config/i386/i386.c:5563
+#: config/i386/i386.c:4997
#, gcc-internal-format
msgid "calling %qD with attribute sseregparm without SSE/SSE2 enabled"
msgstr ""
-#: config/i386/i386.c:5566
+#: config/i386/i386.c:5000
#, gcc-internal-format
msgid "calling %qT with attribute sseregparm without SSE/SSE2 enabled"
msgstr ""
-#: config/i386/i386.c:5783
+#: config/i386/i386.c:5215
#, gcc-internal-format
msgid "ms_hook_prologue is not compatible with nested function"
msgstr ""
-#: config/i386/i386.c:5935
+#: config/i386/i386.c:5367
#, gcc-internal-format
msgid ""
"ms_abi attribute requires -maccumulate-outgoing-args or subtarget "
"optimization implying it"
msgstr ""
-#: config/i386/i386.c:6058
+#: config/i386/i386.c:5491
#, gcc-internal-format
msgid "AVX vector argument without AVX enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:6240
+#: config/i386/i386.c:5673
#, gcc-internal-format
msgid ""
"the ABI of passing struct with a flexible array member has changed in GCC 4.4"
msgstr ""
-#: config/i386/i386.c:6356
+#: config/i386/i386.c:5789
#, gcc-internal-format
msgid "the ABI of passing union with long double has changed in GCC 4.4"
msgstr ""
-#: config/i386/i386.c:6471
+#: config/i386/i386.c:5904
#, gcc-internal-format
msgid ""
"the ABI of passing structure with complex float member has changed in GCC 4.4"
msgstr ""
-#: config/i386/i386.c:6617
+#: config/i386/i386.c:6050
#, gcc-internal-format
msgid "SSE register return with SSE disabled"
msgstr ""
-#: config/i386/i386.c:6623
+#: config/i386/i386.c:6056
#, gcc-internal-format
msgid "SSE register argument with SSE disabled"
msgstr ""
-#: config/i386/i386.c:6639
+#: config/i386/i386.c:6072
#, gcc-internal-format
msgid "x87 register return with x87 disabled"
msgstr ""
-#: config/i386/i386.c:7017
+#: config/i386/i386.c:6451
#, gcc-internal-format
msgid "SSE vector argument without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:7055
+#: config/i386/i386.c:6489
#, gcc-internal-format
msgid "MMX vector argument without MMX enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:7427
+#: config/i386/i386.c:6864
#, gcc-internal-format, gfc-internal-format
msgid ""
"The ABI for passing parameters with %d-byte alignment has changed in GCC 4.6"
msgstr ""
-#: config/i386/i386.c:7736
+#: config/i386/i386.c:7173
#, gcc-internal-format
msgid "SSE vector return without SSE enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:7746
+#: config/i386/i386.c:7183
#, gcc-internal-format
msgid "MMX vector return without MMX enabled changes the ABI"
msgstr ""
-#: config/i386/i386.c:9172
-#, gcc-internal-format
-msgid "%<-fsplit-stack%> currently only supported on GNU/Linux"
-msgstr ""
-
-#: config/i386/i386.c:9178
-#, gcc-internal-format
-msgid "%<-fsplit-stack%> requires assembler support for CFI directives"
-msgstr ""
-
-#: config/i386/i386.c:10339
+#: config/i386/i386.c:9765
#, gcc-internal-format
msgid "ms_hook_prologue attribute isn%'t compatible with -mfentry for 32-bit"
msgstr ""
-#: config/i386/i386.c:11307
+#: config/i386/i386.c:10733
#, gcc-internal-format
msgid "-fsplit-stack does not support fastcall with nested function"
msgstr ""
-#: config/i386/i386.c:11321
+#: config/i386/i386.c:10747
#, gcc-internal-format
msgid ""
"-fsplit-stack does not support 2 register parameters for a nested function"
@@ -22657,142 +23010,142 @@
#. FIXME: We could make this work by pushing a register
#. around the addition and comparison.
-#: config/i386/i386.c:11332
+#: config/i386/i386.c:10758
#, gcc-internal-format
msgid "-fsplit-stack does not support 3 register parameters"
msgstr ""
-#: config/i386/i386.c:13693
+#: config/i386/i386.c:13197
#, gcc-internal-format
msgid "extended registers have no high halves"
msgstr ""
-#: config/i386/i386.c:13708
+#: config/i386/i386.c:13212
#, gcc-internal-format
msgid "unsupported operand size for extended register"
msgstr ""
-#: config/i386/i386.c:13953
+#: config/i386/i386.c:13458
#, gcc-internal-format, gfc-internal-format
msgid "non-integer operand used with operand code '%c'"
msgstr ""
-#: config/i386/i386.c:26067 config/i386/i386.c:27488
-#, gcc-internal-format
-msgid "last argument must be an immediate"
-msgstr ""
-
-#: config/i386/i386.c:26397
-#, gcc-internal-format
-msgid "the fifth argument must be a 8-bit immediate"
-msgstr ""
-
-#: config/i386/i386.c:26492
-#, gcc-internal-format
-msgid "the third argument must be a 8-bit immediate"
-msgstr ""
-
-#: config/i386/i386.c:26854
-#, gcc-internal-format
-msgid "the last argument must be a 4-bit immediate"
-msgstr ""
-
-#: config/i386/i386.c:26863
+#: config/i386/i386.c:25588 config/i386/i386.c:26422
#, gcc-internal-format
msgid "the last argument must be a 2-bit immediate"
msgstr ""
-#: config/i386/i386.c:26872
+#: config/i386/i386.c:25956
+#, gcc-internal-format
+msgid "the fifth argument must be an 8-bit immediate"
+msgstr ""
+
+#: config/i386/i386.c:26051
+#, gcc-internal-format
+msgid "the third argument must be an 8-bit immediate"
+msgstr ""
+
+#: config/i386/i386.c:26413
+#, gcc-internal-format
+msgid "the last argument must be a 4-bit immediate"
+msgstr ""
+
+#: config/i386/i386.c:26431
#, gcc-internal-format
msgid "the last argument must be a 1-bit immediate"
msgstr ""
-#: config/i386/i386.c:26881
+#: config/i386/i386.c:26440
#, gcc-internal-format
msgid "the last argument must be a 5-bit immediate"
msgstr ""
-#: config/i386/i386.c:26890
+#: config/i386/i386.c:26449
#, gcc-internal-format
msgid "the next to last argument must be an 8-bit immediate"
msgstr ""
-#: config/i386/i386.c:26894 config/i386/i386.c:27105
+#: config/i386/i386.c:26453 config/i386/i386.c:26664
#, gcc-internal-format
msgid "the last argument must be an 8-bit immediate"
msgstr ""
-#: config/i386/i386.c:27103
+#: config/i386/i386.c:26662
#, gcc-internal-format
msgid "the last argument must be a 32-bit immediate"
msgstr ""
-#: config/i386/i386.c:27169 config/rs6000/rs6000.c:11694
+#: config/i386/i386.c:26728 config/rs6000/rs6000.c:11102
#, gcc-internal-format
msgid "selector must be an integer constant in the range 0..%wi"
msgstr ""
-#: config/i386/i386.c:27312
+#: config/i386/i386.c:26871
#, gcc-internal-format
msgid "%qE needs unknown isa option"
msgstr ""
-#: config/i386/i386.c:27316
+#: config/i386/i386.c:26875
#, gcc-internal-format
msgid "%qE needs isa option %s"
msgstr ""
-#: config/i386/i386.c:29578
+#: config/i386/i386.c:27047
+#, gcc-internal-format
+msgid "last argument must be an immediate"
+msgstr ""
+
+#: config/i386/i386.c:29124
#, gcc-internal-format
msgid "%qE attribute only available for 32-bit"
msgstr ""
-#: config/i386/i386.c:29599
+#: config/i386/i386.c:29145
#, gcc-internal-format
msgid "argument to %qE attribute is neither zero, nor one"
msgstr ""
-#: config/i386/i386.c:29629
+#: config/i386/i386.c:29175
#, gcc-internal-format
msgid "%qE attribute only available for 64-bit"
msgstr ""
-#: config/i386/i386.c:29640 config/i386/i386.c:29649
+#: config/i386/i386.c:29186 config/i386/i386.c:29195
#, gcc-internal-format
msgid "ms_abi and sysv_abi attributes are not compatible"
msgstr ""
-#: config/i386/i386.c:29687 config/rs6000/rs6000.c:25299
+#: config/i386/i386.c:29233 config/rs6000/rs6000.c:24775
#, gcc-internal-format
msgid "%qE incompatible attribute ignored"
msgstr ""
-#: config/i386/i386.c:33863
+#: config/i386/i386.c:33426
#, gcc-internal-format
msgid "vector permutation requires vector constant"
msgstr ""
-#: config/i386/i386.c:33873
+#: config/i386/i386.c:33436
#, gcc-internal-format
msgid "invalid vector permutation constant"
msgstr ""
-#: config/i386/i386.c:33921
+#: config/i386/i386.c:33484
#, gcc-internal-format, gfc-internal-format
msgid "vector permutation (%d %d)"
msgstr ""
-#: config/i386/i386.c:33924
+#: config/i386/i386.c:33487
#, gcc-internal-format, gfc-internal-format
msgid "vector permutation (%d %d %d %d)"
msgstr ""
-#: config/i386/i386.c:33928
+#: config/i386/i386.c:33491
#, gcc-internal-format, gfc-internal-format
msgid "vector permutation (%d %d %d %d %d %d %d %d)"
msgstr ""
-#: config/i386/i386.c:33933
+#: config/i386/i386.c:33496
#, gcc-internal-format, gfc-internal-format
msgid "vector permutation (%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d)"
msgstr ""
@@ -22808,39 +23161,39 @@
msgid "definition of static data member %q+D of dllimport%'d class"
msgstr ""
-#: config/i386/winnt.c:324
+#: config/i386/winnt.c:331
#, gcc-internal-format
msgid "%q+D:'selectany' attribute applies only to initialized objects"
msgstr ""
-#: config/i386/winnt.c:468
+#: config/i386/winnt.c:475
#, gcc-internal-format
msgid "%q+D causes a section type conflict"
msgstr ""
-#: config/i386/cygming.h:200
+#: config/i386/cygming.h:197
#, gcc-internal-format
msgid "-fPIC ignored for target (all code is position independent)"
msgstr ""
-#: config/i386/cygming.h:206
+#: config/i386/cygming.h:203
#, gcc-internal-format, gfc-internal-format
msgid "-f%s ignored for target (all code is position independent)"
msgstr ""
-#: config/i386/djgpp.h:175
+#: config/i386/djgpp.h:166
#, gcc-internal-format
msgid "-mbnu210 is ignored (option is obsolete)"
msgstr ""
-#: config/i386/i386-interix.h:253
+#: config/i386/i386-interix.h:251
#, gcc-internal-format
msgid "ms-bitfields not supported for objc"
msgstr ""
#. Don't allow flag_pic to propagate since invalid relocations will
#. result otherwise.
-#: config/i386/netware.h:83
+#: config/i386/netware.h:81
#, gcc-internal-format
msgid "-fPIC and -fpic are not supported for this target"
msgstr ""
@@ -22850,74 +23203,69 @@
msgid "malformed #pragma builtin"
msgstr ""
-#: config/ia64/ia64.c:697
+#: config/ia64/ia64.c:679
#, gcc-internal-format
msgid "invalid argument of %qE attribute"
msgstr ""
-#: config/ia64/ia64.c:710
+#: config/ia64/ia64.c:692
#, gcc-internal-format
msgid "an address area attribute cannot be specified for local variables"
msgstr ""
-#: config/ia64/ia64.c:717
+#: config/ia64/ia64.c:699
#, gcc-internal-format
msgid "address area of %q+D conflicts with previous declaration"
msgstr ""
-#: config/ia64/ia64.c:725
+#: config/ia64/ia64.c:707
#, gcc-internal-format
msgid "address area attribute cannot be specified for functions"
msgstr ""
-#: config/ia64/ia64.c:766
+#: config/ia64/ia64.c:748
#, gcc-internal-format
msgid "%qE attribute requires a string constant argument"
msgstr ""
-#: config/ia64/ia64.c:5612 config/pa/pa.c:424 config/sh/sh.c:8869
-#: config/spu/spu.c:5111
+#: config/ia64/ia64.c:5585 config/pa/pa.c:413 config/sh/sh.c:8724
+#: config/spu/spu.c:5118
#, gcc-internal-format
msgid "value of -mfixed-range must have form REG1-REG2"
msgstr ""
-#: config/ia64/ia64.c:5639 config/pa/pa.c:451 config/sh/sh.c:8895
-#: config/spu/spu.c:5137
+#: config/ia64/ia64.c:5612 config/pa/pa.c:440 config/sh/sh.c:8750
+#: config/spu/spu.c:5144
#, gcc-internal-format, gfc-internal-format
msgid "%s-%s is an empty range"
msgstr ""
-#: config/ia64/ia64.c:5670
-#, gcc-internal-format
-msgid "bad value %<%s%> for -mtls-size= switch"
-msgstr ""
-
-#: config/ia64/ia64.c:10959
+#: config/ia64/ia64.c:10892
#, gcc-internal-format
msgid "version attribute is not a string"
msgstr ""
-#: config/iq2000/iq2000.c:1837
+#: config/iq2000/iq2000.c:1833
#, gcc-internal-format, gfc-internal-format
msgid "gp_offset (%ld) or end_offset (%ld) is less than zero"
msgstr ""
-#: config/iq2000/iq2000.c:2616
+#: config/iq2000/iq2000.c:2594
#, gcc-internal-format
msgid "argument %qd is not a constant"
msgstr ""
-#: config/iq2000/iq2000.c:2918 config/xtensa/xtensa.c:2438
+#: config/iq2000/iq2000.c:2897 config/xtensa/xtensa.c:2432
#, gcc-internal-format
msgid "PRINT_OPERAND_ADDRESS, null pointer"
msgstr ""
-#: config/iq2000/iq2000.c:3073
+#: config/iq2000/iq2000.c:3052
#, gcc-internal-format, gfc-internal-format
msgid "PRINT_OPERAND: Unknown punctuation '%c'"
msgstr ""
-#: config/iq2000/iq2000.c:3082 config/xtensa/xtensa.c:2292
+#: config/iq2000/iq2000.c:3061 config/xtensa/xtensa.c:2286
#, gcc-internal-format
msgid "PRINT_OPERAND null pointer"
msgstr ""
@@ -22952,68 +23300,68 @@
msgid "invalid target memregs value '%d'"
msgstr ""
-#: config/m32c/m32c.c:3149
+#: config/m32c/m32c.c:3139
#, gcc-internal-format
msgid "%qE attribute is not supported for R8C target"
msgstr ""
#. The argument must be a constant integer.
-#: config/m32c/m32c.c:3165 config/sh/sh.c:9076 config/sh/sh.c:9182
+#: config/m32c/m32c.c:3155 config/sh/sh.c:8931 config/sh/sh.c:9037
#, gcc-internal-format
msgid "%qE attribute argument not an integer constant"
msgstr ""
-#: config/m32c/m32c.c:3174
+#: config/m32c/m32c.c:3164
#, gcc-internal-format
msgid "%qE attribute argument should be between 18 to 255"
msgstr ""
-#: config/m32c/m32c.c:4433
+#: config/m32c/m32c.c:4423
#, gcc-internal-format
msgid "%<bank_switch%> has no effect on non-interrupt functions"
msgstr ""
-#: config/m32c/m32c.c:4534
+#: config/m32c/m32c.c:4527
#, gcc-internal-format
msgid "%<fast_interrupt%> attribute directive ignored"
msgstr ""
-#: config/m32r/m32r.c:426
+#: config/m32r/m32r.c:383
#, gcc-internal-format
msgid "invalid argument of %qs attribute"
msgstr ""
-#: config/m68k/m68k.c:601
+#: config/m68k/m68k.c:464
#, gcc-internal-format, gfc-internal-format
msgid "-mcpu=%s conflicts with -march=%s"
msgstr ""
-#: config/m68k/m68k.c:672
+#: config/m68k/m68k.c:535
#, gcc-internal-format
msgid "-mpcrel -fPIC is not currently supported on selected cpu"
msgstr ""
-#: config/m68k/m68k.c:734
+#: config/m68k/m68k.c:597
#, gcc-internal-format, gfc-internal-format
msgid "-falign-labels=%d is not supported"
msgstr ""
-#: config/m68k/m68k.c:739
+#: config/m68k/m68k.c:602
#, gcc-internal-format, gfc-internal-format
msgid "-falign-loops=%d is not supported"
msgstr ""
-#: config/m68k/m68k.c:842
+#: config/m68k/m68k.c:705
#, gcc-internal-format
msgid "multiple interrupt attributes not allowed"
msgstr ""
-#: config/m68k/m68k.c:849
+#: config/m68k/m68k.c:712
#, gcc-internal-format
msgid "interrupt_thread is available only on fido"
msgstr ""
-#: config/m68k/m68k.c:1178 config/rs6000/rs6000.c:19682
+#: config/m68k/m68k.c:1045 config/rs6000/rs6000.c:19157
#, gcc-internal-format
msgid "stack limit expression is not supported"
msgstr ""
@@ -23093,469 +23441,458 @@
msgid "malformed #pragma call"
msgstr ""
-#: config/mep/mep.c:370
+#: config/mep/mep.c:353
#, gcc-internal-format
msgid "-fpic is not supported"
msgstr ""
-#: config/mep/mep.c:372
+#: config/mep/mep.c:355
#, gcc-internal-format
msgid "-fPIC is not supported"
msgstr ""
-#: config/mep/mep.c:374
+#: config/mep/mep.c:357
#, gcc-internal-format
msgid "only one of -ms and -mm may be given"
msgstr ""
-#: config/mep/mep.c:376
+#: config/mep/mep.c:359
#, gcc-internal-format
msgid "only one of -ms and -ml may be given"
msgstr ""
-#: config/mep/mep.c:378
+#: config/mep/mep.c:361
#, gcc-internal-format
msgid "only one of -mm and -ml may be given"
msgstr ""
-#: config/mep/mep.c:380
+#: config/mep/mep.c:363
#, gcc-internal-format
msgid "only one of -ms and -mtiny= may be given"
msgstr ""
-#: config/mep/mep.c:382
+#: config/mep/mep.c:365
#, gcc-internal-format
msgid "only one of -mm and -mtiny= may be given"
msgstr ""
-#: config/mep/mep.c:384
+#: config/mep/mep.c:367
#, gcc-internal-format
msgid "-mclip currently has no effect without -mminmax"
msgstr ""
-#: config/mep/mep.c:391
+#: config/mep/mep.c:374
#, gcc-internal-format
msgid "-mc= must be -mc=tiny, -mc=near, or -mc=far"
msgstr ""
-#: config/mep/mep.c:1518
+#: config/mep/mep.c:1502
#, gcc-internal-format
msgid "unusual TP-relative address"
msgstr ""
-#: config/mep/mep.c:3490
+#: config/mep/mep.c:3474
#, gcc-internal-format
msgid "unconvertible operand %c %qs"
msgstr ""
-#: config/mep/mep.c:3940 config/mep/mep.c:4003
+#: config/mep/mep.c:3927 config/mep/mep.c:3990
#, gcc-internal-format
msgid "address region attributes not allowed with auto storage class"
msgstr ""
-#: config/mep/mep.c:3946 config/mep/mep.c:4009
+#: config/mep/mep.c:3933 config/mep/mep.c:3996
#, gcc-internal-format
msgid "address region attributes on pointed-to types ignored"
msgstr ""
-#: config/mep/mep.c:3995
+#: config/mep/mep.c:3982
#, gcc-internal-format
msgid "%qE attribute only applies to variables and functions"
msgstr ""
-#: config/mep/mep.c:4015 config/mep/mep.c:4329
+#: config/mep/mep.c:4002 config/mep/mep.c:4318
#, gcc-internal-format
msgid "duplicate address region attribute %qE in declaration of %qE on line %d"
msgstr ""
-#: config/mep/mep.c:4049
+#: config/mep/mep.c:4036
#, gcc-internal-format
msgid "cannot inline interrupt function %qE"
msgstr ""
-#: config/mep/mep.c:4055
+#: config/mep/mep.c:4042
#, gcc-internal-format
msgid "interrupt function must have return type of void"
msgstr ""
-#: config/mep/mep.c:4060
+#: config/mep/mep.c:4047
#, gcc-internal-format
msgid "interrupt function must have no arguments"
msgstr ""
-#: config/mep/mep.c:4081
+#: config/mep/mep.c:4068
#, gcc-internal-format
msgid "%qE attribute allows only an integer constant argument"
msgstr ""
-#: config/mep/mep.c:4114
+#: config/mep/mep.c:4101
#, gcc-internal-format
msgid "%qE attribute only applies to functions, not %s"
msgstr ""
-#: config/mep/mep.c:4124
-#, gcc-internal-format
-msgid "to describe a pointer to a VLIW function, use syntax like this:"
+#: config/mep/mep.c:4112
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"to describe a pointer to a VLIW function, use syntax like this:\n"
+"%s"
msgstr ""
-#: config/mep/mep.c:4125
-#, gcc-internal-format
-msgid " typedef int (__vliw *vfuncptr) ();"
+#: config/mep/mep.c:4121
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"to describe an array of VLIW function pointers, use syntax like this:\n"
+"%s"
msgstr ""
-#: config/mep/mep.c:4132
-#, gcc-internal-format
-msgid "to describe an array of VLIW function pointers, use syntax like this:"
-msgstr ""
-
-#: config/mep/mep.c:4133
-#, gcc-internal-format
-msgid " typedef int (__vliw *vfuncptr[]) ();"
-msgstr ""
-
-#: config/mep/mep.c:4138
+#: config/mep/mep.c:4127
#, gcc-internal-format
msgid "VLIW functions are not allowed without a VLIW configuration"
msgstr ""
-#: config/mep/mep.c:4288
+#: config/mep/mep.c:4277
#, gcc-internal-format, gfc-internal-format
msgid "\"#pragma disinterrupt %s\" not used"
msgstr ""
-#: config/mep/mep.c:4454
+#: config/mep/mep.c:4443
#, gcc-internal-format
msgid "__io address 0x%x is the same for %qE and %qE"
msgstr ""
-#: config/mep/mep.c:4602
+#: config/mep/mep.c:4591
#, gcc-internal-format, gfc-internal-format
msgid "variable %s (%ld bytes) is too large for the %s section (%d bytes)"
msgstr ""
-#: config/mep/mep.c:4700
+#: config/mep/mep.c:4689
#, gcc-internal-format
msgid "variable %D of type %<io%> must be uninitialized"
msgstr ""
-#: config/mep/mep.c:4705
+#: config/mep/mep.c:4694
#, gcc-internal-format
msgid "variable %D of type %<cb%> must be uninitialized"
msgstr ""
-#: config/mep/mep.c:6155
+#: config/mep/mep.c:6144
#, gcc-internal-format
msgid "coprocessor intrinsic %qs is not available in this configuration"
msgstr ""
-#: config/mep/mep.c:6158
+#: config/mep/mep.c:6147
#, gcc-internal-format
msgid "%qs is not available in VLIW functions"
msgstr ""
-#: config/mep/mep.c:6161
+#: config/mep/mep.c:6150
#, gcc-internal-format
msgid "%qs is not available in non-VLIW functions"
msgstr ""
-#: config/mep/mep.c:6323 config/mep/mep.c:6440
+#: config/mep/mep.c:6312 config/mep/mep.c:6429
#, gcc-internal-format
msgid "argument %d of %qE must be in the range %d...%d"
msgstr ""
-#: config/mep/mep.c:6326
+#: config/mep/mep.c:6315
#, gcc-internal-format
msgid "argument %d of %qE must be a multiple of %d"
msgstr ""
-#: config/mep/mep.c:6379
+#: config/mep/mep.c:6368
#, gcc-internal-format
msgid "too few arguments to %qE"
msgstr ""
-#: config/mep/mep.c:6384
+#: config/mep/mep.c:6373
#, gcc-internal-format
msgid "too many arguments to %qE"
msgstr ""
-#: config/mep/mep.c:6402
+#: config/mep/mep.c:6391
#, gcc-internal-format
msgid "argument %d of %qE must be an address"
msgstr ""
-#: config/mep/mep.c:7198
+#: config/mep/mep.c:7187
#, gcc-internal-format
msgid "2 byte cop instructions are not allowed in 64-bit VLIW mode"
msgstr ""
-#: config/mep/mep.c:7204
+#: config/mep/mep.c:7193
#, gcc-internal-format, gfc-internal-format
msgid "unexpected %d byte cop instruction"
msgstr ""
-#: config/microblaze/microblaze.c:1297
+#: config/microblaze/microblaze.c:1304
#, gcc-internal-format
msgid "%qs is an invalid argument to -mcpu="
msgstr ""
-#: config/microblaze/microblaze.c:1346
+#: config/microblaze/microblaze.c:1353
#, gcc-internal-format
msgid "-mxl-multiply-high can be used only with -mcpu=v6.00.a or greater"
msgstr ""
-#: config/microblaze/microblaze.c:1350
+#: config/microblaze/microblaze.c:1357
#, gcc-internal-format
msgid "-mxl-multiply-high requires -mno-xl-soft-mul"
msgstr ""
-#: config/mips/mips.c:1372 config/mips/mips.c:1374
+#: config/mips/mips.c:1244 config/mips/mips.c:1246
#, gcc-internal-format
msgid "%qs attribute only applies to functions"
msgstr ""
-#: config/mips/mips.c:1384
+#: config/mips/mips.c:1256
#, gcc-internal-format
msgid "%qE cannot have both %<mips16%> and %<nomips16%> attributes"
msgstr ""
-#: config/mips/mips.c:1406 config/mips/mips.c:1409
+#: config/mips/mips.c:1278 config/mips/mips.c:1281
#, gcc-internal-format
msgid "%qE redeclared with conflicting %qs attributes"
msgstr ""
-#: config/mips/mips.c:2923
+#: config/mips/mips.c:2803
#, gcc-internal-format
msgid "MIPS16 TLS"
msgstr ""
-#: config/mips/mips.c:6414
+#: config/mips/mips.c:6340
#, gcc-internal-format
msgid "cannot handle inconsistent calls to %qs"
msgstr ""
-#: config/mips/mips.c:9229
+#: config/mips/mips.c:9160
#, gcc-internal-format
msgid "the %<interrupt%> attribute requires a MIPS32r2 processor"
msgstr ""
-#: config/mips/mips.c:9231
+#: config/mips/mips.c:9162
#, gcc-internal-format
msgid "the %<interrupt%> attribute requires %<-msoft-float%>"
msgstr ""
-#: config/mips/mips.c:9233
+#: config/mips/mips.c:9164
#, gcc-internal-format
msgid "interrupt handlers cannot be MIPS16 functions"
msgstr ""
-#: config/mips/mips.c:13216
+#: config/mips/mips.c:13124
#, gcc-internal-format
msgid "invalid argument to built-in function"
msgstr ""
-#: config/mips/mips.c:13457
+#: config/mips/mips.c:13324
#, gcc-internal-format
msgid "built-in function %qE not supported for MIPS16"
msgstr ""
-#: config/mips/mips.c:14047
+#: config/mips/mips.c:13914
#, gcc-internal-format
msgid "%qs does not support MIPS16 code"
msgstr ""
-#: config/mips/mips.c:15268
+#: config/mips/mips.c:15157
#, gcc-internal-format
msgid "MIPS16 PIC for ABIs other than o32 and o64"
msgstr ""
-#: config/mips/mips.c:15271
+#: config/mips/mips.c:15160
#, gcc-internal-format
msgid "MIPS16 -mxgot code"
msgstr ""
-#: config/mips/mips.c:15274
+#: config/mips/mips.c:15163
#, gcc-internal-format
msgid "hard-float MIPS16 code for ABIs other than o32 and o64"
msgstr ""
-#: config/mips/mips.c:15410
-#, gcc-internal-format
-msgid "CPU names must be lower case"
-msgstr ""
-
-#: config/mips/mips.c:15571
+#: config/mips/mips.c:15353
#, gcc-internal-format
msgid ""
"%<-%s%> conflicts with the other architecture options, which specify a %s "
"processor"
msgstr ""
-#: config/mips/mips.c:15587
+#: config/mips/mips.c:15363
#, gcc-internal-format
msgid "%<-march=%s%> is not compatible with the selected ABI"
msgstr ""
-#: config/mips/mips.c:15602
+#: config/mips/mips.c:15378
#, gcc-internal-format
msgid "%<-mgp64%> used with a 32-bit processor"
msgstr ""
-#: config/mips/mips.c:15604
+#: config/mips/mips.c:15380
#, gcc-internal-format
msgid "%<-mgp32%> used with a 64-bit ABI"
msgstr ""
-#: config/mips/mips.c:15606
+#: config/mips/mips.c:15382
#, gcc-internal-format
msgid "%<-mgp64%> used with a 32-bit ABI"
msgstr ""
-#: config/mips/mips.c:15622 config/mips/mips.c:15624 config/mips/mips.c:15691
+#: config/mips/mips.c:15398 config/mips/mips.c:15400 config/mips/mips.c:15467
#, gcc-internal-format, gfc-internal-format
msgid "unsupported combination: %s"
msgstr ""
-#: config/mips/mips.c:15628
+#: config/mips/mips.c:15404
#, gcc-internal-format
msgid ""
"%<-mgp32%> and %<-mfp64%> can only be combined if the target supports the "
"mfhc1 and mthc1 instructions"
msgstr ""
-#: config/mips/mips.c:15631
+#: config/mips/mips.c:15407
#, gcc-internal-format
msgid "%<-mgp32%> and %<-mfp64%> can only be combined when using the o32 ABI"
msgstr ""
-#: config/mips/mips.c:15685
+#: config/mips/mips.c:15461
#, gcc-internal-format
msgid "the %qs architecture does not support branch-likely instructions"
msgstr ""
-#: config/mips/mips.c:15725
+#: config/mips/mips.c:15501
#, gcc-internal-format
msgid "%<-mno-gpopt%> needs %<-mexplicit-relocs%>"
msgstr ""
-#: config/mips/mips.c:15733 config/mips/mips.c:15736
+#: config/mips/mips.c:15509 config/mips/mips.c:15512
#, gcc-internal-format
msgid "cannot use small-data accesses for %qs"
msgstr ""
-#: config/mips/mips.c:15750
+#: config/mips/mips.c:15526
#, gcc-internal-format
msgid "%<-mips3d%> requires %<-mpaired-single%>"
msgstr ""
-#: config/mips/mips.c:15759
+#: config/mips/mips.c:15535
#, gcc-internal-format
msgid "%qs must be used with %qs"
msgstr ""
-#: config/mips/mips.c:15766
+#: config/mips/mips.c:15542
#, gcc-internal-format
msgid "the %qs architecture does not support paired-single instructions"
msgstr ""
-#: config/mips/mips.c:15772
+#: config/mips/mips.c:15548
#, gcc-internal-format
msgid "%qs requires a target that provides the %qs instruction"
msgstr ""
-#: config/mips/mips.c:15877
+#: config/mips/mips.c:15653
#, gcc-internal-format
msgid "%qs requires branch-likely instructions"
msgstr ""
-#: config/mips/mips.c:15881
+#: config/mips/mips.c:15657
#, gcc-internal-format
msgid "the %qs architecture does not support the synci instruction"
msgstr ""
-#: config/mips/mips.c:16353
+#: config/mips/mips.c:16122
#, gcc-internal-format
msgid "mips16 function profiling"
msgstr ""
-#: config/mmix/mmix.c:286
+#: config/mmix/mmix.c:276
#, gcc-internal-format, gfc-internal-format
msgid "-f%s not supported: ignored"
msgstr ""
-#: config/mmix/mmix.c:773
+#: config/mmix/mmix.c:768
#, gcc-internal-format
msgid "support for mode %qs"
msgstr ""
-#: config/mmix/mmix.c:787
+#: config/mmix/mmix.c:782
#, gcc-internal-format, gfc-internal-format
msgid ""
"too large function value type, needs %d registers, have only %d registers "
"for this"
msgstr ""
-#: config/mmix/mmix.c:966
+#: config/mmix/mmix.c:961
#, gcc-internal-format
msgid "function_profiler support for MMIX"
msgstr ""
-#: config/mmix/mmix.c:988
+#: config/mmix/mmix.c:985
#, gcc-internal-format
msgid "MMIX Internal: Last named vararg would not fit in a register"
msgstr ""
-#: config/mmix/mmix.c:1597 config/mmix/mmix.c:1621 config/mmix/mmix.c:1737
+#: config/mmix/mmix.c:1594 config/mmix/mmix.c:1618 config/mmix/mmix.c:1734
#, gcc-internal-format, gfc-internal-format
msgid "MMIX Internal: Bad register: %d"
msgstr ""
#. Presumably there's a missing case above if we get here.
-#: config/mmix/mmix.c:1729
+#: config/mmix/mmix.c:1726
#, gcc-internal-format
msgid "MMIX Internal: Missing %qc case in mmix_print_operand"
msgstr ""
-#: config/mmix/mmix.c:2015
+#: config/mmix/mmix.c:2012
#, gcc-internal-format
msgid "stack frame not a multiple of 8 bytes: %wd"
msgstr ""
-#: config/mmix/mmix.c:2249
+#: config/mmix/mmix.c:2246
#, gcc-internal-format
msgid "stack frame not a multiple of octabyte: %wd"
msgstr ""
-#: config/mmix/mmix.c:2533 config/mmix/mmix.c:2597
+#: config/mmix/mmix.c:2530 config/mmix/mmix.c:2594
#, gcc-internal-format, gfc-internal-format
msgid "MMIX Internal: %s is not a shiftable int"
msgstr ""
-#: config/mn10300/mn10300.c:149
+#: config/mn10300/mn10300.c:111
#, gcc-internal-format
msgid "-mtune= expects mn10300, am33, am33-2, or am34"
msgstr ""
-#: config/pa/pa.c:543
+#: config/pa/pa.c:497
#, gcc-internal-format
msgid "PIC code generation is not supported in the portable runtime model"
msgstr ""
-#: config/pa/pa.c:548
+#: config/pa/pa.c:502
#, gcc-internal-format
msgid "PIC code generation is not compatible with fast indirect calls"
msgstr ""
-#: config/pa/pa.c:553
+#: config/pa/pa.c:507
#, gcc-internal-format
msgid "-g is only supported when using GAS on this processor,"
msgstr ""
-#: config/pa/pa.c:554
+#: config/pa/pa.c:508
#, gcc-internal-format
msgid "-g option disabled"
msgstr ""
-#: config/pa/pa.c:8658
+#: config/pa/pa.c:8573
#, gcc-internal-format, gfc-internal-format
msgid ""
"alignment (%u) for %s exceeds maximum alignment for global common data. "
@@ -23567,98 +23904,98 @@
msgid "-munix=98 option required for C89 Amendment 1 features.\n"
msgstr ""
-#: config/picochip/picochip.c:438
+#: config/picochip/picochip.c:421
#, gcc-internal-format, gfc-internal-format
msgid "invalid AE type specified (%s)"
msgstr ""
-#: config/picochip/picochip.c:461
+#: config/picochip/picochip.c:444
#, gcc-internal-format, gfc-internal-format
msgid "invalid mul type specified (%s) - expected mac, mul or none"
msgstr ""
-#: config/picochip/picochip.c:756
+#: config/picochip/picochip.c:738
#, gcc-internal-format, gfc-internal-format
msgid "unexpected mode %s encountered in picochip_emit_save_register"
msgstr ""
-#: config/picochip/picochip.c:923
+#: config/picochip/picochip.c:906
#, gcc-internal-format, gfc-internal-format
msgid "defaulting to stack for %s register creation"
msgstr ""
-#: config/picochip/picochip.c:1607
+#: config/picochip/picochip.c:1591
#, gcc-internal-format
msgid "LCFI labels have already been deferred"
msgstr ""
-#: config/picochip/picochip.c:1670
+#: config/picochip/picochip.c:1654
#, gcc-internal-format
msgid "LM label has already been deferred"
msgstr ""
-#: config/picochip/picochip.c:1680
+#: config/picochip/picochip.c:1664
#, gcc-internal-format
msgid "LCFI labels have already been deferred."
msgstr ""
-#: config/picochip/picochip.c:1962
+#: config/picochip/picochip.c:1939
#, gcc-internal-format, gfc-internal-format
msgid "picochip_asm_output_opcode - Found multiple lines in VLIW packet %s"
msgstr ""
-#: config/picochip/picochip.c:2065
+#: config/picochip/picochip.c:2042
#, gcc-internal-format
msgid "picochip_asm_output_opcode - can%'t output unknown operator %c"
msgstr ""
-#: config/picochip/picochip.c:2316 config/picochip/picochip.c:2376
+#: config/picochip/picochip.c:2293 config/picochip/picochip.c:2353
#, gcc-internal-format
msgid "%s: at least one operand can%'t be handled"
msgstr ""
-#: config/picochip/picochip.c:2457
+#: config/picochip/picochip.c:2434
#, gcc-internal-format, gfc-internal-format
msgid "unknown short branch in %s (type %d)"
msgstr ""
-#: config/picochip/picochip.c:2494
+#: config/picochip/picochip.c:2471
#, gcc-internal-format, gfc-internal-format
msgid "unknown long branch in %s (type %d)"
msgstr ""
-#: config/picochip/picochip.c:2534 config/picochip/picochip.c:2602
+#: config/picochip/picochip.c:2511 config/picochip/picochip.c:2579
#, gcc-internal-format, gfc-internal-format
msgid "PUT uses port array index %d, which is out of range [%d..%d)"
msgstr ""
-#: config/picochip/picochip.c:2568
+#: config/picochip/picochip.c:2545
#, gcc-internal-format, gfc-internal-format
msgid "GET uses port array index %d, which is out of range [%d..%d)"
msgstr ""
-#: config/picochip/picochip.c:3439
+#: config/picochip/picochip.c:3424
#, gcc-internal-format, gfc-internal-format
msgid "too many ALU instructions emitted (%d)"
msgstr ""
-#: config/picochip/picochip.c:4071 config/picochip/picochip.c:4164
+#: config/picochip/picochip.c:4056 config/picochip/picochip.c:4149
#, gcc-internal-format, gfc-internal-format
msgid "%s: Second source operand is not a constant"
msgstr ""
-#: config/picochip/picochip.c:4074 config/picochip/picochip.c:4125
-#: config/picochip/picochip.c:4167
+#: config/picochip/picochip.c:4059 config/picochip/picochip.c:4110
+#: config/picochip/picochip.c:4152
#, gcc-internal-format, gfc-internal-format
msgid "%s: Third source operand is not a constant"
msgstr ""
-#: config/picochip/picochip.c:4128
+#: config/picochip/picochip.c:4113
#, gcc-internal-format, gfc-internal-format
msgid "%s: Fourth source operand is not a constant"
msgstr ""
-#: config/picochip/picochip.c:4423
+#: config/picochip/picochip.c:4411
#, gcc-internal-format, gfc-internal-format
msgid "%s (disable warning using -mno-inefficient-warnings)"
msgstr ""
@@ -23722,416 +24059,330 @@
msgid "junk at end of #pragma longcall"
msgstr ""
-#: config/rs6000/rs6000-c.c:3473
+#: config/rs6000/rs6000-c.c:3476
#, gcc-internal-format, gfc-internal-format
msgid "%s only accepts %d arguments"
msgstr ""
-#: config/rs6000/rs6000-c.c:3478
+#: config/rs6000/rs6000-c.c:3481
#, gcc-internal-format, gfc-internal-format
msgid "%s only accepts 1 argument"
msgstr ""
-#: config/rs6000/rs6000-c.c:3483
+#: config/rs6000/rs6000-c.c:3486
#, gcc-internal-format, gfc-internal-format
msgid "%s only accepts 2 arguments"
msgstr ""
-#: config/rs6000/rs6000-c.c:3548
+#: config/rs6000/rs6000-c.c:3551
#, gcc-internal-format
msgid "vec_extract only accepts 2 arguments"
msgstr ""
-#: config/rs6000/rs6000-c.c:3624
+#: config/rs6000/rs6000-c.c:3627
#, gcc-internal-format
msgid "vec_insert only accepts 3 arguments"
msgstr ""
-#: config/rs6000/rs6000-c.c:3727
+#: config/rs6000/rs6000-c.c:3730
#, gcc-internal-format
msgid "passing arg %d of %qE discards qualifiers frompointer target type"
msgstr ""
-#: config/rs6000/rs6000-c.c:3770
+#: config/rs6000/rs6000-c.c:3773
#, gcc-internal-format
msgid "invalid parameter combination for AltiVec intrinsic"
msgstr ""
-#: config/rs6000/rs6000.c:2533
+#: config/rs6000/rs6000.c:2370
#, gcc-internal-format
msgid "-mrecip requires -ffinite-math or -ffast-math"
msgstr ""
-#: config/rs6000/rs6000.c:2535
+#: config/rs6000/rs6000.c:2372
#, gcc-internal-format
msgid "-mrecip requires -fno-trapping-math or -ffast-math"
msgstr ""
-#: config/rs6000/rs6000.c:2537
+#: config/rs6000/rs6000.c:2374
#, gcc-internal-format
msgid "-mrecip requires -freciprocal-math or -ffast-math"
msgstr ""
-#: config/rs6000/rs6000.c:2631
+#: config/rs6000/rs6000.c:2468
#, gcc-internal-format
msgid "-m64 requires PowerPC64 architecture, enabling"
msgstr ""
-#: config/rs6000/rs6000.c:2756
-#, gcc-internal-format
-msgid "AltiVec not supported in this target"
-msgstr ""
-
-#: config/rs6000/rs6000.c:2758
-#, gcc-internal-format
-msgid "SPE not supported in this target"
-msgstr ""
-
-#: config/rs6000/rs6000.c:2785
-#, gcc-internal-format
-msgid "-mmultiple is not supported on little endian systems"
-msgstr ""
-
-#: config/rs6000/rs6000.c:2792
-#, gcc-internal-format
-msgid "-mstring is not supported on little endian systems"
-msgstr ""
-
-#: config/rs6000/rs6000.c:2898
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown vectorization library ABI type (%s) for -mveclibabi= switch"
-msgstr ""
-
-#: config/rs6000/rs6000.c:2910
-#, gcc-internal-format
-msgid "target attribute or pragma changes long double size"
-msgstr ""
-
-#: config/rs6000/rs6000.c:2931 config/rs6000/rs6000.c:2946
-#, gcc-internal-format
-msgid "target attribute or pragma changes AltiVec ABI"
-msgstr ""
-
-#: config/rs6000/rs6000.c:2963
-#, gcc-internal-format
-msgid "target attribute or pragma changes darwin64 ABI"
-msgstr ""
-
-#: config/rs6000/rs6000.c:3004
-#, gcc-internal-format
-msgid "target attribute or pragma changes SPE ABI"
-msgstr ""
-
-#: config/rs6000/rs6000.c:3326
-#, gcc-internal-format
-msgid "target attribute or pragma changes single precision floating point"
-msgstr ""
-
-#: config/rs6000/rs6000.c:3329
-#, gcc-internal-format
-msgid "target attribute or pragma changes double precision floating point"
-msgstr ""
-
-#: config/rs6000/rs6000.c:3376
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown option for -mrecip=%s"
-msgstr ""
-
-#: config/rs6000/rs6000.c:3843
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown -m%s= option specified: '%s'"
-msgstr ""
-
-#: config/rs6000/rs6000.c:3878
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown value %s for -mfpu"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4273
-#, gcc-internal-format, gfc-internal-format
-msgid "invalid option for -mcmodel: '%s'"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4403
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown -mdebug-%s switch"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4476
-#, gcc-internal-format, gfc-internal-format
-msgid "not configured for ABI: '%s'"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4489
-#, gcc-internal-format
-msgid "using darwin64 ABI"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4494
-#, gcc-internal-format
-msgid "using old darwin ABI"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4501
-#, gcc-internal-format
-msgid "using IBM extended precision long double"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4507
-#, gcc-internal-format
-msgid "using IEEE extended precision long double"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4512
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown ABI specified: '%s'"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4521
-#, gcc-internal-format, gfc-internal-format
-msgid "bad value (%s) for -mcpu"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4528
-#, gcc-internal-format, gfc-internal-format
-msgid "bad value (%s) for -mtune"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4539
-#, gcc-internal-format
-msgid ""
-"unknown -mtraceback arg %qs; expecting %<full%>, %<partial%> or %<none%>"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4553
-#, gcc-internal-format, gfc-internal-format
-msgid "invalid option for -mfloat-gprs: '%s'"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4563
-#, gcc-internal-format, gfc-internal-format
-msgid "unknown switch -mlong-double-%s"
-msgstr ""
-
-#: config/rs6000/rs6000.c:4584
+#: config/rs6000/rs6000.c:2527
#, gcc-internal-format
msgid ""
"-malign-power is not supported for 64-bit Darwin; it is incompatible with "
"the installed C and C++ libraries"
msgstr ""
-#: config/rs6000/rs6000.c:4592
+#: config/rs6000/rs6000.c:2533
+#, gcc-internal-format
+msgid "not configured for SPE ABI"
+msgstr ""
+
+#: config/rs6000/rs6000.c:2609
+#, gcc-internal-format
+msgid "AltiVec not supported in this target"
+msgstr ""
+
+#: config/rs6000/rs6000.c:2611
+#, gcc-internal-format
+msgid "SPE not supported in this target"
+msgstr ""
+
+#: config/rs6000/rs6000.c:2638
+#, gcc-internal-format
+msgid "-mmultiple is not supported on little endian systems"
+msgstr ""
+
+#: config/rs6000/rs6000.c:2645
+#, gcc-internal-format
+msgid "-mstring is not supported on little endian systems"
+msgstr ""
+
+#: config/rs6000/rs6000.c:2751
#, gcc-internal-format, gfc-internal-format
-msgid "unknown -malign-XXXXX option specified: '%s'"
+msgid "unknown vectorization library ABI type (%s) for -mveclibabi= switch"
msgstr ""
-#: config/rs6000/rs6000.c:4599
+#: config/rs6000/rs6000.c:2763
#, gcc-internal-format
-msgid "-msingle-float option equivalent to -mhard-float"
+msgid "target attribute or pragma changes long double size"
msgstr ""
-#: config/rs6000/rs6000.c:4615
+#: config/rs6000/rs6000.c:2784 config/rs6000/rs6000.c:2799
#, gcc-internal-format
-msgid "-msimple-fpu option ignored"
+msgid "target attribute or pragma changes AltiVec ABI"
msgstr ""
-#: config/rs6000/rs6000.c:7991
+#: config/rs6000/rs6000.c:2816
+#, gcc-internal-format
+msgid "target attribute or pragma changes darwin64 ABI"
+msgstr ""
+
+#: config/rs6000/rs6000.c:2857
+#, gcc-internal-format
+msgid "target attribute or pragma changes SPE ABI"
+msgstr ""
+
+#: config/rs6000/rs6000.c:3179
+#, gcc-internal-format
+msgid "target attribute or pragma changes single precision floating point"
+msgstr ""
+
+#: config/rs6000/rs6000.c:3182
+#, gcc-internal-format
+msgid "target attribute or pragma changes double precision floating point"
+msgstr ""
+
+#: config/rs6000/rs6000.c:3229
+#, gcc-internal-format, gfc-internal-format
+msgid "unknown option for -mrecip=%s"
+msgstr ""
+
+#: config/rs6000/rs6000.c:7399
#, gcc-internal-format
msgid ""
"GCC vector returned by reference: non-standard ABI extension with no "
"compatibility guarantee"
msgstr ""
-#: config/rs6000/rs6000.c:8129
+#: config/rs6000/rs6000.c:7536
#, gcc-internal-format
msgid ""
"cannot return value in vector register because altivec instructions are "
"disabled, use -maltivec to enable them"
msgstr ""
-#: config/rs6000/rs6000.c:8473
+#: config/rs6000/rs6000.c:7879
#, gcc-internal-format
msgid ""
"cannot pass argument in vector register because altivec instructions are "
"disabled, use -maltivec to enable them"
msgstr ""
-#: config/rs6000/rs6000.c:9397
+#: config/rs6000/rs6000.c:8805
#, gcc-internal-format
msgid ""
"GCC vector passed by reference: non-standard ABI extension with no "
"compatibility guarantee"
msgstr ""
-#: config/rs6000/rs6000.c:10028
+#: config/rs6000/rs6000.c:9436
#, gcc-internal-format, gfc-internal-format
msgid "internal error: builtin function to %s already processed"
msgstr ""
-#: config/rs6000/rs6000.c:10975
+#: config/rs6000/rs6000.c:10383
#, gcc-internal-format
msgid "argument 1 must be a 5-bit signed literal"
msgstr ""
-#: config/rs6000/rs6000.c:11078 config/rs6000/rs6000.c:12096
+#: config/rs6000/rs6000.c:10486 config/rs6000/rs6000.c:11504
#, gcc-internal-format
msgid "argument 2 must be a 5-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:11117
+#: config/rs6000/rs6000.c:10525
#, gcc-internal-format
msgid "argument 1 of __builtin_altivec_predicate must be a constant"
msgstr ""
-#: config/rs6000/rs6000.c:11169
+#: config/rs6000/rs6000.c:10577
#, gcc-internal-format
msgid "argument 1 of __builtin_altivec_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:11426
+#: config/rs6000/rs6000.c:10834
#, gcc-internal-format
msgid "argument 3 must be a 4-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:11444
+#: config/rs6000/rs6000.c:10852
#, gcc-internal-format
msgid "argument 3 must be a 2-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:11456
+#: config/rs6000/rs6000.c:10864
#, gcc-internal-format
msgid "argument 3 must be a 1-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:11639
+#: config/rs6000/rs6000.c:11047
#, gcc-internal-format
msgid "argument to %qs must be a 2-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:11783
+#: config/rs6000/rs6000.c:11191
#, gcc-internal-format
msgid "unresolved overload for Altivec builtin %qF"
msgstr ""
-#: config/rs6000/rs6000.c:11887
+#: config/rs6000/rs6000.c:11295
#, gcc-internal-format
msgid "argument to dss must be a 2-bit unsigned literal"
msgstr ""
-#: config/rs6000/rs6000.c:12216
+#: config/rs6000/rs6000.c:11624
#, gcc-internal-format
msgid "argument 1 of __builtin_paired_predicate must be a constant"
msgstr ""
-#: config/rs6000/rs6000.c:12263
+#: config/rs6000/rs6000.c:11671
#, gcc-internal-format
msgid "argument 1 of __builtin_paired_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:12288
+#: config/rs6000/rs6000.c:11696
#, gcc-internal-format
msgid "argument 1 of __builtin_spe_predicate must be a constant"
msgstr ""
-#: config/rs6000/rs6000.c:12360
+#: config/rs6000/rs6000.c:11768
#, gcc-internal-format
msgid "argument 1 of __builtin_spe_predicate is out of range"
msgstr ""
-#: config/rs6000/rs6000.c:13741
+#: config/rs6000/rs6000.c:13135
#, gcc-internal-format, gfc-internal-format
msgid "internal error: builtin function %s had no type"
msgstr ""
-#: config/rs6000/rs6000.c:13748
+#: config/rs6000/rs6000.c:13142
#, gcc-internal-format, gfc-internal-format
msgid "internal error: builtin function %s had an unexpected return type %s"
msgstr ""
-#: config/rs6000/rs6000.c:13761
+#: config/rs6000/rs6000.c:13158
#, gcc-internal-format, gfc-internal-format
msgid ""
"internal error: builtin function %s, argument %d had unexpected argument "
"type %s"
msgstr ""
-#: config/rs6000/rs6000.c:19652
+#: config/rs6000/rs6000.c:19127
#, gcc-internal-format
msgid "stack frame too large"
msgstr ""
-#: config/rs6000/rs6000.c:20176
+#: config/rs6000/rs6000.c:19651
#, gcc-internal-format
msgid "out-of-line save/restore routines not supported on Darwin"
msgstr ""
-#: config/rs6000/rs6000.c:23048
+#: config/rs6000/rs6000.c:22524
#, gcc-internal-format
msgid "no profiling of 64-bit code for this ABI"
msgstr ""
-#: config/rs6000/rs6000.c:25086
+#: config/rs6000/rs6000.c:24562
#, gcc-internal-format
msgid "use of %<long double%> in AltiVec types is invalid"
msgstr ""
-#: config/rs6000/rs6000.c:25088
+#: config/rs6000/rs6000.c:24564
#, gcc-internal-format
msgid "use of boolean types in AltiVec types is invalid"
msgstr ""
-#: config/rs6000/rs6000.c:25090
+#: config/rs6000/rs6000.c:24566
#, gcc-internal-format
msgid "use of %<complex%> in AltiVec types is invalid"
msgstr ""
-#: config/rs6000/rs6000.c:25092
+#: config/rs6000/rs6000.c:24568
#, gcc-internal-format
msgid "use of decimal floating point types in AltiVec types is invalid"
msgstr ""
-#: config/rs6000/rs6000.c:25098
+#: config/rs6000/rs6000.c:24574
#, gcc-internal-format
msgid ""
"use of %<long%> in AltiVec types is invalid for 64-bit code without -mvsx"
msgstr ""
-#: config/rs6000/rs6000.c:25101
+#: config/rs6000/rs6000.c:24577
#, gcc-internal-format
msgid "use of %<long%> in AltiVec types is deprecated; use %<int%>"
msgstr ""
-#: config/rs6000/rs6000.c:25106
+#: config/rs6000/rs6000.c:24582
#, gcc-internal-format
msgid "use of %<long long%> in AltiVec types is invalid without -mvsx"
msgstr ""
-#: config/rs6000/rs6000.c:25109
+#: config/rs6000/rs6000.c:24585
#, gcc-internal-format
msgid "use of %<double%> in AltiVec types is invalid without -mvsx"
msgstr ""
-#: config/rs6000/rs6000.c:27585
+#: config/rs6000/rs6000.c:27079
#, gcc-internal-format, gfc-internal-format
msgid "emitting microcode insn %s\t[%s] #%d"
msgstr ""
-#: config/rs6000/rs6000.c:27589
+#: config/rs6000/rs6000.c:27083
#, gcc-internal-format, gfc-internal-format
msgid "emitting conditional microcode insn %s\t[%s] #%d"
msgstr ""
-#: config/rs6000/rs6000.c:27792
+#: config/rs6000/rs6000.c:27286
#, gcc-internal-format, gfc-internal-format
msgid "invalid cpu \"%s\" for %s\"%s\"%s"
msgstr ""
-#: config/rs6000/rs6000.c:27795
+#: config/rs6000/rs6000.c:27289
#, gcc-internal-format, gfc-internal-format
msgid "%s\"%s\"%s is not allowed"
msgstr ""
-#: config/rs6000/rs6000.c:27797
+#: config/rs6000/rs6000.c:27291
#, gcc-internal-format, gfc-internal-format
msgid "%s\"%s\"%s is invalid"
msgstr ""
@@ -24181,7 +24432,7 @@
msgid "E500 and FPRs not supported"
msgstr ""
-#: config/rs6000/eabispe.h:41 config/rs6000/linuxspe.h:41
+#: config/rs6000/eabispe.h:38 config/rs6000/linuxspe.h:38
#, gcc-internal-format
msgid "-m64 not supported in this configuration"
msgstr ""
@@ -24208,7 +24459,7 @@
#. Number of bytes into the frame return addresses can be found. See
#. rs6000_stack_info in rs6000.c for more information on how the different
#. abi's store the return address.
-#: config/rs6000/rs6000.h:1666
+#: config/rs6000/rs6000.h:1615
#, gcc-internal-format
msgid "RETURN_ADDRESS_OFFSET not supported"
msgstr ""
@@ -24270,111 +24521,91 @@
msgid "-m%s not supported in this configuration"
msgstr ""
-#: config/rx/rx.c:509
+#: config/rx/rx.c:519
#, gcc-internal-format, gfc-internal-format
msgid "unreocgnized control register number: %d - using 'psw'"
msgstr ""
-#: config/rx/rx.c:2107
+#: config/rx/rx.c:2141
#, gcc-internal-format, gfc-internal-format
msgid "__builtin_rx_%s takes 'C', 'Z', 'S', 'O', 'I', or 'U'"
msgstr ""
-#: config/rx/rx.c:2109
+#: config/rx/rx.c:2143
#, gcc-internal-format
msgid "use __builtin_rx_mvtc (0, ... ) to write arbitrary values to PSW"
msgstr ""
-#: config/rx/rx.c:2164 config/xtensa/xtensa.c:3129 config/xtensa/xtensa.c:3169
+#: config/rx/rx.c:2198 config/xtensa/xtensa.c:3123 config/xtensa/xtensa.c:3163
#, gcc-internal-format
msgid "bad builtin code"
msgstr ""
-#: config/rx/rx.c:2303
-#, gcc-internal-format, gfc-internal-format
-msgid "unrecognized argument '%s' to -mcpu= option"
-msgstr ""
-
-#: config/rx/rx.c:2308
-#, gcc-internal-format
-msgid "the RX200 cpu does not have FPU hardware"
-msgstr ""
-
-#: config/rx/rx.c:2341
+#: config/rx/rx.c:2309
#, gcc-internal-format
msgid "RX FPU instructions do not support NaNs and infinities"
msgstr ""
-#: config/s390/s390.c:1569
-#, gcc-internal-format
-msgid "stack guard value must be an exact power of 2"
-msgstr ""
-
-#: config/s390/s390.c:1574
-#, gcc-internal-format
-msgid "stack size must be an exact power of 2"
-msgstr ""
-
-#: config/s390/s390.c:1623
+#: config/s390/s390.c:1539
#, gcc-internal-format, gfc-internal-format
msgid "z/Architecture mode not supported on %s"
msgstr ""
-#: config/s390/s390.c:1625
+#: config/s390/s390.c:1541
#, gcc-internal-format
msgid "64-bit ABI not supported in ESA/390 mode"
msgstr ""
-#: config/s390/s390.c:1632
+#: config/s390/s390.c:1548
#, gcc-internal-format, gfc-internal-format
msgid "hardware decimal floating point instructions not available on %s"
msgstr ""
-#: config/s390/s390.c:1635
+#: config/s390/s390.c:1551
#, gcc-internal-format
msgid ""
"hardware decimal floating point instructions not available in ESA/390 mode"
msgstr ""
-#: config/s390/s390.c:1645
+#: config/s390/s390.c:1561
#, gcc-internal-format
msgid "-mhard-dfp can%'t be used in conjunction with -msoft-float"
msgstr ""
-#: config/s390/s390.c:1669
+#: config/s390/s390.c:1585
#, gcc-internal-format
msgid ""
"-mbackchain -mpacked-stack -mhard-float are not supported in combination"
msgstr ""
-#: config/s390/s390.c:1675
+#: config/s390/s390.c:1591
#, gcc-internal-format
msgid "stack size must be greater than the stack guard value"
msgstr ""
-#: config/s390/s390.c:1677
+#: config/s390/s390.c:1593
#, gcc-internal-format
msgid "stack size must not be greater than 64k"
msgstr ""
-#: config/s390/s390.c:1680
+#: config/s390/s390.c:1596
#, gcc-internal-format
msgid "-mstack-guard implies use of -mstack-size"
msgstr ""
-#: config/s390/s390.c:7418
+#: config/s390/s390.c:7342
#, gcc-internal-format
msgid "total size of local variables exceeds architecture limit"
msgstr ""
-#: config/s390/s390.c:8119
+#: config/s390/s390.c:8043
#, gcc-internal-format
msgid ""
"frame size of function %qs is %wd bytes exceeding user provided stack limit "
"of %d bytes. An unconditional trap is added."
msgstr ""
-#: config/s390/s390.c:8134
+#: config/s390/s390.c:8058
#, gcc-internal-format
msgid ""
"frame size of function %qs is %wd bytes which is more than half the stack "
@@ -24382,81 +24613,81 @@
"function."
msgstr ""
-#: config/s390/s390.c:8162
+#: config/s390/s390.c:8086
#, gcc-internal-format
msgid "frame size of %qs is %wd bytes"
msgstr ""
-#: config/s390/s390.c:8166
+#: config/s390/s390.c:8090
#, gcc-internal-format
msgid "%qs uses dynamic stack allocation"
msgstr ""
-#: config/sh/sh.c:947
+#: config/sh/sh.c:772
#, gcc-internal-format
msgid "ignoring -fschedule-insns because of exception handling bug"
msgstr ""
-#: config/sh/sh.c:968
+#: config/sh/sh.c:793
#, gcc-internal-format
msgid ""
"unwind tables currently require either a frame pointer or -maccumulate-"
"outgoing-args for correctness"
msgstr ""
-#: config/sh/sh.c:7800
+#: config/sh/sh.c:7641
#, gcc-internal-format
msgid "__builtin_saveregs not supported by this subtarget"
msgstr ""
-#: config/sh/sh.c:8957
+#: config/sh/sh.c:8812
#, gcc-internal-format
msgid "%qE attribute only applies to interrupt functions"
msgstr ""
-#: config/sh/sh.c:9015
+#: config/sh/sh.c:8870
#, gcc-internal-format
msgid "%qE attribute is supported only for SH2A"
msgstr ""
-#: config/sh/sh.c:9045
+#: config/sh/sh.c:8900
#, gcc-internal-format
msgid "attribute interrupt_handler is not compatible with -m5-compact"
msgstr ""
-#: config/sh/sh.c:9062
+#: config/sh/sh.c:8917
#, gcc-internal-format
msgid "%qE attribute only applies to SH2A"
msgstr ""
-#: config/sh/sh.c:9084
+#: config/sh/sh.c:8939
#, gcc-internal-format
msgid "%qE attribute argument should be between 0 to 255"
msgstr ""
#. The argument must be a constant string.
-#: config/sh/sh.c:9157
+#: config/sh/sh.c:9012
#, gcc-internal-format
msgid "%qE attribute argument not a string constant"
msgstr ""
-#: config/sh/sh.c:11733
+#: config/sh/sh.c:11592
#, gcc-internal-format
msgid "r0 needs to be available as a call-clobbered register"
msgstr ""
-#: config/sh/sh.c:11754
+#: config/sh/sh.c:11613
#, gcc-internal-format
msgid "need a second call-clobbered general purpose register"
msgstr ""
-#: config/sh/sh.c:11762
+#: config/sh/sh.c:11621
#, gcc-internal-format
msgid "need a call-clobbered target register"
msgstr ""
#. FIXME
-#: config/sh/netbsd-elf.h:94
+#: config/sh/netbsd-elf.h:75
#, gcc-internal-format
msgid "unimplemented-shmedia profiling"
msgstr ""
@@ -24467,26 +24698,31 @@
msgid "-mrelax is only supported for RTP PIC"
msgstr ""
-#: config/sparc/sparc.c:805
+#: config/sparc/sparc.c:768
#, gcc-internal-format, gfc-internal-format
msgid "%s is not supported by this configuration"
msgstr ""
-#: config/sparc/sparc.c:812
+#: config/sparc/sparc.c:775
#, gcc-internal-format
msgid "-mlong-double-64 not allowed with -m64"
msgstr ""
-#: config/sparc/sparc.c:832
+#: config/sparc/sparc.c:795
#, gcc-internal-format, gfc-internal-format
msgid "bad value (%s) for -mcmodel= switch"
msgstr ""
-#: config/sparc/sparc.c:837
+#: config/sparc/sparc.c:800
#, gcc-internal-format
msgid "-mcmodel= is not supported on 32 bit systems"
msgstr ""
+#: config/sparc/sparc.c:807
+#, gcc-internal-format
+msgid "-fcall-saved-REG is not supported for out registers"
+msgstr ""
+
#: config/spu/spu-c.c:135
#, gcc-internal-format, gfc-internal-format
msgid "insufficient arguments to overloaded function %s"
@@ -24502,37 +24738,37 @@
msgid "parameter list does not match a valid signature for %s()"
msgstr ""
-#: config/spu/spu.c:551
+#: config/spu/spu.c:552
#, gcc-internal-format, gfc-internal-format
msgid "bad value (%s) for -march= switch"
msgstr ""
-#: config/spu/spu.c:562
+#: config/spu/spu.c:563
#, gcc-internal-format, gfc-internal-format
msgid "bad value (%s) for -mtune= switch"
msgstr ""
-#: config/spu/spu.c:5391 config/spu/spu.c:5394
+#: config/spu/spu.c:5398 config/spu/spu.c:5401
#, gcc-internal-format
msgid "creating run-time relocation for %qD"
msgstr ""
-#: config/spu/spu.c:5399 config/spu/spu.c:5401
+#: config/spu/spu.c:5406 config/spu/spu.c:5408
#, gcc-internal-format
msgid "creating run-time relocation"
msgstr ""
-#: config/spu/spu.c:6473
+#: config/spu/spu.c:6480
#, gcc-internal-format, gfc-internal-format
msgid "%s expects an integer literal in the range [%d, %d]"
msgstr ""
-#: config/spu/spu.c:6493
+#: config/spu/spu.c:6500
#, gcc-internal-format
msgid "%s expects an integer literal in the range [%d, %d]. (%wd)"
msgstr ""
-#: config/spu/spu.c:6522
+#: config/spu/spu.c:6529
#, gcc-internal-format, gfc-internal-format
msgid "%d least significant bits of %s are ignored"
msgstr ""
@@ -24547,22 +24783,22 @@
msgid "function_profiler support"
msgstr ""
-#: config/stormy16/stormy16.c:1279
+#: config/stormy16/stormy16.c:1283
#, gcc-internal-format
msgid "cannot use va_start in interrupt function"
msgstr ""
-#: config/stormy16/stormy16.c:1846
+#: config/stormy16/stormy16.c:1850
#, gcc-internal-format, gfc-internal-format
msgid "switch statement of size %lu entries too large"
msgstr ""
-#: config/stormy16/stormy16.c:2218
+#: config/stormy16/stormy16.c:2222
#, gcc-internal-format
msgid "%<__BELOW100__%> attribute only applies to variables"
msgstr ""
-#: config/stormy16/stormy16.c:2225
+#: config/stormy16/stormy16.c:2229
#, gcc-internal-format
msgid "__BELOW100__ attribute not allowed with auto storage class"
msgstr ""
@@ -24637,579 +24873,598 @@
msgid "junk at end of #pragma ghs endzda"
msgstr ""
-#: config/v850/v850.c:93
-#, gcc-internal-format
-msgid "value passed in %qs is too large"
-msgstr ""
-
-#: config/v850/v850.c:2175
+#: config/v850/v850.c:2093
#, gcc-internal-format
msgid "data area attributes cannot be specified for local variables"
msgstr ""
-#: config/v850/v850.c:2186
+#: config/v850/v850.c:2104
#, gcc-internal-format
msgid "data area of %q+D conflicts with previous declaration"
msgstr ""
-#: config/v850/v850.c:2317
+#: config/v850/v850.c:2235
#, gcc-internal-format, gfc-internal-format
msgid "bogus JR construction: %d"
msgstr ""
-#: config/v850/v850.c:2335 config/v850/v850.c:2442
+#: config/v850/v850.c:2253 config/v850/v850.c:2360
#, gcc-internal-format, gfc-internal-format
msgid "bad amount of stack space removal: %d"
msgstr ""
-#: config/v850/v850.c:2422
+#: config/v850/v850.c:2340
#, gcc-internal-format, gfc-internal-format
msgid "bogus JARL construction: %d"
msgstr ""
-#: config/v850/v850.c:2719
+#: config/v850/v850.c:2637
#, gcc-internal-format, gfc-internal-format
msgid "bogus DISPOSE construction: %d"
msgstr ""
-#: config/v850/v850.c:2738
+#: config/v850/v850.c:2656
#, gcc-internal-format, gfc-internal-format
msgid "too much stack space to dispose of: %d"
msgstr ""
-#: config/v850/v850.c:2840
+#: config/v850/v850.c:2758
#, gcc-internal-format, gfc-internal-format
msgid "bogus PREPEARE construction: %d"
msgstr ""
-#: config/v850/v850.c:2857
+#: config/v850/v850.c:2775
#, gcc-internal-format, gfc-internal-format
msgid "too much stack space to prepare: %d"
msgstr ""
-#: config/xtensa/xtensa.c:2178
+#: config/xtensa/xtensa.c:2172
#, gcc-internal-format
msgid "boolean registers required for the floating-point option"
msgstr ""
-#: config/xtensa/xtensa.c:2213
+#: config/xtensa/xtensa.c:2207
#, gcc-internal-format, gfc-internal-format
msgid "-f%s is not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.c:2220
+#: config/xtensa/xtensa.c:2214
#, gcc-internal-format
msgid "PIC is required but not supported with CONST16 instructions"
msgstr ""
-#: config/xtensa/xtensa.c:3299
+#: config/xtensa/xtensa.c:3293
#, gcc-internal-format
msgid "only uninitialized variables can be placed in a .bss section"
msgstr ""
-#: ada/gcc-interface/misc.c:137
+#: ada/gcc-interface/misc.c:130
#, gcc-internal-format
msgid "%<-gnat%> misspelled as %<-gant%>"
msgstr ""
-#: ada/gcc-interface/misc.c:239
+#: ada/gcc-interface/misc.c:231
#, gcc-internal-format
msgid "-fexcess-precision=standard for Ada"
msgstr ""
-#: ada/gcc-interface/utils.c:5095 ada/gcc-interface/utils.c:5273
-#: ada/gcc-interface/utils.c:5315 ada/gcc-interface/utils.c:5375
+#: ada/gcc-interface/utils.c:5162 ada/gcc-interface/utils.c:5337
+#: ada/gcc-interface/utils.c:5379 ada/gcc-interface/utils.c:5433
#, gcc-internal-format
msgid "%qs attribute ignored"
msgstr ""
-#: ada/gcc-interface/utils.c:5213
+#: ada/gcc-interface/utils.c:5280
#, gcc-internal-format
msgid "%qs attribute requires prototypes with named arguments"
msgstr ""
-#: ada/gcc-interface/utils.c:5225
+#: ada/gcc-interface/utils.c:5289
#, gcc-internal-format
msgid "%qs attribute only applies to variadic functions"
msgstr ""
-#: ada/gcc-interface/utils.c:5296
+#: ada/gcc-interface/utils.c:5360
#, gcc-internal-format
msgid "%qE attribute has no effect"
msgstr ""
-#: ada/gcc-interface/utils.c:5408
+#: ada/gcc-interface/utils.c:5466
#, gcc-internal-format
msgid "invalid vector type for attribute %qs"
msgstr ""
-#: ada/gcc-interface/utils.c:5471
+#: ada/gcc-interface/utils.c:5529
#, gcc-internal-format
msgid "attribute %qs applies to array types only"
msgstr ""
-#: ada/gcc-interface/utils.c:5498
+#: ada/gcc-interface/utils.c:5556
#, gcc-internal-format
msgid "invalid element type for attribute %qs"
msgstr ""
#. Conversion of implicit `this' argument failed.
-#: cp/call.c:2960
+#: cp/call.c:3102
#, gcc-internal-format
msgid " no known conversion for implicit %<this%> parameter from %qT to %qT"
msgstr ""
-#: cp/call.c:2964
+#: cp/call.c:3106
#, gcc-internal-format
msgid " no known conversion for argument %d from %qT to %qT"
msgstr ""
-#: cp/call.c:2986
+#: cp/call.c:3128
#, gcc-internal-format
msgid "%s%D(%T, %T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2991
+#: cp/call.c:3133
#, gcc-internal-format
msgid "%s%D(%T, %T) <built-in>"
msgstr ""
-#: cp/call.c:2995
+#: cp/call.c:3137
#, gcc-internal-format
msgid "%s%D(%T) <built-in>"
msgstr ""
-#: cp/call.c:2999
+#: cp/call.c:3141
#, gcc-internal-format
msgid "%s%T <conversion>"
msgstr ""
-#: cp/call.c:3001
+#: cp/call.c:3143
#, gcc-internal-format
msgid "%s%#D <near match>"
msgstr ""
-#: cp/call.c:3003
+#: cp/call.c:3145
#, gcc-internal-format
msgid "%s%#D <deleted>"
msgstr ""
-#: cp/call.c:3005
+#: cp/call.c:3147
#, gcc-internal-format
msgid "%s%#D"
msgstr ""
-#: cp/call.c:3015
+#: cp/call.c:3157
#, gcc-internal-format, gfc-internal-format
msgid " candidate expects %d argument, %d provided"
msgid_plural " candidate expects %d arguments, %d provided"
msgstr[0] ""
msgstr[1] ""
-#: cp/call.c:3349
+#: cp/call.c:3168
+#, gcc-internal-format
+msgid ""
+" return type %qT of explicit conversion function cannot be converted to %qT "
+"with a qualification conversion"
+msgstr ""
+
+#: cp/call.c:3512
#, gcc-internal-format
msgid "conversion from %qT to %qT is ambiguous"
msgstr ""
-#: cp/call.c:3454
+#: cp/call.c:3629
#, gcc-internal-format
msgid ""
"conversion from %qT to %qT not considered for non-type template argument"
msgstr ""
-#: cp/call.c:3564
+#: cp/call.c:3747
#, gcc-internal-format
msgid "no matching function for call to %<%D(%A)%>"
msgstr ""
-#: cp/call.c:3567
+#: cp/call.c:3750
#, gcc-internal-format
msgid "call of overloaded %<%D(%A)%> is ambiguous"
msgstr ""
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
-#: cp/call.c:3757
+#: cp/call.c:3949
#, gcc-internal-format
msgid ""
"pointer-to-member function %E cannot be called without an object; consider "
"using .* or ->*"
msgstr ""
-#: cp/call.c:3829
+#: cp/call.c:4021
#, gcc-internal-format
msgid "no match for call to %<(%T) (%A)%>"
msgstr ""
-#: cp/call.c:3842
+#: cp/call.c:4034
#, gcc-internal-format
msgid "call of %<(%T) (%A)%> is ambiguous"
msgstr ""
-#: cp/call.c:3884
+#: cp/call.c:4088
#, gcc-internal-format
msgid "ambiguous overload for ternary %<operator?:%> in %<%E ? %E : %E%>"
msgstr ""
-#: cp/call.c:3887
+#: cp/call.c:4091
#, gcc-internal-format
msgid "no match for ternary %<operator?:%> in %<%E ? %E : %E%>"
msgstr ""
-#: cp/call.c:3894
+#: cp/call.c:4098
#, gcc-internal-format
msgid "ambiguous overload for %<operator%s%> in %<%E%s%>"
msgstr ""
-#: cp/call.c:3897
+#: cp/call.c:4101
#, gcc-internal-format
msgid "no match for %<operator%s%> in %<%E%s%>"
msgstr ""
-#: cp/call.c:3903
+#: cp/call.c:4107
#, gcc-internal-format
msgid "ambiguous overload for %<operator[]%> in %<%E[%E]%>"
msgstr ""
-#: cp/call.c:3906
+#: cp/call.c:4110
#, gcc-internal-format
msgid "no match for %<operator[]%> in %<%E[%E]%>"
msgstr ""
-#: cp/call.c:3913
+#: cp/call.c:4117
#, gcc-internal-format
msgid "ambiguous overload for %qs in %<%s %E%>"
msgstr ""
-#: cp/call.c:3916
+#: cp/call.c:4120
#, gcc-internal-format
msgid "no match for %qs in %<%s %E%>"
msgstr ""
-#: cp/call.c:3923
+#: cp/call.c:4127
#, gcc-internal-format
msgid "ambiguous overload for %<operator%s%> in %<%E %s %E%>"
msgstr ""
-#: cp/call.c:3926
+#: cp/call.c:4130
#, gcc-internal-format
msgid "no match for %<operator%s%> in %<%E %s %E%>"
msgstr ""
-#: cp/call.c:3930
+#: cp/call.c:4134
#, gcc-internal-format
msgid "ambiguous overload for %<operator%s%> in %<%s%E%>"
msgstr ""
-#: cp/call.c:3933
+#: cp/call.c:4137
#, gcc-internal-format
msgid "no match for %<operator%s%> in %<%s%E%>"
msgstr ""
-#: cp/call.c:4027
+#: cp/call.c:4231
#, gcc-internal-format
msgid "ISO C++ forbids omitting the middle term of a ?: expression"
msgstr ""
-#: cp/call.c:4108
+#: cp/call.c:4320
#, gcc-internal-format
msgid ""
"second operand to the conditional operator is of type %<void%>, but the "
"third operand is neither a throw-expression nor of type %<void%>"
msgstr ""
-#: cp/call.c:4113
+#: cp/call.c:4325
#, gcc-internal-format
msgid ""
"third operand to the conditional operator is of type %<void%>, but the "
"second operand is neither a throw-expression nor of type %<void%>"
msgstr ""
-#: cp/call.c:4155 cp/call.c:4399
+#: cp/call.c:4367 cp/call.c:4611
#, gcc-internal-format
msgid "operands to ?: have different types %qT and %qT"
msgstr ""
-#: cp/call.c:4346
+#: cp/call.c:4558
#, gcc-internal-format
msgid "enumeral mismatch in conditional expression: %qT vs %qT"
msgstr ""
-#: cp/call.c:4357
+#: cp/call.c:4569
#, gcc-internal-format
msgid "enumeral and non-enumeral type in conditional expression"
msgstr ""
-#: cp/call.c:4751
+#: cp/call.c:4976
#, gcc-internal-format
msgid "no %<%D(int)%> declared for postfix %qs, trying prefix operator instead"
msgstr ""
-#: cp/call.c:4753
+#: cp/call.c:4978
#, gcc-internal-format
msgid "no %<%D(int)%> declared for postfix %qs"
msgstr ""
-#: cp/call.c:4847
+#: cp/call.c:5072
#, gcc-internal-format
msgid "comparison between %q#T and %q#T"
msgstr ""
-#: cp/call.c:5091
+#: cp/call.c:5329
#, gcc-internal-format
msgid "non-placement deallocation function %q+D"
msgstr ""
-#: cp/call.c:5092
+#: cp/call.c:5330
#, gcc-internal-format
msgid "selected for placement delete"
msgstr ""
-#: cp/call.c:5171
+#: cp/call.c:5409
#, gcc-internal-format
msgid "no corresponding deallocation function for %qD"
msgstr ""
-#: cp/call.c:5176
+#: cp/call.c:5414
#, gcc-internal-format
msgid "no suitable %<operator %s%> for %qT"
msgstr ""
-#: cp/call.c:5194
+#: cp/call.c:5432
#, gcc-internal-format
msgid "%q+#D is private"
msgstr ""
-#: cp/call.c:5196
+#: cp/call.c:5434
#, gcc-internal-format
msgid "%q+#D is protected"
msgstr ""
-#: cp/call.c:5198
+#: cp/call.c:5436
#, gcc-internal-format
msgid "%q+#D is inaccessible"
msgstr ""
-#: cp/call.c:5199
+#: cp/call.c:5437
#, gcc-internal-format
msgid "within this context"
msgstr ""
-#: cp/call.c:5247
+#: cp/call.c:5485
#, gcc-internal-format
msgid "passing NULL to non-pointer argument %P of %qD"
msgstr ""
-#: cp/call.c:5251
+#: cp/call.c:5489
#, gcc-internal-format
msgid "converting to non-pointer type %qT from NULL"
msgstr ""
-#: cp/call.c:5257
+#: cp/call.c:5497
#, gcc-internal-format
msgid "converting %<false%> to pointer type for argument %P of %qD"
msgstr ""
-#: cp/call.c:5295
+#: cp/call.c:5501
+#, gcc-internal-format
+msgid "converting %<false%> to pointer type %qT"
+msgstr ""
+
+#: cp/call.c:5539
#, gcc-internal-format
msgid "too many braces around initializer for %qT"
msgstr ""
-#: cp/call.c:5317 cp/cvt.c:217
+#: cp/call.c:5545
+#, gcc-internal-format
+msgid "invalid user-defined conversion from %qT to %qT"
+msgstr ""
+
+#: cp/call.c:5572 cp/cvt.c:217
#, gcc-internal-format
msgid "invalid conversion from %qT to %qT"
msgstr ""
-#: cp/call.c:5320 cp/call.c:5507
+#: cp/call.c:5575 cp/call.c:5773
#, gcc-internal-format
msgid " initializing argument %P of %qD"
msgstr ""
-#: cp/call.c:5349
+#: cp/call.c:5604
#, gcc-internal-format
msgid ""
"converting to %qT from initializer list would use explicit constructor %qD"
msgstr ""
-#: cp/call.c:5409 cp/call.c:5525
+#: cp/call.c:5664 cp/call.c:5791
#, gcc-internal-format
msgid " initializing argument %P of %q+D"
msgstr ""
-#: cp/call.c:5522
+#: cp/call.c:5788
#, gcc-internal-format
msgid "cannot bind %qT lvalue to %qT"
msgstr ""
-#: cp/call.c:5557
+#: cp/call.c:5823
#, gcc-internal-format
msgid "cannot bind bitfield %qE to %qT"
msgstr ""
-#: cp/call.c:5560 cp/call.c:5578
+#: cp/call.c:5826 cp/call.c:5844
#, gcc-internal-format
msgid "cannot bind packed field %qE to %qT"
msgstr ""
-#: cp/call.c:5563
+#: cp/call.c:5829
#, gcc-internal-format
msgid "cannot bind rvalue %qE to %qT"
msgstr ""
-#: cp/call.c:5699
+#: cp/call.c:5943 cp/cvt.c:1635
+#, gcc-internal-format
+msgid ""
+"scoped enum %qT will not promote to an integral type in a future version of "
+"GCC"
+msgstr ""
+
+#: cp/call.c:5978
#, gcc-internal-format
msgid "cannot pass objects of non-trivially-copyable type %q#T through %<...%>"
msgstr ""
#. conditionally-supported behavior [expr.call] 5.2.2/7.
-#: cp/call.c:5728
+#: cp/call.c:6007
#, gcc-internal-format
msgid ""
"cannot receive objects of non-trivially-copyable type %q#T through %<...%>; "
msgstr ""
-#: cp/call.c:5784
+#: cp/call.c:6063
#, gcc-internal-format
msgid "recursive evaluation of default argument for %q#D"
msgstr ""
-#: cp/call.c:5792
+#: cp/call.c:6071
#, gcc-internal-format
msgid ""
"call to %qD uses the default argument for parameter %P, which is not yet "
"defined"
msgstr ""
-#: cp/call.c:5911
+#: cp/call.c:6190
#, gcc-internal-format
msgid "argument of function call might be a candidate for a format attribute"
msgstr ""
-#: cp/call.c:6119
+#: cp/call.c:6398
#, gcc-internal-format
msgid "passing %qT as %<this%> argument of %q#D discards qualifiers"
msgstr ""
-#: cp/call.c:6141
+#: cp/call.c:6420
#, gcc-internal-format
msgid "%qT is not an accessible base of %qT"
msgstr ""
-#: cp/call.c:6192
+#: cp/call.c:6498
#, gcc-internal-format
msgid "deducing %qT as %qT"
msgstr ""
-#: cp/call.c:6195
+#: cp/call.c:6501
#, gcc-internal-format
msgid " in call to %q+D"
msgstr ""
-#: cp/call.c:6197
+#: cp/call.c:6503
#, gcc-internal-format
msgid " (you can disable this with -fno-deduce-init-list)"
msgstr ""
-#: cp/call.c:6467
+#: cp/call.c:6779
#, gcc-internal-format
msgid "could not find class$ field in java interface type %qT"
msgstr ""
-#: cp/call.c:6725
+#: cp/call.c:7037
#, gcc-internal-format
msgid "call to non-function %qD"
msgstr ""
-#: cp/call.c:6770 cp/typeck.c:2546
+#: cp/call.c:7082 cp/typeck.c:2560
#, gcc-internal-format
msgid "cannot call constructor %<%T::%D%> directly"
msgstr ""
-#: cp/call.c:6772
+#: cp/call.c:7084
#, gcc-internal-format
msgid " for a function-style cast, remove the redundant %<::%D%>"
msgstr ""
-#: cp/call.c:6856
+#: cp/call.c:7168
#, gcc-internal-format
msgid "no matching function for call to %<%T::operator %T(%A)%#V%>"
msgstr ""
-#: cp/call.c:6869
+#: cp/call.c:7181
#, gcc-internal-format
msgid "no matching function for call to %<%T::%s(%A)%#V%>"
msgstr ""
-#: cp/call.c:6894
+#: cp/call.c:7206
#, gcc-internal-format
msgid "call of overloaded %<%s(%A)%> is ambiguous"
msgstr ""
-#: cp/call.c:6923
+#: cp/call.c:7235
#, gcc-internal-format
msgid "cannot call member function %qD without object"
msgstr ""
-#: cp/call.c:7631
+#: cp/call.c:7960
#, gcc-internal-format
msgid "passing %qT chooses %qT over %qT"
msgstr ""
-#: cp/call.c:7633 cp/name-lookup.c:5185
+#: cp/call.c:7962 cp/name-lookup.c:5361
#, gcc-internal-format
msgid " in call to %qD"
msgstr ""
-#: cp/call.c:7690
+#: cp/call.c:8019
#, gcc-internal-format
msgid "choosing %qD over %qD"
msgstr ""
-#: cp/call.c:7691
+#: cp/call.c:8020
#, gcc-internal-format
msgid " for conversion from %qT to %qT"
msgstr ""
-#: cp/call.c:7694
+#: cp/call.c:8023
#, gcc-internal-format
msgid " because conversion sequence for the argument is better"
msgstr ""
-#: cp/call.c:7812
+#: cp/call.c:8141
#, gcc-internal-format
msgid "default argument mismatch in overload resolution"
msgstr ""
-#: cp/call.c:7815
+#: cp/call.c:8144
#, gcc-internal-format
msgid " candidate 1: %q+#F"
msgstr ""
-#: cp/call.c:7817
+#: cp/call.c:8146
#, gcc-internal-format
msgid " candidate 2: %q+#F"
msgstr ""
-#: cp/call.c:7858
+#: cp/call.c:8187
#, gcc-internal-format
msgid ""
"ISO C++ says that these are ambiguous, even though the worst conversion for "
"the first is better than the worst conversion for the second:"
msgstr ""
-#: cp/call.c:8011
+#: cp/call.c:8340
#, gcc-internal-format
-msgid "could not convert %qE to %qT"
+msgid "could not convert %qE from %qT to %qT"
msgstr ""
-#: cp/call.c:8253
+#: cp/call.c:8583
#, gcc-internal-format
msgid ""
"invalid initialization of non-const reference of type %qT from an rvalue of "
"type %qT"
msgstr ""
-#: cp/call.c:8257
+#: cp/call.c:8587
#, gcc-internal-format
msgid ""
"invalid initialization of reference of type %qT from expression of type %qT"
@@ -25220,383 +25475,398 @@
msgid "cannot convert from base %qT to derived type %qT via virtual base %qT"
msgstr ""
-#: cp/class.c:976
+#: cp/class.c:968
#, gcc-internal-format
msgid "Java class %qT cannot have a destructor"
msgstr ""
-#: cp/class.c:978
+#: cp/class.c:970
#, gcc-internal-format
msgid "Java class %qT cannot have an implicit non-trivial destructor"
msgstr ""
-#: cp/class.c:1079
+#: cp/class.c:1071
#, gcc-internal-format
msgid "repeated using declaration %q+D"
msgstr ""
-#: cp/class.c:1081
+#: cp/class.c:1073
#, gcc-internal-format
msgid "using declaration %q+D conflicts with a previous using declaration"
msgstr ""
-#: cp/class.c:1086
+#: cp/class.c:1078
#, gcc-internal-format
msgid "%q+#D cannot be overloaded"
msgstr ""
-#: cp/class.c:1087
+#: cp/class.c:1079
#, gcc-internal-format
msgid "with %q+#D"
msgstr ""
-#: cp/class.c:1154
+#: cp/class.c:1146
#, gcc-internal-format
msgid "conflicting access specifications for method %q+D, ignored"
msgstr ""
-#: cp/class.c:1157
+#: cp/class.c:1149
#, gcc-internal-format
msgid "conflicting access specifications for field %qE, ignored"
msgstr ""
-#: cp/class.c:1218 cp/class.c:1226
+#: cp/class.c:1210 cp/class.c:1218
#, gcc-internal-format
msgid "%q+D invalid in %q#T"
msgstr ""
-#: cp/class.c:1219
+#: cp/class.c:1211
#, gcc-internal-format
msgid " because of local method %q+#D with same name"
msgstr ""
-#: cp/class.c:1227
+#: cp/class.c:1219
#, gcc-internal-format
msgid " because of local member %q+#D with same name"
msgstr ""
-#: cp/class.c:1280
+#: cp/class.c:1264
+#, gcc-internal-format
+msgid "cannot derive from %<final%> base %qT in derived type %qT"
+msgstr ""
+
+#: cp/class.c:1276
#, gcc-internal-format
msgid "base class %q#T has a non-virtual destructor"
msgstr ""
-#: cp/class.c:1667
+#: cp/class.c:1663
#, gcc-internal-format
msgid "all member functions in class %qT are private"
msgstr ""
-#: cp/class.c:1679
+#: cp/class.c:1675
#, gcc-internal-format
msgid "%q#T only defines a private destructor and has no friends"
msgstr ""
-#: cp/class.c:1724
+#: cp/class.c:1720
#, gcc-internal-format
msgid "%q#T only defines private constructors and has no friends"
msgstr ""
-#: cp/class.c:2117
+#: cp/class.c:2113
#, gcc-internal-format
msgid "no unique final overrider for %qD in %qT"
msgstr ""
+#: cp/class.c:2481
+#, gcc-internal-format
+msgid "%q+#D marked final, but is not virtual"
+msgstr ""
+
+#: cp/class.c:2483
+#, gcc-internal-format
+msgid "%q+#D marked override, but does not override"
+msgstr ""
+
#. Here we know it is a hider, and no overrider exists.
-#: cp/class.c:2546
+#: cp/class.c:2552
#, gcc-internal-format
msgid "%q+D was hidden"
msgstr ""
-#: cp/class.c:2547
+#: cp/class.c:2553
#, gcc-internal-format
msgid " by %q+D"
msgstr ""
-#: cp/class.c:2590 cp/decl2.c:1343
+#: cp/class.c:2596 cp/decl2.c:1343
#, gcc-internal-format
msgid "%q+#D invalid; an anonymous union can only have non-static data members"
msgstr ""
-#: cp/class.c:2593
+#: cp/class.c:2599
#, gcc-internal-format
msgid ""
"%q+#D invalid; an anonymous struct can only have non-static data members"
msgstr ""
-#: cp/class.c:2601 cp/decl2.c:1349
+#: cp/class.c:2607 cp/decl2.c:1349
#, gcc-internal-format
msgid "private member %q+#D in anonymous union"
msgstr ""
-#: cp/class.c:2603
+#: cp/class.c:2609
#, gcc-internal-format
msgid "private member %q+#D in anonymous struct"
msgstr ""
-#: cp/class.c:2608 cp/decl2.c:1351
+#: cp/class.c:2614 cp/decl2.c:1351
#, gcc-internal-format
msgid "protected member %q+#D in anonymous union"
msgstr ""
-#: cp/class.c:2610
+#: cp/class.c:2616
#, gcc-internal-format
msgid "protected member %q+#D in anonymous struct"
msgstr ""
-#: cp/class.c:2832
+#: cp/class.c:2838
#, gcc-internal-format
msgid "bit-field %q+#D with non-integral type"
msgstr ""
-#: cp/class.c:2848
+#: cp/class.c:2854
#, gcc-internal-format
msgid "bit-field %q+D width not an integer constant"
msgstr ""
-#: cp/class.c:2853
+#: cp/class.c:2859
#, gcc-internal-format
msgid "negative width in bit-field %q+D"
msgstr ""
-#: cp/class.c:2858
+#: cp/class.c:2864
#, gcc-internal-format
msgid "zero width for bit-field %q+D"
msgstr ""
-#: cp/class.c:2864
+#: cp/class.c:2870
#, gcc-internal-format
msgid "width of %q+D exceeds its type"
msgstr ""
-#: cp/class.c:2868
+#: cp/class.c:2874
#, gcc-internal-format
msgid "%q+D is too small to hold all values of %q#T"
msgstr ""
-#: cp/class.c:2927
+#: cp/class.c:2933
#, gcc-internal-format
msgid "member %q+#D with constructor not allowed in union"
msgstr ""
-#: cp/class.c:2930
+#: cp/class.c:2936
#, gcc-internal-format
msgid "member %q+#D with destructor not allowed in union"
msgstr ""
-#: cp/class.c:2932
+#: cp/class.c:2938
#, gcc-internal-format
msgid "member %q+#D with copy assignment operator not allowed in union"
msgstr ""
-#: cp/class.c:2936
+#: cp/class.c:2942
#, gcc-internal-format
msgid "unrestricted unions only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/class.c:2970
+#: cp/class.c:2976
#, gcc-internal-format
msgid "multiple fields in union %qT initialized"
msgstr ""
-#: cp/class.c:3061
+#: cp/class.c:3067
#, gcc-internal-format
msgid "%q+D may not be static because it is a member of a union"
msgstr ""
-#: cp/class.c:3066
+#: cp/class.c:3072
#, gcc-internal-format
msgid "%q+D may not have reference type %qT because it is a member of a union"
msgstr ""
-#: cp/class.c:3077
+#: cp/class.c:3083
#, gcc-internal-format
msgid "field %q+D invalidly declared function type"
msgstr ""
-#: cp/class.c:3083
+#: cp/class.c:3089
#, gcc-internal-format
msgid "field %q+D invalidly declared method type"
msgstr ""
-#: cp/class.c:3138
+#: cp/class.c:3144
#, gcc-internal-format
msgid "ignoring packed attribute because of unpacked non-POD field %q+#D"
msgstr ""
-#: cp/class.c:3230
+#: cp/class.c:3236
#, gcc-internal-format
msgid "field %q+#D with same name as class"
msgstr ""
-#: cp/class.c:3253
+#: cp/class.c:3259
#, gcc-internal-format
msgid "%q#T has pointer data members"
msgstr ""
-#: cp/class.c:3258
+#: cp/class.c:3264
#, gcc-internal-format
msgid " but does not override %<%T(const %T&)%>"
msgstr ""
-#: cp/class.c:3260
+#: cp/class.c:3266
#, gcc-internal-format
msgid " or %<operator=(const %T&)%>"
msgstr ""
-#: cp/class.c:3264
+#: cp/class.c:3270
#, gcc-internal-format
msgid " but does not override %<operator=(const %T&)%>"
msgstr ""
-#: cp/class.c:3727
+#: cp/class.c:3733
#, gcc-internal-format
msgid ""
"offset of empty base %qT may not be ABI-compliant and maychange in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:3854
+#: cp/class.c:3860
#, gcc-internal-format
msgid "class %qT will be considered nearly empty in a future version of GCC"
msgstr ""
-#: cp/class.c:3936
+#: cp/class.c:3942
#, gcc-internal-format
msgid "initializer specified for non-virtual method %q+D"
msgstr ""
-#: cp/class.c:4568
+#: cp/class.c:4598 cp/semantics.c:5389
#, gcc-internal-format
-msgid "enclosing class of %q+D is not a literal type"
+msgid "enclosing class of %q+#D is not a literal type"
msgstr ""
-#: cp/class.c:4677
+#: cp/class.c:4705
#, gcc-internal-format
msgid "non-static reference %q+#D in class without a constructor"
msgstr ""
-#: cp/class.c:4682
+#: cp/class.c:4710
#, gcc-internal-format
msgid "non-static const member %q+#D in class without a constructor"
msgstr ""
#. If the function is defaulted outside the class, we just
#. give the synthesis error.
-#: cp/class.c:4708
+#: cp/class.c:4736
#, gcc-internal-format
msgid ""
"%q+D declared to take const reference, but implicit declaration would take "
"non-const"
msgstr ""
-#: cp/class.c:4711
+#: cp/class.c:4739
#, gcc-internal-format
msgid ""
"%q+D declared to take non-const reference cannot be defaulted in the class "
"body"
msgstr ""
-#: cp/class.c:4935
+#: cp/class.c:4963
#, gcc-internal-format
msgid ""
"offset of virtual base %qT is not ABI-compliant and may change in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:5036
+#: cp/class.c:5064
#, gcc-internal-format
msgid "direct base %qT inaccessible in %qT due to ambiguity"
msgstr ""
-#: cp/class.c:5048
+#: cp/class.c:5076
#, gcc-internal-format
msgid "virtual base %qT inaccessible in %qT due to ambiguity"
msgstr ""
-#: cp/class.c:5234
+#: cp/class.c:5262
#, gcc-internal-format
msgid ""
"size assigned to %qT may not be ABI-compliant and may change in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:5274
+#: cp/class.c:5302
#, gcc-internal-format
msgid ""
"the offset of %qD may not be ABI-compliant and may change in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:5302
+#: cp/class.c:5330
#, gcc-internal-format
msgid ""
"offset of %q+D is not ABI-compliant and may change in a future version of GCC"
msgstr ""
-#: cp/class.c:5312
+#: cp/class.c:5340
#, gcc-internal-format
msgid ""
"%q+D contains empty classes which may cause base classes to be placed at "
"different locations in a future version of GCC"
msgstr ""
-#: cp/class.c:5400
+#: cp/class.c:5428
#, gcc-internal-format
msgid ""
"layout of classes derived from empty class %qT may change in a future "
"version of GCC"
msgstr ""
-#: cp/class.c:5553 cp/decl.c:11331 cp/parser.c:17264
+#: cp/class.c:5581 cp/decl.c:11636 cp/parser.c:17522
#, gcc-internal-format
msgid "redefinition of %q#T"
msgstr ""
-#: cp/class.c:5705
+#: cp/class.c:5733
#, gcc-internal-format
msgid "%q#T has virtual functions and accessible non-virtual destructor"
msgstr ""
-#: cp/class.c:5810
+#: cp/class.c:5838
#, gcc-internal-format
msgid "trying to finish struct, but kicked out due to previous parse errors"
msgstr ""
-#: cp/class.c:6302
+#: cp/class.c:6355
#, gcc-internal-format
msgid "language string %<\"%E\"%> not recognized"
msgstr ""
-#: cp/class.c:6392
+#: cp/class.c:6445
#, gcc-internal-format
msgid "cannot resolve overloaded function %qD based on conversion to type %qT"
msgstr ""
-#: cp/class.c:6516
+#: cp/class.c:6569
#, gcc-internal-format
msgid "no matches converting function %qD to type %q#T"
msgstr ""
-#: cp/class.c:6546
+#: cp/class.c:6592
#, gcc-internal-format
msgid "converting overloaded function %qD to type %q#T is ambiguous"
msgstr ""
-#: cp/class.c:6573
+#: cp/class.c:6619
#, gcc-internal-format
msgid "assuming pointer to member %qD"
msgstr ""
-#: cp/class.c:6576
+#: cp/class.c:6622
#, gcc-internal-format
msgid "(a pointer to member can only be formed with %<&%E%>)"
msgstr ""
-#: cp/class.c:6638 cp/class.c:6672
+#: cp/class.c:6684 cp/class.c:6718
#, gcc-internal-format
msgid "not enough type information"
msgstr ""
-#: cp/class.c:6655
+#: cp/class.c:6701
#, gcc-internal-format
msgid "argument of type %qT does not match %qT"
msgstr ""
@@ -25606,22 +25876,22 @@
#. A name N used in a class S shall refer to the same declaration
#. in its context and when re-evaluated in the completed scope of
#. S.
-#: cp/class.c:6966 cp/decl.c:1265 cp/name-lookup.c:524
+#: cp/class.c:7012 cp/decl.c:1267 cp/name-lookup.c:503
#, gcc-internal-format
msgid "declaration of %q#D"
msgstr ""
-#: cp/class.c:6967
+#: cp/class.c:7013
#, gcc-internal-format
msgid "changes meaning of %qD from %q+#D"
msgstr ""
-#: cp/cp-gimplify.c:93
+#: cp/cp-gimplify.c:94
#, gcc-internal-format
msgid "continue statement not within loop or switch"
msgstr ""
-#: cp/cp-gimplify.c:1257
+#: cp/cp-gimplify.c:1445
#, gcc-internal-format
msgid "%qE implicitly determined as %<firstprivate%> has reference type"
msgstr ""
@@ -25666,7 +25936,7 @@
msgid "conversion from %qT to %qT discards qualifiers"
msgstr ""
-#: cp/cvt.c:470 cp/typeck.c:6014
+#: cp/cvt.c:470 cp/typeck.c:6044
#, gcc-internal-format
msgid "casting %qT to %qT does not dereference pointer"
msgstr ""
@@ -25676,470 +25946,471 @@
msgid "cannot convert type %qT to type %qT"
msgstr ""
-#: cp/cvt.c:699
+#: cp/cvt.c:704
#, gcc-internal-format
msgid "conversion from %q#T to %q#T"
msgstr ""
-#: cp/cvt.c:715
+#: cp/cvt.c:720
#, gcc-internal-format
msgid ""
"the result of the conversion is unspecified because %qE is outside the range "
"of type %qT"
msgstr ""
-#: cp/cvt.c:726 cp/cvt.c:751
+#: cp/cvt.c:731 cp/cvt.c:762
#, gcc-internal-format
msgid "%q#T used where a %qT was expected"
msgstr ""
-#: cp/cvt.c:766
+#: cp/cvt.c:777
#, gcc-internal-format
msgid "%q#T used where a floating point value was expected"
msgstr ""
-#: cp/cvt.c:826
+#: cp/cvt.c:837
#, gcc-internal-format
msgid "conversion from %qT to non-scalar type %qT requested"
msgstr ""
-#: cp/cvt.c:884
+#: cp/cvt.c:895
#, gcc-internal-format
msgid "pseudo-destructor is not called"
msgstr ""
-#: cp/cvt.c:961
+#: cp/cvt.c:972
#, gcc-internal-format
msgid "conversion to void will not access object of incomplete type %qT"
msgstr ""
-#: cp/cvt.c:965
+#: cp/cvt.c:976
#, gcc-internal-format
msgid ""
"indirection will not access object of incomplete type %qT in second operand "
"of conditional expression"
msgstr ""
-#: cp/cvt.c:970
+#: cp/cvt.c:981
#, gcc-internal-format
msgid ""
"indirection will not access object of incomplete type %qT in third operand "
"of conditional expression"
msgstr ""
-#: cp/cvt.c:975
+#: cp/cvt.c:986
#, gcc-internal-format
msgid ""
"indirection will not access object of incomplete type %qT in right operand "
"of comma operator"
msgstr ""
-#: cp/cvt.c:980
+#: cp/cvt.c:991
#, gcc-internal-format
msgid ""
"indirection will not access object of incomplete type %qT in left operand of "
"comma operator"
msgstr ""
-#: cp/cvt.c:985
+#: cp/cvt.c:996
#, gcc-internal-format
msgid "indirection will not access object of incomplete type %qT in statement"
msgstr ""
-#: cp/cvt.c:989
+#: cp/cvt.c:1000
#, gcc-internal-format
msgid ""
"indirection will not access object of incomplete type %qT in for increment "
"expression"
msgstr ""
-#: cp/cvt.c:1005
+#: cp/cvt.c:1016
#, gcc-internal-format
msgid "conversion to void will not access object of type %qT"
msgstr ""
-#: cp/cvt.c:1009
+#: cp/cvt.c:1020
#, gcc-internal-format
msgid ""
"implicit dereference will not access object of type %qT in second operand of "
"conditional expression"
msgstr ""
-#: cp/cvt.c:1014
+#: cp/cvt.c:1025
#, gcc-internal-format
msgid ""
"implicit dereference will not access object of type %qT in third operand of "
"conditional expression"
msgstr ""
-#: cp/cvt.c:1019
+#: cp/cvt.c:1030
#, gcc-internal-format
msgid ""
"implicit dereference will not access object of type %qT in right operand of "
"comma operator"
msgstr ""
-#: cp/cvt.c:1024
+#: cp/cvt.c:1035
#, gcc-internal-format
msgid ""
"implicit dereference will not access object of type %qT in left operand of "
"comma operator"
msgstr ""
-#: cp/cvt.c:1029
+#: cp/cvt.c:1040
#, gcc-internal-format
msgid "implicit dereference will not access object of type %qT in statement"
msgstr ""
-#: cp/cvt.c:1033
+#: cp/cvt.c:1044
#, gcc-internal-format
msgid ""
"implicit dereference will not access object of type %qT in for increment "
"expression"
msgstr ""
-#: cp/cvt.c:1047
+#: cp/cvt.c:1058
#, gcc-internal-format
msgid ""
"conversion to void will not access object of non-trivially-copyable type %qT"
msgstr ""
-#: cp/cvt.c:1052
+#: cp/cvt.c:1063
#, gcc-internal-format
msgid ""
"indirection will not access object of non-trivially-copyable type %qT in "
"second operand of conditional expression"
msgstr ""
-#: cp/cvt.c:1057
+#: cp/cvt.c:1068
#, gcc-internal-format
msgid ""
"indirection will not access object of non-trivially-copyable type %qT in "
"third operand of conditional expression"
msgstr ""
-#: cp/cvt.c:1062
+#: cp/cvt.c:1073
#, gcc-internal-format
msgid ""
"indirection will not access object of non-trivially-copyable type %qT in "
"right operand of comma operator"
msgstr ""
-#: cp/cvt.c:1067
+#: cp/cvt.c:1078
#, gcc-internal-format
msgid ""
"indirection will not access object of non-trivially-copyable type %qT in "
"left operand of comma operator"
msgstr ""
-#: cp/cvt.c:1072
+#: cp/cvt.c:1083
#, gcc-internal-format
msgid ""
"indirection will not access object of non-trivially-copyable type %qT in "
"statement"
msgstr ""
-#: cp/cvt.c:1077
+#: cp/cvt.c:1088
#, gcc-internal-format
msgid ""
"indirection will not access object of non-trivially-copyable type %qT in for "
"increment expression"
msgstr ""
-#: cp/cvt.c:1115
+#: cp/cvt.c:1126
#, gcc-internal-format
msgid "conversion to void will not access object %qE of incomplete type %qT"
msgstr ""
-#: cp/cvt.c:1119
+#: cp/cvt.c:1130
#, gcc-internal-format
msgid ""
"variable %qE of incomplete type %qT will not be accessed in second operand "
"of conditional expression"
msgstr ""
-#: cp/cvt.c:1124
+#: cp/cvt.c:1135
#, gcc-internal-format
msgid ""
"variable %qE of incomplete type %qT will not be accessed in third operand of "
"conditional expression"
msgstr ""
-#: cp/cvt.c:1129
+#: cp/cvt.c:1140
#, gcc-internal-format
msgid ""
"variable %qE of incomplete type %qT will not be accessed in right operand of "
"comma operator"
msgstr ""
-#: cp/cvt.c:1134
+#: cp/cvt.c:1145
#, gcc-internal-format
msgid ""
"variable %qE of incomplete type %qT will not be accessed in left operand of "
"comma operator"
msgstr ""
-#: cp/cvt.c:1139
+#: cp/cvt.c:1150
#, gcc-internal-format
msgid "variable %qE of incomplete type %qT will not be accessed in statement"
msgstr ""
-#: cp/cvt.c:1143
+#: cp/cvt.c:1154
#, gcc-internal-format
msgid ""
"variable %qE of incomplete type %qT will not be accessed in for increment "
"expression"
msgstr ""
-#: cp/cvt.c:1192
+#: cp/cvt.c:1203
#, gcc-internal-format
msgid "conversion to void cannot resolve address of overloaded function"
msgstr ""
-#: cp/cvt.c:1196
+#: cp/cvt.c:1207
#, gcc-internal-format
msgid ""
"second operand of conditional expression cannot resolve address of "
"overloaded function"
msgstr ""
-#: cp/cvt.c:1200
+#: cp/cvt.c:1211
#, gcc-internal-format
msgid ""
"third operand of conditional expression cannot resolve address of overloaded "
"function"
msgstr ""
-#: cp/cvt.c:1204
+#: cp/cvt.c:1215
#, gcc-internal-format
msgid ""
"right operand of comma operator cannot resolve address of overloaded function"
msgstr ""
-#: cp/cvt.c:1208
+#: cp/cvt.c:1219
#, gcc-internal-format
msgid ""
"left operand of comma operator cannot resolve address of overloaded function"
msgstr ""
-#: cp/cvt.c:1212
+#: cp/cvt.c:1223
#, gcc-internal-format
msgid "statement cannot resolve address of overloaded function"
msgstr ""
-#: cp/cvt.c:1216
+#: cp/cvt.c:1227
#, gcc-internal-format
msgid "for increment expression cannot resolve address of overloaded function"
msgstr ""
-#: cp/cvt.c:1232
+#: cp/cvt.c:1243
#, gcc-internal-format
msgid ""
"second operand of conditional expression is a reference, not call, to "
"function %qE"
msgstr ""
-#: cp/cvt.c:1237
+#: cp/cvt.c:1248
#, gcc-internal-format
msgid ""
"third operand of conditional expression is a reference, not call, to "
"function %qE"
msgstr ""
-#: cp/cvt.c:1242
+#: cp/cvt.c:1253
#, gcc-internal-format
msgid ""
"right operand of comma operator is a reference, not call, to function %qE"
msgstr ""
-#: cp/cvt.c:1247
+#: cp/cvt.c:1258
#, gcc-internal-format
msgid ""
"left operand of comma operator is a reference, not call, to function %qE"
msgstr ""
-#: cp/cvt.c:1252
+#: cp/cvt.c:1263
#, gcc-internal-format
msgid "statement is a reference, not call, to function %qE"
msgstr ""
-#: cp/cvt.c:1257
+#: cp/cvt.c:1268
#, gcc-internal-format
msgid "for increment expression is a reference, not call, to function %qE"
msgstr ""
-#: cp/cvt.c:1284
+#: cp/cvt.c:1295
#, gcc-internal-format
msgid "second operand of conditional expression has no effect"
msgstr ""
-#: cp/cvt.c:1288
+#: cp/cvt.c:1299
#, gcc-internal-format
msgid "third operand of conditional expression has no effect"
msgstr ""
-#: cp/cvt.c:1292
+#: cp/cvt.c:1303
#, gcc-internal-format
msgid "right operand of comma operator has no effect"
msgstr ""
-#: cp/cvt.c:1296
+#: cp/cvt.c:1307
#, gcc-internal-format
msgid "left operand of comma operator has no effect"
msgstr ""
-#: cp/cvt.c:1300
+#: cp/cvt.c:1311
#, gcc-internal-format
msgid "statement has no effect"
msgstr ""
-#: cp/cvt.c:1304
+#: cp/cvt.c:1315
#, gcc-internal-format
msgid "for increment expression has no effect"
msgstr ""
-#: cp/cvt.c:1453
+#: cp/cvt.c:1464
#, gcc-internal-format
msgid "converting NULL to non-pointer type"
msgstr ""
-#: cp/cvt.c:1565
+#: cp/cvt.c:1576
#, gcc-internal-format
msgid "ambiguous default type conversion from %qT"
msgstr ""
-#: cp/cvt.c:1567
+#: cp/cvt.c:1578
#, gcc-internal-format
msgid " candidate conversions include %qD and %qD"
msgstr ""
-#: cp/decl.c:636
+#: cp/decl.c:637
#, gcc-internal-format
msgid "variable %q+D set but not used"
msgstr ""
-#: cp/decl.c:1101
+#: cp/decl.c:1103
#, gcc-internal-format
msgid "%qD was declared %<extern%> and later %<static%>"
msgstr ""
-#: cp/decl.c:1102 cp/decl.c:1682 objc/objc-act.c:3393 objc/objc-act.c:6601
+#: cp/decl.c:1104 cp/decl.c:1684 objc/objc-act.c:3407 objc/objc-act.c:3996
+#: objc/objc-act.c:4024 objc/objc-act.c:4080 objc/objc-act.c:7065
#, gcc-internal-format
msgid "previous declaration of %q+D"
msgstr ""
-#: cp/decl.c:1134
+#: cp/decl.c:1136
#, gcc-internal-format
msgid "declaration of %qF has a different exception specifier"
msgstr ""
-#: cp/decl.c:1136
+#: cp/decl.c:1138
#, gcc-internal-format
msgid "from previous declaration %q+F"
msgstr ""
-#: cp/decl.c:1161
+#: cp/decl.c:1163
#, gcc-internal-format
msgid "redeclaration %qD differs in %<constexpr%>"
msgstr ""
-#: cp/decl.c:1162
+#: cp/decl.c:1164
#, gcc-internal-format
msgid "from previous declaration %q+D"
msgstr ""
-#: cp/decl.c:1218
+#: cp/decl.c:1220
#, gcc-internal-format
msgid "function %q+D redeclared as inline"
msgstr ""
-#: cp/decl.c:1220
+#: cp/decl.c:1222
#, gcc-internal-format
msgid "previous declaration of %q+D with attribute noinline"
msgstr ""
-#: cp/decl.c:1227
+#: cp/decl.c:1229
#, gcc-internal-format
msgid "function %q+D redeclared with attribute noinline"
msgstr ""
-#: cp/decl.c:1229
+#: cp/decl.c:1231
#, gcc-internal-format
msgid "previous declaration of %q+D was inline"
msgstr ""
-#: cp/decl.c:1253 cp/decl.c:1327
+#: cp/decl.c:1255 cp/decl.c:1329
#, gcc-internal-format
msgid "shadowing built-in function %q#D"
msgstr ""
-#: cp/decl.c:1254 cp/decl.c:1328
+#: cp/decl.c:1256 cp/decl.c:1330
#, gcc-internal-format
msgid "shadowing library function %q#D"
msgstr ""
-#: cp/decl.c:1261
+#: cp/decl.c:1263
#, gcc-internal-format
msgid "library function %q#D redeclared as non-function %q#D"
msgstr ""
-#: cp/decl.c:1266
+#: cp/decl.c:1268
#, gcc-internal-format
msgid "conflicts with built-in declaration %q#D"
msgstr ""
-#: cp/decl.c:1320 cp/decl.c:1447 cp/decl.c:1464
+#: cp/decl.c:1322 cp/decl.c:1449 cp/decl.c:1466
#, gcc-internal-format
msgid "new declaration %q#D"
msgstr ""
-#: cp/decl.c:1321
+#: cp/decl.c:1323
#, gcc-internal-format
msgid "ambiguates built-in declaration %q#D"
msgstr ""
-#: cp/decl.c:1411
+#: cp/decl.c:1413
#, gcc-internal-format
msgid "%q#D redeclared as different kind of symbol"
msgstr ""
-#: cp/decl.c:1414
+#: cp/decl.c:1416
#, gcc-internal-format
msgid "previous declaration of %q+#D"
msgstr ""
-#: cp/decl.c:1433
+#: cp/decl.c:1435
#, gcc-internal-format
msgid "declaration of template %q#D"
msgstr ""
-#: cp/decl.c:1434 cp/name-lookup.c:525 cp/name-lookup.c:811
-#: cp/name-lookup.c:822
+#: cp/decl.c:1436 cp/name-lookup.c:504 cp/name-lookup.c:802
+#: cp/name-lookup.c:814
#, gcc-internal-format
msgid "conflicts with previous declaration %q+#D"
msgstr ""
-#: cp/decl.c:1448 cp/decl.c:1465
+#: cp/decl.c:1450 cp/decl.c:1467
#, gcc-internal-format
msgid "ambiguates old declaration %q+#D"
msgstr ""
-#: cp/decl.c:1456
+#: cp/decl.c:1458
#, gcc-internal-format
msgid "declaration of C function %q#D conflicts with"
msgstr ""
-#: cp/decl.c:1458
+#: cp/decl.c:1460
#, gcc-internal-format
msgid "previous declaration %q+#D here"
msgstr ""
-#: cp/decl.c:1473
+#: cp/decl.c:1475
#, gcc-internal-format
msgid "conflicting declaration %q#D"
msgstr ""
-#: cp/decl.c:1474
+#: cp/decl.c:1476
#, gcc-internal-format
msgid "%q+D has a previous declaration as %q#D"
msgstr ""
@@ -26151,63 +26422,63 @@
#. A namespace-name defined at global scope shall not be
#. declared as the name of any other entity in any global scope
#. of the program.
-#: cp/decl.c:1526
+#: cp/decl.c:1528
#, gcc-internal-format
msgid "declaration of namespace %qD conflicts with"
msgstr ""
-#: cp/decl.c:1527
+#: cp/decl.c:1529
#, gcc-internal-format
msgid "previous declaration of namespace %q+D here"
msgstr ""
-#: cp/decl.c:1538
+#: cp/decl.c:1540
#, gcc-internal-format
msgid "%q+#D previously defined here"
msgstr ""
#. Prototype decl follows defn w/o prototype.
-#: cp/decl.c:1548
+#: cp/decl.c:1550
#, gcc-internal-format
msgid "prototype for %q+#D"
msgstr ""
-#: cp/decl.c:1550
+#: cp/decl.c:1552
#, gcc-internal-format
msgid "follows non-prototype definition here"
msgstr ""
-#: cp/decl.c:1590
+#: cp/decl.c:1592
#, gcc-internal-format
msgid "previous declaration of %q+#D with %qL linkage"
msgstr ""
-#: cp/decl.c:1592
+#: cp/decl.c:1594
#, gcc-internal-format
msgid "conflicts with new declaration with %qL linkage"
msgstr ""
-#: cp/decl.c:1615 cp/decl.c:1621
+#: cp/decl.c:1617 cp/decl.c:1623
#, gcc-internal-format
msgid "default argument given for parameter %d of %q#D"
msgstr ""
-#: cp/decl.c:1617 cp/decl.c:1623
+#: cp/decl.c:1619 cp/decl.c:1625
#, gcc-internal-format
msgid "after previous specification in %q+#D"
msgstr ""
-#: cp/decl.c:1681
+#: cp/decl.c:1683
#, gcc-internal-format
msgid "redundant redeclaration of %qD in same scope"
msgstr ""
-#: cp/decl.c:1687
+#: cp/decl.c:1689
#, gcc-internal-format
msgid "deleted definition of %qD"
msgstr ""
-#: cp/decl.c:1688
+#: cp/decl.c:1690
#, gcc-internal-format
msgid "after previous declaration %q+D"
msgstr ""
@@ -26220,43 +26491,43 @@
#. that specialization that would cause an implicit
#. instantiation to take place, in every translation unit in
#. which such a use occurs.
-#: cp/decl.c:2043
+#: cp/decl.c:2049
#, gcc-internal-format
msgid "explicit specialization of %qD after first use"
msgstr ""
-#: cp/decl.c:2140
+#: cp/decl.c:2159
#, gcc-internal-format
msgid "%q+D: visibility attribute ignored because it"
msgstr ""
-#: cp/decl.c:2142
+#: cp/decl.c:2161
#, gcc-internal-format
msgid "conflicts with previous declaration here"
msgstr ""
#. Reject two definitions.
-#: cp/decl.c:2304 cp/decl.c:2333 cp/decl.c:2362 cp/decl.c:2379 cp/decl.c:2451
+#: cp/decl.c:2323 cp/decl.c:2352 cp/decl.c:2381 cp/decl.c:2398 cp/decl.c:2470
#, gcc-internal-format
msgid "redefinition of %q#D"
msgstr ""
-#: cp/decl.c:2320
+#: cp/decl.c:2339
#, gcc-internal-format
msgid "%qD conflicts with used function"
msgstr ""
-#: cp/decl.c:2330
+#: cp/decl.c:2349
#, gcc-internal-format
msgid "%q#D not declared in class"
msgstr ""
-#: cp/decl.c:2344 cp/decl.c:2389
+#: cp/decl.c:2363 cp/decl.c:2408
#, gcc-internal-format
msgid "%q+D redeclared inline with %<gnu_inline%> attribute"
msgstr ""
-#: cp/decl.c:2347 cp/decl.c:2392
+#: cp/decl.c:2366 cp/decl.c:2411
#, gcc-internal-format
msgid "%q+D redeclared inline without %<gnu_inline%> attribute"
msgstr ""
@@ -26264,334 +26535,334 @@
#. is_primary=
#. is_partial=
#. is_friend_decl=
-#: cp/decl.c:2408
+#: cp/decl.c:2427
#, gcc-internal-format
msgid "redeclaration of friend %q#D may not have default template arguments"
msgstr ""
-#: cp/decl.c:2422
+#: cp/decl.c:2441
#, gcc-internal-format
msgid "thread-local declaration of %q#D follows non-thread-local declaration"
msgstr ""
-#: cp/decl.c:2425
+#: cp/decl.c:2444
#, gcc-internal-format
msgid "non-thread-local declaration of %q#D follows thread-local declaration"
msgstr ""
-#: cp/decl.c:2440 cp/decl.c:2459
+#: cp/decl.c:2459 cp/decl.c:2478 cp/name-lookup.c:1083
#, gcc-internal-format
msgid "redeclaration of %q#D"
msgstr ""
-#: cp/decl.c:2603
+#: cp/decl.c:2633
#, gcc-internal-format
msgid "jump to label %qD"
msgstr ""
-#: cp/decl.c:2605
+#: cp/decl.c:2635
#, gcc-internal-format
msgid "jump to case label"
msgstr ""
-#: cp/decl.c:2607 cp/decl.c:2748 cp/decl.c:2788
+#: cp/decl.c:2637 cp/decl.c:2778 cp/decl.c:2818
#, gcc-internal-format
msgid " from here"
msgstr ""
-#: cp/decl.c:2626 cp/decl.c:2791
+#: cp/decl.c:2656 cp/decl.c:2821
#, gcc-internal-format
msgid " exits OpenMP structured block"
msgstr ""
-#: cp/decl.c:2647
+#: cp/decl.c:2677
#, gcc-internal-format
msgid " crosses initialization of %q+#D"
msgstr ""
-#: cp/decl.c:2649 cp/decl.c:2765
+#: cp/decl.c:2679 cp/decl.c:2795
#, gcc-internal-format
msgid " enters scope of %q+#D which has non-trivial destructor"
msgstr ""
-#: cp/decl.c:2663 cp/decl.c:2770
+#: cp/decl.c:2693 cp/decl.c:2800
#, gcc-internal-format
msgid " enters try block"
msgstr ""
#. Can't skip init of __exception_info.
-#: cp/decl.c:2665 cp/decl.c:2759 cp/decl.c:2772
+#: cp/decl.c:2695 cp/decl.c:2789 cp/decl.c:2802
#, gcc-internal-format
msgid " enters catch block"
msgstr ""
-#: cp/decl.c:2675 cp/decl.c:2775
+#: cp/decl.c:2705 cp/decl.c:2805
#, gcc-internal-format
msgid " enters OpenMP structured block"
msgstr ""
-#: cp/decl.c:2747 cp/decl.c:2787
+#: cp/decl.c:2777 cp/decl.c:2817
#, gcc-internal-format
msgid "jump to label %q+D"
msgstr ""
-#: cp/decl.c:2763
+#: cp/decl.c:2793
#, gcc-internal-format
msgid " skips initialization of %q+#D"
msgstr ""
-#: cp/decl.c:2840
+#: cp/decl.c:2870
#, gcc-internal-format
msgid "label named wchar_t"
msgstr ""
-#: cp/decl.c:3113
+#: cp/decl.c:3178
#, gcc-internal-format
msgid "%qD is not a type"
msgstr ""
-#: cp/decl.c:3119 cp/parser.c:4397
+#: cp/decl.c:3184 cp/parser.c:4417
#, gcc-internal-format
msgid "%qD used without template parameters"
msgstr ""
-#: cp/decl.c:3128
+#: cp/decl.c:3193
#, gcc-internal-format
msgid "%q#T is not a class"
msgstr ""
-#: cp/decl.c:3152 cp/decl.c:3242
+#: cp/decl.c:3217 cp/decl.c:3307
#, gcc-internal-format
msgid "no class template named %q#T in %q#T"
msgstr ""
-#: cp/decl.c:3165
+#: cp/decl.c:3230
#, gcc-internal-format
msgid "lookup of %qT in %qT is ambiguous"
msgstr ""
-#: cp/decl.c:3174
+#: cp/decl.c:3239
#, gcc-internal-format
msgid "%<typename %T::%D%> names %q#T, which is not a class template"
msgstr ""
-#: cp/decl.c:3181
+#: cp/decl.c:3246
#, gcc-internal-format
msgid "%<typename %T::%D%> names %q#T, which is not a type"
msgstr ""
-#: cp/decl.c:3251
+#: cp/decl.c:3316
#, gcc-internal-format
msgid "template parameters do not match template"
msgstr ""
-#: cp/decl.c:3252 cp/friend.c:318 cp/friend.c:326
+#: cp/decl.c:3317 cp/friend.c:325 cp/friend.c:333
#, gcc-internal-format
msgid "%q+D declared here"
msgstr ""
-#: cp/decl.c:3958
+#: cp/decl.c:4023
#, gcc-internal-format
msgid "an anonymous struct cannot have function members"
msgstr ""
-#: cp/decl.c:3961
+#: cp/decl.c:4026
#, gcc-internal-format
msgid "an anonymous union cannot have function members"
msgstr ""
-#: cp/decl.c:3979
+#: cp/decl.c:4044
#, gcc-internal-format
msgid "member %q+#D with constructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:3982
+#: cp/decl.c:4047
#, gcc-internal-format
msgid "member %q+#D with destructor not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:3985
+#: cp/decl.c:4050
#, gcc-internal-format
msgid ""
"member %q+#D with copy assignment operator not allowed in anonymous aggregate"
msgstr ""
-#: cp/decl.c:4010
+#: cp/decl.c:4075
#, gcc-internal-format
msgid "multiple types in one declaration"
msgstr ""
-#: cp/decl.c:4014
+#: cp/decl.c:4079
#, gcc-internal-format
msgid "redeclaration of C++ built-in type %qT"
msgstr ""
-#: cp/decl.c:4051
+#: cp/decl.c:4116
#, gcc-internal-format
msgid "missing type-name in typedef-declaration"
msgstr ""
-#: cp/decl.c:4058
+#: cp/decl.c:4123
#, gcc-internal-format
msgid "ISO C++ prohibits anonymous structs"
msgstr ""
-#: cp/decl.c:4065
+#: cp/decl.c:4130
#, gcc-internal-format
msgid "%qs can only be specified for functions"
msgstr ""
-#: cp/decl.c:4071
+#: cp/decl.c:4136
#, gcc-internal-format
msgid "%<friend%> can only be specified inside a class"
msgstr ""
-#: cp/decl.c:4073
+#: cp/decl.c:4138
#, gcc-internal-format
msgid "%<explicit%> can only be specified for constructors"
msgstr ""
-#: cp/decl.c:4075
+#: cp/decl.c:4140
#, gcc-internal-format
msgid "a storage class can only be specified for objects and functions"
msgstr ""
-#: cp/decl.c:4081
+#: cp/decl.c:4146
#, gcc-internal-format
msgid "qualifiers can only be specified for objects and functions"
msgstr ""
-#: cp/decl.c:4084
+#: cp/decl.c:4149
#, gcc-internal-format
msgid "%<typedef%> was ignored in this declaration"
msgstr ""
-#: cp/decl.c:4086
+#: cp/decl.c:4151
#, gcc-internal-format
msgid "%<constexpr%> cannot be used for type declarations"
msgstr ""
-#: cp/decl.c:4115
+#: cp/decl.c:4180
#, gcc-internal-format
msgid "attribute ignored in declaration of %q+#T"
msgstr ""
-#: cp/decl.c:4116
+#: cp/decl.c:4181
#, gcc-internal-format
msgid "attribute for %q+#T must follow the %qs keyword"
msgstr ""
-#: cp/decl.c:4161
+#: cp/decl.c:4226
#, gcc-internal-format
msgid "ignoring attributes applied to class type %qT outside of definition"
msgstr ""
#. A template type parameter or other dependent type.
-#: cp/decl.c:4165
+#: cp/decl.c:4230
#, gcc-internal-format
msgid ""
"ignoring attributes applied to dependent type %qT without an associated "
"declaration"
msgstr ""
-#: cp/decl.c:4232 cp/decl2.c:813
+#: cp/decl.c:4297 cp/decl2.c:814
#, gcc-internal-format
msgid "typedef %qD is initialized (use decltype instead)"
msgstr ""
-#: cp/decl.c:4250
+#: cp/decl.c:4315
#, gcc-internal-format
msgid "declaration of %q#D has %<extern%> and is initialized"
msgstr ""
-#: cp/decl.c:4279
+#: cp/decl.c:4344
#, gcc-internal-format
msgid "definition of %q#D is marked %<dllimport%>"
msgstr ""
-#: cp/decl.c:4298
+#: cp/decl.c:4363
#, gcc-internal-format
msgid "%q#D is not a static member of %q#T"
msgstr ""
-#: cp/decl.c:4304
+#: cp/decl.c:4369
#, gcc-internal-format
msgid "ISO C++ does not permit %<%T::%D%> to be defined as %<%T::%D%>"
msgstr ""
-#: cp/decl.c:4313
+#: cp/decl.c:4378
#, gcc-internal-format
msgid ""
"template header not allowed in member definition of explicitly specialized "
"class"
msgstr ""
-#: cp/decl.c:4321
+#: cp/decl.c:4386
#, gcc-internal-format
msgid "duplicate initialization of %qD"
msgstr ""
-#: cp/decl.c:4326
+#: cp/decl.c:4391
#, gcc-internal-format
msgid "%qD declared %<constexpr%> outside its class"
msgstr ""
-#: cp/decl.c:4365
+#: cp/decl.c:4430
#, gcc-internal-format
msgid "declaration of %q#D outside of class is not definition"
msgstr ""
-#: cp/decl.c:4460
+#: cp/decl.c:4525
#, gcc-internal-format
msgid "variable %q#D has initializer but incomplete type"
msgstr ""
-#: cp/decl.c:4466 cp/decl.c:5226
+#: cp/decl.c:4531 cp/decl.c:5332
#, gcc-internal-format
msgid "elements of array %q#D have incomplete type"
msgstr ""
-#: cp/decl.c:4473 cp/decl.c:5779
+#: cp/decl.c:4538 cp/decl.c:5938
#, gcc-internal-format
msgid "declaration of %q#D has no initializer"
msgstr ""
-#: cp/decl.c:4475
+#: cp/decl.c:4540
#, gcc-internal-format
msgid "aggregate %q#D has incomplete type and cannot be defined"
msgstr ""
-#: cp/decl.c:4511
+#: cp/decl.c:4576
#, gcc-internal-format
msgid "%qD declared as reference but not initialized"
msgstr ""
-#: cp/decl.c:4537
+#: cp/decl.c:4602
#, gcc-internal-format
msgid "cannot initialize %qT from %qT"
msgstr ""
-#: cp/decl.c:4598
+#: cp/decl.c:4663
#, gcc-internal-format
msgid "name used in a GNU-style designated initializer for an array"
msgstr ""
-#: cp/decl.c:4606
+#: cp/decl.c:4671
#, gcc-internal-format
msgid "name %qD used in a GNU-style designated initializer for an array"
msgstr ""
-#: cp/decl.c:4654
+#: cp/decl.c:4719
#, gcc-internal-format
msgid "initializer fails to determine size of %qD"
msgstr ""
-#: cp/decl.c:4661
+#: cp/decl.c:4726
#, gcc-internal-format
msgid "array size missing in %qD"
msgstr ""
-#: cp/decl.c:4673
+#: cp/decl.c:4738
#, gcc-internal-format
msgid "zero-size array %qD"
msgstr ""
@@ -26599,338 +26870,358 @@
#. An automatic variable with an incomplete type: that is an error.
#. Don't talk about array types here, since we took care of that
#. message in grokdeclarator.
-#: cp/decl.c:4716
+#: cp/decl.c:4781
#, gcc-internal-format
msgid "storage size of %qD isn%'t known"
msgstr ""
-#: cp/decl.c:4739
+#: cp/decl.c:4804
#, gcc-internal-format
msgid "storage size of %qD isn%'t constant"
msgstr ""
-#: cp/decl.c:4785
+#: cp/decl.c:4850
#, gcc-internal-format
msgid ""
"sorry: semantics of inline function static data %q+#D are wrong (you%'ll "
"wind up with multiple copies)"
msgstr ""
-#: cp/decl.c:4789
+#: cp/decl.c:4854
#, gcc-internal-format
msgid " you can work around this by removing the initializer"
msgstr ""
-#: cp/decl.c:4818
+#: cp/decl.c:4883
#, gcc-internal-format
msgid "uninitialized const %qD"
msgstr ""
-#: cp/decl.c:4826
+#: cp/decl.c:4891
#, gcc-internal-format
msgid "%q#T has no user-provided default constructor"
msgstr ""
-#: cp/decl.c:4830
+#: cp/decl.c:4895
#, gcc-internal-format
msgid ""
"constructor is not user-provided because it is explicitly defaulted in the "
"class body"
msgstr ""
-#: cp/decl.c:4944
+#: cp/decl.c:5014
#, gcc-internal-format
msgid "invalid type %qT as initializer for a vector of type %qT"
msgstr ""
-#: cp/decl.c:4983
+#: cp/decl.c:5055
#, gcc-internal-format
msgid "initializer for %qT must be brace-enclosed"
msgstr ""
-#: cp/decl.c:5001
+#: cp/decl.c:5074
#, gcc-internal-format
msgid "%qT has no non-static data member named %qD"
msgstr ""
-#: cp/decl.c:5060
-#, gcc-internal-format
-msgid "braces around scalar initializer for type %qT"
-msgstr ""
-
-#: cp/decl.c:5151
-#, gcc-internal-format
-msgid "missing braces around initializer for %qT"
-msgstr ""
-
-#: cp/decl.c:5208 cp/typeck2.c:986 cp/typeck2.c:1165 cp/typeck2.c:1188
-#: cp/typeck2.c:1231
+#: cp/decl.c:5130 cp/decl.c:5311 cp/typeck2.c:1015 cp/typeck2.c:1214
+#: cp/typeck2.c:1243 cp/typeck2.c:1290
#, gcc-internal-format
msgid "too many initializers for %qT"
msgstr ""
-#: cp/decl.c:5228
+#: cp/decl.c:5161
+#, gcc-internal-format
+msgid "braces around scalar initializer for type %qT"
+msgstr ""
+
+#: cp/decl.c:5252
+#, gcc-internal-format
+msgid "missing braces around initializer for %qT"
+msgstr ""
+
+#: cp/decl.c:5334
#, gcc-internal-format
msgid "elements of array %q#T have incomplete type"
msgstr ""
-#: cp/decl.c:5237
+#: cp/decl.c:5343
#, gcc-internal-format
msgid "variable-sized object %qD may not be initialized"
msgstr ""
-#: cp/decl.c:5239
+#: cp/decl.c:5345
#, gcc-internal-format
msgid "variable-sized compound literal"
msgstr ""
-#: cp/decl.c:5295
+#: cp/decl.c:5409
#, gcc-internal-format
msgid "%qD has incomplete type"
msgstr ""
-#: cp/decl.c:5315
+#: cp/decl.c:5429
#, gcc-internal-format
msgid "scalar object %qD requires one element in initializer"
msgstr ""
-#: cp/decl.c:5351
+#: cp/decl.c:5465
#, gcc-internal-format
msgid "in C++98 %qD must be initialized by constructor, not by %<{...}%>"
msgstr ""
-#: cp/decl.c:5419
+#: cp/decl.c:5538
#, gcc-internal-format
msgid "array %qD initialized by parenthesized string literal %qE"
msgstr ""
-#: cp/decl.c:5446
+#: cp/decl.c:5565
#, gcc-internal-format
msgid "initializer invalid for static member with constructor"
msgstr ""
-#: cp/decl.c:5448
+#: cp/decl.c:5567
#, gcc-internal-format
msgid "non-constant in-class initialization invalid for static member %qD"
msgstr ""
-#: cp/decl.c:5452
+#: cp/decl.c:5571
#, gcc-internal-format
msgid "(an out of class initialization is required)"
msgstr ""
-#: cp/decl.c:5745
+#: cp/decl.c:5904
#, gcc-internal-format
msgid "assignment (not initialization) in declaration"
msgstr ""
-#: cp/decl.c:5904
+#: cp/decl.c:6053
#, gcc-internal-format
msgid "shadowing previous type declaration of %q#D"
msgstr ""
-#: cp/decl.c:5936
+#: cp/decl.c:6085
#, gcc-internal-format
msgid "%qD cannot be thread-local because it has non-trivial type %qT"
msgstr ""
-#: cp/decl.c:5978
+#: cp/decl.c:6127
#, gcc-internal-format
msgid "Java object %qD not allocated with %<new%>"
msgstr ""
-#: cp/decl.c:5985
+#: cp/decl.c:6134
#, gcc-internal-format
msgid "%qD is thread-local and so cannot be dynamically initialized"
msgstr ""
-#: cp/decl.c:6003
+#: cp/decl.c:6152
#, gcc-internal-format
msgid ""
"%qD cannot be initialized by a non-constant expression when being declared"
msgstr ""
-#: cp/decl.c:6052
+#: cp/decl.c:6200
#, gcc-internal-format
msgid "non-static data member %qD has Java class type"
msgstr ""
-#: cp/decl.c:6118
+#: cp/decl.c:6265
#, gcc-internal-format
msgid "function %q#D is initialized like a variable"
msgstr ""
-#: cp/decl.c:6697
+#: cp/decl.c:6856
+#, gcc-internal-format
+msgid "initializer fails to determine size of %qT"
+msgstr ""
+
+#: cp/decl.c:6860
+#, gcc-internal-format
+msgid "array size missing in %qT"
+msgstr ""
+
+#: cp/decl.c:6863
+#, gcc-internal-format
+msgid "zero-size array %qT"
+msgstr ""
+
+#: cp/decl.c:6879
#, gcc-internal-format
msgid "destructor for alien class %qT cannot be a member"
msgstr ""
-#: cp/decl.c:6699
+#: cp/decl.c:6881
#, gcc-internal-format
msgid "constructor for alien class %qT cannot be a member"
msgstr ""
-#: cp/decl.c:6723
+#: cp/decl.c:6905
#, gcc-internal-format
msgid "%qD declared as a %<virtual%> variable"
msgstr ""
-#: cp/decl.c:6725
+#: cp/decl.c:6907
#, gcc-internal-format
msgid "%qD declared as an %<inline%> variable"
msgstr ""
-#: cp/decl.c:6727
+#: cp/decl.c:6909
#, gcc-internal-format
msgid ""
"%<const%> and %<volatile%> function specifiers on %qD invalid in variable "
"declaration"
msgstr ""
-#: cp/decl.c:6732
+#: cp/decl.c:6914
#, gcc-internal-format
msgid "%qD declared as a %<virtual%> parameter"
msgstr ""
-#: cp/decl.c:6734
+#: cp/decl.c:6916
#, gcc-internal-format
msgid "%qD declared as an %<inline%> parameter"
msgstr ""
-#: cp/decl.c:6736
+#: cp/decl.c:6918
#, gcc-internal-format
msgid ""
"%<const%> and %<volatile%> function specifiers on %qD invalid in parameter "
"declaration"
msgstr ""
-#: cp/decl.c:6741
+#: cp/decl.c:6923
#, gcc-internal-format
msgid "%qD declared as a %<virtual%> type"
msgstr ""
-#: cp/decl.c:6743
+#: cp/decl.c:6925
#, gcc-internal-format
msgid "%qD declared as an %<inline%> type"
msgstr ""
-#: cp/decl.c:6745
+#: cp/decl.c:6927
#, gcc-internal-format
msgid ""
"%<const%> and %<volatile%> function specifiers on %qD invalid in type "
"declaration"
msgstr ""
-#: cp/decl.c:6750
+#: cp/decl.c:6932
#, gcc-internal-format
msgid "%qD declared as a %<virtual%> field"
msgstr ""
-#: cp/decl.c:6752
+#: cp/decl.c:6934
#, gcc-internal-format
msgid "%qD declared as an %<inline%> field"
msgstr ""
-#: cp/decl.c:6754
+#: cp/decl.c:6936
#, gcc-internal-format
msgid ""
"%<const%> and %<volatile%> function specifiers on %qD invalid in field "
"declaration"
msgstr ""
-#: cp/decl.c:6761
+#: cp/decl.c:6943
#, gcc-internal-format
msgid "%q+D declared as a friend"
msgstr ""
-#: cp/decl.c:6767
+#: cp/decl.c:6949
#, gcc-internal-format
msgid "%q+D declared with an exception specification"
msgstr ""
-#: cp/decl.c:6801
+#: cp/decl.c:6983
#, gcc-internal-format
msgid "definition of %qD is not in namespace enclosing %qT"
msgstr ""
-#: cp/decl.c:6922
+#: cp/decl.c:7016
+#, gcc-internal-format
+msgid "static member function %q#D declared with type qualifiers"
+msgstr ""
+
+#: cp/decl.c:7115
#, gcc-internal-format
msgid "defining explicit specialization %qD in friend declaration"
msgstr ""
#. Something like `template <class T> friend void f<T>()'.
-#: cp/decl.c:6932
+#: cp/decl.c:7125
#, gcc-internal-format
msgid "invalid use of template-id %qD in declaration of primary template"
msgstr ""
-#: cp/decl.c:6962
+#: cp/decl.c:7155
#, gcc-internal-format
msgid ""
"default arguments are not allowed in declaration of friend template "
"specialization %qD"
msgstr ""
-#: cp/decl.c:6970
+#: cp/decl.c:7163
#, gcc-internal-format
msgid ""
"%<inline%> is not allowed in declaration of friend template specialization "
"%qD"
msgstr ""
-#: cp/decl.c:7012
+#: cp/decl.c:7205
#, gcc-internal-format
msgid "cannot declare %<::main%> to be a template"
msgstr ""
-#: cp/decl.c:7014
+#: cp/decl.c:7207
#, gcc-internal-format
msgid "cannot declare %<::main%> to be inline"
msgstr ""
-#: cp/decl.c:7016
+#: cp/decl.c:7209
#, gcc-internal-format
msgid "cannot declare %<::main%> to be static"
msgstr ""
-#: cp/decl.c:7044
+#: cp/decl.c:7237
#, gcc-internal-format
msgid ""
"anonymous type with no linkage used to declare function %q#D with linkage"
msgstr ""
-#: cp/decl.c:7048 cp/decl.c:7334 cp/decl2.c:3619
+#: cp/decl.c:7241 cp/decl.c:7551 cp/decl2.c:3622
#, gcc-internal-format
msgid ""
"%q+#D does not refer to the unqualified type, so it is not used for linkage"
msgstr ""
-#: cp/decl.c:7054
+#: cp/decl.c:7247
#, gcc-internal-format
msgid "type %qT with no linkage used to declare function %q#D with linkage"
msgstr ""
-#: cp/decl.c:7076
+#: cp/decl.c:7269
#, gcc-internal-format
msgid "static member function %qD cannot have cv-qualifier"
msgstr ""
-#: cp/decl.c:7077
+#: cp/decl.c:7270
#, gcc-internal-format
msgid "non-member function %qD cannot have cv-qualifier"
msgstr ""
-#: cp/decl.c:7122
+#: cp/decl.c:7318
#, gcc-internal-format
msgid "%<::main%> must return %<int%>"
msgstr ""
-#: cp/decl.c:7162
+#: cp/decl.c:7360
#, gcc-internal-format
msgid "definition of implicitly-declared %qD"
msgstr ""
-#: cp/decl.c:7179 cp/decl2.c:734
+#: cp/decl.c:7377 cp/decl2.c:735
#, gcc-internal-format
msgid "no %q#D member function declared in class %qT"
msgstr ""
@@ -26939,871 +27230,891 @@
#. no linkage can only be used to declare extern "C"
#. entities. Since it's not always an error in the
#. ISO C++ 90 Standard, we only issue a warning.
-#: cp/decl.c:7331
+#: cp/decl.c:7548
#, gcc-internal-format
msgid ""
"anonymous type with no linkage used to declare variable %q#D with linkage"
msgstr ""
-#: cp/decl.c:7340
+#: cp/decl.c:7557
#, gcc-internal-format
msgid "type %qT with no linkage used to declare variable %q#D with linkage"
msgstr ""
-#: cp/decl.c:7460
+#: cp/decl.c:7680
#, gcc-internal-format
msgid ""
"%<constexpr%> needed for in-class initialization of static data member %q#D "
"of non-integral type"
msgstr ""
-#: cp/decl.c:7463
+#: cp/decl.c:7683
#, gcc-internal-format
msgid "in-class initialization of static data member %q#D of non-literal type"
msgstr ""
-#: cp/decl.c:7476
+#: cp/decl.c:7696
#, gcc-internal-format
msgid ""
"invalid in-class initialization of static data member of non-integral type "
"%qT"
msgstr ""
-#: cp/decl.c:7482
+#: cp/decl.c:7702
#, gcc-internal-format
msgid "ISO C++ forbids in-class initialization of non-const static member %qD"
msgstr ""
-#: cp/decl.c:7486
+#: cp/decl.c:7706
#, gcc-internal-format
msgid ""
"ISO C++ forbids initialization of member constant %qD of non-integral type "
"%qT"
msgstr ""
-#: cp/decl.c:7547
+#: cp/decl.c:7783 cp/decl.c:7811
#, gcc-internal-format
msgid "size of array %qD has non-integral type %qT"
msgstr ""
-#: cp/decl.c:7549
+#: cp/decl.c:7786 cp/decl.c:7813
#, gcc-internal-format
msgid "size of array has non-integral type %qT"
msgstr ""
-#: cp/decl.c:7599
+#: cp/decl.c:7863
#, gcc-internal-format
msgid "size of array %qD is negative"
msgstr ""
-#: cp/decl.c:7601
+#: cp/decl.c:7865
#, gcc-internal-format
msgid "size of array is negative"
msgstr ""
-#: cp/decl.c:7615
+#: cp/decl.c:7879
#, gcc-internal-format
msgid "ISO C++ forbids zero-size array %qD"
msgstr ""
-#: cp/decl.c:7617
+#: cp/decl.c:7881
#, gcc-internal-format
msgid "ISO C++ forbids zero-size array"
msgstr ""
-#: cp/decl.c:7629
+#: cp/decl.c:7893
#, gcc-internal-format
msgid "size of array %qD is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:7632
+#: cp/decl.c:7896
#, gcc-internal-format
msgid "size of array is not an integral constant-expression"
msgstr ""
-#: cp/decl.c:7638
+#: cp/decl.c:7902
#, gcc-internal-format
msgid "ISO C++ forbids variable length array %qD"
msgstr ""
-#: cp/decl.c:7640
+#: cp/decl.c:7904
#, gcc-internal-format
msgid "ISO C++ forbids variable length array"
msgstr ""
-#: cp/decl.c:7646
+#: cp/decl.c:7910
#, gcc-internal-format
msgid "variable length array %qD is used"
msgstr ""
-#: cp/decl.c:7684
+#: cp/decl.c:7948
#, gcc-internal-format
msgid "overflow in array dimension"
msgstr ""
-#: cp/decl.c:7746
+#: cp/decl.c:8008
+#, gcc-internal-format
+msgid "declaration of %qD as array of %<auto%>"
+msgstr ""
+
+#: cp/decl.c:8016
#, gcc-internal-format
msgid "declaration of %qD as array of void"
msgstr ""
-#: cp/decl.c:7748
+#: cp/decl.c:8018
#, gcc-internal-format
msgid "creating array of void"
msgstr ""
-#: cp/decl.c:7753
+#: cp/decl.c:8023
#, gcc-internal-format
msgid "declaration of %qD as array of functions"
msgstr ""
-#: cp/decl.c:7755
+#: cp/decl.c:8025
#, gcc-internal-format
msgid "creating array of functions"
msgstr ""
-#: cp/decl.c:7760
+#: cp/decl.c:8030
#, gcc-internal-format
msgid "declaration of %qD as array of references"
msgstr ""
-#: cp/decl.c:7762
+#: cp/decl.c:8032
#, gcc-internal-format
msgid "creating array of references"
msgstr ""
-#: cp/decl.c:7767
+#: cp/decl.c:8037
#, gcc-internal-format
msgid "declaration of %qD as array of function members"
msgstr ""
-#: cp/decl.c:7769
+#: cp/decl.c:8039
#, gcc-internal-format
msgid "creating array of function members"
msgstr ""
-#: cp/decl.c:7783
+#: cp/decl.c:8053
#, gcc-internal-format
msgid ""
"declaration of %qD as multidimensional array must have bounds for all "
"dimensions except the first"
msgstr ""
-#: cp/decl.c:7787
+#: cp/decl.c:8057
#, gcc-internal-format
msgid ""
"multidimensional array must have bounds for all dimensions except the first"
msgstr ""
-#: cp/decl.c:7822
+#: cp/decl.c:8092
#, gcc-internal-format
msgid "return type specification for constructor invalid"
msgstr ""
-#: cp/decl.c:7832
+#: cp/decl.c:8102
#, gcc-internal-format
msgid "return type specification for destructor invalid"
msgstr ""
-#: cp/decl.c:7845
+#: cp/decl.c:8115
#, gcc-internal-format
msgid "return type specified for %<operator %T%>"
msgstr ""
-#: cp/decl.c:7867
+#: cp/decl.c:8137
#, gcc-internal-format
msgid "unnamed variable or field declared void"
msgstr ""
-#: cp/decl.c:7874
+#: cp/decl.c:8144
#, gcc-internal-format
msgid "variable or field declared void"
msgstr ""
-#: cp/decl.c:8055
+#: cp/decl.c:8328
#, gcc-internal-format
msgid "invalid use of qualified-name %<::%D%>"
msgstr ""
-#: cp/decl.c:8058
+#: cp/decl.c:8331
#, gcc-internal-format
msgid "invalid use of qualified-name %<%T::%D%>"
msgstr ""
-#: cp/decl.c:8061
+#: cp/decl.c:8334
#, gcc-internal-format
msgid "invalid use of qualified-name %<%D::%D%>"
msgstr ""
-#: cp/decl.c:8073
+#: cp/decl.c:8343
+#, gcc-internal-format
+msgid "%q#T is not a class or a namespace"
+msgstr ""
+
+#: cp/decl.c:8351
#, gcc-internal-format
msgid "type %qT is not derived from type %qT"
msgstr ""
-#: cp/decl.c:8089 cp/decl.c:8181 cp/decl.c:9483
+#: cp/decl.c:8367 cp/decl.c:8459 cp/decl.c:9788
#, gcc-internal-format
msgid "declaration of %qD as non-function"
msgstr ""
-#: cp/decl.c:8095
+#: cp/decl.c:8373
#, gcc-internal-format
msgid "declaration of %qD as non-member"
msgstr ""
-#: cp/decl.c:8126
+#: cp/decl.c:8404
#, gcc-internal-format
msgid "declarator-id missing; using reserved word %qD"
msgstr ""
-#: cp/decl.c:8173
+#: cp/decl.c:8451
#, gcc-internal-format
msgid "function definition does not declare parameters"
msgstr ""
-#: cp/decl.c:8213
+#: cp/decl.c:8467
+#, gcc-internal-format
+msgid "declaration of %qD as %<typedef%>"
+msgstr ""
+
+#: cp/decl.c:8472
+#, gcc-internal-format
+msgid "declaration of %qD as parameter"
+msgstr ""
+
+#: cp/decl.c:8505
#, gcc-internal-format
msgid "%<constexpr%> cannot appear in a typedef declaration"
msgstr ""
-#: cp/decl.c:8221
+#: cp/decl.c:8513
#, gcc-internal-format
msgid "two or more data types in declaration of %qs"
msgstr ""
-#: cp/decl.c:8227
+#: cp/decl.c:8519
#, gcc-internal-format
msgid "conflicting specifiers in declaration of %qs"
msgstr ""
-#: cp/decl.c:8299 cp/decl.c:8302 cp/decl.c:8305
+#: cp/decl.c:8591 cp/decl.c:8594 cp/decl.c:8597
#, gcc-internal-format
msgid "ISO C++ forbids declaration of %qs with no type"
msgstr ""
-#: cp/decl.c:8330 cp/decl.c:8352
+#: cp/decl.c:8622 cp/decl.c:8644
#, gcc-internal-format
msgid "%<signed%> or %<unsigned%> invalid for %qs"
msgstr ""
-#: cp/decl.c:8332
+#: cp/decl.c:8624
#, gcc-internal-format
msgid "%<signed%> and %<unsigned%> specified together for %qs"
msgstr ""
-#: cp/decl.c:8334
+#: cp/decl.c:8626
#, gcc-internal-format
msgid "%<long long%> invalid for %qs"
msgstr ""
-#: cp/decl.c:8336
+#: cp/decl.c:8628
#, gcc-internal-format
msgid "%<__int128%> invalid for %qs"
msgstr ""
-#: cp/decl.c:8338
+#: cp/decl.c:8630
#, gcc-internal-format
msgid "%<long%> invalid for %qs"
msgstr ""
-#: cp/decl.c:8340
+#: cp/decl.c:8632
#, gcc-internal-format
msgid "%<short%> invalid for %qs"
msgstr ""
-#: cp/decl.c:8342
+#: cp/decl.c:8634
#, gcc-internal-format
msgid "%<long%> or %<short%> invalid for %qs"
msgstr ""
-#: cp/decl.c:8344
+#: cp/decl.c:8636
#, gcc-internal-format
msgid "%<long%>, %<int%>, %<short%>, or %<char%> invalid for %qs"
msgstr ""
-#: cp/decl.c:8346
+#: cp/decl.c:8638
#, gcc-internal-format
msgid "%<long%> or %<short%> specified with char for %qs"
msgstr ""
-#: cp/decl.c:8348
+#: cp/decl.c:8640
#, gcc-internal-format
msgid "%<long%> and %<short%> specified together for %qs"
msgstr ""
-#: cp/decl.c:8354
+#: cp/decl.c:8646
#, gcc-internal-format
msgid "%<short%> or %<long%> invalid for %qs"
msgstr ""
-#: cp/decl.c:8362
+#: cp/decl.c:8654
#, gcc-internal-format
msgid "long, short, signed or unsigned used invalidly for %qs"
msgstr ""
-#: cp/decl.c:8371
+#: cp/decl.c:8663
#, gcc-internal-format
msgid "%<__int128%> is not supported by this target"
msgstr ""
-#: cp/decl.c:8377
+#: cp/decl.c:8669
#, gcc-internal-format
msgid "ISO C++ does not support %<__int128%> for %qs"
msgstr ""
-#: cp/decl.c:8447
+#: cp/decl.c:8739
#, gcc-internal-format
msgid "complex invalid for %qs"
msgstr ""
-#: cp/decl.c:8475
+#: cp/decl.c:8767
#, gcc-internal-format
msgid "qualifiers are not allowed on declaration of %<operator %T%>"
msgstr ""
-#: cp/decl.c:8496
+#: cp/decl.c:8788
#, gcc-internal-format
msgid "member %qD cannot be declared both virtual and static"
msgstr ""
-#: cp/decl.c:8504
+#: cp/decl.c:8796
#, gcc-internal-format
msgid "%<%T::%D%> is not a valid declarator"
msgstr ""
-#: cp/decl.c:8513
+#: cp/decl.c:8805
#, gcc-internal-format
msgid "typedef declaration invalid in parameter declaration"
msgstr ""
-#: cp/decl.c:8518
+#: cp/decl.c:8810
#, gcc-internal-format
msgid "storage class specified for template parameter %qs"
msgstr ""
-#: cp/decl.c:8524
+#: cp/decl.c:8816
#, gcc-internal-format
msgid "storage class specifiers invalid in parameter declarations"
msgstr ""
-#: cp/decl.c:8528
-#, gcc-internal-format
-msgid "parameter declared %<auto%>"
-msgstr ""
-
-#: cp/decl.c:8536
+#: cp/decl.c:8822
#, gcc-internal-format
msgid "a parameter cannot be declared %<constexpr%>"
msgstr ""
-#: cp/decl.c:8545
+#: cp/decl.c:8831
#, gcc-internal-format
msgid "%<virtual%> outside class declaration"
msgstr ""
-#: cp/decl.c:8563
+#: cp/decl.c:8849
#, gcc-internal-format
msgid "multiple storage classes in declaration of %qs"
msgstr ""
-#: cp/decl.c:8586
+#: cp/decl.c:8872
#, gcc-internal-format
msgid "storage class specified for %qs"
msgstr ""
-#: cp/decl.c:8590
+#: cp/decl.c:8876
#, gcc-internal-format
msgid "storage class specified for parameter %qs"
msgstr ""
-#: cp/decl.c:8603
+#: cp/decl.c:8889
#, gcc-internal-format
msgid "nested function %qs declared %<extern%>"
msgstr ""
-#: cp/decl.c:8607
+#: cp/decl.c:8893
#, gcc-internal-format
msgid "top-level declaration of %qs specifies %<auto%>"
msgstr ""
-#: cp/decl.c:8613
+#: cp/decl.c:8899
#, gcc-internal-format
msgid "function-scope %qs implicitly auto and declared %<__thread%>"
msgstr ""
-#: cp/decl.c:8620
+#: cp/decl.c:8906
#, gcc-internal-format
msgid "storage class specifiers invalid in friend function declarations"
msgstr ""
-#: cp/decl.c:8714
+#: cp/decl.c:9000
#, gcc-internal-format
msgid "%qs declared as function returning a function"
msgstr ""
-#: cp/decl.c:8719
+#: cp/decl.c:9005
#, gcc-internal-format
msgid "%qs declared as function returning an array"
msgstr ""
-#: cp/decl.c:8740
+#: cp/decl.c:9027
#, gcc-internal-format
msgid "%qs function uses %<auto%> type specifier without late return type"
msgstr ""
-#: cp/decl.c:8746
+#: cp/decl.c:9033
#, gcc-internal-format
msgid ""
"%qs function with late return type has %qT as its type rather than plain "
"%<auto%>"
msgstr ""
-#: cp/decl.c:8754
+#: cp/decl.c:9041
#, gcc-internal-format
msgid ""
"%qs function with late return type not declared with %<auto%> type specifier"
msgstr ""
-#: cp/decl.c:8787
+#: cp/decl.c:9074
#, gcc-internal-format
msgid "destructor cannot be static member function"
msgstr ""
-#: cp/decl.c:8792
+#: cp/decl.c:9079
#, gcc-internal-format
msgid "destructors may not be cv-qualified"
msgstr ""
-#: cp/decl.c:8810
+#: cp/decl.c:9097
#, gcc-internal-format
msgid "constructors cannot be declared virtual"
msgstr ""
-#: cp/decl.c:8823
+#: cp/decl.c:9110
#, gcc-internal-format
msgid "can%'t initialize friend function %qs"
msgstr ""
#. Cannot be both friend and virtual.
-#: cp/decl.c:8827
+#: cp/decl.c:9114
#, gcc-internal-format
msgid "virtual functions cannot be friends"
msgstr ""
-#: cp/decl.c:8831
+#: cp/decl.c:9118
#, gcc-internal-format
msgid "friend declaration not in class definition"
msgstr ""
-#: cp/decl.c:8833
+#: cp/decl.c:9120
#, gcc-internal-format
msgid "can%'t define friend function %qs in a local class definition"
msgstr ""
-#: cp/decl.c:8854
+#: cp/decl.c:9141
#, gcc-internal-format
msgid "destructors may not have parameters"
msgstr ""
-#: cp/decl.c:8873
+#: cp/decl.c:9160
#, gcc-internal-format
msgid "cannot declare pointer to %q#T"
msgstr ""
-#: cp/decl.c:8886 cp/decl.c:8893
+#: cp/decl.c:9173 cp/decl.c:9180
#, gcc-internal-format
msgid "cannot declare reference to %q#T"
msgstr ""
-#: cp/decl.c:8895
+#: cp/decl.c:9182
#, gcc-internal-format
msgid "cannot declare pointer to %q#T member"
msgstr ""
-#: cp/decl.c:8918
+#: cp/decl.c:9205
#, gcc-internal-format
msgid "cannot declare reference to qualified function type %qT"
msgstr ""
-#: cp/decl.c:8919
+#: cp/decl.c:9206
#, gcc-internal-format
msgid "cannot declare pointer to qualified function type %qT"
msgstr ""
-#: cp/decl.c:8983
+#: cp/decl.c:9280
#, gcc-internal-format
msgid ""
"cannot declare reference to %q#T, which is not a typedef or a template type "
"argument"
msgstr ""
-#: cp/decl.c:9028
+#: cp/decl.c:9333
#, gcc-internal-format
msgid "both %<const%> and %<constexpr%> cannot be used here"
msgstr ""
-#: cp/decl.c:9030
+#: cp/decl.c:9335
#, gcc-internal-format
msgid "both %<volatile%> and %<constexpr%> cannot be used here"
msgstr ""
-#: cp/decl.c:9039
+#: cp/decl.c:9344
#, gcc-internal-format
msgid "template-id %qD used as a declarator"
msgstr ""
-#: cp/decl.c:9090
+#: cp/decl.c:9395
#, gcc-internal-format
msgid "member functions are implicitly friends of their class"
msgstr ""
-#: cp/decl.c:9095
+#: cp/decl.c:9400
#, gcc-internal-format
msgid "extra qualification %<%T::%> on member %qs"
msgstr ""
-#: cp/decl.c:9125
+#: cp/decl.c:9430
#, gcc-internal-format
msgid "cannot define member function %<%T::%s%> within %<%T%>"
msgstr ""
-#: cp/decl.c:9134
+#: cp/decl.c:9439
#, gcc-internal-format
msgid "cannot declare member %<%T::%s%> within %qT"
msgstr ""
-#: cp/decl.c:9166
+#: cp/decl.c:9465
#, gcc-internal-format
msgid "non-parameter %qs cannot be a parameter pack"
msgstr ""
-#: cp/decl.c:9176
+#: cp/decl.c:9475
#, gcc-internal-format
msgid "size of array %qs is too large"
msgstr ""
-#: cp/decl.c:9187
+#: cp/decl.c:9486
#, gcc-internal-format
msgid "data member may not have variably modified type %qT"
msgstr ""
-#: cp/decl.c:9189
+#: cp/decl.c:9488
#, gcc-internal-format
msgid "parameter may not have variably modified type %qT"
msgstr ""
#. [dcl.fct.spec] The explicit specifier shall only be used in
#. declarations of constructors within a class definition.
-#: cp/decl.c:9197
+#: cp/decl.c:9496
#, gcc-internal-format
msgid "only declarations of constructors can be %<explicit%>"
msgstr ""
-#: cp/decl.c:9205
+#: cp/decl.c:9504
#, gcc-internal-format
msgid "non-member %qs cannot be declared %<mutable%>"
msgstr ""
-#: cp/decl.c:9210
+#: cp/decl.c:9509
#, gcc-internal-format
msgid "non-object member %qs cannot be declared %<mutable%>"
msgstr ""
-#: cp/decl.c:9216
+#: cp/decl.c:9515
#, gcc-internal-format
msgid "function %qs cannot be declared %<mutable%>"
msgstr ""
-#: cp/decl.c:9221
+#: cp/decl.c:9520
#, gcc-internal-format
msgid "static %qs cannot be declared %<mutable%>"
msgstr ""
-#: cp/decl.c:9226
+#: cp/decl.c:9525
#, gcc-internal-format
msgid "const %qs cannot be declared %<mutable%>"
msgstr ""
-#: cp/decl.c:9231
+#: cp/decl.c:9530
#, gcc-internal-format
msgid "reference %qs cannot be declared %<mutable%>"
msgstr ""
-#: cp/decl.c:9270
+#: cp/decl.c:9565
+#, gcc-internal-format
+msgid "typedef declared %<auto%>"
+msgstr ""
+
+#: cp/decl.c:9575
#, gcc-internal-format
msgid "typedef name may not be a nested-name-specifier"
msgstr ""
-#: cp/decl.c:9288
+#: cp/decl.c:9593
#, gcc-internal-format
msgid "ISO C++ forbids nested type %qD with same name as enclosing class"
msgstr ""
-#: cp/decl.c:9384
+#: cp/decl.c:9689
#, gcc-internal-format
msgid ""
"qualified function types cannot be used to declare static member functions"
msgstr ""
-#: cp/decl.c:9386
+#: cp/decl.c:9691
#, gcc-internal-format
msgid "qualified function types cannot be used to declare free functions"
msgstr ""
-#: cp/decl.c:9413
+#: cp/decl.c:9718
#, gcc-internal-format
msgid "type qualifiers specified for friend class declaration"
msgstr ""
-#: cp/decl.c:9418
+#: cp/decl.c:9723
#, gcc-internal-format
msgid "%<inline%> specified for friend class declaration"
msgstr ""
-#: cp/decl.c:9426
+#: cp/decl.c:9731
#, gcc-internal-format
msgid "template parameters cannot be friends"
msgstr ""
-#: cp/decl.c:9428
+#: cp/decl.c:9733
#, gcc-internal-format
msgid "friend declaration requires class-key, i.e. %<friend class %T::%D%>"
msgstr ""
-#: cp/decl.c:9432
+#: cp/decl.c:9737
#, gcc-internal-format
msgid "friend declaration requires class-key, i.e. %<friend %#T%>"
msgstr ""
-#: cp/decl.c:9445
+#: cp/decl.c:9750
#, gcc-internal-format
msgid "trying to make class %qT a friend of global scope"
msgstr ""
-#: cp/decl.c:9463
+#: cp/decl.c:9768
#, gcc-internal-format
msgid "invalid qualifiers on non-member function type"
msgstr ""
-#: cp/decl.c:9473
+#: cp/decl.c:9778
#, gcc-internal-format
msgid "abstract declarator %qT used as declaration"
msgstr ""
-#: cp/decl.c:9502
+#: cp/decl.c:9807
#, gcc-internal-format
msgid "cannot use %<::%> in parameter declaration"
msgstr ""
+#: cp/decl.c:9811
+#, gcc-internal-format
+msgid "parameter declared %<auto%>"
+msgstr ""
+
#. Something like struct S { int N::j; };
-#: cp/decl.c:9553
+#: cp/decl.c:9869
#, gcc-internal-format
msgid "invalid use of %<::%>"
msgstr ""
-#: cp/decl.c:9575
+#: cp/decl.c:9891
#, gcc-internal-format
msgid "declaration of function %qD in invalid context"
msgstr ""
-#: cp/decl.c:9584
+#: cp/decl.c:9900
#, gcc-internal-format
msgid "function %qD declared virtual inside a union"
msgstr ""
-#: cp/decl.c:9593
+#: cp/decl.c:9909
#, gcc-internal-format
msgid "%qD cannot be declared virtual, since it is always static"
msgstr ""
-#: cp/decl.c:9609
+#: cp/decl.c:9925
#, gcc-internal-format
msgid "expected qualified name in friend declaration for destructor %qD"
msgstr ""
-#: cp/decl.c:9616
+#: cp/decl.c:9932
#, gcc-internal-format
msgid "declaration of %qD as member of %qT"
msgstr ""
-#: cp/decl.c:9622
+#: cp/decl.c:9938
#, gcc-internal-format
msgid "a destructor cannot be %<constexpr%>"
msgstr ""
-#: cp/decl.c:9628
+#: cp/decl.c:9944
#, gcc-internal-format
msgid "expected qualified name in friend declaration for constructor %qD"
msgstr ""
-#: cp/decl.c:9673
+#: cp/decl.c:9990
#, gcc-internal-format
msgid "field %qD has incomplete type"
msgstr ""
-#: cp/decl.c:9675
+#: cp/decl.c:9992
#, gcc-internal-format
msgid "name %qT has incomplete type"
msgstr ""
-#: cp/decl.c:9684
+#: cp/decl.c:10001
#, gcc-internal-format
msgid " in instantiation of template %qT"
msgstr ""
-#: cp/decl.c:9693
+#: cp/decl.c:10010
#, gcc-internal-format
msgid "%qE is neither function nor member function; cannot be declared friend"
msgstr ""
-#: cp/decl.c:9748
+#: cp/decl.c:10064
#, gcc-internal-format
msgid "non-static data member initializers"
msgstr ""
-#: cp/decl.c:9752
+#: cp/decl.c:10068
#, gcc-internal-format
msgid "ISO C++ forbids initialization of member %qD"
msgstr ""
-#: cp/decl.c:9754
+#: cp/decl.c:10070
#, gcc-internal-format
msgid "making %qD static"
msgstr ""
-#: cp/decl.c:9791
+#: cp/decl.c:10092
#, gcc-internal-format
msgid "constexpr static data member %qD must have an initializer"
msgstr ""
-#: cp/decl.c:9800
+#: cp/decl.c:10101
#, gcc-internal-format
msgid "non-static data member %qE declared %<constexpr%>"
msgstr ""
-#: cp/decl.c:9837
+#: cp/decl.c:10138
#, gcc-internal-format
msgid "storage class %<auto%> invalid for function %qs"
msgstr ""
-#: cp/decl.c:9839
+#: cp/decl.c:10140
#, gcc-internal-format
msgid "storage class %<register%> invalid for function %qs"
msgstr ""
-#: cp/decl.c:9841
+#: cp/decl.c:10142
#, gcc-internal-format
msgid "storage class %<__thread%> invalid for function %qs"
msgstr ""
-#: cp/decl.c:9853
+#: cp/decl.c:10145
+#, gcc-internal-format
+msgid "virt-specifiers in %qs not allowed outside a class definition"
+msgstr ""
+
+#: cp/decl.c:10156
#, gcc-internal-format
msgid ""
"%<static%> specified invalid for function %qs declared out of global scope"
msgstr ""
-#: cp/decl.c:9857
+#: cp/decl.c:10160
#, gcc-internal-format
msgid ""
"%<inline%> specifier invalid for function %qs declared out of global scope"
msgstr ""
-#: cp/decl.c:9864
-#, gcc-internal-format
-msgid "%q#T is not a class or a namespace"
-msgstr ""
-
-#: cp/decl.c:9872
+#: cp/decl.c:10168
#, gcc-internal-format
msgid "virtual non-class function %qs"
msgstr ""
-#: cp/decl.c:9879
+#: cp/decl.c:10175
#, gcc-internal-format
msgid "%qs defined in a non-class scope"
msgstr ""
-#: cp/decl.c:9908
+#: cp/decl.c:10204
#, gcc-internal-format
msgid "cannot declare member function %qD to have static linkage"
msgstr ""
#. FIXME need arm citation
-#: cp/decl.c:9915
+#: cp/decl.c:10211
#, gcc-internal-format
msgid "cannot declare static function inside another function"
msgstr ""
-#: cp/decl.c:9945
+#: cp/decl.c:10241
#, gcc-internal-format
msgid ""
"%<static%> may not be used when defining (as opposed to declaring) a static "
"data member"
msgstr ""
-#: cp/decl.c:9952
+#: cp/decl.c:10248
#, gcc-internal-format
msgid "static member %qD declared %<register%>"
msgstr ""
-#: cp/decl.c:9958
+#: cp/decl.c:10254
#, gcc-internal-format
msgid "cannot explicitly declare member %q#D to have extern linkage"
msgstr ""
-#: cp/decl.c:9964
+#: cp/decl.c:10261
#, gcc-internal-format
msgid "declaration of constexpr variable %qD is not a definition"
msgstr ""
-#: cp/decl.c:9975
+#: cp/decl.c:10274
#, gcc-internal-format
msgid "%qs initialized and declared %<extern%>"
msgstr ""
-#: cp/decl.c:9979
+#: cp/decl.c:10278
#, gcc-internal-format
msgid "%qs has both %<extern%> and initializer"
msgstr ""
-#: cp/decl.c:10106
+#: cp/decl.c:10405
#, gcc-internal-format
msgid "default argument for %q#D has type %qT"
msgstr ""
-#: cp/decl.c:10109
+#: cp/decl.c:10408
#, gcc-internal-format
msgid "default argument for parameter of type %qT has type %qT"
msgstr ""
-#: cp/decl.c:10125
+#: cp/decl.c:10424
#, gcc-internal-format
msgid "default argument %qE uses local variable %qD"
msgstr ""
-#: cp/decl.c:10213
+#: cp/decl.c:10512
#, gcc-internal-format
msgid "parameter %qD has Java class type"
msgstr ""
-#: cp/decl.c:10241
+#: cp/decl.c:10540
#, gcc-internal-format
msgid "parameter %qD invalidly declared method type"
msgstr ""
-#: cp/decl.c:10266
+#: cp/decl.c:10565
#, gcc-internal-format
msgid "parameter %qD includes pointer to array of unknown bound %qT"
msgstr ""
-#: cp/decl.c:10268
+#: cp/decl.c:10567
#, gcc-internal-format
msgid "parameter %qD includes reference to array of unknown bound %qT"
msgstr ""
-#: cp/decl.c:10283
-#, gcc-internal-format
-msgid "parameter packs must be at the end of the parameter list"
-msgstr ""
-
#. [class.copy]
#.
#. A declaration of a constructor for a class X is ill-formed if
@@ -27819,169 +28130,169 @@
#. or implicitly defined), there's no need to worry about their
#. existence. Theoretically, they should never even be
#. instantiated, but that's hard to forestall.
-#: cp/decl.c:10515
+#: cp/decl.c:10808
#, gcc-internal-format
msgid "invalid constructor; you probably meant %<%T (const %T&)%>"
msgstr ""
-#: cp/decl.c:10637
+#: cp/decl.c:10930
#, gcc-internal-format
msgid "%qD may not be declared within a namespace"
msgstr ""
-#: cp/decl.c:10642
+#: cp/decl.c:10935
#, gcc-internal-format
msgid "%qD may not be declared as static"
msgstr ""
-#: cp/decl.c:10668
+#: cp/decl.c:10961
#, gcc-internal-format
msgid "%qD must be a nonstatic member function"
msgstr ""
-#: cp/decl.c:10677
+#: cp/decl.c:10970
#, gcc-internal-format
msgid ""
"%qD must be either a non-static member function or a non-member function"
msgstr ""
-#: cp/decl.c:10699
+#: cp/decl.c:10992
#, gcc-internal-format
msgid "%qD must have an argument of class or enumerated type"
msgstr ""
-#: cp/decl.c:10728
+#: cp/decl.c:11021
#, gcc-internal-format
msgid ""
"conversion to a reference to void will never use a type conversion operator"
msgstr ""
-#: cp/decl.c:10730
+#: cp/decl.c:11023
#, gcc-internal-format
msgid "conversion to void will never use a type conversion operator"
msgstr ""
-#: cp/decl.c:10737
+#: cp/decl.c:11030
#, gcc-internal-format
msgid ""
"conversion to a reference to the same type will never use a type conversion "
"operator"
msgstr ""
-#: cp/decl.c:10739
+#: cp/decl.c:11032
#, gcc-internal-format
msgid "conversion to the same type will never use a type conversion operator"
msgstr ""
-#: cp/decl.c:10747
+#: cp/decl.c:11040
#, gcc-internal-format
msgid ""
"conversion to a reference to a base class will never use a type conversion "
"operator"
msgstr ""
-#: cp/decl.c:10749
+#: cp/decl.c:11042
#, gcc-internal-format
msgid "conversion to a base class will never use a type conversion operator"
msgstr ""
#. 13.4.0.3
-#: cp/decl.c:10758
+#: cp/decl.c:11051
#, gcc-internal-format
msgid "ISO C++ prohibits overloading operator ?:"
msgstr ""
-#: cp/decl.c:10763
+#: cp/decl.c:11056
#, gcc-internal-format
msgid "%qD must not have variable number of arguments"
msgstr ""
-#: cp/decl.c:10814
+#: cp/decl.c:11107
#, gcc-internal-format
msgid "postfix %qD must take %<int%> as its argument"
msgstr ""
-#: cp/decl.c:10817
+#: cp/decl.c:11110
#, gcc-internal-format
msgid "postfix %qD must take %<int%> as its second argument"
msgstr ""
-#: cp/decl.c:10825
+#: cp/decl.c:11118
#, gcc-internal-format
msgid "%qD must take either zero or one argument"
msgstr ""
-#: cp/decl.c:10827
+#: cp/decl.c:11120
#, gcc-internal-format
msgid "%qD must take either one or two arguments"
msgstr ""
-#: cp/decl.c:10849
+#: cp/decl.c:11142
#, gcc-internal-format
msgid "prefix %qD should return %qT"
msgstr ""
-#: cp/decl.c:10855
+#: cp/decl.c:11148
#, gcc-internal-format
msgid "postfix %qD should return %qT"
msgstr ""
-#: cp/decl.c:10864
+#: cp/decl.c:11157
#, gcc-internal-format
msgid "%qD must take %<void%>"
msgstr ""
-#: cp/decl.c:10866 cp/decl.c:10875
+#: cp/decl.c:11159 cp/decl.c:11168
#, gcc-internal-format
msgid "%qD must take exactly one argument"
msgstr ""
-#: cp/decl.c:10877
+#: cp/decl.c:11170
#, gcc-internal-format
msgid "%qD must take exactly two arguments"
msgstr ""
-#: cp/decl.c:10886
+#: cp/decl.c:11179
#, gcc-internal-format
msgid "user-defined %qD always evaluates both arguments"
msgstr ""
-#: cp/decl.c:10900
+#: cp/decl.c:11193
#, gcc-internal-format
msgid "%qD should return by value"
msgstr ""
-#: cp/decl.c:10911 cp/decl.c:10916
+#: cp/decl.c:11204 cp/decl.c:11209
#, gcc-internal-format
msgid "%qD cannot have default arguments"
msgstr ""
-#: cp/decl.c:10974
+#: cp/decl.c:11267
#, gcc-internal-format
msgid "using template type parameter %qT after %qs"
msgstr ""
-#: cp/decl.c:10990
+#: cp/decl.c:11283
#, gcc-internal-format
msgid "using typedef-name %qD after %qs"
msgstr ""
-#: cp/decl.c:10991
+#: cp/decl.c:11284
#, gcc-internal-format
msgid "%q+D has a previous declaration here"
msgstr ""
-#: cp/decl.c:10999
+#: cp/decl.c:11292
#, gcc-internal-format
msgid "%qT referred to as %qs"
msgstr ""
-#: cp/decl.c:11000 cp/decl.c:11007
+#: cp/decl.c:11293 cp/decl.c:11300
#, gcc-internal-format
msgid "%q+T has a previous declaration here"
msgstr ""
-#: cp/decl.c:11006
+#: cp/decl.c:11299
#, gcc-internal-format
msgid "%qT referred to as enum"
msgstr ""
@@ -27993,88 +28304,88 @@
#. void f(class C); // No template header here
#.
#. then the required template argument is missing.
-#: cp/decl.c:11021
+#: cp/decl.c:11314
#, gcc-internal-format
msgid "template argument required for %<%s %T%>"
msgstr ""
-#: cp/decl.c:11069 cp/name-lookup.c:2876
+#: cp/decl.c:11362 cp/name-lookup.c:2953
#, gcc-internal-format
msgid "%qD has the same name as the class in which it is declared"
msgstr ""
-#: cp/decl.c:11099 cp/name-lookup.c:2381 cp/name-lookup.c:3151
-#: cp/name-lookup.c:3196 cp/parser.c:4402 cp/parser.c:19078
+#: cp/decl.c:11392 cp/name-lookup.c:2454 cp/name-lookup.c:3259
+#: cp/name-lookup.c:3304 cp/parser.c:4422 cp/parser.c:19341
#, gcc-internal-format
msgid "reference to %qD is ambiguous"
msgstr ""
-#: cp/decl.c:11213
+#: cp/decl.c:11504
#, gcc-internal-format
msgid "use of enum %q#D without previous declaration"
msgstr ""
-#: cp/decl.c:11234
+#: cp/decl.c:11525
#, gcc-internal-format
msgid "redeclaration of %qT as a non-template"
msgstr ""
-#: cp/decl.c:11235
+#: cp/decl.c:11526
#, gcc-internal-format
msgid "previous declaration %q+D"
msgstr ""
-#: cp/decl.c:11354
+#: cp/decl.c:11659
#, gcc-internal-format
msgid "derived union %qT invalid"
msgstr ""
-#: cp/decl.c:11363
+#: cp/decl.c:11668
#, gcc-internal-format
msgid "Java class %qT cannot have multiple bases"
msgstr ""
-#: cp/decl.c:11374
+#: cp/decl.c:11679
#, gcc-internal-format
msgid "Java class %qT cannot have virtual bases"
msgstr ""
-#: cp/decl.c:11394
+#: cp/decl.c:11699
#, gcc-internal-format
msgid "base type %qT fails to be a struct or class type"
msgstr ""
-#: cp/decl.c:11427
+#: cp/decl.c:11732
#, gcc-internal-format
msgid "recursive type %qT undefined"
msgstr ""
-#: cp/decl.c:11429
+#: cp/decl.c:11734
#, gcc-internal-format
msgid "duplicate base type %qT invalid"
msgstr ""
-#: cp/decl.c:11549
+#: cp/decl.c:11854
#, gcc-internal-format
msgid "scoped/unscoped mismatch in enum %q#T"
msgstr ""
-#: cp/decl.c:11552 cp/decl.c:11560 cp/decl.c:11572 cp/parser.c:13373
+#: cp/decl.c:11857 cp/decl.c:11865 cp/decl.c:11877 cp/parser.c:13553
#, gcc-internal-format
msgid "previous definition here"
msgstr ""
-#: cp/decl.c:11557
+#: cp/decl.c:11862
#, gcc-internal-format
msgid "underlying type mismatch in enum %q#T"
msgstr ""
-#: cp/decl.c:11569
+#: cp/decl.c:11874
#, gcc-internal-format
msgid "different underlying type in enum %q#T"
msgstr ""
-#: cp/decl.c:11621
+#: cp/decl.c:11926
#, gcc-internal-format
msgid "underlying type %<%T%> of %<%T%> must be an integral type"
msgstr ""
@@ -28083,87 +28394,87 @@
#.
#. IF no integral type can represent all the enumerator values, the
#. enumeration is ill-formed.
-#: cp/decl.c:11755
+#: cp/decl.c:12060
#, gcc-internal-format
msgid "no integral type can represent all of the enumerator values for %qT"
msgstr ""
-#: cp/decl.c:11891
+#: cp/decl.c:12196
#, gcc-internal-format
msgid "enumerator value for %qD is not an integer constant"
msgstr ""
-#: cp/decl.c:11923
+#: cp/decl.c:12245
+#, gcc-internal-format
+msgid "incremented enumerator value is too large for %<unsigned long%>"
+msgstr ""
+
+#: cp/decl.c:12257
#, gcc-internal-format
msgid "overflow in enumeration values at %qD"
msgstr ""
-#: cp/decl.c:11943
+#: cp/decl.c:12277
#, gcc-internal-format
msgid "enumerator value %E is too large for underlying type %<%T%>"
msgstr ""
-#: cp/decl.c:12040
+#: cp/decl.c:12374
#, gcc-internal-format
msgid "return type %q#T is incomplete"
msgstr ""
-#: cp/decl.c:12042
+#: cp/decl.c:12376
#, gcc-internal-format
msgid "return type has Java class type %q#T"
msgstr ""
-#: cp/decl.c:12170 cp/typeck.c:7694
+#: cp/decl.c:12500 cp/typeck.c:7742
#, gcc-internal-format
msgid "%<operator=%> should return a reference to %<*this%>"
msgstr ""
-#: cp/decl.c:12265
+#: cp/decl.c:12595
#, gcc-internal-format
msgid "no previous declaration for %q+D"
msgstr ""
-#: cp/decl.c:12488
+#: cp/decl.c:12813
#, gcc-internal-format
msgid "invalid function declaration"
msgstr ""
-#: cp/decl.c:12572
+#: cp/decl.c:12897
#, gcc-internal-format
msgid "parameter %qD declared void"
msgstr ""
-#: cp/decl.c:13032
+#: cp/decl.c:13358
#, gcc-internal-format
msgid "parameter %q+D set but not used"
msgstr ""
-#: cp/decl.c:13123
+#: cp/decl.c:13449
#, gcc-internal-format
msgid "invalid member function declaration"
msgstr ""
-#: cp/decl.c:13137
+#: cp/decl.c:13463
#, gcc-internal-format
msgid "%qD is already defined in class %qT"
msgstr ""
-#: cp/decl.c:13351
-#, gcc-internal-format
-msgid "static member function %q#D declared with type qualifiers"
-msgstr ""
-
-#: cp/decl2.c:319
+#: cp/decl2.c:318
#, gcc-internal-format
msgid "name missing for member function"
msgstr ""
-#: cp/decl2.c:390 cp/decl2.c:404
+#: cp/decl2.c:389 cp/decl2.c:403
#, gcc-internal-format
msgid "ambiguous conversion for array subscript"
msgstr ""
-#: cp/decl2.c:398
+#: cp/decl2.c:397
#, gcc-internal-format
msgid "invalid types %<%T[%T]%> for array subscript"
msgstr ""
@@ -28190,98 +28501,98 @@
msgid "deleting %qT is undefined"
msgstr ""
-#: cp/decl2.c:510 cp/pt.c:4754
+#: cp/decl2.c:511 cp/pt.c:4756
#, gcc-internal-format
msgid "template declaration of %q#D"
msgstr ""
-#: cp/decl2.c:562
+#: cp/decl2.c:563
#, gcc-internal-format
msgid "Java method %qD has non-Java return type %qT"
msgstr ""
-#: cp/decl2.c:579
+#: cp/decl2.c:580
#, gcc-internal-format
msgid "Java method %qD has non-Java parameter type %qT"
msgstr ""
-#: cp/decl2.c:628
+#: cp/decl2.c:629
#, gcc-internal-format
msgid ""
"template parameter lists provided don%'t match the template parameters of %qD"
msgstr ""
-#: cp/decl2.c:696
+#: cp/decl2.c:697
#, gcc-internal-format
msgid "prototype for %q#D does not match any in class %qT"
msgstr ""
-#: cp/decl2.c:772
+#: cp/decl2.c:773
#, gcc-internal-format
msgid "local class %q#T shall not have static data member %q#D"
msgstr ""
-#: cp/decl2.c:833
+#: cp/decl2.c:834
#, gcc-internal-format
msgid "explicit template argument list not allowed"
msgstr ""
-#: cp/decl2.c:839
+#: cp/decl2.c:840
#, gcc-internal-format
msgid "member %qD conflicts with virtual function table field name"
msgstr ""
-#: cp/decl2.c:875
+#: cp/decl2.c:876
#, gcc-internal-format
msgid "%qD is already defined in %qT"
msgstr ""
-#: cp/decl2.c:910
+#: cp/decl2.c:911
#, gcc-internal-format
msgid "invalid initializer for member function %qD"
msgstr ""
-#: cp/decl2.c:916
+#: cp/decl2.c:917
#, gcc-internal-format
msgid "initializer specified for static member function %qD"
msgstr ""
-#: cp/decl2.c:938
+#: cp/decl2.c:939
#, gcc-internal-format
msgid "field initializer is not constant"
msgstr ""
-#: cp/decl2.c:965
+#: cp/decl2.c:966
#, gcc-internal-format
msgid "%<asm%> specifiers are not permitted on non-static data members"
msgstr ""
-#: cp/decl2.c:1017
+#: cp/decl2.c:1018
#, gcc-internal-format
msgid "bit-field %qD with non-integral type"
msgstr ""
-#: cp/decl2.c:1023
+#: cp/decl2.c:1024
#, gcc-internal-format
msgid "cannot declare %qD to be a bit-field type"
msgstr ""
-#: cp/decl2.c:1033
+#: cp/decl2.c:1034
#, gcc-internal-format
msgid "cannot declare bit-field %qD with function type"
msgstr ""
-#: cp/decl2.c:1040
+#: cp/decl2.c:1041
#, gcc-internal-format
msgid "%qD is already defined in the class %qT"
msgstr ""
-#: cp/decl2.c:1047
+#: cp/decl2.c:1048
#, gcc-internal-format
msgid "static member %qD cannot be a bit-field"
msgstr ""
-#: cp/decl2.c:1057
+#: cp/decl2.c:1058
#, gcc-internal-format
msgid "width of bit-field %qD has non-integral type %qT"
msgstr ""
@@ -28350,103 +28661,103 @@
msgid "%qT declared with greater visibility than its base %qT"
msgstr ""
-#: cp/decl2.c:3616
+#: cp/decl2.c:3619
#, gcc-internal-format
msgid "%q+#D, declared using anonymous type, is used but never defined"
msgstr ""
-#: cp/decl2.c:3623
+#: cp/decl2.c:3626
#, gcc-internal-format
msgid "%q+#D, declared using local type %qT, is used but never defined"
msgstr ""
-#: cp/decl2.c:3952
+#: cp/decl2.c:3955
#, gcc-internal-format
msgid "inline function %q+D used but never defined"
msgstr ""
-#: cp/decl2.c:4127
+#: cp/decl2.c:4142
#, gcc-internal-format
msgid "default argument missing for parameter %P of %q+#D"
msgstr ""
#. We mark a lambda conversion op as deleted if we can't
#. generate it properly; see maybe_add_lambda_conv_op.
-#: cp/decl2.c:4183
+#: cp/decl2.c:4198
#, gcc-internal-format
msgid "converting lambda which uses %<...%> to function pointer"
msgstr ""
-#: cp/decl2.c:4188
+#: cp/decl2.c:4203
#, gcc-internal-format
msgid "use of deleted function %qD"
msgstr ""
-#: cp/error.c:3110
+#: cp/error.c:3166
#, gcc-internal-format
msgid ""
"extended initializer lists only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/error.c:3115
+#: cp/error.c:3171
#, gcc-internal-format
msgid ""
"explicit conversion operators only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/error.c:3120
+#: cp/error.c:3176
#, gcc-internal-format
msgid "variadic templates only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/error.c:3125
+#: cp/error.c:3181
#, gcc-internal-format
msgid "lambda expressions only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/error.c:3130
+#: cp/error.c:3186
#, gcc-internal-format
msgid "C++0x auto only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/error.c:3134
+#: cp/error.c:3190
#, gcc-internal-format
msgid "scoped enums only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/error.c:3138
+#: cp/error.c:3194
#, gcc-internal-format
msgid ""
"defaulted and deleted functions only available with -std=c++0x or -std=gnu+"
"+0x"
msgstr ""
-#: cp/error.c:3143
+#: cp/error.c:3199
#, gcc-internal-format
msgid "inline namespaces only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/error.c:3190
+#: cp/error.c:3246
#, gcc-internal-format
msgid "incomplete type %qT used in nested name specifier"
msgstr ""
-#: cp/error.c:3194
+#: cp/error.c:3250
#, gcc-internal-format
msgid "reference to %<%T::%D%> is ambiguous"
msgstr ""
-#: cp/error.c:3199 cp/typeck.c:2146
+#: cp/error.c:3255 cp/typeck.c:2160
#, gcc-internal-format
msgid "%qD is not a member of %qT"
msgstr ""
-#: cp/error.c:3203
+#: cp/error.c:3259
#, gcc-internal-format
msgid "%qD is not a member of %qD"
msgstr ""
-#: cp/error.c:3208
+#: cp/error.c:3264
#, gcc-internal-format
msgid "%<::%D%> has not been declared"
msgstr ""
@@ -28483,7 +28794,7 @@
msgid "throwing NULL, which has integral, not pointer type"
msgstr ""
-#: cp/except.c:680 cp/init.c:2112
+#: cp/except.c:680 cp/init.c:2138
#, gcc-internal-format
msgid "%qD should never be overloaded"
msgstr ""
@@ -28529,7 +28840,7 @@
msgid "%qD is already a friend of class %qT"
msgstr ""
-#: cp/friend.c:229
+#: cp/friend.c:236
#, gcc-internal-format
msgid "invalid type %qT declared %<friend%>"
msgstr ""
@@ -28541,353 +28852,372 @@
#. [temp.friend]
#. Friend declarations shall not declare partial
#. specializations.
-#: cp/friend.c:245 cp/friend.c:275
+#: cp/friend.c:252 cp/friend.c:282
#, gcc-internal-format
msgid "partial specialization %qT declared %<friend%>"
msgstr ""
-#: cp/friend.c:253
+#: cp/friend.c:260
#, gcc-internal-format
msgid "class %qT is implicitly friends with itself"
msgstr ""
-#: cp/friend.c:311
+#: cp/friend.c:318
#, gcc-internal-format
msgid "%qT is not a member of %qT"
msgstr ""
-#: cp/friend.c:316
+#: cp/friend.c:323
#, gcc-internal-format
msgid "%qT is not a member class template of %qT"
msgstr ""
-#: cp/friend.c:324
+#: cp/friend.c:331
#, gcc-internal-format
msgid "%qT is not a nested class of %qT"
msgstr ""
#. template <class T> friend class T;
-#: cp/friend.c:337
+#: cp/friend.c:344
#, gcc-internal-format
msgid "template parameter type %qT declared %<friend%>"
msgstr ""
#. template <class T> friend class A; where A is not a template
-#: cp/friend.c:343
+#: cp/friend.c:350
#, gcc-internal-format
msgid "%q#T is not a template"
msgstr ""
-#: cp/friend.c:365
+#: cp/friend.c:372
#, gcc-internal-format
msgid "%qD is already a friend of %qT"
msgstr ""
-#: cp/friend.c:374
+#: cp/friend.c:381
#, gcc-internal-format
msgid "%qT is already a friend of %qT"
msgstr ""
-#: cp/friend.c:498
+#: cp/friend.c:505
#, gcc-internal-format
msgid "member %qD declared as friend before type %qT defined"
msgstr ""
-#: cp/friend.c:547
+#: cp/friend.c:554
#, gcc-internal-format
msgid "friend declaration %qD in local class without prior declaration"
msgstr ""
-#: cp/friend.c:570
+#: cp/friend.c:577
#, gcc-internal-format
msgid "friend declaration %q#D declares a non-template function"
msgstr ""
-#: cp/friend.c:574
+#: cp/friend.c:581
#, gcc-internal-format
msgid ""
"(if this is not what you intended, make sure the function template has "
"already been declared and add <> after the function name here) "
msgstr ""
-#: cp/init.c:394
-#, gcc-internal-format
-msgid "value-initialization of reference"
-msgstr ""
-
-#: cp/init.c:430
+#: cp/init.c:426
#, gcc-internal-format
msgid "cannot value-initialize array of unknown bound %qT"
msgstr ""
-#: cp/init.c:479
+#: cp/init.c:466
+#, gcc-internal-format
+msgid "value-initialization of function type %qT"
+msgstr ""
+
+#: cp/init.c:472
+#, gcc-internal-format
+msgid "value-initialization of reference type %qT"
+msgstr ""
+
+#: cp/init.c:493
#, gcc-internal-format
msgid "%qD should be initialized in the member initialization list"
msgstr ""
-#: cp/init.c:503
+#: cp/init.c:511
#, gcc-internal-format
-msgid "value-initialization of %q#D, which has reference type"
+msgid "%qD is initialized with itself"
msgstr ""
-#: cp/init.c:542
+#: cp/init.c:564
#, gcc-internal-format
msgid "invalid initializer for array member %q#D"
msgstr ""
-#: cp/init.c:555 cp/init.c:573
+#: cp/init.c:577 cp/init.c:595
#, gcc-internal-format
msgid "uninitialized member %qD with %<const%> type %qT"
msgstr ""
-#: cp/init.c:569
+#: cp/init.c:591
#, gcc-internal-format
msgid "uninitialized reference member %qD"
msgstr ""
-#: cp/init.c:582
+#: cp/init.c:604
#, gcc-internal-format
msgid "uninitialized member %qD in %<constexpr%> constructor"
msgstr ""
-#: cp/init.c:739
+#: cp/init.c:762
#, gcc-internal-format
msgid "%q+D will be initialized after"
msgstr ""
-#: cp/init.c:742
+#: cp/init.c:765
#, gcc-internal-format
msgid "base %qT will be initialized after"
msgstr ""
-#: cp/init.c:745
+#: cp/init.c:768
#, gcc-internal-format
msgid " %q+#D"
msgstr ""
-#: cp/init.c:747
+#: cp/init.c:770
#, gcc-internal-format
msgid " base %qT"
msgstr ""
-#: cp/init.c:749
+#: cp/init.c:772
#, gcc-internal-format
msgid " when initialized here"
msgstr ""
-#: cp/init.c:766
+#: cp/init.c:789
#, gcc-internal-format
msgid "multiple initializations given for %qD"
msgstr ""
-#: cp/init.c:770
+#: cp/init.c:793
#, gcc-internal-format
msgid "multiple initializations given for base %qT"
msgstr ""
-#: cp/init.c:854
+#: cp/init.c:877
#, gcc-internal-format
msgid "initializations for multiple members of %qT"
msgstr ""
-#: cp/init.c:932
+#: cp/init.c:955
#, gcc-internal-format
msgid ""
"base class %q#T should be explicitly initialized in the copy constructor"
msgstr ""
-#: cp/init.c:941
+#: cp/init.c:964
#, gcc-internal-format
msgid "uninitialized base %qT in %<constexpr%> constructor"
msgstr ""
-#: cp/init.c:1167 cp/init.c:1186
+#: cp/init.c:1190 cp/init.c:1209
#, gcc-internal-format
msgid "class %qT does not have any field named %qD"
msgstr ""
-#: cp/init.c:1173
+#: cp/init.c:1196
#, gcc-internal-format
msgid ""
"%q#D is a static data member; it can only be initialized at its definition"
msgstr ""
-#: cp/init.c:1180
+#: cp/init.c:1203
#, gcc-internal-format
msgid "%q#D is not a non-static data member of %qT"
msgstr ""
-#: cp/init.c:1219
+#: cp/init.c:1242
#, gcc-internal-format
msgid "unnamed initializer for %qT, which has no base classes"
msgstr ""
-#: cp/init.c:1227
+#: cp/init.c:1250
#, gcc-internal-format
msgid "unnamed initializer for %qT, which uses multiple inheritance"
msgstr ""
-#: cp/init.c:1273
+#: cp/init.c:1296
#, gcc-internal-format
msgid "%qD is both a direct base and an indirect virtual base"
msgstr ""
-#: cp/init.c:1281
+#: cp/init.c:1304
#, gcc-internal-format
msgid "type %qT is not a direct or virtual base of %qT"
msgstr ""
-#: cp/init.c:1284
+#: cp/init.c:1307
#, gcc-internal-format
msgid "type %qT is not a direct base of %qT"
msgstr ""
-#: cp/init.c:1367
+#: cp/init.c:1390
#, gcc-internal-format
msgid "bad array initializer"
msgstr ""
-#: cp/init.c:1597 cp/semantics.c:2690
+#: cp/init.c:1620 cp/semantics.c:2772
#, gcc-internal-format
msgid "%qT is not a class type"
msgstr ""
-#: cp/init.c:1651
+#: cp/init.c:1674
#, gcc-internal-format
msgid "incomplete type %qT does not have member %qD"
msgstr ""
-#: cp/init.c:1664
+#: cp/init.c:1687
#, gcc-internal-format
msgid "invalid pointer to bit-field %qD"
msgstr ""
-#: cp/init.c:1741
+#: cp/init.c:1764
#, gcc-internal-format
msgid "invalid use of non-static member function %qD"
msgstr ""
-#: cp/init.c:1747
+#: cp/init.c:1770
#, gcc-internal-format
msgid "invalid use of non-static data member %qD"
msgstr ""
-#: cp/init.c:1914
+#: cp/init.c:1940
#, gcc-internal-format
msgid ""
"uninitialized reference member in %q#T using %<new%> without new-initializer"
msgstr ""
-#: cp/init.c:1917
+#: cp/init.c:1943
#, gcc-internal-format
msgid "uninitialized reference member in %q#T"
msgstr ""
-#: cp/init.c:1929
+#: cp/init.c:1955
#, gcc-internal-format
msgid ""
"uninitialized const member in %q#T using %<new%> without new-initializer"
msgstr ""
-#: cp/init.c:1932
+#: cp/init.c:1958
#, gcc-internal-format
msgid "uninitialized const member in %q#T"
msgstr ""
-#: cp/init.c:2029
+#: cp/init.c:2055
#, gcc-internal-format
msgid "invalid type %<void%> for new"
msgstr ""
-#: cp/init.c:2072
+#: cp/init.c:2098
#, gcc-internal-format
msgid "uninitialized const in %<new%> of %q#T"
msgstr ""
-#: cp/init.c:2106
+#: cp/init.c:2132
#, gcc-internal-format
msgid "call to Java constructor with %qs undefined"
msgstr ""
-#: cp/init.c:2122
+#: cp/init.c:2148
#, gcc-internal-format
msgid "Java class %q#T object allocated using placement new"
msgstr ""
-#: cp/init.c:2152
+#: cp/init.c:2178
#, gcc-internal-format
msgid "no suitable %qD found in class %qT"
msgstr ""
-#: cp/init.c:2159 cp/search.c:1103
+#: cp/init.c:2185 cp/search.c:1103
#, gcc-internal-format
msgid "request for member %qD is ambiguous"
msgstr ""
-#: cp/init.c:2364
+#: cp/init.c:2390
#, gcc-internal-format
msgid ""
"non-constant array size in new, unable to verify length of initializer-list"
msgstr ""
-#: cp/init.c:2373
+#: cp/init.c:2399
#, gcc-internal-format
msgid "ISO C++ forbids initialization in array new"
msgstr ""
-#: cp/init.c:2606
+#: cp/init.c:2631
#, gcc-internal-format
msgid "size in array new must have integral type"
msgstr ""
-#: cp/init.c:2620
+#: cp/init.c:2645
#, gcc-internal-format
msgid "new cannot be applied to a reference type"
msgstr ""
-#: cp/init.c:2629
+#: cp/init.c:2654
#, gcc-internal-format
msgid "new cannot be applied to a function type"
msgstr ""
-#: cp/init.c:2673
+#: cp/init.c:2698
#, gcc-internal-format
msgid "call to Java constructor, while %<jclass%> undefined"
msgstr ""
-#: cp/init.c:2691
+#: cp/init.c:2716
#, gcc-internal-format
msgid "can%'t find %<class$%> in %qT"
msgstr ""
-#: cp/init.c:3142
+#: cp/init.c:3184
#, gcc-internal-format
msgid "initializer ends prematurely"
msgstr ""
-#: cp/init.c:3204
+#: cp/init.c:3248
#, gcc-internal-format
msgid "cannot initialize multi-dimensional array with initializer"
msgstr ""
-#: cp/init.c:3363
+#: cp/init.c:3414
#, gcc-internal-format
msgid "possible problem detected in invocation of delete operator:"
msgstr ""
-#: cp/init.c:3367
+#: cp/init.c:3418
#, gcc-internal-format
msgid ""
"neither the destructor nor the class-specific operator delete will be "
"called, even if they are declared when the class is defined"
msgstr ""
-#: cp/init.c:3389
+#: cp/init.c:3433
+#, gcc-internal-format
+msgid ""
+"deleting object of abstract class type %qT which has non-virtual destructor "
+"will cause undefined behaviour"
+msgstr ""
+
+#: cp/init.c:3438
+#, gcc-internal-format
+msgid ""
+"deleting object of polymorphic class type %qT which has non-virtual "
+"destructor might cause undefined behaviour"
+msgstr ""
+
+#: cp/init.c:3460
#, gcc-internal-format
msgid "unknown array size in delete"
msgstr ""
-#: cp/init.c:3650
+#: cp/init.c:3731
#, gcc-internal-format
msgid "type to vector delete is neither pointer or array type"
msgstr ""
@@ -28956,32 +29286,37 @@
msgid "mangling typeof, use decltype instead"
msgstr ""
-#: cp/mangle.c:2215
+#: cp/mangle.c:1995
+#, gcc-internal-format
+msgid "mangling __underlying_type"
+msgstr ""
+
+#: cp/mangle.c:2219
#, gcc-internal-format
msgid "mangling unknown fixed point type"
msgstr ""
-#: cp/mangle.c:2642
+#: cp/mangle.c:2655
#, gcc-internal-format, gfc-internal-format
msgid "mangling %C"
msgstr ""
-#: cp/mangle.c:2694
+#: cp/mangle.c:2707
#, gcc-internal-format
msgid "mangling new-expression"
msgstr ""
-#: cp/mangle.c:2728
+#: cp/mangle.c:2725
#, gcc-internal-format
msgid "omitted middle operand to %<?:%> operand cannot be mangled"
msgstr ""
-#: cp/mangle.c:2768
+#: cp/mangle.c:2765
#, gcc-internal-format
msgid "string literal in function template signature"
msgstr ""
-#: cp/mangle.c:3040
+#: cp/mangle.c:3037
#, gcc-internal-format
msgid "the mangled name of %qD will change in a future version of GCC"
msgstr ""
@@ -28992,109 +29327,109 @@
"-fabi-version=4 (or =0) avoids this error with a change in vector mangling"
msgstr ""
-#: cp/method.c:395
+#: cp/method.c:401
#, gcc-internal-format
msgid "generic thunk code fails for method %q#D which uses %<...%>"
msgstr ""
-#: cp/method.c:651 cp/method.c:991
+#: cp/method.c:657 cp/method.c:997
#, gcc-internal-format
msgid "non-static const member %q#D, can%'t use default assignment operator"
msgstr ""
-#: cp/method.c:657 cp/method.c:997
+#: cp/method.c:663 cp/method.c:1003
#, gcc-internal-format
msgid ""
"non-static reference member %q#D, can%'t use default assignment operator"
msgstr ""
-#: cp/method.c:773
+#: cp/method.c:779
#, gcc-internal-format
msgid "synthesized method %qD first required here "
msgstr ""
-#: cp/method.c:935
+#: cp/method.c:941
#, gcc-internal-format
msgid "union member %q+D with non-trivial %qD"
msgstr ""
-#: cp/method.c:1014
+#: cp/method.c:1020
#, gcc-internal-format
msgid "uninitialized non-static const member %q#D"
msgstr ""
-#: cp/method.c:1020
+#: cp/method.c:1026
#, gcc-internal-format
msgid "uninitialized non-static reference member %q#D"
msgstr ""
-#: cp/method.c:1250
+#: cp/method.c:1256
#, gcc-internal-format
msgid ""
"%qT has virtual bases, default move assignment operator cannot be generated"
msgstr ""
-#: cp/method.c:1343
+#: cp/method.c:1349
#, gcc-internal-format
msgid "a lambda closure type has a deleted default constructor"
msgstr ""
-#: cp/method.c:1345
+#: cp/method.c:1351
#, gcc-internal-format
msgid "a lambda closure type has a deleted copy assignment operator"
msgstr ""
-#: cp/method.c:1354
+#: cp/method.c:1360
#, gcc-internal-format
msgid ""
"%qD is implicitly deleted because the default definition would be ill-formed:"
msgstr ""
-#: cp/method.c:1546
+#: cp/method.c:1552
#, gcc-internal-format
msgid "defaulted declaration %q+D"
msgstr ""
-#: cp/method.c:1548
+#: cp/method.c:1554
#, gcc-internal-format
msgid "does not match expected signature %qD"
msgstr ""
-#: cp/method.c:1569
+#: cp/method.c:1568
+#, gcc-internal-format
+msgid ""
+"function %q+D defaulted on its first declaration with an exception-"
+"specification that differs from the implicit declaration %q#D"
+msgstr ""
+
+#: cp/method.c:1584
#, gcc-internal-format
msgid "%qD cannot be declared as constexpr"
msgstr ""
-#: cp/method.c:1609
+#: cp/method.c:1602
+#, gcc-internal-format
+msgid "a template cannot be defaulted"
+msgstr ""
+
+#: cp/method.c:1630
#, gcc-internal-format
msgid "%qD cannot be defaulted"
msgstr ""
-#: cp/method.c:1618
+#: cp/method.c:1639
#, gcc-internal-format
msgid "defaulted function %q+D with default argument"
msgstr ""
-#: cp/method.c:1624
-#, gcc-internal-format
-msgid ""
-"function %q+D defaulted on its first declaration must not have an exception-"
-"specification"
-msgstr ""
-
-#: cp/method.c:1627
-#, gcc-internal-format
-msgid "%qD declared virtual cannot be defaulted in the class body"
-msgstr ""
-
-#: cp/method.c:1704
+#: cp/method.c:1718
#, gcc-internal-format
msgid ""
"vtable layout for class %qT may not be ABI-compliantand may change in a "
"future version of GCC due to implicit virtual destructor"
msgstr ""
-#: cp/name-lookup.c:732
+#: cp/name-lookup.c:721
#, gcc-internal-format
msgid "redeclaration of %<wchar_t%> as %qT"
msgstr ""
@@ -29105,1110 +29440,1163 @@
#. [basic.start.main]
#.
#. This function shall not be overloaded.
-#: cp/name-lookup.c:762
+#: cp/name-lookup.c:751
#, gcc-internal-format
msgid "invalid redeclaration of %q+D"
msgstr ""
-#: cp/name-lookup.c:763
+#: cp/name-lookup.c:752
#, gcc-internal-format
msgid "as %qD"
msgstr ""
-#: cp/name-lookup.c:809 cp/name-lookup.c:820
+#: cp/name-lookup.c:799 cp/name-lookup.c:812
#, gcc-internal-format
msgid "declaration of %q#D with C language linkage"
msgstr ""
-#: cp/name-lookup.c:813
+#: cp/name-lookup.c:805
#, gcc-internal-format
msgid "due to different exception specifications"
msgstr ""
-#: cp/name-lookup.c:904
+#: cp/name-lookup.c:896
#, gcc-internal-format
msgid "type mismatch with previous external decl of %q#D"
msgstr ""
-#: cp/name-lookup.c:905
+#: cp/name-lookup.c:897
#, gcc-internal-format
msgid "previous external decl of %q+#D"
msgstr ""
-#: cp/name-lookup.c:996
+#: cp/name-lookup.c:995
#, gcc-internal-format
msgid "extern declaration of %q#D doesn%'t match"
msgstr ""
-#: cp/name-lookup.c:997
+#: cp/name-lookup.c:996
#, gcc-internal-format
msgid "global declaration %q+#D"
msgstr ""
-#: cp/name-lookup.c:1054 cp/name-lookup.c:1083
+#: cp/name-lookup.c:1048 cp/name-lookup.c:1091
#, gcc-internal-format
msgid "declaration of %q#D shadows a parameter"
msgstr ""
-#: cp/name-lookup.c:1086
+#: cp/name-lookup.c:1084
+#, gcc-internal-format
+msgid "%q+#D previously declared here"
+msgstr ""
+
+#: cp/name-lookup.c:1094
+#, gcc-internal-format
+msgid "declaration of %qD shadows a lambda capture"
+msgstr ""
+
+#: cp/name-lookup.c:1098
#, gcc-internal-format
msgid "declaration of %qD shadows a previous local"
msgstr ""
#. Location of previous decl is not useful in this case.
-#: cp/name-lookup.c:1115
+#: cp/name-lookup.c:1127
#, gcc-internal-format
msgid "declaration of %qD shadows a member of 'this'"
msgstr ""
-#: cp/name-lookup.c:1129
+#: cp/name-lookup.c:1141
#, gcc-internal-format
msgid "declaration of %qD shadows a global declaration"
msgstr ""
-#: cp/name-lookup.c:1252
+#: cp/name-lookup.c:1276
#, gcc-internal-format
msgid "name lookup of %qD changed"
msgstr ""
-#: cp/name-lookup.c:1253
+#: cp/name-lookup.c:1277
#, gcc-internal-format
msgid " matches this %q+D under ISO standard rules"
msgstr ""
-#: cp/name-lookup.c:1255
+#: cp/name-lookup.c:1279
#, gcc-internal-format
msgid " matches this %q+D under old rules"
msgstr ""
-#: cp/name-lookup.c:1273 cp/name-lookup.c:1281
+#: cp/name-lookup.c:1297 cp/name-lookup.c:1305
#, gcc-internal-format
msgid "name lookup of %qD changed for ISO %<for%> scoping"
msgstr ""
-#: cp/name-lookup.c:1275
+#: cp/name-lookup.c:1299
#, gcc-internal-format
msgid " cannot use obsolete binding at %q+D because it has a destructor"
msgstr ""
-#: cp/name-lookup.c:1284
+#: cp/name-lookup.c:1308
#, gcc-internal-format
msgid " using obsolete binding at %q+D"
msgstr ""
-#: cp/name-lookup.c:1290 cp/parser.c:11414
+#: cp/name-lookup.c:1314 cp/parser.c:11578
#, gcc-internal-format
msgid "(if you use %<-fpermissive%> G++ will accept your code)"
msgstr ""
-#: cp/name-lookup.c:1345
+#: cp/name-lookup.c:1369
#, gcc-internal-format
msgid "%s %s(%E) %p %d\n"
msgstr ""
-#: cp/name-lookup.c:1348
+#: cp/name-lookup.c:1372
#, gcc-internal-format
msgid "%s %s %p %d\n"
msgstr ""
-#: cp/name-lookup.c:2094
+#: cp/name-lookup.c:2155
#, gcc-internal-format
msgid "%q#D hides constructor for %q#T"
msgstr ""
-#: cp/name-lookup.c:2111
+#: cp/name-lookup.c:2172
#, gcc-internal-format
msgid "%q#D conflicts with previous using declaration %q#D"
msgstr ""
-#: cp/name-lookup.c:2134
+#: cp/name-lookup.c:2195
#, gcc-internal-format
msgid "previous non-function declaration %q+#D"
msgstr ""
-#: cp/name-lookup.c:2135
+#: cp/name-lookup.c:2196
#, gcc-internal-format
msgid "conflicts with function declaration %q#D"
msgstr ""
#. It's a nested name with template parameter dependent scope.
#. This can only be using-declaration for class member.
-#: cp/name-lookup.c:2213 cp/name-lookup.c:2238
+#: cp/name-lookup.c:2286 cp/name-lookup.c:2311
#, gcc-internal-format
msgid "%qT is not a namespace"
msgstr ""
#. 7.3.3/5
#. A using-declaration shall not name a template-id.
-#: cp/name-lookup.c:2223
+#: cp/name-lookup.c:2296
#, gcc-internal-format
msgid "a using-declaration cannot specify a template-id. Try %<using %D%>"
msgstr ""
-#: cp/name-lookup.c:2230
+#: cp/name-lookup.c:2303
#, gcc-internal-format
msgid "namespace %qD not allowed in using-declaration"
msgstr ""
-#: cp/name-lookup.c:2266
+#: cp/name-lookup.c:2339
#, gcc-internal-format
msgid "%qD not declared"
msgstr ""
-#: cp/name-lookup.c:2302 cp/name-lookup.c:2339 cp/name-lookup.c:2373
-#: cp/name-lookup.c:2388
+#: cp/name-lookup.c:2375 cp/name-lookup.c:2412 cp/name-lookup.c:2446
+#: cp/name-lookup.c:2461
#, gcc-internal-format
msgid "%qD is already declared in this scope"
msgstr ""
-#: cp/name-lookup.c:2995
+#: cp/name-lookup.c:3084
#, gcc-internal-format
msgid "using-declaration for non-member at class scope"
msgstr ""
-#: cp/name-lookup.c:3002
+#: cp/name-lookup.c:3091
#, gcc-internal-format
msgid "%<%T::%D%> names destructor"
msgstr ""
-#: cp/name-lookup.c:3007
+#: cp/name-lookup.c:3096
#, gcc-internal-format
msgid "%<%T::%D%> names constructor"
msgstr ""
-#: cp/name-lookup.c:3012
+#: cp/name-lookup.c:3101
#, gcc-internal-format
msgid "%<%T::%D%> names constructor in %qT"
msgstr ""
-#: cp/name-lookup.c:3062
+#: cp/name-lookup.c:3151
#, gcc-internal-format
msgid "no members matching %<%T::%D%> in %q#T"
msgstr ""
-#: cp/name-lookup.c:3130
+#: cp/name-lookup.c:3238
#, gcc-internal-format
msgid "declaration of %qD not in a namespace surrounding %qD"
msgstr ""
-#: cp/name-lookup.c:3138
+#: cp/name-lookup.c:3246
#, gcc-internal-format
msgid "explicit qualification in declaration of %qD"
msgstr ""
-#: cp/name-lookup.c:3221
+#: cp/name-lookup.c:3329
#, gcc-internal-format
msgid "%qD should have been declared inside %qD"
msgstr ""
-#: cp/name-lookup.c:3265
+#: cp/name-lookup.c:3373
#, gcc-internal-format
msgid "%qD attribute requires a single NTBS argument"
msgstr ""
-#: cp/name-lookup.c:3272
+#: cp/name-lookup.c:3380
#, gcc-internal-format
msgid ""
"%qD attribute is meaningless since members of the anonymous namespace get "
"local symbols"
msgstr ""
-#: cp/name-lookup.c:3280 cp/name-lookup.c:3650
+#: cp/name-lookup.c:3388 cp/name-lookup.c:3777
#, gcc-internal-format
msgid "%qD attribute directive ignored"
msgstr ""
-#: cp/name-lookup.c:3325
+#: cp/name-lookup.c:3433
#, gcc-internal-format
msgid "namespace alias %qD not allowed here, assuming %qD"
msgstr ""
-#: cp/name-lookup.c:3638
+#: cp/name-lookup.c:3765
#, gcc-internal-format
msgid "strong using only meaningful at namespace scope"
msgstr ""
-#: cp/name-lookup.c:3642
+#: cp/name-lookup.c:3769
#, gcc-internal-format
msgid "current namespace %qD does not enclose strongly used namespace %qD"
msgstr ""
-#: cp/name-lookup.c:3980
+#: cp/name-lookup.c:4103
#, gcc-internal-format
msgid "maximum limit of %d namespaces searched for %qE"
msgstr ""
-#: cp/name-lookup.c:3990
+#: cp/name-lookup.c:4113
#, gcc-internal-format
msgid "suggested alternative:"
msgid_plural "suggested alternatives:"
msgstr[0] ""
msgstr[1] ""
-#: cp/name-lookup.c:3994
+#: cp/name-lookup.c:4117
#, gcc-internal-format
msgid " %qE"
msgstr ""
-#: cp/name-lookup.c:5184
+#: cp/name-lookup.c:5360
#, gcc-internal-format
msgid "argument dependent lookup finds %q+D"
msgstr ""
-#: cp/name-lookup.c:5631
+#: cp/name-lookup.c:5852
#, gcc-internal-format
msgid "XXX entering pop_everything ()\n"
msgstr ""
-#: cp/name-lookup.c:5640
+#: cp/name-lookup.c:5861
#, gcc-internal-format
msgid "XXX leaving pop_everything ()\n"
msgstr ""
-#: cp/optimize.c:341
+#: cp/optimize.c:343
#, gcc-internal-format
msgid "making multiple clones of %qD"
msgstr ""
-#: cp/parser.c:510
+#: cp/parser.c:511
#, gcc-internal-format
msgid "identifier %qE will become a keyword in C++0x"
msgstr ""
-#: cp/parser.c:2059
+#: cp/parser.c:2069
#, gcc-internal-format
msgid "%<#pragma%> is not allowed here"
msgstr ""
-#: cp/parser.c:2090
+#: cp/parser.c:2100
#, gcc-internal-format
msgid "%<%E::%E%> has not been declared"
msgstr ""
-#: cp/parser.c:2093
+#: cp/parser.c:2103
#, gcc-internal-format
msgid "%<::%E%> has not been declared"
msgstr ""
-#: cp/parser.c:2096
+#: cp/parser.c:2106
#, gcc-internal-format
msgid "request for member %qE in non-class type %qT"
msgstr ""
-#: cp/parser.c:2099
+#: cp/parser.c:2109
#, gcc-internal-format
msgid "%<%T::%E%> has not been declared"
msgstr ""
-#: cp/parser.c:2102
+#: cp/parser.c:2112
#, gcc-internal-format
msgid "%qE has not been declared"
msgstr ""
-#: cp/parser.c:2109
+#: cp/parser.c:2119
#, gcc-internal-format
msgid "%<%E::%E%> is not a type"
msgstr ""
-#: cp/parser.c:2113
+#: cp/parser.c:2123
#, gcc-internal-format
msgid "%<%E::%E%> is not a class or namespace"
msgstr ""
-#: cp/parser.c:2118
+#: cp/parser.c:2128
#, gcc-internal-format
msgid "%<%E::%E%> is not a class, namespace, or enumeration"
msgstr ""
-#: cp/parser.c:2131
+#: cp/parser.c:2141
#, gcc-internal-format
msgid "%<::%E%> is not a type"
msgstr ""
-#: cp/parser.c:2134
+#: cp/parser.c:2144
#, gcc-internal-format
msgid "%<::%E%> is not a class or namespace"
msgstr ""
-#: cp/parser.c:2138
+#: cp/parser.c:2148
#, gcc-internal-format
msgid "%<::%E%> is not a class, namespace, or enumeration"
msgstr ""
-#: cp/parser.c:2150
+#: cp/parser.c:2160
#, gcc-internal-format
msgid "%qE is not a type"
msgstr ""
-#: cp/parser.c:2153
+#: cp/parser.c:2163
#, gcc-internal-format
msgid "%qE is not a class or namespace"
msgstr ""
-#: cp/parser.c:2157
+#: cp/parser.c:2167
#, gcc-internal-format
msgid "%qE is not a class, namespace, or enumeration"
msgstr ""
-#: cp/parser.c:2200
+#: cp/parser.c:2210
#, gcc-internal-format
msgid "ISO C++ 1998 does not support %<long long%>"
msgstr ""
-#: cp/parser.c:2221
+#: cp/parser.c:2231
#, gcc-internal-format
msgid "duplicate %qs"
msgstr ""
-#: cp/parser.c:2266
+#: cp/parser.c:2276
#, gcc-internal-format
msgid "new types may not be defined in a return type"
msgstr ""
-#: cp/parser.c:2268
+#: cp/parser.c:2278
#, gcc-internal-format
msgid "(perhaps a semicolon is missing after the definition of %qT)"
msgstr ""
-#: cp/parser.c:2288 cp/parser.c:4450 cp/pt.c:6753
+#: cp/parser.c:2298 cp/parser.c:4470 cp/pt.c:6776
#, gcc-internal-format
msgid "%qT is not a template"
msgstr ""
-#: cp/parser.c:2290
+#: cp/parser.c:2300
#, gcc-internal-format
msgid "%qE is not a template"
msgstr ""
-#: cp/parser.c:2292
+#: cp/parser.c:2302
#, gcc-internal-format
msgid "invalid template-id"
msgstr ""
-#: cp/parser.c:2325
+#: cp/parser.c:2335
#, gcc-internal-format
msgid "floating-point literal cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2329 cp/pt.c:12595
+#: cp/parser.c:2339 cp/pt.c:12687
#, gcc-internal-format
msgid ""
"a cast to a type other than an integral or enumeration type cannot appear in "
"a constant-expression"
msgstr ""
-#: cp/parser.c:2334
+#: cp/parser.c:2344
#, gcc-internal-format
msgid "%<typeid%> operator cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2338
+#: cp/parser.c:2348
#, gcc-internal-format
msgid "non-constant compound literals cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2342
+#: cp/parser.c:2352
#, gcc-internal-format
msgid "a function call cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2346
+#: cp/parser.c:2356
#, gcc-internal-format
msgid "an increment cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2350
+#: cp/parser.c:2360
#, gcc-internal-format
msgid "an decrement cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2354
+#: cp/parser.c:2364
#, gcc-internal-format
msgid "an array reference cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2358
+#: cp/parser.c:2368
#, gcc-internal-format
msgid "the address of a label cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2362
+#: cp/parser.c:2372
#, gcc-internal-format
msgid "calls to overloaded operators cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2366
+#: cp/parser.c:2376
#, gcc-internal-format
msgid "an assignment cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2369
+#: cp/parser.c:2379
#, gcc-internal-format
msgid "a comma operator cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2373
+#: cp/parser.c:2383
#, gcc-internal-format
msgid "a call to a constructor cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2419
+#: cp/parser.c:2429
#, gcc-internal-format
msgid "%qs cannot appear in a constant-expression"
msgstr ""
-#: cp/parser.c:2447
+#: cp/parser.c:2458
#, gcc-internal-format
msgid "invalid use of template-name %qE without an argument list"
msgstr ""
-#: cp/parser.c:2450
+#: cp/parser.c:2461
#, gcc-internal-format
msgid "invalid use of destructor %qD as a type"
msgstr ""
#. Something like 'unsigned A a;'
-#: cp/parser.c:2453
+#: cp/parser.c:2464
#, gcc-internal-format
msgid "invalid combination of multiple type-specifiers"
msgstr ""
#. Issue an error message.
-#: cp/parser.c:2457
+#: cp/parser.c:2468
#, gcc-internal-format
msgid "%qE does not name a type"
msgstr ""
-#: cp/parser.c:2466
+#: cp/parser.c:2477
#, gcc-internal-format
msgid "C++0x %<constexpr%> only available with -std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/parser.c:2493
+#: cp/parser.c:2504
#, gcc-internal-format
msgid "(perhaps %<typename %T::%E%> was intended)"
msgstr ""
-#: cp/parser.c:2508
+#: cp/parser.c:2519
#, gcc-internal-format
msgid "%qE in namespace %qE does not name a type"
msgstr ""
#. A<T>::A<T>()
-#: cp/parser.c:2514
+#: cp/parser.c:2525
#, gcc-internal-format
msgid "%<%T::%E%> names the constructor, not the type"
msgstr ""
-#: cp/parser.c:2517
+#: cp/parser.c:2528
#, gcc-internal-format
msgid "and %qT has no template constructors"
msgstr ""
-#: cp/parser.c:2522
+#: cp/parser.c:2533
#, gcc-internal-format
msgid "need %<typename%> before %<%T::%E%> because %qT is a dependent scope"
msgstr ""
-#: cp/parser.c:2526
+#: cp/parser.c:2537
#, gcc-internal-format
-msgid "%qE in class %qT does not name a type"
+msgid "%qE in %q#T does not name a type"
msgstr ""
-#: cp/parser.c:3076
+#: cp/parser.c:3086
#, gcc-internal-format
msgid "expected string-literal"
msgstr ""
-#: cp/parser.c:3128
+#: cp/parser.c:3138
#, gcc-internal-format
msgid "a wide string is invalid in this context"
msgstr ""
-#: cp/parser.c:3223 cp/parser.c:9393
+#: cp/parser.c:3233 cp/parser.c:9556
#, gcc-internal-format
msgid "expected declaration"
msgstr ""
-#: cp/parser.c:3318
+#: cp/parser.c:3331
#, gcc-internal-format
msgid "fixed-point types not supported in C++"
msgstr ""
-#: cp/parser.c:3398
+#: cp/parser.c:3411
#, gcc-internal-format
msgid "ISO C++ forbids braced-groups within expressions"
msgstr ""
-#: cp/parser.c:3410
+#: cp/parser.c:3423
#, gcc-internal-format
msgid ""
"statement-expressions are not allowed outside functions nor in template-"
"argument lists"
msgstr ""
-#: cp/parser.c:3464 cp/parser.c:3613 cp/parser.c:3766
+#: cp/parser.c:3483 cp/parser.c:3632 cp/parser.c:3785
#, gcc-internal-format
msgid "expected primary-expression"
msgstr ""
-#: cp/parser.c:3494
+#: cp/parser.c:3513
#, gcc-internal-format
msgid "%<this%> may not be used in this context"
msgstr ""
-#: cp/parser.c:3608
+#: cp/parser.c:3627
#, gcc-internal-format
msgid "a template declaration cannot appear at block scope"
msgstr ""
-#: cp/parser.c:3742
+#: cp/parser.c:3761
#, gcc-internal-format
msgid "local variable %qD may not appear in this context"
msgstr ""
-#: cp/parser.c:3906
+#: cp/parser.c:3925
#, gcc-internal-format
msgid "expected id-expression"
msgstr ""
-#: cp/parser.c:4036
+#: cp/parser.c:4055
#, gcc-internal-format
msgid "scope %qT before %<~%> is not a class-name"
msgstr ""
-#: cp/parser.c:4157
+#: cp/parser.c:4177
#, gcc-internal-format
msgid "declaration of %<~%T%> as member of %qT"
msgstr ""
-#: cp/parser.c:4172
+#: cp/parser.c:4192
#, gcc-internal-format
msgid "typedef-name %qD used as destructor declarator"
msgstr ""
-#: cp/parser.c:4208 cp/parser.c:14955
+#: cp/parser.c:4228 cp/parser.c:15141
#, gcc-internal-format
msgid "expected unqualified-id"
msgstr ""
-#: cp/parser.c:4312
+#: cp/parser.c:4332
#, gcc-internal-format
msgid "found %<:%> in nested-name-specifier, expected %<::%>"
msgstr ""
-#: cp/parser.c:4529
+#: cp/parser.c:4549
#, gcc-internal-format
msgid "expected nested-name-specifier"
msgstr ""
-#: cp/parser.c:4711 cp/parser.c:6380
+#: cp/parser.c:4731 cp/parser.c:6410
#, gcc-internal-format
msgid "types may not be defined in casts"
msgstr ""
-#: cp/parser.c:4771
+#: cp/parser.c:4791
#, gcc-internal-format
msgid "types may not be defined in a %<typeid%> expression"
msgstr ""
#. Warn the user that a compound literal is not
#. allowed in standard C++.
-#: cp/parser.c:4880
+#: cp/parser.c:4900
#, gcc-internal-format
msgid "ISO C++ forbids compound-literals"
msgstr ""
-#: cp/parser.c:5256
+#: cp/parser.c:5280
#, gcc-internal-format
msgid "%qE does not have class type"
msgstr ""
-#: cp/parser.c:5341 cp/typeck.c:2321
+#: cp/parser.c:5365 cp/typeck.c:2335
#, gcc-internal-format
msgid "invalid use of %qD"
msgstr ""
-#: cp/parser.c:5604
+#: cp/parser.c:5628
#, gcc-internal-format
msgid "non-scalar type"
msgstr ""
-#: cp/parser.c:5693
+#: cp/parser.c:5722
#, gcc-internal-format
msgid "ISO C++ does not allow %<alignof%> with a non-type"
msgstr ""
-#: cp/parser.c:5752
+#: cp/parser.c:5781
#, gcc-internal-format
msgid "types may not be defined in %<noexcept%> expressions"
msgstr ""
-#: cp/parser.c:5983
+#: cp/parser.c:6012
#, gcc-internal-format
msgid "array bound forbidden after parenthesized type-id"
msgstr ""
-#: cp/parser.c:5985
+#: cp/parser.c:6014
#, gcc-internal-format
msgid "try removing the parentheses around the type-id"
msgstr ""
-#: cp/parser.c:6066
+#: cp/parser.c:6095
#, gcc-internal-format
msgid "types may not be defined in a new-type-id"
msgstr ""
-#: cp/parser.c:6190
+#: cp/parser.c:6219
#, gcc-internal-format
msgid "expression in new-declarator must have integral or enumeration type"
msgstr ""
-#: cp/parser.c:6445
+#: cp/parser.c:6475
#, gcc-internal-format
msgid "use of old-style cast"
msgstr ""
-#: cp/parser.c:6574
+#: cp/parser.c:6604
#, gcc-internal-format
msgid "%<>>%> operator will be treated as two right angle brackets in C++0x"
msgstr ""
-#: cp/parser.c:6577
+#: cp/parser.c:6607
#, gcc-internal-format
msgid "suggest parentheses around %<>>%> expression"
msgstr ""
-#: cp/parser.c:6722
+#: cp/parser.c:6752
#, gcc-internal-format
msgid "ISO C++ does not allow ?: with omitted middle operand"
msgstr ""
-#: cp/parser.c:7318
+#: cp/parser.c:7355
#, gcc-internal-format
msgid "lambda-expression in unevaluated context"
msgstr ""
-#: cp/parser.c:7441
+#: cp/parser.c:7476
#, gcc-internal-format
msgid "expected end of capture-list"
msgstr ""
-#: cp/parser.c:7492
+#: cp/parser.c:7490
+#, gcc-internal-format
+msgid ""
+"explicit by-copy capture of %<this%> redundant with by-copy capture default"
+msgstr ""
+
+#: cp/parser.c:7531
#, gcc-internal-format
msgid "ISO C++ does not allow initializers in lambda expression capture lists"
msgstr ""
-#: cp/parser.c:7586
+#: cp/parser.c:7580
+#, gcc-internal-format
+msgid "explicit by-copy capture of %qD redundant with by-copy capture default"
+msgstr ""
+
+#: cp/parser.c:7585
+#, gcc-internal-format
+msgid ""
+"explicit by-reference capture of %qD redundant with by-reference capture "
+"default"
+msgstr ""
+
+#: cp/parser.c:7640
#, gcc-internal-format
msgid "default argument specified for lambda parameter"
msgstr ""
-#: cp/parser.c:7947
+#: cp/parser.c:8020
#, gcc-internal-format
msgid "expected labeled-statement"
msgstr ""
-#: cp/parser.c:7985
+#: cp/parser.c:8058
#, gcc-internal-format
msgid "case label %qE not within a switch statement"
msgstr ""
-#: cp/parser.c:8060
+#: cp/parser.c:8133
#, gcc-internal-format
msgid "need %<typename%> before %qE because %qT is a dependent scope"
msgstr ""
-#: cp/parser.c:8069
+#: cp/parser.c:8142
#, gcc-internal-format
msgid "%<%T::%D%> names the constructor, not the type"
msgstr ""
-#: cp/parser.c:8326 cp/parser.c:20711
+#: cp/parser.c:8191
+#, gcc-internal-format
+msgid "compound-statement in constexpr function"
+msgstr ""
+
+#: cp/parser.c:8403 cp/parser.c:20986
#, gcc-internal-format
msgid "expected selection-statement"
msgstr ""
-#: cp/parser.c:8359
+#: cp/parser.c:8436
#, gcc-internal-format
msgid "types may not be defined in conditions"
msgstr ""
-#: cp/parser.c:8633
+#: cp/parser.c:8732
#, gcc-internal-format
-msgid "inconsistent begin/end types in range-based for: %qT and %qT"
+msgid "range-based %<for%> expression of type %qT has incomplete type"
msgstr ""
-#: cp/parser.c:8780 cp/parser.c:20714
+#: cp/parser.c:8768
+#, gcc-internal-format
+msgid ""
+"range-based %<for%> expression of type %qT has an %<end%> member but not a "
+"%<begin%>"
+msgstr ""
+
+#: cp/parser.c:8774
+#, gcc-internal-format
+msgid ""
+"range-based %<for%> expression of type %qT has a %<begin%> member but not an "
+"%<end%>"
+msgstr ""
+
+#: cp/parser.c:8812
+#, gcc-internal-format
+msgid ""
+"inconsistent begin/end types in range-based %<for%> statement: %qT and %qT"
+msgstr ""
+
+#: cp/parser.c:8943 cp/parser.c:20989
#, gcc-internal-format
msgid "expected iteration-statement"
msgstr ""
-#: cp/parser.c:8827
+#: cp/parser.c:8990
#, gcc-internal-format
-msgid "range-based-for loops are not allowed in C++98 mode"
+msgid "range-based %<for%> loops are not allowed in C++98 mode"
msgstr ""
#. Issue a warning about this use of a GNU extension.
-#: cp/parser.c:8949
+#: cp/parser.c:9112
#, gcc-internal-format
msgid "ISO C++ forbids computed gotos"
msgstr ""
-#: cp/parser.c:8962 cp/parser.c:20717
+#: cp/parser.c:9125 cp/parser.c:20992
#, gcc-internal-format
msgid "expected jump-statement"
msgstr ""
-#: cp/parser.c:9094 cp/parser.c:17524
+#: cp/parser.c:9257 cp/parser.c:17784
#, gcc-internal-format
msgid "extra %<;%>"
msgstr ""
-#: cp/parser.c:9320
+#: cp/parser.c:9483
#, gcc-internal-format
msgid "%<__label__%> not at the beginning of a block"
msgstr ""
-#: cp/parser.c:9471
+#: cp/parser.c:9634
#, gcc-internal-format
msgid "mixing declarations and function-definitions is forbidden"
msgstr ""
-#: cp/parser.c:9615
+#: cp/parser.c:9778
#, gcc-internal-format
msgid "%<friend%> used outside of class"
msgstr ""
#. Complain about `auto' as a storage specifier, if
#. we're complaining about C++0x compatibility.
-#: cp/parser.c:9674
+#: cp/parser.c:9837
#, gcc-internal-format
msgid "%<auto%> will change meaning in C++0x; please remove it"
msgstr ""
-#: cp/parser.c:9710
+#: cp/parser.c:9873
#, gcc-internal-format
msgid "decl-specifier invalid in condition"
msgstr ""
-#: cp/parser.c:9801
+#: cp/parser.c:9964
#, gcc-internal-format
msgid "class definition may not be declared a friend"
msgstr ""
-#: cp/parser.c:9870 cp/parser.c:17862
+#: cp/parser.c:10033 cp/parser.c:18125
#, gcc-internal-format
msgid "templates may not be %<virtual%>"
msgstr ""
-#: cp/parser.c:9911
+#: cp/parser.c:10074
#, gcc-internal-format
msgid "invalid linkage-specification"
msgstr ""
-#: cp/parser.c:10038
+#: cp/parser.c:10201
#, gcc-internal-format
msgid "types may not be defined in %<decltype%> expressions"
msgstr ""
-#: cp/parser.c:10293
+#: cp/parser.c:10457
#, gcc-internal-format
msgid "invalid use of %<auto%> in conversion operator"
msgstr ""
-#: cp/parser.c:10378
+#: cp/parser.c:10542
#, gcc-internal-format
msgid "only constructors take member initializers"
msgstr ""
-#: cp/parser.c:10400
+#: cp/parser.c:10564
#, gcc-internal-format
msgid "cannot expand initializer for member %<%D%>"
msgstr ""
-#: cp/parser.c:10455
+#: cp/parser.c:10619
#, gcc-internal-format
msgid "anachronistic old-style base class initializer"
msgstr ""
-#: cp/parser.c:10523
+#: cp/parser.c:10687
#, gcc-internal-format
msgid ""
"keyword %<typename%> not allowed in this context (a qualified member "
"initializer is implicitly a type)"
msgstr ""
-#: cp/parser.c:10831
+#: cp/parser.c:10995
#, gcc-internal-format
msgid "expected operator"
msgstr ""
#. Warn that we do not support `export'.
-#: cp/parser.c:10868
+#: cp/parser.c:11032
#, gcc-internal-format
msgid "keyword %<export%> not implemented, and will be ignored"
msgstr ""
-#: cp/parser.c:11061 cp/parser.c:11159 cp/parser.c:11266 cp/parser.c:16099
+#: cp/parser.c:11225 cp/parser.c:11323 cp/parser.c:11430 cp/parser.c:16333
#, gcc-internal-format
msgid "template parameter pack %qD cannot have a default argument"
msgstr ""
-#: cp/parser.c:11065 cp/parser.c:16106
+#: cp/parser.c:11229 cp/parser.c:16340
#, gcc-internal-format
msgid "template parameter pack cannot have a default argument"
msgstr ""
-#: cp/parser.c:11163 cp/parser.c:11270
+#: cp/parser.c:11327 cp/parser.c:11434
#, gcc-internal-format
msgid "template parameter packs cannot have default arguments"
msgstr ""
-#: cp/parser.c:11352
+#: cp/parser.c:11516
#, gcc-internal-format
msgid "expected template-id"
msgstr ""
-#: cp/parser.c:11399 cp/parser.c:20675
+#: cp/parser.c:11563 cp/parser.c:20950
#, gcc-internal-format
msgid "expected %<<%>"
msgstr ""
-#: cp/parser.c:11406
+#: cp/parser.c:11570
#, gcc-internal-format
msgid "%<<::%> cannot begin a template-argument list"
msgstr ""
-#: cp/parser.c:11410
+#: cp/parser.c:11574
#, gcc-internal-format
msgid ""
"%<<:%> is an alternate spelling for %<[%>. Insert whitespace between %<<%> "
"and %<::%>"
msgstr ""
-#: cp/parser.c:11488
+#: cp/parser.c:11652
#, gcc-internal-format
msgid "parse error in template argument list"
msgstr ""
#. The name does not name a template.
-#: cp/parser.c:11556 cp/parser.c:11671 cp/parser.c:11881
+#: cp/parser.c:11720 cp/parser.c:11835 cp/parser.c:12045
#, gcc-internal-format
msgid "expected template-name"
msgstr ""
#. Explain what went wrong.
-#: cp/parser.c:11602
+#: cp/parser.c:11766
#, gcc-internal-format
msgid "non-template %qD used as template"
msgstr ""
-#: cp/parser.c:11604
+#: cp/parser.c:11768
#, gcc-internal-format
msgid "use %<%T::template %D%> to indicate that it is a template"
msgstr ""
-#: cp/parser.c:11737
+#: cp/parser.c:11901
#, gcc-internal-format
msgid "expected parameter pack before %<...%>"
msgstr ""
-#: cp/parser.c:11846 cp/parser.c:11864 cp/parser.c:12005
+#: cp/parser.c:12010 cp/parser.c:12028 cp/parser.c:12169
#, gcc-internal-format
msgid "expected template-argument"
msgstr ""
-#: cp/parser.c:11988
+#: cp/parser.c:12152
#, gcc-internal-format
msgid "invalid non-type template argument"
msgstr ""
-#: cp/parser.c:12102
+#: cp/parser.c:12268
#, gcc-internal-format
msgid "explicit instantiation shall not use %<inline%> specifier"
msgstr ""
-#: cp/parser.c:12105
+#: cp/parser.c:12271
#, gcc-internal-format
msgid "explicit instantiation shall not use %<constexpr%> specifier"
msgstr ""
-#: cp/parser.c:12162
+#: cp/parser.c:12330
#, gcc-internal-format
msgid "template specialization with C linkage"
msgstr ""
-#: cp/parser.c:12382
+#: cp/parser.c:12550
#, gcc-internal-format
msgid "expected type specifier"
msgstr ""
-#: cp/parser.c:12599
+#: cp/parser.c:12778
#, gcc-internal-format
msgid "expected template-id for type"
msgstr ""
-#: cp/parser.c:12626
+#: cp/parser.c:12805
#, gcc-internal-format
msgid "expected type-name"
msgstr ""
-#: cp/parser.c:12813
+#: cp/parser.c:12992
#, gcc-internal-format
msgid ""
"elaborated-type-specifier for a scoped enum must not use the %<%D%> keyword"
msgstr ""
-#: cp/parser.c:12997
+#: cp/parser.c:13176
#, gcc-internal-format
msgid "declaration %qD does not declare anything"
msgstr ""
-#: cp/parser.c:13083
+#: cp/parser.c:13262
#, gcc-internal-format
msgid "attributes ignored on uninstantiated type"
msgstr ""
-#: cp/parser.c:13087
+#: cp/parser.c:13266
#, gcc-internal-format
msgid "attributes ignored on template instantiation"
msgstr ""
-#: cp/parser.c:13092
+#: cp/parser.c:13271
#, gcc-internal-format
msgid ""
"attributes ignored on elaborated-type-specifier that is not a forward "
"declaration"
msgstr ""
-#: cp/parser.c:13216
+#: cp/parser.c:13395
#, gcc-internal-format
msgid "%qD is an enumeration template"
msgstr ""
-#: cp/parser.c:13224
+#: cp/parser.c:13403
#, gcc-internal-format
msgid "%qD is not an enumerator-name"
msgstr ""
-#: cp/parser.c:13287
+#: cp/parser.c:13466
#, gcc-internal-format
msgid "expected %<;%> or %<{%>"
msgstr ""
-#: cp/parser.c:13334
+#: cp/parser.c:13514
#, gcc-internal-format
msgid "cannot add an enumerator list to a template instantiation"
msgstr ""
-#: cp/parser.c:13343 cp/parser.c:17122
+#: cp/parser.c:13523 cp/parser.c:17380
#, gcc-internal-format
msgid "declaration of %qD in namespace %qD which does not enclose %qD"
msgstr ""
-#: cp/parser.c:13348 cp/parser.c:17127
+#: cp/parser.c:13528 cp/parser.c:17385
#, gcc-internal-format
msgid "declaration of %qD in %qD which does not enclose %qD"
msgstr ""
-#: cp/parser.c:13371
+#: cp/parser.c:13551
#, gcc-internal-format
msgid "multiple definition of %q#T"
msgstr ""
-#: cp/parser.c:13397
+#: cp/parser.c:13578
#, gcc-internal-format
msgid "opaque-enum-specifier without name"
msgstr ""
-#: cp/parser.c:13400
+#: cp/parser.c:13581
#, gcc-internal-format
msgid "opaque-enum-specifier must use a simple identifier"
msgstr ""
-#: cp/parser.c:13575
+#: cp/parser.c:13756
#, gcc-internal-format
msgid "%qD is not a namespace-name"
msgstr ""
-#: cp/parser.c:13576
+#: cp/parser.c:13757
#, gcc-internal-format
msgid "expected namespace-name"
msgstr ""
-#: cp/parser.c:13701
+#: cp/parser.c:13882
#, gcc-internal-format
msgid "%<namespace%> definition is not allowed here"
msgstr ""
-#: cp/parser.c:13842
+#: cp/parser.c:14023
#, gcc-internal-format
msgid "a template-id may not appear in a using-declaration"
msgstr ""
-#: cp/parser.c:14264
+#: cp/parser.c:14445
#, gcc-internal-format
msgid "a function-definition is not allowed here"
msgstr ""
-#: cp/parser.c:14276
+#: cp/parser.c:14457
#, gcc-internal-format
msgid "an asm-specification is not allowed on a function-definition"
msgstr ""
-#: cp/parser.c:14280
+#: cp/parser.c:14461
#, gcc-internal-format
msgid "attributes are not allowed on a function-definition"
msgstr ""
-#: cp/parser.c:14317
+#: cp/parser.c:14498
#, gcc-internal-format
msgid "expected constructor, destructor, or type conversion"
msgstr ""
#. Anything else is an error.
-#: cp/parser.c:14352 cp/parser.c:16265
+#: cp/parser.c:14533 cp/parser.c:16499
#, gcc-internal-format
msgid "expected initializer"
msgstr ""
-#: cp/parser.c:14372
+#: cp/parser.c:14553
#, gcc-internal-format
msgid "invalid type in declaration"
msgstr ""
-#: cp/parser.c:14448
+#: cp/parser.c:14629
#, gcc-internal-format
msgid "initializer provided for function"
msgstr ""
-#: cp/parser.c:14481
+#: cp/parser.c:14662
#, gcc-internal-format
msgid "attributes after parenthesized initializer ignored"
msgstr ""
-#: cp/parser.c:14878
+#: cp/parser.c:15064
#, gcc-internal-format
msgid "array bound is not an integer constant"
msgstr ""
-#: cp/parser.c:14999
+#: cp/parser.c:15185
#, gcc-internal-format
msgid "cannot define member of dependent typedef %qT"
msgstr ""
-#: cp/parser.c:15003
+#: cp/parser.c:15189
#, gcc-internal-format
msgid "%<%T::%E%> is not a type"
msgstr ""
-#: cp/parser.c:15031
+#: cp/parser.c:15217
#, gcc-internal-format
msgid "invalid use of constructor as a template"
msgstr ""
-#: cp/parser.c:15033
+#: cp/parser.c:15219
#, gcc-internal-format
msgid ""
"use %<%T::%D%> instead of %<%T::%D%> to name the constructor in a qualified "
@@ -30219,226 +30607,236 @@
#. here because we do not have enough
#. information about its original syntactic
#. form.
-#: cp/parser.c:15050
+#: cp/parser.c:15236
#, gcc-internal-format
msgid "invalid declarator"
msgstr ""
-#: cp/parser.c:15116
+#: cp/parser.c:15302
#, gcc-internal-format
msgid "expected declarator"
msgstr ""
-#: cp/parser.c:15211
+#: cp/parser.c:15397
#, gcc-internal-format
msgid "%qD is a namespace"
msgstr ""
-#: cp/parser.c:15227
+#: cp/parser.c:15413
#, gcc-internal-format
msgid "expected ptr-operator"
msgstr ""
-#: cp/parser.c:15286
+#: cp/parser.c:15472
#, gcc-internal-format
msgid "duplicate cv-qualifier"
msgstr ""
-#: cp/parser.c:15408 cp/typeck2.c:427
+#: cp/parser.c:15520
+#, gcc-internal-format
+msgid "duplicate virt-specifier"
+msgstr ""
+
+#: cp/parser.c:15641 cp/typeck2.c:435 cp/typeck2.c:1614
#, gcc-internal-format
msgid "invalid use of %<auto%>"
msgstr ""
-#: cp/parser.c:15427
+#: cp/parser.c:15660
#, gcc-internal-format
msgid "types may not be defined in template arguments"
msgstr ""
-#: cp/parser.c:15508
+#: cp/parser.c:15741
#, gcc-internal-format
msgid "expected type-specifier"
msgstr ""
-#: cp/parser.c:15752
+#: cp/parser.c:15985
#, gcc-internal-format
msgid "expected %<,%> or %<...%>"
msgstr ""
-#: cp/parser.c:15809
+#: cp/parser.c:16042
#, gcc-internal-format
msgid "types may not be defined in parameter types"
msgstr ""
-#: cp/parser.c:16032
+#: cp/parser.c:16266
#, gcc-internal-format
msgid "file ends in default argument"
msgstr ""
-#: cp/parser.c:16078
+#: cp/parser.c:16312
#, gcc-internal-format
msgid "deprecated use of default argument for parameter of non-function"
msgstr ""
-#: cp/parser.c:16082
+#: cp/parser.c:16316
#, gcc-internal-format
msgid "default arguments are only permitted for function parameters"
msgstr ""
-#: cp/parser.c:16398
+#: cp/parser.c:16632
#, gcc-internal-format
msgid "ISO C++ does not allow designated initializers"
msgstr ""
-#: cp/parser.c:16486 cp/parser.c:16608
+#: cp/parser.c:16720 cp/parser.c:16842
#, gcc-internal-format
msgid "expected class-name"
msgstr ""
-#: cp/parser.c:16789
+#: cp/parser.c:17023
#, gcc-internal-format
msgid "expected %<;%> after class definition"
msgstr ""
-#: cp/parser.c:16791
+#: cp/parser.c:17025
#, gcc-internal-format
msgid "expected %<;%> after struct definition"
msgstr ""
-#: cp/parser.c:16793
+#: cp/parser.c:17027
#, gcc-internal-format
msgid "expected %<;%> after union definition"
msgstr ""
-#: cp/parser.c:17077
+#: cp/parser.c:17328
#, gcc-internal-format
msgid "expected %<{%> or %<:%>"
msgstr ""
-#: cp/parser.c:17089
+#: cp/parser.c:17339
+#, gcc-internal-format
+msgid "cannot specify %<override%> for a class"
+msgstr ""
+
+#: cp/parser.c:17347
#, gcc-internal-format
msgid "global qualification of class name is invalid"
msgstr ""
-#: cp/parser.c:17096
+#: cp/parser.c:17354
#, gcc-internal-format
msgid "qualified name does not name a class"
msgstr ""
-#: cp/parser.c:17108
+#: cp/parser.c:17366
#, gcc-internal-format
msgid "invalid class name in declaration of %qD"
msgstr ""
-#: cp/parser.c:17141
+#: cp/parser.c:17399
#, gcc-internal-format
msgid "extra qualification not allowed"
msgstr ""
-#: cp/parser.c:17153
+#: cp/parser.c:17411
#, gcc-internal-format
msgid "an explicit specialization must be preceded by %<template <>%>"
msgstr ""
-#: cp/parser.c:17183
+#: cp/parser.c:17441
#, gcc-internal-format
msgid "function template %qD redeclared as a class template"
msgstr ""
-#: cp/parser.c:17214
+#: cp/parser.c:17472
#, gcc-internal-format
msgid "could not resolve typename type"
msgstr ""
-#: cp/parser.c:17266
+#: cp/parser.c:17524
#, gcc-internal-format
msgid "previous definition of %q+#T"
msgstr ""
-#: cp/parser.c:17330 cp/parser.c:20720
+#: cp/parser.c:17590 cp/parser.c:20995
#, gcc-internal-format
msgid "expected class-key"
msgstr ""
-#: cp/parser.c:17543
+#: cp/parser.c:17803
#, gcc-internal-format
-msgid "a class-key must be used when declaring a friend"
+msgid "in C++03 a class-key must be used when declaring a friend"
msgstr ""
-#: cp/parser.c:17558
+#: cp/parser.c:17821
#, gcc-internal-format
msgid "friend declaration does not name a class or function"
msgstr ""
-#: cp/parser.c:17742
+#: cp/parser.c:18005
#, gcc-internal-format
msgid "pure-specifier on function-definition"
msgstr ""
-#: cp/parser.c:17790
+#: cp/parser.c:18053
#, gcc-internal-format
msgid "expected %<;%> at end of member declaration"
msgstr ""
-#: cp/parser.c:17856
+#: cp/parser.c:18119
#, gcc-internal-format
msgid "invalid pure specifier (only %<= 0%> is allowed)"
msgstr ""
-#: cp/parser.c:17891
+#: cp/parser.c:18154
#, gcc-internal-format
msgid "a brace-enclosed initializer is not allowed here"
msgstr ""
-#: cp/parser.c:18023
+#: cp/parser.c:18286
#, gcc-internal-format
msgid "%<virtual%> specified more than once in base-specified"
msgstr ""
-#: cp/parser.c:18043
+#: cp/parser.c:18306
#, gcc-internal-format
msgid "more than one access specifier in base-specified"
msgstr ""
-#: cp/parser.c:18067
+#: cp/parser.c:18330
#, gcc-internal-format
msgid "keyword %<typename%> not allowed outside of templates"
msgstr ""
-#: cp/parser.c:18070
+#: cp/parser.c:18333
#, gcc-internal-format
msgid ""
"keyword %<typename%> not allowed in this context (the base class is "
"implicitly a type)"
msgstr ""
-#: cp/parser.c:18147 cp/parser.c:18187
+#: cp/parser.c:18410 cp/parser.c:18450
#, gcc-internal-format
msgid "types may not be defined in an exception-specification"
msgstr ""
-#: cp/parser.c:18169
+#: cp/parser.c:18432
#, gcc-internal-format
msgid ""
"dynamic exception specifications are deprecated in C++0x; use %<noexcept%> "
"instead"
msgstr ""
-#: cp/parser.c:18368
+#: cp/parser.c:18631
#, gcc-internal-format
msgid "types may not be defined in exception-declarations"
msgstr ""
-#: cp/parser.c:19265
+#: cp/parser.c:19528
#, gcc-internal-format
msgid "specializing member %<%T::%E%> requires %<template<>%> syntax"
msgstr ""
-#: cp/parser.c:19270
+#: cp/parser.c:19533
#, gcc-internal-format
msgid "invalid declaration of %<%T::%E%>"
msgstr ""
-#: cp/parser.c:19274
+#: cp/parser.c:19537
#, gcc-internal-format
msgid "too few template-parameter-lists"
msgstr ""
@@ -30447,445 +30845,445 @@
#. something like:
#.
#. template <class T> template <class U> void S::f();
-#: cp/parser.c:19281
+#: cp/parser.c:19544
#, gcc-internal-format
msgid "too many template-parameter-lists"
msgstr ""
-#: cp/parser.c:19569
+#: cp/parser.c:19841
#, gcc-internal-format
msgid "named return values are no longer supported"
msgstr ""
-#: cp/parser.c:19649
+#: cp/parser.c:19921
#, gcc-internal-format
msgid "invalid declaration of member template in local class"
msgstr ""
-#: cp/parser.c:19658
+#: cp/parser.c:19930
#, gcc-internal-format
msgid "template with C linkage"
msgstr ""
-#: cp/parser.c:19677
+#: cp/parser.c:19949
#, gcc-internal-format
msgid "invalid explicit specialization"
msgstr ""
-#: cp/parser.c:19807
+#: cp/parser.c:20079
#, gcc-internal-format
msgid "template declaration of %<typedef%>"
msgstr ""
-#: cp/parser.c:19884
+#: cp/parser.c:20156
#, gcc-internal-format
msgid "explicit template specialization cannot have a storage class"
msgstr ""
-#: cp/parser.c:20109
+#: cp/parser.c:20382
#, gcc-internal-format
msgid "%<>>%> should be %<> >%> within a nested template argument list"
msgstr ""
-#: cp/parser.c:20122
+#: cp/parser.c:20395
#, gcc-internal-format
msgid "spurious %<>>%>, use %<>%> to terminate a template argument list"
msgstr ""
-#: cp/parser.c:20467
+#: cp/parser.c:20742
#, gcc-internal-format
msgid "invalid use of %qD in linkage specification"
msgstr ""
-#: cp/parser.c:20480
+#: cp/parser.c:20755
#, gcc-internal-format
msgid "%<__thread%> before %qD"
msgstr ""
-#: cp/parser.c:20584
+#: cp/parser.c:20859
#, gcc-internal-format
msgid "expected %<new%>"
msgstr ""
-#: cp/parser.c:20587
+#: cp/parser.c:20862
#, gcc-internal-format
msgid "expected %<delete%>"
msgstr ""
-#: cp/parser.c:20590
+#: cp/parser.c:20865
#, gcc-internal-format
msgid "expected %<return%>"
msgstr ""
-#: cp/parser.c:20596
+#: cp/parser.c:20871
#, gcc-internal-format
msgid "expected %<extern%>"
msgstr ""
-#: cp/parser.c:20599
+#: cp/parser.c:20874
#, gcc-internal-format
msgid "expected %<static_assert%>"
msgstr ""
-#: cp/parser.c:20602
+#: cp/parser.c:20877
#, gcc-internal-format
msgid "expected %<decltype%>"
msgstr ""
-#: cp/parser.c:20605
+#: cp/parser.c:20880
#, gcc-internal-format
msgid "expected %<operator%>"
msgstr ""
-#: cp/parser.c:20608
+#: cp/parser.c:20883
#, gcc-internal-format
msgid "expected %<class%>"
msgstr ""
-#: cp/parser.c:20611
+#: cp/parser.c:20886
#, gcc-internal-format
msgid "expected %<template%>"
msgstr ""
-#: cp/parser.c:20614
+#: cp/parser.c:20889
#, gcc-internal-format
msgid "expected %<namespace%>"
msgstr ""
-#: cp/parser.c:20617
+#: cp/parser.c:20892
#, gcc-internal-format
msgid "expected %<using%>"
msgstr ""
-#: cp/parser.c:20620
+#: cp/parser.c:20895
#, gcc-internal-format
msgid "expected %<asm%>"
msgstr ""
-#: cp/parser.c:20623
+#: cp/parser.c:20898
#, gcc-internal-format
msgid "expected %<try%>"
msgstr ""
-#: cp/parser.c:20626
+#: cp/parser.c:20901
#, gcc-internal-format
msgid "expected %<catch%>"
msgstr ""
-#: cp/parser.c:20629
+#: cp/parser.c:20904
#, gcc-internal-format
msgid "expected %<throw%>"
msgstr ""
-#: cp/parser.c:20632
+#: cp/parser.c:20907
#, gcc-internal-format
msgid "expected %<__label__%>"
msgstr ""
-#: cp/parser.c:20635
+#: cp/parser.c:20910
#, gcc-internal-format
msgid "expected %<@try%>"
msgstr ""
-#: cp/parser.c:20638
+#: cp/parser.c:20913
#, gcc-internal-format
msgid "expected %<@synchronized%>"
msgstr ""
-#: cp/parser.c:20641
+#: cp/parser.c:20916
#, gcc-internal-format
msgid "expected %<@throw%>"
msgstr ""
-#: cp/parser.c:20666
+#: cp/parser.c:20941
#, gcc-internal-format
msgid "expected %<[%>"
msgstr ""
-#: cp/parser.c:20672
+#: cp/parser.c:20947
#, gcc-internal-format
msgid "expected %<::%>"
msgstr ""
-#: cp/parser.c:20684
+#: cp/parser.c:20959
#, gcc-internal-format
msgid "expected %<...%>"
msgstr ""
-#: cp/parser.c:20687
+#: cp/parser.c:20962
#, gcc-internal-format
msgid "expected %<*%>"
msgstr ""
-#: cp/parser.c:20690
+#: cp/parser.c:20965
#, gcc-internal-format
msgid "expected %<~%>"
msgstr ""
-#: cp/parser.c:20696
+#: cp/parser.c:20971
#, gcc-internal-format
msgid "expected %<:%> or %<::%>"
msgstr ""
-#: cp/parser.c:20724
+#: cp/parser.c:20999
#, gcc-internal-format
msgid "expected %<class%>, %<typename%>, or %<template%>"
msgstr ""
-#: cp/parser.c:20955
+#: cp/parser.c:21230
#, gcc-internal-format
msgid "%qs tag used in naming %q#T"
msgstr ""
-#: cp/parser.c:20976
+#: cp/parser.c:21251
#, gcc-internal-format
msgid "%qD redeclared with different access"
msgstr ""
-#: cp/parser.c:20995
+#: cp/parser.c:21270
#, gcc-internal-format
msgid "%<template%> (as a disambiguator) is only allowed within templates"
msgstr ""
-#: cp/parser.c:21260 cp/parser.c:22492 cp/parser.c:22678
+#: cp/parser.c:21535 cp/parser.c:22796 cp/parser.c:22982
#, gcc-internal-format
msgid "misplaced %<@%D%> Objective-C++ construct"
msgstr ""
-#: cp/parser.c:21382
+#: cp/parser.c:21657
#, gcc-internal-format
msgid "objective-c++ message argument(s) are expected"
msgstr ""
-#: cp/parser.c:21411
+#: cp/parser.c:21686
#, gcc-internal-format
msgid "%<@encode%> must specify a type as an argument"
msgstr ""
-#: cp/parser.c:21773
+#: cp/parser.c:22062
#, gcc-internal-format
msgid "invalid Objective-C++ selector name"
msgstr ""
-#: cp/parser.c:21848 cp/parser.c:21866
+#: cp/parser.c:22137 cp/parser.c:22155
#, gcc-internal-format
msgid "objective-c++ method declaration is expected"
msgstr ""
-#: cp/parser.c:21860 cp/parser.c:21925
+#: cp/parser.c:22149 cp/parser.c:22214
#, gcc-internal-format
msgid "method attributes must be specified at the end"
msgstr ""
-#: cp/parser.c:21967
+#: cp/parser.c:22256
#, gcc-internal-format
msgid "stray %qs between Objective-C++ methods"
msgstr ""
-#: cp/parser.c:22172 cp/parser.c:22179 cp/parser.c:22186
+#: cp/parser.c:22462 cp/parser.c:22469 cp/parser.c:22476
#, gcc-internal-format
msgid "invalid type for instance variable"
msgstr ""
-#: cp/parser.c:22299
+#: cp/parser.c:22590
#, gcc-internal-format
msgid "identifier expected after %<@protocol%>"
msgstr ""
-#: cp/parser.c:22457
+#: cp/parser.c:22761
#, gcc-internal-format
msgid ""
"attributes may not be specified before the %<@%D%> Objective-C++ keyword"
msgstr ""
-#: cp/parser.c:22464
+#: cp/parser.c:22768
#, gcc-internal-format
msgid "prefix attributes are ignored before %<@%D%>"
msgstr ""
-#: cp/parser.c:22737 cp/parser.c:22744 cp/parser.c:22751
+#: cp/parser.c:23041 cp/parser.c:23048 cp/parser.c:23055
#, gcc-internal-format
msgid "invalid type for property"
msgstr ""
-#: cp/parser.c:24182
+#: cp/parser.c:24488
#, gcc-internal-format
msgid "parenthesized initialization is not allowed in OpenMP %<for%> loop"
msgstr ""
-#: cp/parser.c:24349 cp/pt.c:11895
+#: cp/parser.c:24655 cp/pt.c:11987
#, gcc-internal-format
msgid "iteration variable %qD should not be reduction"
msgstr ""
-#: cp/parser.c:24416
+#: cp/parser.c:24723
#, gcc-internal-format
msgid "not enough collapsed for loops"
msgstr ""
-#: cp/parser.c:24876
+#: cp/parser.c:25183
#, gcc-internal-format
msgid "junk at end of %<#pragma GCC pch_preprocess%>"
msgstr ""
-#: cp/parser.c:25039
+#: cp/parser.c:25346
#, gcc-internal-format
msgid "inter-module optimizations not implemented for C++"
msgstr ""
-#: cp/pt.c:274
+#: cp/pt.c:276
#, gcc-internal-format
msgid "data member %qD cannot be a member template"
msgstr ""
-#: cp/pt.c:286
+#: cp/pt.c:288
#, gcc-internal-format
msgid "invalid member template declaration %qD"
msgstr ""
-#: cp/pt.c:653
+#: cp/pt.c:655
#, gcc-internal-format
msgid "explicit specialization in non-namespace scope %qD"
msgstr ""
-#: cp/pt.c:667
+#: cp/pt.c:669
#, gcc-internal-format
msgid "enclosing class templates are not explicitly specialized"
msgstr ""
-#: cp/pt.c:753
+#: cp/pt.c:755
#, gcc-internal-format
msgid "specialization of %qD must appear at namespace scope"
msgstr ""
-#: cp/pt.c:761
+#: cp/pt.c:763
#, gcc-internal-format
msgid "specialization of %qD in different namespace"
msgstr ""
-#: cp/pt.c:762 cp/pt.c:864
+#: cp/pt.c:764 cp/pt.c:866
#, gcc-internal-format
msgid " from definition of %q+#D"
msgstr ""
-#: cp/pt.c:779
+#: cp/pt.c:781
#, gcc-internal-format
msgid ""
"explicit instantiation of %qD in namespace %qD (which does not enclose "
"namespace %qD)"
msgstr ""
-#: cp/pt.c:797
+#: cp/pt.c:799
#, gcc-internal-format
msgid "name of class shadows template template parameter %qD"
msgstr ""
-#: cp/pt.c:830
+#: cp/pt.c:832
#, gcc-internal-format
msgid "specialization of %qT after instantiation"
msgstr ""
-#: cp/pt.c:863
+#: cp/pt.c:865
#, gcc-internal-format
msgid "specializing %q#T in different namespace"
msgstr ""
#. But if we've had an implicit instantiation, that's a
#. problem ([temp.expl.spec]/6).
-#: cp/pt.c:901
+#: cp/pt.c:903
#, gcc-internal-format
msgid "specialization %qT after instantiation %qT"
msgstr ""
-#: cp/pt.c:918
+#: cp/pt.c:920
#, gcc-internal-format
msgid "template specialization of %qD not allowed by ISO C++"
msgstr ""
-#: cp/pt.c:922
+#: cp/pt.c:924
#, gcc-internal-format
msgid "explicit specialization of non-template %qT"
msgstr ""
-#: cp/pt.c:1339
+#: cp/pt.c:1341
#, gcc-internal-format
msgid "specialization of %qD after instantiation"
msgstr ""
-#: cp/pt.c:1728
+#: cp/pt.c:1729
#, gcc-internal-format
msgid "%s %+#D"
msgstr ""
-#: cp/pt.c:1811
+#: cp/pt.c:1813
#, gcc-internal-format
msgid "%qD is not a function template"
msgstr ""
-#: cp/pt.c:2020
+#: cp/pt.c:2022
#, gcc-internal-format
msgid "template-id %qD for %q+D does not match any template declaration"
msgstr ""
-#: cp/pt.c:2023
+#: cp/pt.c:2025
#, gcc-internal-format
msgid ""
"saw %d %<template<>%>, need %d for specializing a member function template"
msgstr ""
-#: cp/pt.c:2032
+#: cp/pt.c:2034
#, gcc-internal-format
msgid "ambiguous template specialization %qD for %q+D"
msgstr ""
#. This case handles bogus declarations like template <>
#. template <class T> void f<int>();
-#: cp/pt.c:2268 cp/pt.c:2322
+#: cp/pt.c:2270 cp/pt.c:2324
#, gcc-internal-format
msgid "template-id %qD in declaration of primary template"
msgstr ""
-#: cp/pt.c:2281
+#: cp/pt.c:2283
#, gcc-internal-format
msgid "template parameter list used in explicit instantiation"
msgstr ""
-#: cp/pt.c:2287
+#: cp/pt.c:2289
#, gcc-internal-format
msgid "definition provided for explicit instantiation"
msgstr ""
-#: cp/pt.c:2295
+#: cp/pt.c:2297
#, gcc-internal-format
msgid "too many template parameter lists in declaration of %qD"
msgstr ""
-#: cp/pt.c:2298
+#: cp/pt.c:2300
#, gcc-internal-format
msgid "too few template parameter lists in declaration of %qD"
msgstr ""
-#: cp/pt.c:2300
+#: cp/pt.c:2302
#, gcc-internal-format
msgid "explicit specialization of %qD must be introduced by %<template <>%>"
msgstr ""
-#: cp/pt.c:2319
+#: cp/pt.c:2321
#, gcc-internal-format
msgid "function template partial specialization %qD is not allowed"
msgstr ""
-#: cp/pt.c:2351
+#: cp/pt.c:2353
#, gcc-internal-format
msgid "default argument specified in explicit specialization"
msgstr ""
-#: cp/pt.c:2381
+#: cp/pt.c:2383
#, gcc-internal-format
msgid "%qD is not a template function"
msgstr ""
-#: cp/pt.c:2389
+#: cp/pt.c:2391
#, gcc-internal-format
msgid "%qD is not declared in %qD"
msgstr ""
@@ -30898,142 +31296,142 @@
#. program is ill-formed.
#.
#. Similar language is found in [temp.explicit].
-#: cp/pt.c:2451
+#: cp/pt.c:2453
#, gcc-internal-format
msgid "specialization of implicitly-declared special member function"
msgstr ""
-#: cp/pt.c:2495
+#: cp/pt.c:2497
#, gcc-internal-format
msgid "no member function %qD declared in %qT"
msgstr ""
-#: cp/pt.c:3114
+#: cp/pt.c:3116
#, gcc-internal-format
msgid "base initializer expansion %<%T%> contains no parameter packs"
msgstr ""
-#: cp/pt.c:3175
+#: cp/pt.c:3177
#, gcc-internal-format
msgid "expansion pattern %<%T%> contains no argument packs"
msgstr ""
-#: cp/pt.c:3177
+#: cp/pt.c:3179
#, gcc-internal-format
msgid "expansion pattern %<%E%> contains no argument packs"
msgstr ""
-#: cp/pt.c:3218
+#: cp/pt.c:3220
#, gcc-internal-format
msgid "parameter packs not expanded with %<...%>:"
msgstr ""
-#: cp/pt.c:3233 cp/pt.c:4253
+#: cp/pt.c:3235 cp/pt.c:4255
#, gcc-internal-format
msgid " %qD"
msgstr ""
-#: cp/pt.c:3235
+#: cp/pt.c:3237
#, gcc-internal-format
msgid " <anonymous>"
msgstr ""
-#: cp/pt.c:3352
+#: cp/pt.c:3354
#, gcc-internal-format
msgid "declaration of %q+#D"
msgstr ""
-#: cp/pt.c:3353
+#: cp/pt.c:3355
#, gcc-internal-format
msgid " shadows template parm %q+#D"
msgstr ""
-#: cp/pt.c:4249
+#: cp/pt.c:4251
#, gcc-internal-format
msgid "template parameters not used in partial specialization:"
msgstr ""
-#: cp/pt.c:4267
+#: cp/pt.c:4269
#, gcc-internal-format
msgid "partial specialization %qT does not specialize any template arguments"
msgstr ""
-#: cp/pt.c:4312
+#: cp/pt.c:4314
#, gcc-internal-format
msgid ""
"parameter pack argument %qE must be at the end of the template argument list"
msgstr ""
-#: cp/pt.c:4315
+#: cp/pt.c:4317
#, gcc-internal-format
msgid ""
"parameter pack argument %qT must be at the end of the template argument list"
msgstr ""
-#: cp/pt.c:4334
+#: cp/pt.c:4336
#, gcc-internal-format
msgid "template argument %qE involves template parameter(s)"
msgstr ""
-#: cp/pt.c:4380
+#: cp/pt.c:4382
#, gcc-internal-format
msgid "type %qT of template argument %qE depends on a template parameter"
msgid_plural "type %qT of template argument %qE depends on template parameters"
msgstr[0] ""
msgstr[1] ""
-#: cp/pt.c:4410
+#: cp/pt.c:4412
#, gcc-internal-format
msgid "partial specialization of %qT after instantiation of %qT"
msgstr ""
-#: cp/pt.c:4503
+#: cp/pt.c:4505
#, gcc-internal-format
msgid "no default argument for %qD"
msgstr ""
-#: cp/pt.c:4524
+#: cp/pt.c:4526
#, gcc-internal-format
msgid "parameter pack %qE must be at the end of the template parameter list"
msgstr ""
-#: cp/pt.c:4527
+#: cp/pt.c:4529
#, gcc-internal-format
msgid "parameter pack %qT must be at the end of the template parameter list"
msgstr ""
-#: cp/pt.c:4564
+#: cp/pt.c:4566
#, gcc-internal-format
msgid ""
"default template arguments may not be used in function template friend re-"
"declaration"
msgstr ""
-#: cp/pt.c:4567
+#: cp/pt.c:4569
#, gcc-internal-format
msgid ""
"default template arguments may not be used in function template friend "
"declarations"
msgstr ""
-#: cp/pt.c:4570
+#: cp/pt.c:4572
#, gcc-internal-format
msgid ""
"default template arguments may not be used in function templates without -"
"std=c++0x or -std=gnu++0x"
msgstr ""
-#: cp/pt.c:4573
+#: cp/pt.c:4575
#, gcc-internal-format
msgid "default template arguments may not be used in partial specializations"
msgstr ""
-#: cp/pt.c:4576 cp/pt.c:4627
+#: cp/pt.c:4578 cp/pt.c:4629
#, gcc-internal-format
msgid "default argument for template parameter for class enclosing %qD"
msgstr ""
-#: cp/pt.c:4720
+#: cp/pt.c:4722
#, gcc-internal-format
msgid "template class without a name"
msgstr ""
@@ -31041,7 +31439,7 @@
#. [temp.mem]
#.
#. A destructor shall not be a member template.
-#: cp/pt.c:4730
+#: cp/pt.c:4732
#, gcc-internal-format
msgid "destructor %qD declared as member template"
msgstr ""
@@ -31051,76 +31449,76 @@
#. An allocation function can be a function
#. template. ... Template allocation functions shall
#. have two or more parameters.
-#: cp/pt.c:4745
+#: cp/pt.c:4747
#, gcc-internal-format
msgid "invalid template declaration of %qD"
msgstr ""
-#: cp/pt.c:4862
+#: cp/pt.c:4864
#, gcc-internal-format
msgid "template definition of non-template %q#D"
msgstr ""
-#: cp/pt.c:4905
+#: cp/pt.c:4907
#, gcc-internal-format
msgid "expected %d levels of template parms for %q#D, got %d"
msgstr ""
-#: cp/pt.c:4917
+#: cp/pt.c:4919
#, gcc-internal-format
msgid "got %d template parameters for %q#D"
msgstr ""
-#: cp/pt.c:4920
+#: cp/pt.c:4922
#, gcc-internal-format
msgid "got %d template parameters for %q#T"
msgstr ""
-#: cp/pt.c:4922
+#: cp/pt.c:4924
#, gcc-internal-format, gfc-internal-format
msgid " but %d required"
msgstr ""
-#: cp/pt.c:4943
+#: cp/pt.c:4945
#, gcc-internal-format
msgid "template arguments to %qD do not match original template %qD"
msgstr ""
-#: cp/pt.c:4947
+#: cp/pt.c:4949
#, gcc-internal-format
msgid "use template<> for an explicit specialization"
msgstr ""
-#: cp/pt.c:5043
+#: cp/pt.c:5045
#, gcc-internal-format
msgid "%qT is not a template type"
msgstr ""
-#: cp/pt.c:5056
+#: cp/pt.c:5058
#, gcc-internal-format
msgid "template specifiers not specified in declaration of %qD"
msgstr ""
-#: cp/pt.c:5067
+#: cp/pt.c:5069
#, gcc-internal-format, gfc-internal-format
msgid "redeclared with %d template parameter"
msgid_plural "redeclared with %d template parameters"
msgstr[0] ""
msgstr[1] ""
-#: cp/pt.c:5071
+#: cp/pt.c:5073
#, gcc-internal-format
msgid "previous declaration %q+D used %d template parameter"
msgid_plural "previous declaration %q+D used %d template parameters"
msgstr[0] ""
msgstr[1] ""
-#: cp/pt.c:5108
+#: cp/pt.c:5110
#, gcc-internal-format
msgid "template parameter %q+#D"
msgstr ""
-#: cp/pt.c:5109
+#: cp/pt.c:5111
#, gcc-internal-format
msgid "redeclared here as %q#D"
msgstr ""
@@ -31129,242 +31527,253 @@
#.
#. A template-parameter may not be given default arguments
#. by two different declarations in the same scope.
-#: cp/pt.c:5119
+#: cp/pt.c:5121
#, gcc-internal-format
msgid "redefinition of default argument for %q#D"
msgstr ""
-#: cp/pt.c:5121
+#: cp/pt.c:5123
#, gcc-internal-format
msgid "original definition appeared here"
msgstr ""
-#: cp/pt.c:5209
+#: cp/pt.c:5211
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument for type %qT because function %qD has "
"not external linkage"
msgstr ""
-#: cp/pt.c:5231 cp/pt.c:5571
+#: cp/pt.c:5233 cp/pt.c:5573
#, gcc-internal-format
msgid "%qE is not a valid template argument for type %qT"
msgstr ""
-#: cp/pt.c:5233
+#: cp/pt.c:5235
#, gcc-internal-format
msgid "it must be a pointer-to-member of the form %<&X::Y%>"
msgstr ""
-#: cp/pt.c:5302
+#: cp/pt.c:5304
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument for type %qT because string literals "
"can never be used in this context"
msgstr ""
-#: cp/pt.c:5403
+#: cp/pt.c:5405
#, gcc-internal-format
msgid "in template argument for type %qT "
msgstr ""
-#: cp/pt.c:5443
+#: cp/pt.c:5445
#, gcc-internal-format
msgid ""
"%qD is not a valid template argument because %qD is a variable, not the "
"address of a variable"
msgstr ""
-#: cp/pt.c:5461
+#: cp/pt.c:5463
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument of type %qT because %qE is not a "
"variable"
msgstr ""
-#: cp/pt.c:5468
+#: cp/pt.c:5470
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument of type %qT because %qD does not have "
"external linkage"
msgstr ""
-#: cp/pt.c:5498
+#: cp/pt.c:5500
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument for type %qT because of conflicts in cv-"
"qualification"
msgstr ""
-#: cp/pt.c:5505
+#: cp/pt.c:5507
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument for type %qT because it is not an lvalue"
msgstr ""
-#: cp/pt.c:5522
+#: cp/pt.c:5524
#, gcc-internal-format
msgid ""
"%q#D is not a valid template argument for type %qT because a reference "
"variable does not have a constant address"
msgstr ""
-#: cp/pt.c:5531
+#: cp/pt.c:5533
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument for type %qT because it is not an "
"object with external linkage"
msgstr ""
-#: cp/pt.c:5539
+#: cp/pt.c:5541
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument for type %qT because object %qD has not "
"external linkage"
msgstr ""
-#: cp/pt.c:5572
+#: cp/pt.c:5574
#, gcc-internal-format
msgid "it must be the address of a function with external linkage"
msgstr ""
-#: cp/pt.c:5586
+#: cp/pt.c:5588
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument for type %qT because it is a pointer"
msgstr ""
-#: cp/pt.c:5588
+#: cp/pt.c:5590
#, gcc-internal-format
msgid "try using %qE instead"
msgstr ""
-#: cp/pt.c:5626
+#: cp/pt.c:5628
#, gcc-internal-format
msgid ""
"%qE is not a valid template argument for type %qT because it is of type %qT"
msgstr ""
-#: cp/pt.c:5632
+#: cp/pt.c:5634
#, gcc-internal-format
msgid "standard conversions are not allowed in this context"
msgstr ""
-#: cp/pt.c:5966
+#: cp/pt.c:5934
+#, gcc-internal-format
+msgid "ignoring attributes on template argument %qT"
+msgstr ""
+
+#: cp/pt.c:5992
#, gcc-internal-format
msgid "injected-class-name %qD used as template template argument"
msgstr ""
-#: cp/pt.c:5991
+#: cp/pt.c:6017
#, gcc-internal-format
msgid "to refer to a type member of a template parameter, use %<typename %E%>"
msgstr ""
-#: cp/pt.c:6007 cp/pt.c:6026 cp/pt.c:6072
+#: cp/pt.c:6033 cp/pt.c:6052 cp/pt.c:6098
#, gcc-internal-format
msgid "type/value mismatch at argument %d in template parameter list for %qD"
msgstr ""
-#: cp/pt.c:6011
+#: cp/pt.c:6037
#, gcc-internal-format
msgid " expected a constant of type %qT, got %qT"
msgstr ""
-#: cp/pt.c:6015
+#: cp/pt.c:6041
#, gcc-internal-format
msgid " expected a class template, got %qE"
msgstr ""
-#: cp/pt.c:6017
+#: cp/pt.c:6043
#, gcc-internal-format
msgid " expected a type, got %qE"
msgstr ""
-#: cp/pt.c:6030
+#: cp/pt.c:6056
#, gcc-internal-format
msgid " expected a type, got %qT"
msgstr ""
-#: cp/pt.c:6032
+#: cp/pt.c:6058
#, gcc-internal-format
msgid " expected a class template, got %qT"
msgstr ""
-#: cp/pt.c:6075
+#: cp/pt.c:6101
#, gcc-internal-format
msgid " expected a template of type %qD, got %qT"
msgstr ""
#. Not sure if this is reachable, but it doesn't hurt
#. to be robust.
-#: cp/pt.c:6108
+#: cp/pt.c:6134
#, gcc-internal-format
msgid "type mismatch in nontype parameter pack"
msgstr ""
-#: cp/pt.c:6130
+#: cp/pt.c:6156
#, gcc-internal-format
msgid "could not convert template argument %qE to %qT"
msgstr ""
-#: cp/pt.c:6195 cp/pt.c:6340
+#: cp/pt.c:6222 cp/pt.c:6367
#, gcc-internal-format, gfc-internal-format
msgid "wrong number of template arguments (%d, should be %d)"
msgstr ""
-#: cp/pt.c:6336
+#: cp/pt.c:6363
#, gcc-internal-format, gfc-internal-format
msgid "wrong number of template arguments (%d, should be %d or more)"
msgstr ""
-#: cp/pt.c:6344
+#: cp/pt.c:6371
#, gcc-internal-format
msgid "provided for %q+D"
msgstr ""
-#: cp/pt.c:6411
+#: cp/pt.c:6438
#, gcc-internal-format
msgid "cannot expand %<%E%> into a fixed-length argument list"
msgstr ""
-#: cp/pt.c:6414
+#: cp/pt.c:6441
#, gcc-internal-format
msgid "cannot expand %<%T%> into a fixed-length argument list"
msgstr ""
-#: cp/pt.c:6437
+#: cp/pt.c:6464
#, gcc-internal-format, gfc-internal-format
msgid "template argument %d is invalid"
msgstr ""
-#: cp/pt.c:6765
+#: cp/pt.c:6788
#, gcc-internal-format
msgid "non-template type %qT used as a template"
msgstr ""
-#: cp/pt.c:6767
+#: cp/pt.c:6790
#, gcc-internal-format
msgid "for template declaration %q+D"
msgstr ""
-#: cp/pt.c:7486
+#: cp/pt.c:7518
+msgid ""
+"template instantiation depth exceeds maximum of %d (use -ftemplate-depth= to "
+"increase the maximum) substituting %qS"
+msgstr ""
+
+#: cp/pt.c:7522
#, gcc-internal-format
msgid ""
"template instantiation depth exceeds maximum of %d (use -ftemplate-depth= to "
"increase the maximum) instantiating %qD"
msgstr ""
-#: cp/pt.c:8788
+#: cp/pt.c:8844
#, gcc-internal-format
msgid "mismatched argument pack lengths while expanding %<%T%>"
msgstr ""
-#: cp/pt.c:8792
+#: cp/pt.c:8848
#, gcc-internal-format
msgid "mismatched argument pack lengths while expanding %<%E%>"
msgstr ""
-#: cp/pt.c:9865
+#: cp/pt.c:9923
#, gcc-internal-format
msgid "instantiation of %q+D as type %qT"
msgstr ""
@@ -31382,229 +31791,256 @@
#.
#. is an attempt to declare a variable with function
#. type.
-#: cp/pt.c:10012
+#: cp/pt.c:10070
#, gcc-internal-format
msgid "variable %qD has function type"
msgstr ""
-#: cp/pt.c:10180
+#: cp/pt.c:10240
#, gcc-internal-format
msgid "invalid parameter type %qT"
msgstr ""
-#: cp/pt.c:10182
+#: cp/pt.c:10242
#, gcc-internal-format
msgid "in declaration %q+D"
msgstr ""
-#: cp/pt.c:10259
+#: cp/pt.c:10319
#, gcc-internal-format
msgid "function returning an array"
msgstr ""
-#: cp/pt.c:10261
+#: cp/pt.c:10321
#, gcc-internal-format
msgid "function returning a function"
msgstr ""
-#: cp/pt.c:10291
+#: cp/pt.c:10351
#, gcc-internal-format
msgid "creating pointer to member function of non-class type %qT"
msgstr ""
-#: cp/pt.c:10754
+#: cp/pt.c:10839
#, gcc-internal-format
msgid "forming reference to void"
msgstr ""
-#: cp/pt.c:10756
+#: cp/pt.c:10841
#, gcc-internal-format
msgid "forming pointer to reference type %qT"
msgstr ""
-#: cp/pt.c:10758
+#: cp/pt.c:10843
#, gcc-internal-format
msgid "forming reference to reference type %qT"
msgstr ""
-#: cp/pt.c:10807
+#: cp/pt.c:10892
#, gcc-internal-format
msgid "creating pointer to member of non-class type %qT"
msgstr ""
-#: cp/pt.c:10813
+#: cp/pt.c:10898
#, gcc-internal-format
msgid "creating pointer to member reference type %qT"
msgstr ""
-#: cp/pt.c:10819
+#: cp/pt.c:10904
#, gcc-internal-format
msgid "creating pointer to member of type void"
msgstr ""
-#: cp/pt.c:10881
+#: cp/pt.c:10966
#, gcc-internal-format
msgid "creating array of %qT"
msgstr ""
-#: cp/pt.c:10887
+#: cp/pt.c:10972
#, gcc-internal-format
msgid "creating array of %qT, which is an abstract class type"
msgstr ""
-#: cp/pt.c:10916
+#: cp/pt.c:11001
#, gcc-internal-format
msgid "%qT is not a class, struct, or union type"
msgstr ""
-#: cp/pt.c:10953
+#: cp/pt.c:11038
#, gcc-internal-format
msgid "%qT resolves to %qT, which is not an enumeration type"
msgstr ""
-#: cp/pt.c:10961
+#: cp/pt.c:11046
#, gcc-internal-format
msgid "%qT resolves to %qT, which is is not a class type"
msgstr ""
-#: cp/pt.c:11071
+#: cp/pt.c:11163
#, gcc-internal-format
msgid "use of %qs in template"
msgstr ""
-#: cp/pt.c:11203
+#: cp/pt.c:11295
#, gcc-internal-format
msgid "qualifying type %qT does not match destructor name ~%qT"
msgstr ""
-#: cp/pt.c:11218
+#: cp/pt.c:11310
#, gcc-internal-format
msgid ""
"dependent-name %qE is parsed as a non-type, but instantiation yields a type"
msgstr ""
-#: cp/pt.c:11220
+#: cp/pt.c:11312
#, gcc-internal-format
msgid "say %<typename %E%> if a type is meant"
msgstr ""
-#: cp/pt.c:11366
+#: cp/pt.c:11458
#, gcc-internal-format
msgid "using invalid field %qD"
msgstr ""
-#: cp/pt.c:11716 cp/pt.c:12431
+#: cp/pt.c:11808 cp/pt.c:12523
#, gcc-internal-format
msgid "invalid use of pack expansion expression"
msgstr ""
-#: cp/pt.c:11720 cp/pt.c:12435
+#: cp/pt.c:11812 cp/pt.c:12527
#, gcc-internal-format
msgid "use %<...%> to expand argument pack"
msgstr ""
-#: cp/pt.c:13168
+#: cp/pt.c:13068
+#, gcc-internal-format
+msgid ""
+"%qD was not declared in this scope, and no declarations were found by "
+"argument-dependent lookup at the point of instantiation"
+msgstr ""
+
+#: cp/pt.c:13075
+#, gcc-internal-format
+msgid "declarations in dependent base %qT are not found by unqualified lookup"
+msgstr ""
+
+#: cp/pt.c:13080
+#, gcc-internal-format
+msgid "use %<this->%D%> instead"
+msgstr ""
+
+#: cp/pt.c:13083
+#, gcc-internal-format
+msgid "use %<%T::%D%> instead"
+msgstr ""
+
+#: cp/pt.c:13087
+#, gcc-internal-format
+msgid "%q+D declared here, later in the translation unit"
+msgstr ""
+
+#: cp/pt.c:13320
#, gcc-internal-format
msgid "%qT is not a class or namespace"
msgstr ""
-#: cp/pt.c:13171
+#: cp/pt.c:13323
#, gcc-internal-format
msgid "%qD is not a class or namespace"
msgstr ""
-#: cp/pt.c:13450
+#: cp/pt.c:13603
#, gcc-internal-format
msgid "%qT is/uses anonymous type"
msgstr ""
-#: cp/pt.c:13452
+#: cp/pt.c:13605
#, gcc-internal-format
msgid "template argument for %qD uses local type %qT"
msgstr ""
-#: cp/pt.c:13462
+#: cp/pt.c:13615
#, gcc-internal-format
msgid "%qT is a variably modified type"
msgstr ""
-#: cp/pt.c:13473
+#: cp/pt.c:13626
#, gcc-internal-format
msgid "integral expression %qE is not constant"
msgstr ""
-#: cp/pt.c:13491
+#: cp/pt.c:13644
#, gcc-internal-format
msgid " trying to instantiate %qD"
msgstr ""
-#: cp/pt.c:16582
+#: cp/pt.c:16850
#, gcc-internal-format
msgid "ambiguous class template instantiation for %q#T"
msgstr ""
-#: cp/pt.c:16586
+#: cp/pt.c:16854
#, gcc-internal-format
msgid "%s %+#T"
msgstr ""
-#: cp/pt.c:16610 cp/pt.c:16693
+#: cp/pt.c:16878 cp/pt.c:16961
#, gcc-internal-format
msgid "explicit instantiation of non-template %q#D"
msgstr ""
-#: cp/pt.c:16625
+#: cp/pt.c:16893
#, gcc-internal-format
msgid "%qD is not a static data member of a class template"
msgstr ""
-#: cp/pt.c:16631 cp/pt.c:16688
+#: cp/pt.c:16899 cp/pt.c:16956
#, gcc-internal-format
msgid "no matching template for %qD found"
msgstr ""
-#: cp/pt.c:16636
+#: cp/pt.c:16904
#, gcc-internal-format
msgid ""
"type %qT for explicit instantiation %qD does not match declared type %qT"
msgstr ""
-#: cp/pt.c:16644
+#: cp/pt.c:16912
#, gcc-internal-format
msgid "explicit instantiation of %q#D"
msgstr ""
-#: cp/pt.c:16680
+#: cp/pt.c:16948
#, gcc-internal-format
msgid "duplicate explicit instantiation of %q#D"
msgstr ""
-#: cp/pt.c:16703 cp/pt.c:16795
+#: cp/pt.c:16971 cp/pt.c:17063
#, gcc-internal-format
msgid "ISO C++ 1998 forbids the use of %<extern%> on explicit instantiations"
msgstr ""
-#: cp/pt.c:16708 cp/pt.c:16812
+#: cp/pt.c:16976 cp/pt.c:17080
#, gcc-internal-format
msgid "storage class %qD applied to template instantiation"
msgstr ""
-#: cp/pt.c:16773
+#: cp/pt.c:17041
#, gcc-internal-format
msgid "explicit instantiation of non-template type %qT"
msgstr ""
-#: cp/pt.c:16782
+#: cp/pt.c:17050
#, gcc-internal-format
msgid "explicit instantiation of %q#T before definition of template"
msgstr ""
-#: cp/pt.c:16800
+#: cp/pt.c:17068
#, gcc-internal-format
msgid "ISO C++ forbids the use of %qE on explicit instantiations"
msgstr ""
-#: cp/pt.c:16846
+#: cp/pt.c:17114
#, gcc-internal-format
msgid "duplicate explicit instantiation of %q#T"
msgstr ""
@@ -31616,12 +32052,12 @@
#. member function or static data member of a class template
#. shall be present in every translation unit in which it is
#. explicitly instantiated.
-#: cp/pt.c:17328
+#: cp/pt.c:17661
#, gcc-internal-format
msgid "explicit instantiation of %qD but no definition available"
msgstr ""
-#: cp/pt.c:17502
+#: cp/pt.c:17837
#, gcc-internal-format
msgid ""
"template instantiation depth exceeds maximum of %d instantiating %q+D, "
@@ -31629,19 +32065,19 @@
"the maximum)"
msgstr ""
-#: cp/pt.c:17868
+#: cp/pt.c:18204
#, gcc-internal-format
msgid "%q#T is not a valid type for a template constant parameter"
msgstr ""
-#: cp/pt.c:18917
+#: cp/pt.c:19277
#, gcc-internal-format
msgid ""
"deducing from brace-enclosed initializer list requires #include "
"<initializer_list>"
msgstr ""
-#: cp/pt.c:18970
+#: cp/pt.c:19336
#, gcc-internal-format
msgid "variable %q#D with %<auto%> type used in its own initializer"
msgstr ""
@@ -31649,12 +32085,12 @@
#. If type is error_mark_node a diagnostic must have been
#. emitted by now. Also, having a mention to '<type error>'
#. in the diagnostic is not really useful to the user.
-#: cp/pt.c:18998
+#: cp/pt.c:19367
#, gcc-internal-format
msgid "unable to deduce %qT from %qE"
msgstr ""
-#: cp/pt.c:19009
+#: cp/pt.c:19378
#, gcc-internal-format
msgid "inconsistent deduction for %qT: %qT and then %qT"
msgstr ""
@@ -31721,7 +32157,7 @@
msgid "deprecated covariant return type for %q+#D"
msgstr ""
-#: cp/search.c:1864 cp/search.c:1879 cp/search.c:1884 cp/search.c:1903
+#: cp/search.c:1864 cp/search.c:1879 cp/search.c:1884 cp/search.c:1908
#, gcc-internal-format
msgid " overriding %q+#D"
msgstr ""
@@ -31736,573 +32172,579 @@
msgid "conflicting return type specified for %q+#D"
msgstr ""
-#: cp/search.c:1893
+#: cp/search.c:1898
#, gcc-internal-format
msgid "looser throw specifier for %q+#F"
msgstr ""
-#: cp/search.c:1894
+#: cp/search.c:1899
#, gcc-internal-format
msgid " overriding %q+#F"
msgstr ""
-#: cp/search.c:1902
+#: cp/search.c:1907
#, gcc-internal-format
msgid "conflicting type attributes specified for %q+#D"
msgstr ""
-#: cp/search.c:1912
+#: cp/search.c:1917
#, gcc-internal-format
msgid "deleted function %q+D"
msgstr ""
-#: cp/search.c:1913
+#: cp/search.c:1918
#, gcc-internal-format
msgid "overriding non-deleted function %q+D"
msgstr ""
-#: cp/search.c:1918
+#: cp/search.c:1923
#, gcc-internal-format
msgid "non-deleted function %q+D"
msgstr ""
-#: cp/search.c:1919
+#: cp/search.c:1924
#, gcc-internal-format
msgid "overriding deleted function %q+D"
msgstr ""
+#: cp/search.c:1930
+#, gcc-internal-format
+msgid "virtual function %q+D"
+msgstr ""
+
+#: cp/search.c:1931
+#, gcc-internal-format
+msgid "overriding final function %q+D"
+msgstr ""
+
#. A static member function cannot match an inherited
#. virtual member function.
-#: cp/search.c:2016
+#: cp/search.c:2027
#, gcc-internal-format
msgid "%q+#D cannot be declared"
msgstr ""
-#: cp/search.c:2017
+#: cp/search.c:2028
#, gcc-internal-format
msgid " since %q+#D declared in base class"
msgstr ""
-#: cp/semantics.c:777
+#: cp/semantics.c:772
#, gcc-internal-format
msgid "suggest explicit braces around empty body in %<do%> statement"
msgstr ""
-#: cp/semantics.c:1386
+#: cp/semantics.c:1384
#, gcc-internal-format
msgid "type of asm operand %qE could not be determined"
msgstr ""
-#: cp/semantics.c:1444
+#: cp/semantics.c:1442
#, gcc-internal-format
msgid "__label__ declarations are only allowed in function scopes"
msgstr ""
-#: cp/semantics.c:1546
+#: cp/semantics.c:1544
#, gcc-internal-format
msgid "invalid use of member %q+D in static member function"
msgstr ""
-#: cp/semantics.c:1548
+#: cp/semantics.c:1546
#, gcc-internal-format
msgid "invalid use of non-static data member %q+D"
msgstr ""
-#: cp/semantics.c:1549
+#: cp/semantics.c:1547
#, gcc-internal-format
msgid "from this location"
msgstr ""
-#: cp/semantics.c:2136
+#: cp/semantics.c:2158
#, gcc-internal-format
msgid "arguments to destructor are not allowed"
msgstr ""
-#: cp/semantics.c:2203
+#: cp/semantics.c:2239
#, gcc-internal-format
msgid "%<this%> is unavailable for static member functions"
msgstr ""
-#: cp/semantics.c:2209
+#: cp/semantics.c:2245
#, gcc-internal-format
msgid "invalid use of %<this%> in non-member function"
msgstr ""
-#: cp/semantics.c:2211
+#: cp/semantics.c:2247
#, gcc-internal-format
msgid "invalid use of %<this%> at top level"
msgstr ""
-#: cp/semantics.c:2235
+#: cp/semantics.c:2271
#, gcc-internal-format
msgid "invalid qualifying scope in pseudo-destructor name"
msgstr ""
-#: cp/semantics.c:2240 cp/typeck.c:2347
+#: cp/semantics.c:2276 cp/typeck.c:2361
#, gcc-internal-format
msgid "qualified type %qT does not match destructor name ~%qT"
msgstr ""
-#: cp/semantics.c:2262
+#: cp/semantics.c:2298
#, gcc-internal-format
msgid "%qE is not of type %qT"
msgstr ""
-#: cp/semantics.c:2306
+#: cp/semantics.c:2352
#, gcc-internal-format
msgid "compound literal of non-object type %qT"
msgstr ""
-#: cp/semantics.c:2378
+#: cp/semantics.c:2460
#, gcc-internal-format
msgid "template type parameters must use the keyword %<class%> or %<typename%>"
msgstr ""
-#: cp/semantics.c:2420
+#: cp/semantics.c:2502
#, gcc-internal-format
msgid ""
"invalid use of type %qT as a default value for a template template-parameter"
msgstr ""
-#: cp/semantics.c:2423
+#: cp/semantics.c:2505
#, gcc-internal-format
msgid "invalid default argument for a template template parameter"
msgstr ""
-#: cp/semantics.c:2440
+#: cp/semantics.c:2522
#, gcc-internal-format
msgid "definition of %q#T inside template parameter list"
msgstr ""
-#: cp/semantics.c:2471
+#: cp/semantics.c:2553
#, gcc-internal-format
msgid "invalid definition of qualified type %qT"
msgstr ""
-#: cp/semantics.c:2685
+#: cp/semantics.c:2767
#, gcc-internal-format
msgid "invalid base-class specification"
msgstr ""
-#: cp/semantics.c:2697
-#, gcc-internal-format
-msgid "base class %qT has cv qualifiers"
-msgstr ""
-
-#: cp/semantics.c:2923 cp/semantics.c:8021
+#: cp/semantics.c:2986 cp/semantics.c:8293
#, gcc-internal-format
msgid "%qD is not captured"
msgstr ""
-#: cp/semantics.c:2929
+#: cp/semantics.c:2992
#, gcc-internal-format
msgid "use of %<auto%> variable from containing function"
msgstr ""
-#: cp/semantics.c:2931
+#: cp/semantics.c:2994
#, gcc-internal-format
msgid " %q+#D declared here"
msgstr ""
-#: cp/semantics.c:2942
+#: cp/semantics.c:3005
#, gcc-internal-format
msgid "use of parameter %qD outside function body"
msgstr ""
-#: cp/semantics.c:2979
+#: cp/semantics.c:3042
#, gcc-internal-format
msgid ""
"template parameter %qD of type %qT is not allowed in an integral constant "
"expression because it is not of integral or enumeration type"
msgstr ""
-#: cp/semantics.c:3136
+#: cp/semantics.c:3202
#, gcc-internal-format
msgid "use of namespace %qD as expression"
msgstr ""
-#: cp/semantics.c:3141
+#: cp/semantics.c:3207
#, gcc-internal-format
msgid "use of class template %qT as expression"
msgstr ""
#. Ambiguous reference to base members.
-#: cp/semantics.c:3147
+#: cp/semantics.c:3213
#, gcc-internal-format
msgid "request for member %qD is ambiguous in multiple inheritance lattice"
msgstr ""
-#: cp/semantics.c:3170
+#: cp/semantics.c:3236
#, gcc-internal-format
msgid "%qD cannot appear in a constant-expression"
msgstr ""
-#: cp/semantics.c:3290 cp/semantics.c:4936
+#: cp/semantics.c:3356
#, gcc-internal-format
msgid "type of %qE is unknown"
msgstr ""
-#: cp/semantics.c:3305
+#: cp/semantics.c:3384
+#, gcc-internal-format
+msgid "%qE is not an enumeration type"
+msgstr ""
+
+#: cp/semantics.c:3409
#, gcc-internal-format
msgid "cannot apply %<offsetof%> to destructor %<~%T%>"
msgstr ""
-#: cp/semantics.c:3316
+#: cp/semantics.c:3420
#, gcc-internal-format
msgid "cannot apply %<offsetof%> to member function %qD"
msgstr ""
-#: cp/semantics.c:3712
+#: cp/semantics.c:3816
#, gcc-internal-format
msgid "%qD is not a variable in clause %qs"
msgstr ""
-#: cp/semantics.c:3721 cp/semantics.c:3743 cp/semantics.c:3765
+#: cp/semantics.c:3825 cp/semantics.c:3847 cp/semantics.c:3869
#, gcc-internal-format
msgid "%qD appears more than once in data clauses"
msgstr ""
-#: cp/semantics.c:3735
+#: cp/semantics.c:3839
#, gcc-internal-format
msgid "%qD is not a variable in clause %<firstprivate%>"
msgstr ""
-#: cp/semantics.c:3757
+#: cp/semantics.c:3861
#, gcc-internal-format
msgid "%qD is not a variable in clause %<lastprivate%>"
msgstr ""
-#: cp/semantics.c:3787
+#: cp/semantics.c:3891
#, gcc-internal-format
msgid "num_threads expression must be integral"
msgstr ""
-#: cp/semantics.c:3801
+#: cp/semantics.c:3905
#, gcc-internal-format
msgid "schedule chunk size expression must be integral"
msgstr ""
-#: cp/semantics.c:3933
+#: cp/semantics.c:4038
#, gcc-internal-format
msgid "%qE has reference type for %qs"
msgstr ""
-#: cp/semantics.c:4004
+#: cp/semantics.c:4110
#, gcc-internal-format
msgid "%<threadprivate%> %qD is not file, namespace or block scope variable"
msgstr ""
-#: cp/semantics.c:4018
+#: cp/semantics.c:4124
#, gcc-internal-format
msgid "%<threadprivate%> %qE directive not in %qT definition"
msgstr ""
-#: cp/semantics.c:4163
+#: cp/semantics.c:4269
#, gcc-internal-format
msgid "difference between %qE and %qD does not have integer type"
msgstr ""
-#: cp/semantics.c:4693
+#: cp/semantics.c:4799
#, gcc-internal-format
msgid "non-constant condition for static assertion"
msgstr ""
-#: cp/semantics.c:4780 cp/semantics.c:4898
+#: cp/semantics.c:4828
#, gcc-internal-format
msgid "argument to decltype must be an expression"
msgstr ""
-#: cp/semantics.c:4846
+#: cp/semantics.c:4857
#, gcc-internal-format
-msgid "%qE refers to a set of overloaded functions"
+msgid "decltype cannot resolve address of overloaded function"
msgstr ""
-#: cp/semantics.c:5145
+#: cp/semantics.c:5175
#, gcc-internal-format
msgid "__is_convertible_to"
msgstr ""
-#: cp/semantics.c:5187 cp/semantics.c:5197
+#: cp/semantics.c:5217 cp/semantics.c:5227
#, gcc-internal-format
msgid "incomplete type %qT not allowed"
msgstr ""
-#: cp/semantics.c:5262
+#: cp/semantics.c:5300
#, gcc-internal-format
msgid "the type %qT of constexpr variable %qD is not literal"
msgstr ""
-#: cp/semantics.c:5341
+#: cp/semantics.c:5368
#, gcc-internal-format
-msgid "invalid type for parameter %q#D of constexpr function"
+msgid "invalid type for parameter %d of constexpr function %q+#D"
msgstr ""
-#: cp/semantics.c:5352
+#: cp/semantics.c:5379
#, gcc-internal-format
-msgid "invalid return type %qT of constexpr function %qD"
+msgid "invalid return type %qT of constexpr function %q+D"
msgstr ""
-#: cp/semantics.c:5362
-#, gcc-internal-format
-msgid "enclosing class of %q#D is not a literal type"
-msgstr ""
-
-#: cp/semantics.c:5535
+#: cp/semantics.c:5544
#, gcc-internal-format
msgid "constexpr constructor does not have empty body"
msgstr ""
-#: cp/semantics.c:5615
+#: cp/semantics.c:5671
#, gcc-internal-format
msgid "body of constexpr function %qD not a return-statement"
msgstr ""
-#: cp/semantics.c:5939
+#: cp/semantics.c:6009
#, gcc-internal-format
msgid "expression %qE does not designate a constexpr function"
msgstr ""
-#: cp/semantics.c:5953
+#: cp/semantics.c:6023
#, gcc-internal-format
msgid "%qD is not a constexpr function"
msgstr ""
-#: cp/semantics.c:5980
+#: cp/semantics.c:6050
#, gcc-internal-format
msgid "%qD used before its definition"
msgstr ""
-#: cp/semantics.c:6013
+#: cp/semantics.c:6083
#, gcc-internal-format
msgid "call has circular dependency"
msgstr ""
-#: cp/semantics.c:6021
+#: cp/semantics.c:6091
#, gcc-internal-format, gfc-internal-format
msgid ""
"constexpr evaluation depth exceeds maximum of %d (use -fconstexpr-depth= to "
"increase the maximum)"
msgstr ""
-#: cp/semantics.c:6099
+#: cp/semantics.c:6169
#, gcc-internal-format
msgid "%q+E is not a constant expression"
msgstr ""
-#: cp/semantics.c:6216
+#: cp/semantics.c:6302
#, gcc-internal-format
msgid "array subscript out of bound"
msgstr ""
-#: cp/semantics.c:6255 cp/semantics.c:6301 cp/semantics.c:6771
+#: cp/semantics.c:6348 cp/semantics.c:6397 cp/semantics.c:7011
#, gcc-internal-format
msgid "%qE is not a constant expression"
msgstr ""
-#: cp/semantics.c:6269
+#: cp/semantics.c:6362
#, gcc-internal-format
msgid ""
"accessing %qD member instead of initialized %qD member in constant expression"
msgstr ""
-#: cp/semantics.c:6652
+#: cp/semantics.c:6886
#, gcc-internal-format
msgid "accessing value of %qE through a %qT glvalue in a constant expression"
msgstr ""
-#: cp/semantics.c:6682
+#: cp/semantics.c:6917
#, gcc-internal-format
msgid "the value of %qD is not usable in a constant expression"
msgstr ""
-#: cp/semantics.c:6686
+#: cp/semantics.c:6924
#, gcc-internal-format
msgid "%qD used in its own initializer"
msgstr ""
-#: cp/semantics.c:6691
+#: cp/semantics.c:6929
#, gcc-internal-format
msgid "%q#D is not const"
msgstr ""
-#: cp/semantics.c:6694
+#: cp/semantics.c:6932
#, gcc-internal-format
msgid "%q#D is volatile"
msgstr ""
-#: cp/semantics.c:6697
+#: cp/semantics.c:6936
#, gcc-internal-format
msgid "%qD was not initialized with a constant expression"
msgstr ""
-#: cp/semantics.c:6706
+#: cp/semantics.c:6945
#, gcc-internal-format
msgid "%qD was not declared %<constexpr%>"
msgstr ""
-#: cp/semantics.c:6709
+#: cp/semantics.c:6948
#, gcc-internal-format
msgid "%qD does not have integral or enumeration type"
msgstr ""
-#: cp/semantics.c:6982 cp/semantics.c:7399
+#: cp/semantics.c:7222 cp/semantics.c:7662
#, gcc-internal-format
msgid ""
"conversion of expression %qE of pointer type cannot yield a constant "
"expression"
msgstr ""
-#: cp/semantics.c:7036 cp/semantics.c:7490 cp/semantics.c:7714
+#: cp/semantics.c:7276 cp/semantics.c:7753 cp/semantics.c:7984
#, gcc-internal-format
msgid "expression %qE is not a constant-expression"
msgstr ""
-#: cp/semantics.c:7041
+#: cp/semantics.c:7281
#, gcc-internal-format
msgid "unexpected expression %qE of kind %s"
msgstr ""
-#: cp/semantics.c:7248
+#: cp/semantics.c:7495
#, gcc-internal-format
msgid "expression %qE has side-effects"
msgstr ""
-#: cp/semantics.c:7293
+#: cp/semantics.c:7544
#, gcc-internal-format
msgid "%qE is not a potential constant expression"
msgstr ""
-#: cp/semantics.c:7311
-#, gcc-internal-format
-msgid "%qE is not a function name"
-msgstr ""
-
-#: cp/semantics.c:7326
+#: cp/semantics.c:7568
#, gcc-internal-format
msgid "%qD is not %<constexpr%>"
msgstr ""
-#: cp/semantics.c:7344
+#: cp/semantics.c:7584
#, gcc-internal-format
msgid "object argument is not a potential constant expression"
msgstr ""
-#: cp/semantics.c:7352
+#: cp/semantics.c:7605
+#, gcc-internal-format
+msgid "%qE is not a function name"
+msgstr ""
+
+#: cp/semantics.c:7615
#, gcc-internal-format
msgid "argument in position %qP is not a potential constant expression"
msgstr ""
-#: cp/semantics.c:7422
+#: cp/semantics.c:7685
#, gcc-internal-format
msgid ""
"address-of an object %qE with thread local or automatic storage is not a "
"constant expression"
msgstr ""
-#: cp/semantics.c:7453
+#: cp/semantics.c:7716
#, gcc-internal-format
-msgid "the value of the object being constructed is not a constant expression"
+msgid ""
+"use of the value of the object being constructed in a constant expression"
msgstr ""
-#: cp/semantics.c:7502
+#: cp/semantics.c:7765
#, gcc-internal-format
msgid ""
"typeid-expression is not a constant expression because %qE is of polymorphic "
"type"
msgstr ""
-#: cp/semantics.c:7515
+#: cp/semantics.c:7778
#, gcc-internal-format
msgid "difference of two pointer expressions is not a constant expression"
msgstr ""
-#: cp/semantics.c:7534
+#: cp/semantics.c:7797
#, gcc-internal-format
msgid "pointer comparison expression is not a constant expression"
msgstr ""
-#: cp/semantics.c:7619
+#: cp/semantics.c:7887
#, gcc-internal-format
msgid "division by zero is not a constant-expression"
msgstr ""
-#: cp/semantics.c:7722
+#: cp/semantics.c:7992
#, gcc-internal-format
msgid "non-constant array initialization"
msgstr ""
-#: cp/semantics.c:7728
+#: cp/semantics.c:7998
#, gcc-internal-format, gfc-internal-format
msgid "unexpected ast of kind %s"
msgstr ""
-#: cp/semantics.c:7898
+#: cp/semantics.c:8169
#, gcc-internal-format
msgid "cannot deduce lambda return type from a braced-init-list"
msgstr ""
-#: cp/semantics.c:8067
+#: cp/semantics.c:8468
#, gcc-internal-format
msgid "cannot capture %qE by reference"
msgstr ""
-#: cp/semantics.c:8090
+#: cp/semantics.c:8488
#, gcc-internal-format
-msgid "already captured %<this%> in lambda expression"
+msgid "already captured %qD in lambda expression"
msgstr ""
-#: cp/semantics.c:8221
+#: cp/semantics.c:8633
#, gcc-internal-format
msgid "%<this%> was not captured for this lambda function"
msgstr ""
-#: cp/tree.c:985
+#: cp/tree.c:1011
#, gcc-internal-format
msgid "%qV qualifiers cannot be applied to %qT"
msgstr ""
-#: cp/tree.c:2638
+#: cp/tree.c:2701
#, gcc-internal-format
msgid "%qE attribute can only be applied to Java class definitions"
msgstr ""
-#: cp/tree.c:2667
+#: cp/tree.c:2730
#, gcc-internal-format
msgid "%qE attribute can only be applied to class definitions"
msgstr ""
-#: cp/tree.c:2673
+#: cp/tree.c:2736
#, gcc-internal-format
msgid "%qE is obsolete; g++ vtables are now COM-compatible by default"
msgstr ""
-#: cp/tree.c:2697
+#: cp/tree.c:2760
#, gcc-internal-format
msgid "requested init_priority is not an integer constant"
msgstr ""
-#: cp/tree.c:2718
+#: cp/tree.c:2781
#, gcc-internal-format
msgid ""
"can only use %qE attribute on file-scope definitions of objects of class type"
msgstr ""
-#: cp/tree.c:2726
+#: cp/tree.c:2789
#, gcc-internal-format
msgid "requested init_priority is out of range"
msgstr ""
-#: cp/tree.c:2736
+#: cp/tree.c:2799
#, gcc-internal-format
msgid "requested init_priority is reserved for internal use"
msgstr ""
-#: cp/tree.c:2747
+#: cp/tree.c:2810
#, gcc-internal-format
msgid "%qE attribute is not supported on this platform"
msgstr ""
-#: cp/tree.c:3383
+#: cp/tree.c:3475
#, gcc-internal-format, gfc-internal-format
msgid "lang_* check: failed in %s, at %s:%d"
msgstr ""
@@ -32324,386 +32766,386 @@
"cast"
msgstr ""
-#: cp/typeck.c:599
+#: cp/typeck.c:604
#, gcc-internal-format
msgid ""
"ISO C++ forbids comparison between pointer of type %<void *%> and pointer-to-"
"function"
msgstr ""
-#: cp/typeck.c:604
+#: cp/typeck.c:609
#, gcc-internal-format
msgid ""
"ISO C++ forbids conversion between pointer of type %<void *%> and pointer-to-"
"function"
msgstr ""
-#: cp/typeck.c:609
+#: cp/typeck.c:614
#, gcc-internal-format
msgid ""
"ISO C++ forbids conditional expression between pointer of type %<void *%> "
"and pointer-to-function"
msgstr ""
-#: cp/typeck.c:676
+#: cp/typeck.c:681
#, gcc-internal-format
msgid ""
"comparison between distinct pointer-to-member types %qT and %qT lacks a cast"
msgstr ""
-#: cp/typeck.c:681
+#: cp/typeck.c:686
#, gcc-internal-format
msgid ""
"conversion between distinct pointer-to-member types %qT and %qT lacks a cast"
msgstr ""
-#: cp/typeck.c:686
+#: cp/typeck.c:691
#, gcc-internal-format
msgid ""
"conditional expression between distinct pointer-to-member types %qT and %qT "
"lacks a cast"
msgstr ""
-#: cp/typeck.c:1373
+#: cp/typeck.c:1384
#, gcc-internal-format
msgid "canonical types differ for identical types %T and %T"
msgstr ""
-#: cp/typeck.c:1380
+#: cp/typeck.c:1391
#, gcc-internal-format
msgid "same canonical type node for different types %T and %T"
msgstr ""
-#: cp/typeck.c:1505
+#: cp/typeck.c:1516
#, gcc-internal-format
msgid "invalid application of %qs to a member function"
msgstr ""
-#: cp/typeck.c:1582
+#: cp/typeck.c:1593
#, gcc-internal-format
msgid "invalid application of %<sizeof%> to a bit-field"
msgstr ""
-#: cp/typeck.c:1590
+#: cp/typeck.c:1601
#, gcc-internal-format
msgid "ISO C++ forbids applying %<sizeof%> to an expression of function type"
msgstr ""
-#: cp/typeck.c:1641
+#: cp/typeck.c:1652
#, gcc-internal-format
msgid "invalid application of %<__alignof%> to a bit-field"
msgstr ""
-#: cp/typeck.c:1652
+#: cp/typeck.c:1663
#, gcc-internal-format
msgid ""
"ISO C++ forbids applying %<__alignof%> to an expression of function type"
msgstr ""
-#: cp/typeck.c:1710
+#: cp/typeck.c:1721
#, gcc-internal-format
msgid "invalid use of non-static member function"
msgstr ""
-#: cp/typeck.c:1992
+#: cp/typeck.c:2006
#, gcc-internal-format
msgid "deprecated conversion from string constant to %qT"
msgstr ""
-#: cp/typeck.c:2115 cp/typeck.c:2495
+#: cp/typeck.c:2129 cp/typeck.c:2509
#, gcc-internal-format
msgid "request for member %qD in %qE, which is of non-class type %qT"
msgstr ""
-#: cp/typeck.c:2144
+#: cp/typeck.c:2158
#, gcc-internal-format
msgid "invalid use of nonstatic data member %qE"
msgstr ""
-#: cp/typeck.c:2200
+#: cp/typeck.c:2214
#, gcc-internal-format
msgid "invalid access to non-static data member %qD of NULL object"
msgstr ""
-#: cp/typeck.c:2203 cp/typeck.c:2234
+#: cp/typeck.c:2217 cp/typeck.c:2248
#, gcc-internal-format
msgid "(perhaps the %<offsetof%> macro was used incorrectly)"
msgstr ""
-#: cp/typeck.c:2231
+#: cp/typeck.c:2245
#, gcc-internal-format
msgid "invalid access to non-static data member %qD of NULL object"
msgstr ""
-#: cp/typeck.c:2359
+#: cp/typeck.c:2373
#, gcc-internal-format
msgid "object type %qT does not match destructor name ~%qT"
msgstr ""
-#: cp/typeck.c:2367
+#: cp/typeck.c:2381
#, gcc-internal-format
msgid "the type being destroyed is %qT, but the destructor refers to %qT"
msgstr ""
-#: cp/typeck.c:2406 cp/typeck.c:2426
+#: cp/typeck.c:2420 cp/typeck.c:2440
#, gcc-internal-format
msgid "%qD is not a template"
msgstr ""
-#: cp/typeck.c:2534
+#: cp/typeck.c:2548
#, gcc-internal-format
msgid "%<%D::%D%> is not a member of %qT"
msgstr ""
-#: cp/typeck.c:2558
+#: cp/typeck.c:2572
#, gcc-internal-format
msgid "%qT is not a base of %qT"
msgstr ""
-#: cp/typeck.c:2578
+#: cp/typeck.c:2592
#, gcc-internal-format
msgid "%qD has no member named %qE"
msgstr ""
-#: cp/typeck.c:2594
+#: cp/typeck.c:2608
#, gcc-internal-format
msgid "%qD is not a member template function"
msgstr ""
-#: cp/typeck.c:2739
+#: cp/typeck.c:2752
#, gcc-internal-format
msgid "%qT is not a pointer-to-object type"
msgstr ""
-#: cp/typeck.c:2770
+#: cp/typeck.c:2783
#, gcc-internal-format
msgid "invalid use of array indexing on pointer to member"
msgstr ""
-#: cp/typeck.c:2773
+#: cp/typeck.c:2786
#, gcc-internal-format
msgid "invalid use of unary %<*%> on pointer to member"
msgstr ""
-#: cp/typeck.c:2776
+#: cp/typeck.c:2789
#, gcc-internal-format
msgid "invalid use of implicit conversion on pointer to member"
msgstr ""
-#: cp/typeck.c:2811
+#: cp/typeck.c:2824
#, gcc-internal-format
msgid "subscript missing in array reference"
msgstr ""
-#: cp/typeck.c:2895
+#: cp/typeck.c:2908
#, gcc-internal-format
msgid "ISO C++ forbids subscripting non-lvalue array"
msgstr ""
-#: cp/typeck.c:2908
+#: cp/typeck.c:2921
#, gcc-internal-format
msgid "subscripting array declared %<register%>"
msgstr ""
-#: cp/typeck.c:2945
+#: cp/typeck.c:2958
#, gcc-internal-format
msgid "subscripted value is neither array nor pointer"
msgstr ""
-#: cp/typeck.c:3011
+#: cp/typeck.c:3024
#, gcc-internal-format
msgid "object missing in use of %qE"
msgstr ""
-#: cp/typeck.c:3208
+#: cp/typeck.c:3221
#, gcc-internal-format
msgid "ISO C++ forbids calling %<::main%> from within program"
msgstr ""
-#: cp/typeck.c:3227
+#: cp/typeck.c:3240
#, gcc-internal-format
msgid ""
"must use %<.*%> or %<->*%> to call pointer-to-member function in %<%E "
"(...)%>, e.g. %<(... ->* %E) (...)%>"
msgstr ""
-#: cp/typeck.c:3242
+#: cp/typeck.c:3255
#, gcc-internal-format
msgid "%qE cannot be used as a function"
msgstr ""
-#: cp/typeck.c:3290
+#: cp/typeck.c:3302
#, gcc-internal-format
msgid "too many arguments to constructor %q#D"
msgstr ""
-#: cp/typeck.c:3291
+#: cp/typeck.c:3303
#, gcc-internal-format
msgid "too few arguments to constructor %q#D"
msgstr ""
-#: cp/typeck.c:3296
+#: cp/typeck.c:3308
#, gcc-internal-format
msgid "too many arguments to member function %q#D"
msgstr ""
-#: cp/typeck.c:3297
+#: cp/typeck.c:3309
#, gcc-internal-format
msgid "too few arguments to member function %q#D"
msgstr ""
-#: cp/typeck.c:3303
+#: cp/typeck.c:3315
#, gcc-internal-format
msgid "too many arguments to function %q#D"
msgstr ""
-#: cp/typeck.c:3304
+#: cp/typeck.c:3316
#, gcc-internal-format
msgid "too few arguments to function %q#D"
msgstr ""
-#: cp/typeck.c:3314
+#: cp/typeck.c:3326
#, gcc-internal-format
msgid "too many arguments to method %q#D"
msgstr ""
-#: cp/typeck.c:3315
+#: cp/typeck.c:3327
#, gcc-internal-format
msgid "too few arguments to method %q#D"
msgstr ""
-#: cp/typeck.c:3318
+#: cp/typeck.c:3330
#, gcc-internal-format
msgid "too many arguments to function"
msgstr ""
-#: cp/typeck.c:3319
+#: cp/typeck.c:3331
#, gcc-internal-format
msgid "too few arguments to function"
msgstr ""
-#: cp/typeck.c:3398
+#: cp/typeck.c:3410
#, gcc-internal-format
msgid "parameter %P of %qD has incomplete type %qT"
msgstr ""
-#: cp/typeck.c:3401
+#: cp/typeck.c:3413
#, gcc-internal-format
msgid "parameter %P has incomplete type %qT"
msgstr ""
-#: cp/typeck.c:3673 cp/typeck.c:3684
+#: cp/typeck.c:3685 cp/typeck.c:3696
#, gcc-internal-format
msgid "assuming cast to type %qT from overloaded function"
msgstr ""
#. Some sort of arithmetic operation involving NULL was
#. performed.
-#: cp/typeck.c:3727
+#: cp/typeck.c:3739
#, gcc-internal-format
msgid "NULL used in arithmetic"
msgstr ""
-#: cp/typeck.c:3918
+#: cp/typeck.c:3930
#, gcc-internal-format
msgid "left rotate count is negative"
msgstr ""
-#: cp/typeck.c:3919
+#: cp/typeck.c:3931
#, gcc-internal-format
msgid "right rotate count is negative"
msgstr ""
-#: cp/typeck.c:3925
+#: cp/typeck.c:3937
#, gcc-internal-format
msgid "left rotate count >= width of type"
msgstr ""
-#: cp/typeck.c:3926
+#: cp/typeck.c:3938
#, gcc-internal-format
msgid "right rotate count >= width of type"
msgstr ""
-#: cp/typeck.c:3945 cp/typeck.c:4168
+#: cp/typeck.c:3957 cp/typeck.c:4180
#, gcc-internal-format
msgid "comparison with string literal results in unspecified behaviour"
msgstr ""
-#: cp/typeck.c:3964 cp/typeck.c:3976
+#: cp/typeck.c:3976 cp/typeck.c:3988
#, gcc-internal-format
msgid "the address of %qD will never be NULL"
msgstr ""
-#: cp/typeck.c:3988 cp/typeck.c:3996 cp/typeck.c:4191 cp/typeck.c:4199
+#: cp/typeck.c:4000 cp/typeck.c:4008 cp/typeck.c:4203 cp/typeck.c:4211
#, gcc-internal-format
msgid "ISO C++ forbids comparison between pointer and integer"
msgstr ""
-#: cp/typeck.c:4216
+#: cp/typeck.c:4228
#, gcc-internal-format
msgid "unordered comparison on non-floating point argument"
msgstr ""
-#: cp/typeck.c:4263
+#: cp/typeck.c:4275
#, gcc-internal-format
msgid "invalid operands of types %qT and %qT to binary %qO"
msgstr ""
-#: cp/typeck.c:4480
+#: cp/typeck.c:4496
#, gcc-internal-format
msgid "ISO C++ forbids using pointer of type %<void *%> in subtraction"
msgstr ""
-#: cp/typeck.c:4482
+#: cp/typeck.c:4498
#, gcc-internal-format
msgid "ISO C++ forbids using pointer to a function in subtraction"
msgstr ""
-#: cp/typeck.c:4484
+#: cp/typeck.c:4500
#, gcc-internal-format
msgid "ISO C++ forbids using pointer to a method in subtraction"
msgstr ""
-#: cp/typeck.c:4497
+#: cp/typeck.c:4513
#, gcc-internal-format
msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr ""
-#: cp/typeck.c:4555
+#: cp/typeck.c:4571
#, gcc-internal-format
msgid "taking address of constructor %qE"
msgstr ""
-#: cp/typeck.c:4556
+#: cp/typeck.c:4572
#, gcc-internal-format
msgid "taking address of destructor %qE"
msgstr ""
-#: cp/typeck.c:4570
+#: cp/typeck.c:4586
#, gcc-internal-format
msgid "invalid use of %qE to form a pointer-to-member-function"
msgstr ""
-#: cp/typeck.c:4573
+#: cp/typeck.c:4589
#, gcc-internal-format
msgid " a qualified-id is required"
msgstr ""
-#: cp/typeck.c:4578
+#: cp/typeck.c:4594
#, gcc-internal-format
msgid ""
"parentheses around %qE cannot be used to form a pointer-to-member-function"
msgstr ""
#. An expression like &memfn.
-#: cp/typeck.c:4729
+#: cp/typeck.c:4745
#, gcc-internal-format
msgid ""
"ISO C++ forbids taking the address of an unqualified or parenthesized non-"
"static member function to form a pointer to member function. Say %<&%T::%D%>"
msgstr ""
-#: cp/typeck.c:4734
+#: cp/typeck.c:4750
#, gcc-internal-format
msgid ""
"ISO C++ forbids taking the address of a bound member function to form a "
@@ -32711,142 +33153,142 @@
msgstr ""
#. Make this a permerror because we used to accept it.
-#: cp/typeck.c:4771
+#: cp/typeck.c:4787
#, gcc-internal-format
msgid "taking address of temporary"
msgstr ""
-#: cp/typeck.c:4773
+#: cp/typeck.c:4789
#, gcc-internal-format
msgid "taking address of xvalue (rvalue reference)"
msgstr ""
-#: cp/typeck.c:4790
+#: cp/typeck.c:4806
#, gcc-internal-format
msgid "ISO C++ forbids taking address of function %<::main%>"
msgstr ""
-#: cp/typeck.c:4847
+#: cp/typeck.c:4863
#, gcc-internal-format
msgid "ISO C++ forbids taking the address of a cast to a non-lvalue expression"
msgstr ""
-#: cp/typeck.c:4875
+#: cp/typeck.c:4891
#, gcc-internal-format
msgid "cannot create pointer to reference member %qD"
msgstr ""
-#: cp/typeck.c:5139
+#: cp/typeck.c:5155
#, gcc-internal-format
msgid "ISO C++ forbids incrementing an enum"
msgstr ""
-#: cp/typeck.c:5140
+#: cp/typeck.c:5156
#, gcc-internal-format
msgid "ISO C++ forbids decrementing an enum"
msgstr ""
-#: cp/typeck.c:5156
+#: cp/typeck.c:5172
#, gcc-internal-format
msgid "cannot increment a pointer to incomplete type %qT"
msgstr ""
-#: cp/typeck.c:5157
+#: cp/typeck.c:5173
#, gcc-internal-format
msgid "cannot decrement a pointer to incomplete type %qT"
msgstr ""
-#: cp/typeck.c:5168
+#: cp/typeck.c:5184
#, gcc-internal-format
msgid "ISO C++ forbids incrementing a pointer of type %qT"
msgstr ""
-#: cp/typeck.c:5169
+#: cp/typeck.c:5185
#, gcc-internal-format
msgid "ISO C++ forbids decrementing a pointer of type %qT"
msgstr ""
-#: cp/typeck.c:5202
+#: cp/typeck.c:5218
#, gcc-internal-format
msgid "invalid use of Boolean expression as operand to %<operator--%>"
msgstr ""
-#: cp/typeck.c:5361
+#: cp/typeck.c:5377
#, gcc-internal-format
msgid "cannot take the address of %<this%>, which is an rvalue expression"
msgstr ""
-#: cp/typeck.c:5384
+#: cp/typeck.c:5399
#, gcc-internal-format
msgid "address of explicit register variable %qD requested"
msgstr ""
-#: cp/typeck.c:5389
+#: cp/typeck.c:5404
#, gcc-internal-format
msgid "address requested for %qD, which is declared %<register%>"
msgstr ""
-#: cp/typeck.c:5461
+#: cp/typeck.c:5477
#, gcc-internal-format
msgid "expression list treated as compound expression in initializer"
msgstr ""
-#: cp/typeck.c:5465
+#: cp/typeck.c:5481
#, gcc-internal-format
msgid "expression list treated as compound expression in mem-initializer"
msgstr ""
-#: cp/typeck.c:5469
+#: cp/typeck.c:5485
#, gcc-internal-format
msgid "expression list treated as compound expression in functional cast"
msgstr ""
-#: cp/typeck.c:5501
+#: cp/typeck.c:5519
#, gcc-internal-format, gfc-internal-format
msgid "%s expression list treated as compound expression"
msgstr ""
-#: cp/typeck.c:5574
+#: cp/typeck.c:5592
#, gcc-internal-format
msgid "no context to resolve type of %qE"
msgstr ""
-#: cp/typeck.c:5605
+#: cp/typeck.c:5625
#, gcc-internal-format
msgid "cast from type %qT to type %qT casts away qualifiers"
msgstr ""
-#: cp/typeck.c:5610
+#: cp/typeck.c:5631
#, gcc-internal-format
msgid "static_cast from type %qT to type %qT casts away qualifiers"
msgstr ""
-#: cp/typeck.c:5615
+#: cp/typeck.c:5637
#, gcc-internal-format
msgid "reinterpret_cast from type %qT to type %qT casts away qualifiers"
msgstr ""
-#: cp/typeck.c:5929
+#: cp/typeck.c:5959
#, gcc-internal-format
msgid "invalid static_cast from type %qT to type %qT"
msgstr ""
-#: cp/typeck.c:5952
+#: cp/typeck.c:5982
#, gcc-internal-format
msgid "converting from %qT to %qT"
msgstr ""
-#: cp/typeck.c:6001
+#: cp/typeck.c:6031
#, gcc-internal-format
msgid "invalid cast of an rvalue expression of type %qT to type %qT"
msgstr ""
-#: cp/typeck.c:6071
+#: cp/typeck.c:6101
#, gcc-internal-format
msgid "cast from %qT to %qT loses precision"
msgstr ""
-#: cp/typeck.c:6103
+#: cp/typeck.c:6136
#, gcc-internal-format
msgid "cast from %qT to %qT increases required alignment of target type"
msgstr ""
@@ -32855,223 +33297,223 @@
#. where possible, and it is necessary in some cases. DR 195
#. addresses this issue, but as of 2004/10/26 is still in
#. drafting.
-#: cp/typeck.c:6122
+#: cp/typeck.c:6155
#, gcc-internal-format
msgid ""
"ISO C++ forbids casting between pointer-to-function and pointer-to-object"
msgstr ""
-#: cp/typeck.c:6135
+#: cp/typeck.c:6168
#, gcc-internal-format
msgid "invalid cast from type %qT to type %qT"
msgstr ""
-#: cp/typeck.c:6191
+#: cp/typeck.c:6224
#, gcc-internal-format
msgid ""
"invalid use of const_cast with type %qT, which is not a pointer, reference, "
"nor a pointer-to-data-member type"
msgstr ""
-#: cp/typeck.c:6200
+#: cp/typeck.c:6233
#, gcc-internal-format
msgid ""
"invalid use of const_cast with type %qT, which is a pointer or reference to "
"a function type"
msgstr ""
-#: cp/typeck.c:6225
+#: cp/typeck.c:6273
#, gcc-internal-format
msgid "invalid const_cast of an rvalue of type %qT to type %qT"
msgstr ""
-#: cp/typeck.c:6274
+#: cp/typeck.c:6322
#, gcc-internal-format
msgid "invalid const_cast from type %qT to type %qT"
msgstr ""
-#: cp/typeck.c:6351 cp/typeck.c:6359
+#: cp/typeck.c:6399 cp/typeck.c:6407
#, gcc-internal-format
msgid "ISO C++ forbids casting to an array type %qT"
msgstr ""
-#: cp/typeck.c:6368
+#: cp/typeck.c:6416
#, gcc-internal-format
msgid "invalid cast to function type %qT"
msgstr ""
-#: cp/typeck.c:6630
+#: cp/typeck.c:6678
#, gcc-internal-format
msgid " in evaluation of %<%Q(%#T, %#T)%>"
msgstr ""
-#: cp/typeck.c:6688
+#: cp/typeck.c:6736
#, gcc-internal-format
msgid "assigning to an array from an initializer list"
msgstr ""
-#: cp/typeck.c:6700
+#: cp/typeck.c:6748
#, gcc-internal-format
msgid "incompatible types in assignment of %qT to %qT"
msgstr ""
-#: cp/typeck.c:6714
+#: cp/typeck.c:6762
#, gcc-internal-format
msgid "array used as initializer"
msgstr ""
-#: cp/typeck.c:6716
+#: cp/typeck.c:6764
#, gcc-internal-format
msgid "invalid array assignment"
msgstr ""
-#: cp/typeck.c:6828
+#: cp/typeck.c:6876
#, gcc-internal-format
msgid " in pointer to member function conversion"
msgstr ""
-#: cp/typeck.c:6842
+#: cp/typeck.c:6890
#, gcc-internal-format
msgid "pointer to member conversion via virtual base %qT"
msgstr ""
-#: cp/typeck.c:6889 cp/typeck.c:6908
+#: cp/typeck.c:6937 cp/typeck.c:6956
#, gcc-internal-format
msgid " in pointer to member conversion"
msgstr ""
-#: cp/typeck.c:6987
+#: cp/typeck.c:7035
#, gcc-internal-format
msgid "invalid conversion to type %qT from type %qT"
msgstr ""
-#: cp/typeck.c:7269
+#: cp/typeck.c:7317
#, gcc-internal-format
msgid "cannot convert %qT to %qT for argument %qP to %qD"
msgstr ""
-#: cp/typeck.c:7275
+#: cp/typeck.c:7323
#, gcc-internal-format
msgid "cannot convert %qT to %qT in default argument"
msgstr ""
-#: cp/typeck.c:7279
+#: cp/typeck.c:7327
#, gcc-internal-format
msgid "cannot convert %qT to %qT in argument passing"
msgstr ""
-#: cp/typeck.c:7283
+#: cp/typeck.c:7331
#, gcc-internal-format
msgid "cannot convert %qT to %qT"
msgstr ""
-#: cp/typeck.c:7287
+#: cp/typeck.c:7335
#, gcc-internal-format
msgid "cannot convert %qT to %qT in initialization"
msgstr ""
-#: cp/typeck.c:7291
+#: cp/typeck.c:7339
#, gcc-internal-format
msgid "cannot convert %qT to %qT in return"
msgstr ""
-#: cp/typeck.c:7295
+#: cp/typeck.c:7343
#, gcc-internal-format
msgid "cannot convert %qT to %qT in assignment"
msgstr ""
-#: cp/typeck.c:7318
+#: cp/typeck.c:7366
#, gcc-internal-format
msgid "parameter %qP of %qD might be a candidate for a format attribute"
msgstr ""
-#: cp/typeck.c:7322
+#: cp/typeck.c:7370
#, gcc-internal-format
msgid "parameter might be a candidate for a format attribute"
msgstr ""
-#: cp/typeck.c:7327
+#: cp/typeck.c:7375
#, gcc-internal-format
msgid "target of conversion might be a candidate for a format attribute"
msgstr ""
-#: cp/typeck.c:7332
+#: cp/typeck.c:7380
#, gcc-internal-format
msgid "target of initialization might be a candidate for a format attribute"
msgstr ""
-#: cp/typeck.c:7342
+#: cp/typeck.c:7390
#, gcc-internal-format
msgid ""
"left-hand side of assignment might be a candidate for a format attribute"
msgstr ""
-#: cp/typeck.c:7438 cp/typeck.c:7440
+#: cp/typeck.c:7486 cp/typeck.c:7488
#, gcc-internal-format
msgid "in passing argument %P of %q+D"
msgstr ""
-#: cp/typeck.c:7495
+#: cp/typeck.c:7543
#, gcc-internal-format
msgid "returning reference to temporary"
msgstr ""
-#: cp/typeck.c:7502
+#: cp/typeck.c:7550
#, gcc-internal-format
msgid "reference to non-lvalue returned"
msgstr ""
-#: cp/typeck.c:7518
+#: cp/typeck.c:7566
#, gcc-internal-format
msgid "reference to local variable %q+D returned"
msgstr ""
-#: cp/typeck.c:7521
+#: cp/typeck.c:7569
#, gcc-internal-format
msgid "address of local variable %q+D returned"
msgstr ""
-#: cp/typeck.c:7556
+#: cp/typeck.c:7604
#, gcc-internal-format
msgid "returning a value from a destructor"
msgstr ""
#. If a return statement appears in a handler of the
#. function-try-block of a constructor, the program is ill-formed.
-#: cp/typeck.c:7564
+#: cp/typeck.c:7612
#, gcc-internal-format
msgid "cannot return from a handler of a function-try-block of a constructor"
msgstr ""
#. You can't return a value from a constructor.
-#: cp/typeck.c:7567
+#: cp/typeck.c:7615
#, gcc-internal-format
msgid "returning a value from a constructor"
msgstr ""
-#: cp/typeck.c:7585
+#: cp/typeck.c:7633
#, gcc-internal-format
msgid ""
"lambda return type can only be deduced when the return statement is the only "
"statement in the function body"
msgstr ""
-#: cp/typeck.c:7591
+#: cp/typeck.c:7639
#, gcc-internal-format
msgid "inconsistent types %qT and %qT deduced for lambda return type"
msgstr ""
-#: cp/typeck.c:7617
+#: cp/typeck.c:7665
#, gcc-internal-format
msgid "return-statement with no value, in function returning %qT"
msgstr ""
-#: cp/typeck.c:7638
+#: cp/typeck.c:7686
#, gcc-internal-format
msgid "return-statement with a value, in function returning 'void'"
msgstr ""
-#: cp/typeck.c:7668
+#: cp/typeck.c:7716
#, gcc-internal-format
msgid ""
"%<operator new%> must not return NULL unless it is declared %<throw()%> (or -"
@@ -33079,12 +33521,12 @@
msgstr ""
#. Make this a permerror because we used to accept it.
-#: cp/typeck.c:8241
+#: cp/typeck.c:8289
#, gcc-internal-format
msgid "using temporary as lvalue"
msgstr ""
-#: cp/typeck.c:8243
+#: cp/typeck.c:8291
#, gcc-internal-format
msgid "using xvalue (rvalue reference) as lvalue"
msgstr ""
@@ -33190,187 +33632,192 @@
msgid " since type %qT has pure virtual functions"
msgstr ""
-#: cp/typeck2.c:381
+#: cp/typeck2.c:389
#, gcc-internal-format
msgid "%q+D has incomplete type"
msgstr ""
-#: cp/typeck2.c:394
+#: cp/typeck2.c:402
#, gcc-internal-format
msgid "invalid use of incomplete type %q#T"
msgstr ""
-#: cp/typeck2.c:397
+#: cp/typeck2.c:405
#, gcc-internal-format
msgid "forward declaration of %q+#T"
msgstr ""
-#: cp/typeck2.c:400
+#: cp/typeck2.c:408
#, gcc-internal-format
msgid "declaration of %q+#T"
msgstr ""
-#: cp/typeck2.c:405
+#: cp/typeck2.c:413
#, gcc-internal-format
msgid "invalid use of %qT"
msgstr ""
-#: cp/typeck2.c:421
+#: cp/typeck2.c:429
#, gcc-internal-format
msgid "invalid use of member (did you forget the %<&%> ?)"
msgstr ""
-#: cp/typeck2.c:430
+#: cp/typeck2.c:438
#, gcc-internal-format
msgid "invalid use of template type parameter %qT"
msgstr ""
-#: cp/typeck2.c:435
+#: cp/typeck2.c:443
#, gcc-internal-format
msgid "invalid use of template template parameter %qT"
msgstr ""
-#: cp/typeck2.c:441
+#: cp/typeck2.c:449
#, gcc-internal-format
msgid "invalid use of dependent type %qT"
msgstr ""
-#: cp/typeck2.c:450
+#: cp/typeck2.c:458
#, gcc-internal-format
msgid "address of overloaded function with no contextual type information"
msgstr ""
-#: cp/typeck2.c:454
+#: cp/typeck2.c:462
#, gcc-internal-format
msgid "overloaded function with no contextual type information"
msgstr ""
-#: cp/typeck2.c:457
+#: cp/typeck2.c:465
#, gcc-internal-format
msgid "insufficient contextual information to determine type"
msgstr ""
-#: cp/typeck2.c:646
+#: cp/typeck2.c:654
#, gcc-internal-format
msgid "constructor syntax used, but no constructor declared for type %qT"
msgstr ""
-#: cp/typeck2.c:659
+#: cp/typeck2.c:667
#, gcc-internal-format
msgid "cannot initialize arrays using this syntax"
msgstr ""
-#: cp/typeck2.c:768
+#: cp/typeck2.c:786
#, gcc-internal-format
msgid "narrowing conversion of %qE from %qT to %qT inside { }"
msgstr ""
-#: cp/typeck2.c:826
+#: cp/typeck2.c:847
#, gcc-internal-format
msgid "int-array initialized from non-wide string"
msgstr ""
-#: cp/typeck2.c:831
+#: cp/typeck2.c:853
#, gcc-internal-format
msgid "int-array initialized from incompatible wide string"
msgstr ""
-#: cp/typeck2.c:846
+#: cp/typeck2.c:869
#, gcc-internal-format
msgid "initializer-string for array of chars is too long"
msgstr ""
-#: cp/typeck2.c:892
+#: cp/typeck2.c:917
#, gcc-internal-format
msgid "cannot initialize aggregate of type %qT with a compound literal"
msgstr ""
-#: cp/typeck2.c:909
+#: cp/typeck2.c:935
#, gcc-internal-format
msgid "array must be initialized with a brace-enclosed initializer"
msgstr ""
-#: cp/typeck2.c:996 cp/typeck2.c:1104
+#: cp/typeck2.c:1028 cp/typeck2.c:1133
#, gcc-internal-format
msgid "non-trivial designated initializers not supported"
msgstr ""
-#: cp/typeck2.c:1132 cp/typeck2.c:1146
+#: cp/typeck2.c:1164 cp/typeck2.c:1193
#, gcc-internal-format
msgid "missing initializer for member %qD"
msgstr ""
-#: cp/typeck2.c:1137
+#: cp/typeck2.c:1171
#, gcc-internal-format
msgid "uninitialized const member %qD"
msgstr ""
-#: cp/typeck2.c:1139
+#: cp/typeck2.c:1178
#, gcc-internal-format
msgid "member %qD with uninitialized const fields"
msgstr ""
-#: cp/typeck2.c:1141
+#: cp/typeck2.c:1185
#, gcc-internal-format
msgid "member %qD is uninitialized reference"
msgstr ""
-#: cp/typeck2.c:1209
+#: cp/typeck2.c:1265
#, gcc-internal-format
msgid "no field %qD found in union being initialized"
msgstr ""
-#: cp/typeck2.c:1218
+#: cp/typeck2.c:1276
#, gcc-internal-format
msgid "index value instead of field name in union initializer"
msgstr ""
-#: cp/typeck2.c:1377
+#: cp/typeck2.c:1443
#, gcc-internal-format
msgid "circular pointer delegation detected"
msgstr ""
-#: cp/typeck2.c:1387
+#: cp/typeck2.c:1456
#, gcc-internal-format
msgid "base operand of %<->%> has non-pointer type %qT"
msgstr ""
-#: cp/typeck2.c:1411
+#: cp/typeck2.c:1480
#, gcc-internal-format
msgid "result of %<operator->()%> yields non-pointer result"
msgstr ""
-#: cp/typeck2.c:1413
+#: cp/typeck2.c:1482
#, gcc-internal-format
msgid "base operand of %<->%> is not a pointer"
msgstr ""
-#: cp/typeck2.c:1438
+#: cp/typeck2.c:1507
#, gcc-internal-format
msgid "%qE cannot be used as a member pointer, since it is of type %qT"
msgstr ""
-#: cp/typeck2.c:1447
+#: cp/typeck2.c:1516
#, gcc-internal-format
msgid "cannot apply member pointer %qE to %qE, which is of non-class type %qT"
msgstr ""
-#: cp/typeck2.c:1469
+#: cp/typeck2.c:1538
#, gcc-internal-format
msgid "pointer to member type %qT incompatible with object type %qT"
msgstr ""
-#: cp/typeck2.c:1530
+#: cp/typeck2.c:1607
+#, gcc-internal-format
+msgid "functional cast to array type %qT"
+msgstr ""
+
+#: cp/typeck2.c:1628
#, gcc-internal-format
msgid "invalid value-initialization of reference type"
msgstr ""
-#: cp/typeck2.c:1729
+#: cp/typeck2.c:1863
#, gcc-internal-format
msgid "call to function %qD which throws incomplete type %q#T"
msgstr ""
-#: cp/typeck2.c:1732
+#: cp/typeck2.c:1866
#, gcc-internal-format
msgid "call to function which throws incomplete type %q#T"
msgstr ""
@@ -33463,14 +33910,15 @@
msgid "Invalid form of array reference at %C"
msgstr ""
-#: fortran/array.c:200 fortran/array.c:260
+#: fortran/array.c:200 fortran/array.c:266
#, gcc-internal-format, gfc-internal-format
msgid "Array reference at %C cannot have more than %d dimensions"
msgstr ""
-#: fortran/array.c:215 fortran/array.c:569 fortran/check.c:1975
-#: fortran/check.c:3666 fortran/check.c:3689 fortran/check.c:3784
-#: fortran/match.c:1758 fortran/match.c:2339 fortran/simplify.c:4590
+#: fortran/array.c:215 fortran/array.c:575 fortran/check.c:2065
+#: fortran/check.c:3798 fortran/check.c:3836 fortran/check.c:3931
+#: fortran/match.c:1760 fortran/match.c:2337 fortran/match.c:2525
+#: fortran/simplify.c:4582
#, gcc-internal-format, gfc-internal-format
msgid "Coarrays disabled at %C, use -fcoarray= to enable"
msgstr ""
@@ -33485,136 +33933,141 @@
msgid "Too few codimensions at %C, expected %d not %d"
msgstr ""
-#: fortran/array.c:246
+#: fortran/array.c:242
+#, gcc-internal-format, gfc-internal-format
+msgid "Too many codimensions at %C, expected %d not %d"
+msgstr ""
+
+#: fortran/array.c:252
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected '*' for codimension %d of %d at %C"
msgstr ""
-#: fortran/array.c:249
+#: fortran/array.c:255
#, gcc-internal-format, gfc-internal-format
msgid "Invalid form of coarray reference at %C"
msgstr ""
-#: fortran/array.c:254
+#: fortran/array.c:260
#, gcc-internal-format, gfc-internal-format
msgid "Invalid codimension %d at %C, only %d codimensions exist"
msgstr ""
-#: fortran/array.c:306
+#: fortran/array.c:312
#, gcc-internal-format, gfc-internal-format
msgid "Variable '%s' at %L in this context must be constant"
msgstr ""
-#: fortran/array.c:309
+#: fortran/array.c:315
#, gcc-internal-format, gfc-internal-format
msgid "Expression at %L in this context must be constant"
msgstr ""
-#: fortran/array.c:400
+#: fortran/array.c:406
#, gcc-internal-format, gfc-internal-format
msgid "Expected expression in array specification at %C"
msgstr ""
-#: fortran/array.c:479
+#: fortran/array.c:485
#, gcc-internal-format, gfc-internal-format
msgid "Bad array specification for implied-shape array at %C"
msgstr ""
-#: fortran/array.c:495 fortran/array.c:600
+#: fortran/array.c:501 fortran/array.c:613
#, gcc-internal-format, gfc-internal-format
msgid "Bad array specification for an explicitly shaped array at %C"
msgstr ""
-#: fortran/array.c:505 fortran/array.c:610
+#: fortran/array.c:511 fortran/array.c:623
#, gcc-internal-format, gfc-internal-format
msgid "Bad array specification for assumed shape array at %C"
msgstr ""
-#: fortran/array.c:519 fortran/array.c:624
+#: fortran/array.c:525 fortran/array.c:637
#, gcc-internal-format, gfc-internal-format
msgid "Bad specification for deferred shape array at %C"
msgstr ""
-#: fortran/array.c:529 fortran/array.c:628
+#: fortran/array.c:535 fortran/array.c:641
#, gcc-internal-format, gfc-internal-format
msgid "Bad specification for assumed size array at %C"
msgstr ""
-#: fortran/array.c:538 fortran/array.c:637
+#: fortran/array.c:544 fortran/array.c:650
#, gcc-internal-format, gfc-internal-format
msgid "Expected another dimension in array declaration at %C"
msgstr ""
-#: fortran/array.c:544 fortran/array.c:643
+#: fortran/array.c:550 fortran/array.c:581 fortran/array.c:656
#, gcc-internal-format, gfc-internal-format
msgid "Array specification at %C has more than %d dimensions"
msgstr ""
-#: fortran/array.c:550
+#: fortran/array.c:556
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Array specification at %C with more than 7 dimensions"
msgstr ""
-#: fortran/array.c:563
+#: fortran/array.c:569
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Coarray declaration at %C"
msgstr ""
-#: fortran/array.c:651
+#: fortran/array.c:664
#, gcc-internal-format, gfc-internal-format
msgid "Upper bound of last coarray dimension must be '*' at %C"
msgstr ""
-#: fortran/array.c:871
+#: fortran/array.c:884
#, gcc-internal-format, gfc-internal-format
msgid "DO-iterator '%s' at %L is inside iterator of the same name"
msgstr ""
-#: fortran/array.c:963 fortran/array.c:1095
+#: fortran/array.c:976 fortran/array.c:1108
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in array constructor at %C"
msgstr ""
-#: fortran/array.c:1015
+#: fortran/array.c:1028
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: [...] style array constructors at %C"
msgstr ""
-#: fortran/array.c:1035
+#: fortran/array.c:1048
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Array constructor including type specification at %C"
msgstr ""
-#: fortran/array.c:1041 fortran/match.c:2895
+#: fortran/array.c:1054 fortran/match.c:3085
#, gcc-internal-format, gfc-internal-format
msgid "Type-spec at %L cannot contain a deferred type parameter"
msgstr ""
-#: fortran/array.c:1057
+#: fortran/array.c:1070
#, gcc-internal-format, gfc-internal-format
msgid "Empty array constructor at %C is not allowed"
msgstr ""
-#: fortran/array.c:1142
+#: fortran/array.c:1155
#, gcc-internal-format, gfc-internal-format
msgid "Element in %s array constructor at %L is %s"
msgstr ""
-#: fortran/array.c:1469
+#: fortran/array.c:1482
#, gcc-internal-format, gfc-internal-format
msgid "Iterator step at %L cannot be zero"
msgstr ""
#. Problems occur when we get something like
#. integer :: a(lots) = (/(i, i=1, lots)/)
-#: fortran/array.c:1605 fortran/expr.c:1521 fortran/trans-array.c:4535
+#: fortran/array.c:1618 fortran/expr.c:1524 fortran/trans-array.c:4600
#, gcc-internal-format, gfc-internal-format
msgid ""
"The number of elements in the array constructor at %L requires an increase "
"of the allowed %d upper limit. See -fmax-array-constructor option"
msgstr ""
-#: fortran/array.c:1802
+#: fortran/array.c:1815
#, gcc-internal-format, gfc-internal-format
msgid "Different CHARACTER lengths (%d/%d) in array constructor at %L"
msgstr ""
@@ -33649,7 +34102,7 @@
msgid "'%s' argument of '%s' intrinsic at %L must be INTEGER or PROCEDURE"
msgstr ""
-#: fortran/check.c:167 fortran/check.c:4857
+#: fortran/check.c:167 fortran/check.c:5004
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be a constant"
msgstr ""
@@ -33664,451 +34117,499 @@
msgid "'%s' argument of '%s' intrinsic at %L must be double precision"
msgstr ""
-#: fortran/check.c:236
+#: fortran/check.c:242
#, gcc-internal-format, gfc-internal-format
msgid "Expected coarray variable as '%s' argument to the %s intrinsic at %L"
msgstr ""
-#: fortran/check.c:253
+#: fortran/check.c:259
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be a logical array"
msgstr ""
-#: fortran/check.c:271
+#: fortran/check.c:277
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be an array"
msgstr ""
-#: fortran/check.c:292
+#: fortran/check.c:298
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L must be nonnegative"
msgstr ""
-#: fortran/check.c:318
+#: fortran/check.c:324
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L must be less than or equal to BIT_SIZE('%s')"
msgstr ""
-#: fortran/check.c:328
+#: fortran/check.c:334
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L must be less than BIT_SIZE('%s')"
msgstr ""
-#: fortran/check.c:355
+#: fortran/check.c:361
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L must be less than or equal to the BIT_SIZE of INTEGER(KIND=%d)"
msgstr ""
-#: fortran/check.c:381
+#: fortran/check.c:387
#, gcc-internal-format, gfc-internal-format
msgid "'%s + %s' at %L must be less than or equal to BIT_SIZE('%s')"
msgstr ""
-#: fortran/check.c:399
+#: fortran/check.c:405
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must be the same type and kind as '%s'"
msgstr ""
-#: fortran/check.c:416
+#: fortran/check.c:422
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be of rank %d"
msgstr ""
-#: fortran/check.c:431
+#: fortran/check.c:437
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must not be OPTIONAL"
msgstr ""
-#: fortran/check.c:452
+#: fortran/check.c:458
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be ALLOCATABLE"
msgstr ""
-#: fortran/check.c:470
+#: fortran/check.c:476
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be of kind %d"
msgstr ""
-#: fortran/check.c:488
+#: fortran/check.c:494
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L cannot be INTENT(IN)"
msgstr ""
-#: fortran/check.c:505
+#: fortran/check.c:511
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be a variable"
msgstr ""
-#: fortran/check.c:553
+#: fortran/check.c:559
#, gcc-internal-format, gfc-internal-format
msgid "'dim' argument of '%s' intrinsic at %L is not a valid codimension index"
msgstr ""
-#: fortran/check.c:599
+#: fortran/check.c:605
#, gcc-internal-format, gfc-internal-format
msgid "'dim' argument of '%s' intrinsic at %L is not a valid dimension index"
msgstr ""
-#: fortran/check.c:697
+#: fortran/check.c:703
#, gcc-internal-format, gfc-internal-format
msgid "Unequal character lengths (%ld/%ld) in %s at %L"
msgstr ""
-#: fortran/check.c:819 fortran/check.c:4826
+#: fortran/check.c:825 fortran/check.c:4973
#, gcc-internal-format, gfc-internal-format
msgid "'%s' and '%s' arguments of '%s' intrinsic at %L must have the same type"
msgstr ""
-#: fortran/check.c:828 fortran/check.c:1657 fortran/check.c:1783
-#: fortran/check.c:1857 fortran/check.c:2171
+#: fortran/check.c:834 fortran/check.c:1747 fortran/check.c:1873
+#: fortran/check.c:1947 fortran/check.c:2261
#, gcc-internal-format, gfc-internal-format
msgid "Extension: Different type kinds at %L"
msgstr ""
-#: fortran/check.c:866 fortran/check.c:2642
+#: fortran/check.c:872 fortran/check.c:2736
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be a POINTER"
msgstr ""
-#: fortran/check.c:884
+#: fortran/check.c:881 fortran/check.c:917 fortran/check.c:2745
+#, gcc-internal-format, gfc-internal-format
+msgid "'%s' argument of '%s' intrinsic at %L shall not be conindexed"
+msgstr ""
+
+#: fortran/check.c:899
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must be a pointer or target VARIABLE "
"or FUNCTION"
msgstr ""
-#: fortran/check.c:893
+#: fortran/check.c:908
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be a POINTER or a TARGET"
msgstr ""
-#: fortran/check.c:909
+#: fortran/check.c:933
#, gcc-internal-format, gfc-internal-format
msgid ""
"Array section with a vector subscript at %L shall not be the target of a "
"pointer"
msgstr ""
-#: fortran/check.c:920
+#: fortran/check.c:944
#, gcc-internal-format, gfc-internal-format
msgid ""
"NULL pointer at %L is not permitted as actual argument of '%s' intrinsic "
"function"
msgstr ""
-#: fortran/check.c:963
+#: fortran/check.c:983
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"ATOM argument at %L to intrinsic function %s shall be an integer of "
+"ATOMIC_INT_KIND or a logical of ATOMIC_LOGICAL_KIND"
+msgstr ""
+
+#: fortran/check.c:991
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"ATOM argument at %L of the %s intrinsic function shall be a coarray or "
+"coindexed"
+msgstr ""
+
+#: fortran/check.c:998
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"ATOM and VALUE argument of the %s intrinsic function shall have the same "
+"type at %L"
+msgstr ""
+
+#: fortran/check.c:1016
+#, gcc-internal-format, gfc-internal-format
+msgid "ATOM argument of the %s intrinsic function at %L shall be definable"
+msgstr ""
+
+#: fortran/check.c:1033
+#, gcc-internal-format, gfc-internal-format
+msgid "VALUE argument of the %s intrinsic function at %L shall be definable"
+msgstr ""
+
+#: fortran/check.c:1053
#, gcc-internal-format, gfc-internal-format
msgid "Extension: Negative argument N at %L"
msgstr ""
-#: fortran/check.c:1135 fortran/check.c:1294
+#: fortran/check.c:1225 fortran/check.c:1384
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must not be present if 'x' is COMPLEX"
msgstr ""
-#: fortran/check.c:1144 fortran/check.c:1303
+#: fortran/check.c:1234 fortran/check.c:1393
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must have a type of either REAL or "
"INTEGER"
msgstr ""
-#: fortran/check.c:1188 fortran/check.c:1702 fortran/check.c:1805
-#: fortran/check.c:1961 fortran/check.c:2006 fortran/check.c:3142
-#: fortran/check.c:3276 fortran/check.c:3331 fortran/check.c:3770
-#: fortran/check.c:3899
+#: fortran/check.c:1278 fortran/check.c:1792 fortran/check.c:1895
+#: fortran/check.c:2051 fortran/check.c:2096 fortran/check.c:3272
+#: fortran/check.c:3406 fortran/check.c:3461 fortran/check.c:3917
+#: fortran/check.c:4046
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: '%s' intrinsic with KIND argument at %L"
msgstr ""
-#: fortran/check.c:1235 fortran/check.c:1468
+#: fortran/check.c:1325 fortran/check.c:1558
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L has invalid shape in dimension %d (%ld/"
"%ld)"
msgstr ""
-#: fortran/check.c:1250 fortran/check.c:1483 fortran/check.c:1511
+#: fortran/check.c:1340 fortran/check.c:1573 fortran/check.c:1601
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of intrinsic '%s' at %L of must have rank %d or be a scalar"
msgstr ""
-#: fortran/check.c:1353 fortran/check.c:2265 fortran/check.c:2273
+#: fortran/check.c:1443 fortran/check.c:2355 fortran/check.c:2363
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be numeric or LOGICAL"
msgstr ""
-#: fortran/check.c:1367
+#: fortran/check.c:1457
#, gcc-internal-format, gfc-internal-format
msgid ""
"Different shape for arguments '%s' and '%s' at %L for intrinsic 'dot_product'"
msgstr ""
-#: fortran/check.c:1386 fortran/check.c:1394
+#: fortran/check.c:1476 fortran/check.c:1484
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be default real"
msgstr ""
-#: fortran/check.c:1529
+#: fortran/check.c:1619
#, gcc-internal-format, gfc-internal-format
msgid "GNU extension: non-default INTEGER kind argument to %s intrinsic at %L"
msgstr ""
-#: fortran/check.c:1589
+#: fortran/check.c:1679
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: COMPLEX argument '%s' argument of '%s' intrinsic at %L"
msgstr ""
-#: fortran/check.c:1753
+#: fortran/check.c:1843
#, gcc-internal-format, gfc-internal-format
msgid "Argument of %s at %L must be of length one"
msgstr ""
-#: fortran/check.c:1812
+#: fortran/check.c:1902
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be the same kind as '%s'"
msgstr ""
-#: fortran/check.c:1937
+#: fortran/check.c:2027
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be a non-derived type"
msgstr ""
-#: fortran/check.c:2144
+#: fortran/check.c:2234
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic '%s' at %L must have at least two arguments"
msgstr ""
-#: fortran/check.c:2177
+#: fortran/check.c:2267
#, gcc-internal-format, gfc-internal-format
msgid "'a%d' argument of '%s' intrinsic at %L must be %s(%d)"
msgstr ""
-#: fortran/check.c:2208
+#: fortran/check.c:2298
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: '%s' intrinsic with CHARACTER argument at %L"
msgstr ""
-#: fortran/check.c:2215
+#: fortran/check.c:2305
#, gcc-internal-format, gfc-internal-format
msgid ""
"'a1' argument of '%s' intrinsic at %L must be INTEGER, REAL or CHARACTER"
msgstr ""
-#: fortran/check.c:2282
+#: fortran/check.c:2372
#, gcc-internal-format, gfc-internal-format
msgid "Argument types of '%s' intrinsic at %L must match (%s/%s)"
msgstr ""
-#: fortran/check.c:2296
+#: fortran/check.c:2386
#, gcc-internal-format, gfc-internal-format
msgid ""
"Different shape on dimension 1 for arguments '%s' and '%s' at %L for "
"intrinsic matmul"
msgstr ""
-#: fortran/check.c:2315
+#: fortran/check.c:2405
#, gcc-internal-format, gfc-internal-format
msgid ""
"Different shape on dimension 2 for argument '%s' and dimension 1 for "
"argument '%s' at %L for intrinsic matmul"
msgstr ""
-#: fortran/check.c:2324
+#: fortran/check.c:2414
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be of rank 1 or 2"
msgstr ""
-#: fortran/check.c:2499
+#: fortran/check.c:2589
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be INTEGER"
msgstr ""
-#: fortran/check.c:2568
+#: fortran/check.c:2658
#, gcc-internal-format, gfc-internal-format
msgid ""
"the '%s' and '%s' arguments of '%s' intrinsic at %L must have the same rank "
"%d/%d"
msgstr ""
-#: fortran/check.c:2577
+#: fortran/check.c:2667
#, gcc-internal-format, gfc-internal-format
msgid ""
"the '%s' and '%s' arguments of '%s' intrinsic at %L must be of the same kind "
"%d/%d"
msgstr ""
-#: fortran/check.c:2714 fortran/check.c:3846
+#: fortran/check.c:2817 fortran/check.c:3993
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must provide at least as many elements "
"as there are .TRUE. values in '%s' (%ld/%d)"
msgstr ""
-#: fortran/check.c:2772
+#: fortran/check.c:2875
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be of a dummy variable"
msgstr ""
-#: fortran/check.c:2780
+#: fortran/check.c:2883
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must be of an OPTIONAL dummy variable"
msgstr ""
-#: fortran/check.c:2797
+#: fortran/check.c:2900
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must not be a subobject of '%s'"
msgstr ""
-#: fortran/check.c:2922
+#: fortran/check.c:2948
+#, gcc-internal-format, gfc-internal-format
+msgid "The argument of the RANK intrinsic at %L must be a data object"
+msgstr ""
+
+#: fortran/check.c:3052
#, gcc-internal-format, gfc-internal-format
msgid ""
"'shape' argument of 'reshape' intrinsic at %L must be an array of constant "
"size"
msgstr ""
-#: fortran/check.c:2932
+#: fortran/check.c:3062
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L is empty"
msgstr ""
-#: fortran/check.c:2939
+#: fortran/check.c:3069
#, gcc-internal-format, gfc-internal-format
msgid "'shape' argument of 'reshape' intrinsic at %L has more than %d elements"
msgstr ""
-#: fortran/check.c:2956
+#: fortran/check.c:3086
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L has negative element (%d)"
msgstr ""
-#: fortran/check.c:2996
+#: fortran/check.c:3126
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L has wrong number of elements (%d/%d)"
msgstr ""
-#: fortran/check.c:3014
+#: fortran/check.c:3144
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L has out-of-range dimension (%d)"
msgstr ""
-#: fortran/check.c:3023
+#: fortran/check.c:3153
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L has invalid permutation of dimensions "
"(dimension '%d' duplicated)"
msgstr ""
-#: fortran/check.c:3059
+#: fortran/check.c:3189
#, gcc-internal-format, gfc-internal-format
msgid ""
"Without padding, there are not enough elements in the intrinsic RESHAPE "
"source at %L to match the shape"
msgstr ""
-#: fortran/check.c:3077 fortran/check.c:3095
+#: fortran/check.c:3207 fortran/check.c:3225
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be of a derived type"
msgstr ""
-#: fortran/check.c:3086 fortran/check.c:3104
+#: fortran/check.c:3216 fortran/check.c:3234
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be of an extensible type"
msgstr ""
-#: fortran/check.c:3203
+#: fortran/check.c:3333
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2008: SELECTED_REAL_KIND with neither 'P' nor 'R' argument at %L"
msgstr ""
-#: fortran/check.c:3234
+#: fortran/check.c:3364
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: '%s' intrinsic with RADIX argument at %L"
msgstr ""
-#: fortran/check.c:3269
+#: fortran/check.c:3399
#, gcc-internal-format, gfc-internal-format
msgid ""
"'source' argument of 'shape' intrinsic at %L must not be an assumed size "
"array"
msgstr ""
-#: fortran/check.c:3353
+#: fortran/check.c:3483
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must be be an interoperable data entity"
msgstr ""
-#: fortran/check.c:3382
+#: fortran/check.c:3512
#, gcc-internal-format, gfc-internal-format
msgid "GNU extension: non double precision REAL argument to %s intrinsic at %L"
msgstr ""
-#: fortran/check.c:3395
+#: fortran/check.c:3525
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be less than rank %d"
msgstr ""
-#: fortran/check.c:3414
+#: fortran/check.c:3544
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L is not a valid dimension index"
msgstr ""
-#: fortran/check.c:3675
+#: fortran/check.c:3807
#, gcc-internal-format, gfc-internal-format
msgid "%s argument to IMAGE_INDEX must be a rank one array at %L"
msgstr ""
-#: fortran/check.c:3695
+#: fortran/check.c:3818
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"The number of array elements of the SUB argument to IMAGE_INDEX at %L shall "
+"be %d (corank) not %d"
+msgstr ""
+
+#: fortran/check.c:3842
#, gcc-internal-format, gfc-internal-format
msgid ""
"DIM argument without ARRAY argument not allowed for THIS_IMAGE intrinsic at "
"%L"
msgstr ""
-#: fortran/check.c:3725
+#: fortran/check.c:3872
#, gcc-internal-format, gfc-internal-format
msgid "'MOLD' argument of 'TRANSFER' intrinsic at %L must not be %s"
msgstr ""
-#: fortran/check.c:3860
+#: fortran/check.c:4007
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must have the same rank as '%s' or be "
"a scalar"
msgstr ""
-#: fortran/check.c:3873
+#: fortran/check.c:4020
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' and '%s' arguments of '%s' intrinsic at %L must have identical shape."
msgstr ""
-#: fortran/check.c:4132 fortran/check.c:4164
+#: fortran/check.c:4279 fortran/check.c:4311
#, gcc-internal-format, gfc-internal-format
msgid "Size of '%s' argument of '%s' intrinsic at %L too small (%i/%i)"
msgstr ""
-#: fortran/check.c:4172
+#: fortran/check.c:4319
#, gcc-internal-format, gfc-internal-format
msgid "Too many arguments to %s at %L"
msgstr ""
-#: fortran/check.c:4458
+#: fortran/check.c:4605
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' argument of '%s' intrinsic at %L must be of a kind not wider than the "
"default kind (%d)"
msgstr ""
-#: fortran/check.c:4810 fortran/check.c:4818
+#: fortran/check.c:4957 fortran/check.c:4965
#, gcc-internal-format, gfc-internal-format
msgid "'%s' argument of '%s' intrinsic at %L must be INTEGER or LOGICAL"
msgstr ""
@@ -34120,7 +34621,7 @@
#. Since the extension field is 8 bit wide, we can only have
#. up to 255 extension levels.
-#: fortran/class.c:270 fortran/decl.c:7318
+#: fortran/class.c:270 fortran/decl.c:7357
#, gcc-internal-format, gfc-internal-format
msgid "Maximum extension level reached with type '%s' at %L"
msgstr ""
@@ -34295,440 +34796,447 @@
#: fortran/decl.c:1065
#, gcc-internal-format, gfc-internal-format
msgid ""
-"Variable '%s' at %L cannot have the OPTIONAL attribute because procedure "
-"'%s' is BIND(C)"
+"Variable '%s' at %L cannot have both the OPTIONAL and the VALUE attribute "
+"because procedure '%s' is BIND(C)"
msgstr ""
-#: fortran/decl.c:1078
+#: fortran/decl.c:1072
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"TR29113: Variable '%s' at %L with OPTIONAL attribute in procedure '%s' which "
+"is BIND(C)"
+msgstr ""
+
+#: fortran/decl.c:1086
#, gcc-internal-format, gfc-internal-format
msgid ""
"Assumed-shape array '%s' at %L cannot be an argument to the procedure '%s' "
"at %L because the procedure is BIND(C)"
msgstr ""
-#: fortran/decl.c:1088
+#: fortran/decl.c:1096
#, gcc-internal-format, gfc-internal-format
msgid ""
"Deferred-shape array '%s' at %L cannot be an argument to the procedure '%s' "
"at %L because the procedure is BIND(C)"
msgstr ""
-#: fortran/decl.c:1169
+#: fortran/decl.c:1177
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' in common block '%s' at %C must be declared with a C "
"interoperable kind since common block '%s' is BIND(C)"
msgstr ""
-#: fortran/decl.c:1211
+#: fortran/decl.c:1219
#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER expression at %L is being truncated (%d/%d)"
msgstr ""
-#: fortran/decl.c:1218
+#: fortran/decl.c:1226
#, gcc-internal-format, gfc-internal-format
msgid ""
"The CHARACTER elements of the array constructor at %L must have the same "
"length (%d/%d)"
msgstr ""
-#: fortran/decl.c:1308
+#: fortran/decl.c:1316
#, gcc-internal-format, gfc-internal-format
msgid "Initializer not allowed for PARAMETER '%s' at %C"
msgstr ""
-#: fortran/decl.c:1318
+#: fortran/decl.c:1326
#, gcc-internal-format, gfc-internal-format
msgid "PARAMETER at %L is missing an initializer"
msgstr ""
-#: fortran/decl.c:1328
+#: fortran/decl.c:1336
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %C with an initializer already appears in a DATA statement"
msgstr ""
-#: fortran/decl.c:1409
+#: fortran/decl.c:1417
#, gcc-internal-format, gfc-internal-format
msgid "Can't initialize implied-shape array at %L with scalar"
msgstr ""
-#: fortran/decl.c:1427
+#: fortran/decl.c:1435
#, gcc-internal-format, gfc-internal-format
msgid "Non-constant lower bound in implied-shape declaration at %L"
msgstr ""
-#: fortran/decl.c:1522
+#: fortran/decl.c:1530
#, gcc-internal-format, gfc-internal-format
msgid "Component at %C must have the POINTER attribute"
msgstr ""
-#: fortran/decl.c:1530
+#: fortran/decl.c:1538
#, gcc-internal-format, gfc-internal-format
msgid "Array component of structure at %C must have explicit or deferred shape"
msgstr ""
-#: fortran/decl.c:1610
+#: fortran/decl.c:1618
#, gcc-internal-format, gfc-internal-format
msgid "Pointer array component of structure at %C must have a deferred shape"
msgstr ""
-#: fortran/decl.c:1619
+#: fortran/decl.c:1627
#, gcc-internal-format, gfc-internal-format
msgid "Allocatable component of structure at %C must have a deferred shape"
msgstr ""
-#: fortran/decl.c:1628
+#: fortran/decl.c:1636
#, gcc-internal-format, gfc-internal-format
msgid "Array component of structure at %C must have an explicit shape"
msgstr ""
-#: fortran/decl.c:1662
+#: fortran/decl.c:1670
#, gcc-internal-format, gfc-internal-format
msgid "NULL() initialization at %C is ambiguous"
msgstr ""
-#: fortran/decl.c:1689
+#: fortran/decl.c:1697
#, gcc-internal-format, gfc-internal-format
msgid "Initialization of pointer at %C is not allowed in a PURE procedure"
msgstr ""
-#: fortran/decl.c:1709
+#: fortran/decl.c:1717
#, gcc-internal-format, gfc-internal-format
msgid "Error in pointer initialization at %C"
msgstr ""
-#: fortran/decl.c:1716
+#: fortran/decl.c:1724
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: non-NULL pointer initialization at %C"
msgstr ""
-#: fortran/decl.c:1777
+#: fortran/decl.c:1786
#, gcc-internal-format, gfc-internal-format
msgid "Non-PARAMETER symbol '%s' at %L can't be implied-shape"
msgstr ""
-#: fortran/decl.c:1788
+#: fortran/decl.c:1797
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Implied-shape array at %L"
msgstr ""
-#: fortran/decl.c:1852 fortran/decl.c:6247
+#: fortran/decl.c:1861 fortran/decl.c:6260
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate array spec for Cray pointee at %C"
msgstr ""
-#: fortran/decl.c:1923
+#: fortran/decl.c:1932
#, gcc-internal-format, gfc-internal-format
msgid "the type of '%s' at %C has not been declared within the interface"
msgstr ""
-#: fortran/decl.c:1939
+#: fortran/decl.c:1948
#, gcc-internal-format, gfc-internal-format
msgid "Function name '%s' not allowed at %C"
msgstr ""
-#: fortran/decl.c:1955
+#: fortran/decl.c:1964
#, gcc-internal-format, gfc-internal-format
msgid "Extension: Old-style initialization at %C"
msgstr ""
-#: fortran/decl.c:1970 fortran/decl.c:4749
+#: fortran/decl.c:1979 fortran/decl.c:4760
#, gcc-internal-format, gfc-internal-format
msgid "Initialization at %C isn't for a pointer variable"
msgstr ""
-#: fortran/decl.c:1983
+#: fortran/decl.c:1992
#, gcc-internal-format, gfc-internal-format
msgid "Pointer initialization at %C requires '=>', not '='"
msgstr ""
-#: fortran/decl.c:1992 fortran/decl.c:7470
+#: fortran/decl.c:2001 fortran/decl.c:7509
#, gcc-internal-format, gfc-internal-format
msgid "Expected an initialization expression at %C"
msgstr ""
-#: fortran/decl.c:1999
+#: fortran/decl.c:2008
#, gcc-internal-format, gfc-internal-format
msgid "Initialization of variable at %C is not allowed in a PURE procedure"
msgstr ""
-#: fortran/decl.c:2012
+#: fortran/decl.c:2021
#, gcc-internal-format, gfc-internal-format
msgid "Initialization of allocatable component at %C is not allowed"
msgstr ""
-#: fortran/decl.c:2066 fortran/decl.c:2075
+#: fortran/decl.c:2075 fortran/decl.c:2084
#, gcc-internal-format, gfc-internal-format
msgid "Old-style type declaration %s*%d not supported at %C"
msgstr ""
-#: fortran/decl.c:2080
+#: fortran/decl.c:2089
#, gcc-internal-format, gfc-internal-format
msgid "Nonstandard type declaration %s*%d at %C"
msgstr ""
-#: fortran/decl.c:2131 fortran/decl.c:2207
+#: fortran/decl.c:2140 fortran/decl.c:2216
#, gcc-internal-format, gfc-internal-format
msgid "Missing right parenthesis at %C"
msgstr ""
-#: fortran/decl.c:2144 fortran/decl.c:2252
+#: fortran/decl.c:2153 fortran/decl.c:2261
#, gcc-internal-format, gfc-internal-format
msgid "Expected initialization expression at %C"
msgstr ""
-#: fortran/decl.c:2152 fortran/decl.c:2258
+#: fortran/decl.c:2161 fortran/decl.c:2267
#, gcc-internal-format, gfc-internal-format
msgid "Expected scalar initialization expression at %C"
msgstr ""
-#: fortran/decl.c:2183
+#: fortran/decl.c:2192
#, gcc-internal-format, gfc-internal-format
msgid "Kind %d not supported for type %s at %C"
msgstr ""
-#: fortran/decl.c:2196
+#: fortran/decl.c:2205
#, gcc-internal-format, gfc-internal-format
msgid "C kind type parameter is for type %s but type at %L is %s"
msgstr ""
-#: fortran/decl.c:2205
+#: fortran/decl.c:2214
#, gcc-internal-format, gfc-internal-format
msgid "Missing right parenthesis or comma at %C"
msgstr ""
-#: fortran/decl.c:2278
+#: fortran/decl.c:2287
#, gcc-internal-format, gfc-internal-format
msgid "Kind %d is not supported for CHARACTER at %C"
msgstr ""
-#: fortran/decl.c:2410
+#: fortran/decl.c:2419
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in CHARACTER declaration at %C"
msgstr ""
-#: fortran/decl.c:2494
+#: fortran/decl.c:2503
#, gcc-internal-format, gfc-internal-format
msgid "Extension: BYTE type at %C"
msgstr ""
-#: fortran/decl.c:2500
+#: fortran/decl.c:2509
#, gcc-internal-format, gfc-internal-format
msgid "BYTE type used at %C is not available on the target machine"
msgstr ""
-#: fortran/decl.c:2526 fortran/decl.c:2557 fortran/decl.c:2587
-#: fortran/decl.c:2681
+#: fortran/decl.c:2535 fortran/decl.c:2566 fortran/decl.c:2596
+#: fortran/decl.c:2690
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: TYPE with intrinsic-type-spec at %C"
msgstr ""
-#: fortran/decl.c:2582
+#: fortran/decl.c:2591
#, gcc-internal-format, gfc-internal-format
msgid "Extension: DOUBLE COMPLEX at %C"
msgstr ""
-#: fortran/decl.c:2620
+#: fortran/decl.c:2629
#, gcc-internal-format, gfc-internal-format
msgid "Unlimited polymorphism at %C not yet supported"
msgstr ""
-#: fortran/decl.c:2629
+#: fortran/decl.c:2638
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: CLASS statement at %C"
msgstr ""
-#: fortran/decl.c:2652 fortran/decl.c:2661 fortran/decl.c:2995
-#: fortran/decl.c:3003
+#: fortran/decl.c:2661 fortran/decl.c:2670 fortran/decl.c:3005
+#: fortran/decl.c:3013
#, gcc-internal-format, gfc-internal-format
msgid "Type name '%s' at %C is ambiguous"
msgstr ""
-#: fortran/decl.c:2757
+#: fortran/decl.c:2766
#, gcc-internal-format, gfc-internal-format
msgid "Missing character range in IMPLICIT at %C"
msgstr ""
-#: fortran/decl.c:2803
+#: fortran/decl.c:2812
#, gcc-internal-format, gfc-internal-format
msgid "Letters must be in alphabetic order in IMPLICIT statement at %C"
msgstr ""
-#: fortran/decl.c:2859
+#: fortran/decl.c:2868
#, gcc-internal-format, gfc-internal-format
msgid "Empty IMPLICIT statement at %C"
msgstr ""
-#: fortran/decl.c:2961
+#: fortran/decl.c:2970
#, gcc-internal-format, gfc-internal-format
msgid "IMPORT statement at %C only permitted in an INTERFACE body"
msgstr ""
-#: fortran/decl.c:2966
+#: fortran/decl.c:2975
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: IMPORT statement at %C"
msgstr ""
-#: fortran/decl.c:2981
+#: fortran/decl.c:2990
#, gcc-internal-format, gfc-internal-format
msgid "Expecting list of named entities at %C"
msgstr ""
-#: fortran/decl.c:3009
+#: fortran/decl.c:3019
#, gcc-internal-format, gfc-internal-format
msgid "Cannot IMPORT '%s' from host scoping unit at %C - does not exist."
msgstr ""
-#: fortran/decl.c:3016
+#: fortran/decl.c:3026
#, gcc-internal-format, gfc-internal-format
msgid "'%s' is already IMPORTed from host scoping unit at %C."
msgstr ""
-#: fortran/decl.c:3045
+#: fortran/decl.c:3055
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in IMPORT statement at %C"
msgstr ""
-#: fortran/decl.c:3344
+#: fortran/decl.c:3354
#, gcc-internal-format, gfc-internal-format
msgid "Missing codimension specification at %C"
msgstr ""
-#: fortran/decl.c:3346
+#: fortran/decl.c:3356
#, gcc-internal-format, gfc-internal-format
msgid "Missing dimension specification at %C"
msgstr ""
-#: fortran/decl.c:3429
+#: fortran/decl.c:3439
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate %s attribute at %L"
msgstr ""
-#: fortran/decl.c:3448
+#: fortran/decl.c:3458
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ALLOCATABLE attribute at %C in a TYPE definition"
msgstr ""
-#: fortran/decl.c:3458
+#: fortran/decl.c:3468
#, gcc-internal-format, gfc-internal-format
msgid "Attribute at %L is not allowed in a TYPE definition"
msgstr ""
-#: fortran/decl.c:3476
+#: fortran/decl.c:3486
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Attribute %s at %L in a TYPE definition"
msgstr ""
-#: fortran/decl.c:3487
+#: fortran/decl.c:3497
#, gcc-internal-format, gfc-internal-format
msgid ""
"%s attribute at %L is not allowed outside of the specification part of a "
"module"
msgstr ""
-#: fortran/decl.c:3502
+#: fortran/decl.c:3512
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ASYNCHRONOUS attribute at %C"
msgstr ""
-#: fortran/decl.c:3515
+#: fortran/decl.c:3525
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: CONTIGUOUS attribute at %C"
msgstr ""
-#: fortran/decl.c:3561 fortran/decl.c:6524
+#: fortran/decl.c:3571 fortran/decl.c:6548
#, gcc-internal-format, gfc-internal-format
msgid "PROTECTED at %C only allowed in specification part of a module"
msgstr ""
-#: fortran/decl.c:3567
+#: fortran/decl.c:3577
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: PROTECTED attribute at %C"
msgstr ""
-#: fortran/decl.c:3598
+#: fortran/decl.c:3608
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: VALUE attribute at %C"
msgstr ""
-#: fortran/decl.c:3608
+#: fortran/decl.c:3618
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: VOLATILE attribute at %C"
msgstr ""
-#: fortran/decl.c:3652
+#: fortran/decl.c:3662
#, gcc-internal-format, gfc-internal-format
msgid "Multiple identifiers provided with single NAME= specifier at %C"
msgstr ""
-#: fortran/decl.c:3749
+#: fortran/decl.c:3759
#, gcc-internal-format, gfc-internal-format
msgid ""
"Implicitly declared BIND(C) function '%s' at %L may not be C interoperable"
msgstr ""
-#: fortran/decl.c:3770
+#: fortran/decl.c:3780
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' in common block '%s' at %L may not be a C interoperable kind "
"though common block '%s' is BIND(C)"
msgstr ""
-#: fortran/decl.c:3779
+#: fortran/decl.c:3789
#, gcc-internal-format, gfc-internal-format
msgid "Type declaration '%s' at %L is not C interoperable but it is BIND(C)"
msgstr ""
-#: fortran/decl.c:3783
+#: fortran/decl.c:3793
#, gcc-internal-format, gfc-internal-format
msgid "Variable '%s' at %L may not be a C interoperable kind but it is bind(c)"
msgstr ""
-#: fortran/decl.c:3795
+#: fortran/decl.c:3805
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' in common block '%s' at %L cannot be declared with BIND(C) "
"since it is not a global"
msgstr ""
-#: fortran/decl.c:3809
+#: fortran/decl.c:3819
#, gcc-internal-format, gfc-internal-format
msgid "Variable '%s' at %L cannot have both the POINTER and BIND(C) attributes"
msgstr ""
-#: fortran/decl.c:3817
+#: fortran/decl.c:3827
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %L cannot have both the ALLOCATABLE and BIND(C) attributes"
msgstr ""
-#: fortran/decl.c:3829
+#: fortran/decl.c:3839
#, gcc-internal-format, gfc-internal-format
msgid "Return type of BIND(C) function '%s' at %L cannot be an array"
msgstr ""
-#: fortran/decl.c:3837
+#: fortran/decl.c:3847
#, gcc-internal-format, gfc-internal-format
msgid "Return type of BIND(C) function '%s' at %L cannot be a character string"
msgstr ""
#. Use gfc_warning_now because we won't say that the symbol fails
#. just because of this.
-#: fortran/decl.c:3848
+#: fortran/decl.c:3858
#, gcc-internal-format, gfc-internal-format
msgid ""
"Symbol '%s' at %L is marked PRIVATE but has been given the binding label '%s'"
msgstr ""
-#: fortran/decl.c:3923
+#: fortran/decl.c:3933
#, gcc-internal-format, gfc-internal-format
msgid ""
"Need either entity or common block name for attribute specification "
"statement at %C"
msgstr ""
-#: fortran/decl.c:3970
+#: fortran/decl.c:3980
#, gcc-internal-format, gfc-internal-format
msgid ""
"Missing entity or common block name for attribute specification statement at "
@@ -34737,780 +35245,785 @@
#. Now we have an error, which we signal, and then fix up
#. because the knock-on is plain and simple confusing.
-#: fortran/decl.c:4079
+#: fortran/decl.c:4089
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type at %C has not been previously defined and so cannot appear in a "
"derived type definition"
msgstr ""
-#: fortran/decl.c:4111
+#: fortran/decl.c:4121
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in data declaration at %C"
msgstr ""
-#: fortran/decl.c:4185
+#: fortran/decl.c:4195
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: IMPURE procedure at %C"
msgstr ""
-#: fortran/decl.c:4198
+#: fortran/decl.c:4208
#, gcc-internal-format, gfc-internal-format
msgid "PURE and IMPURE must not appear both at %C"
msgstr ""
-#: fortran/decl.c:4304
+#: fortran/decl.c:4314
#, gcc-internal-format, gfc-internal-format
msgid "Name '%s' at %C is the name of the procedure"
msgstr ""
-#: fortran/decl.c:4316
+#: fortran/decl.c:4326
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected junk in formal argument list at %C"
msgstr ""
-#: fortran/decl.c:4333
+#: fortran/decl.c:4343
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate symbol '%s' in formal argument list at %C"
msgstr ""
-#: fortran/decl.c:4384
+#: fortran/decl.c:4394
#, gcc-internal-format, gfc-internal-format
msgid "RESULT variable at %C must be different than function name"
msgstr ""
-#: fortran/decl.c:4461
+#: fortran/decl.c:4471
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected junk after function declaration at %C"
msgstr ""
-#: fortran/decl.c:4471 fortran/decl.c:5500
+#: fortran/decl.c:4481 fortran/decl.c:5513
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2008: BIND(C) attribute at %L may not be specified for an internal "
"procedure"
msgstr ""
-#: fortran/decl.c:4615
+#: fortran/decl.c:4625
#, gcc-internal-format, gfc-internal-format
msgid "Interface '%s' at %C may not be generic"
msgstr ""
-#: fortran/decl.c:4621
+#: fortran/decl.c:4631
#, gcc-internal-format, gfc-internal-format
msgid "Interface '%s' at %C may not be a statement function"
msgstr ""
-#: fortran/decl.c:4634
+#: fortran/decl.c:4644
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic procedure '%s' not allowed in PROCEDURE statement at %C"
msgstr ""
-#: fortran/decl.c:4689
+#: fortran/decl.c:4699
#, gcc-internal-format, gfc-internal-format
msgid "BIND(C) attribute at %C requires an interface with BIND(C)"
msgstr ""
-#: fortran/decl.c:4696
+#: fortran/decl.c:4706
#, gcc-internal-format, gfc-internal-format
msgid "BIND(C) procedure with NAME may not have POINTER attribute at %C"
msgstr ""
-#: fortran/decl.c:4702
+#: fortran/decl.c:4712
#, gcc-internal-format, gfc-internal-format
msgid "Dummy procedure at %C may not have BIND(C) attribute with NAME"
msgstr ""
-#: fortran/decl.c:4725
+#: fortran/decl.c:4735
#, gcc-internal-format, gfc-internal-format
msgid "Procedure '%s' at %L already has basic type of %s"
msgstr ""
-#: fortran/decl.c:4773 fortran/decl.c:4940 fortran/decl.c:7952
+#: fortran/decl.c:4784 fortran/decl.c:4952 fortran/decl.c:7991
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in PROCEDURE statement at %C"
msgstr ""
-#: fortran/decl.c:4822 fortran/decl.c:7853
+#: fortran/decl.c:4833 fortran/decl.c:7892
#, gcc-internal-format, gfc-internal-format
msgid "Expected '::' after binding-attributes at %C"
msgstr ""
-#: fortran/decl.c:4829
+#: fortran/decl.c:4840
#, gcc-internal-format, gfc-internal-format
msgid "NOPASS or explicit interface required at %C"
msgstr ""
-#: fortran/decl.c:4833
+#: fortran/decl.c:4844
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Procedure pointer component at %C"
msgstr ""
-#: fortran/decl.c:4897
+#: fortran/decl.c:4909
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in procedure pointer component at %C"
msgstr ""
-#: fortran/decl.c:4914
+#: fortran/decl.c:4926
#, gcc-internal-format, gfc-internal-format
msgid "PROCEDURE at %C must be in a generic interface"
msgstr ""
-#: fortran/decl.c:4979
+#: fortran/decl.c:4992
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: PROCEDURE statement at %C"
msgstr ""
-#: fortran/decl.c:5047
+#: fortran/decl.c:5060
#, gcc-internal-format, gfc-internal-format
msgid "Expected formal argument list in function definition at %C"
msgstr ""
-#: fortran/decl.c:5071 fortran/decl.c:5075 fortran/decl.c:5278
-#: fortran/decl.c:5282 fortran/decl.c:5468 fortran/decl.c:5472
+#: fortran/decl.c:5084 fortran/decl.c:5088 fortran/decl.c:5291
+#: fortran/decl.c:5295 fortran/decl.c:5481 fortran/decl.c:5485
#: fortran/symbol.c:1582
#, gcc-internal-format, gfc-internal-format
msgid "BIND(C) attribute at %L can only be used for variables or common blocks"
msgstr ""
-#: fortran/decl.c:5190
+#: fortran/decl.c:5203
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008 obsolescent feature: ENTRY statement at %C"
msgstr ""
-#: fortran/decl.c:5200
+#: fortran/decl.c:5213
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a PROGRAM"
msgstr ""
-#: fortran/decl.c:5203
+#: fortran/decl.c:5216
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a MODULE"
msgstr ""
-#: fortran/decl.c:5206
+#: fortran/decl.c:5219
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a BLOCK DATA"
msgstr ""
-#: fortran/decl.c:5210
+#: fortran/decl.c:5223
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within an INTERFACE"
msgstr ""
-#: fortran/decl.c:5214
+#: fortran/decl.c:5227
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a DERIVED TYPE block"
msgstr ""
-#: fortran/decl.c:5218
+#: fortran/decl.c:5231
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within an IF-THEN block"
msgstr ""
-#: fortran/decl.c:5222
+#: fortran/decl.c:5235
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a DO block"
msgstr ""
-#: fortran/decl.c:5226
+#: fortran/decl.c:5239
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a SELECT block"
msgstr ""
-#: fortran/decl.c:5230
+#: fortran/decl.c:5243
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a FORALL block"
msgstr ""
-#: fortran/decl.c:5234
+#: fortran/decl.c:5247
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a WHERE block"
msgstr ""
-#: fortran/decl.c:5238
+#: fortran/decl.c:5251
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear within a contained subprogram"
msgstr ""
-#: fortran/decl.c:5256
+#: fortran/decl.c:5269
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY statement at %C cannot appear in a contained procedure"
msgstr ""
-#: fortran/decl.c:5310 fortran/decl.c:5508
+#: fortran/decl.c:5323 fortran/decl.c:5521
#, gcc-internal-format, gfc-internal-format
msgid "Missing required parentheses before BIND(C) at %C"
msgstr ""
-#: fortran/decl.c:5570 fortran/decl.c:5586
+#: fortran/decl.c:5583 fortran/decl.c:5599
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in NAME= specifier for binding label at %C"
msgstr ""
-#: fortran/decl.c:5601
+#: fortran/decl.c:5614
#, gcc-internal-format, gfc-internal-format
msgid "Missing closing quote '\"' for binding label at %C"
msgstr ""
-#: fortran/decl.c:5610
+#: fortran/decl.c:5623
#, gcc-internal-format, gfc-internal-format
msgid "Missing closing quote ''' for binding label at %C"
msgstr ""
-#: fortran/decl.c:5620
+#: fortran/decl.c:5633
#, gcc-internal-format, gfc-internal-format
msgid "Missing closing paren for binding label at %C"
msgstr ""
-#: fortran/decl.c:5626
+#: fortran/decl.c:5639
#, gcc-internal-format, gfc-internal-format
msgid "No binding name is allowed in BIND(C) at %C"
msgstr ""
-#: fortran/decl.c:5632
+#: fortran/decl.c:5645
#, gcc-internal-format, gfc-internal-format
msgid "For dummy procedure %s, no binding name is allowed in BIND(C) at %C"
msgstr ""
-#: fortran/decl.c:5663
+#: fortran/decl.c:5676
#, gcc-internal-format, gfc-internal-format
msgid "NAME not allowed on BIND(C) for ABSTRACT INTERFACE at %C"
msgstr ""
-#: fortran/decl.c:5867
+#: fortran/decl.c:5880
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected END statement at %C"
msgstr ""
-#: fortran/decl.c:5875
+#: fortran/decl.c:5888
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: END statement instead of %s statement at %L"
msgstr ""
#. We would have required END [something].
-#: fortran/decl.c:5883
+#: fortran/decl.c:5896
#, gcc-internal-format, gfc-internal-format
msgid "%s statement expected at %L"
msgstr ""
-#: fortran/decl.c:5894
+#: fortran/decl.c:5907
#, gcc-internal-format, gfc-internal-format
msgid "Expecting %s statement at %C"
msgstr ""
-#: fortran/decl.c:5910
+#: fortran/decl.c:5923
#, gcc-internal-format, gfc-internal-format
msgid "Expected block name of '%s' in %s statement at %C"
msgstr ""
-#: fortran/decl.c:5927
+#: fortran/decl.c:5940
#, gcc-internal-format, gfc-internal-format
msgid "Expected terminating name at %C"
msgstr ""
-#: fortran/decl.c:5936 fortran/decl.c:5944
+#: fortran/decl.c:5949 fortran/decl.c:5957
#, gcc-internal-format, gfc-internal-format
msgid "Expected label '%s' for %s statement at %C"
msgstr ""
-#: fortran/decl.c:6003
+#: fortran/decl.c:6016
#, gcc-internal-format, gfc-internal-format
msgid "Missing array specification at %L in DIMENSION statement"
msgstr ""
-#: fortran/decl.c:6011
+#: fortran/decl.c:6024
#, gcc-internal-format, gfc-internal-format
msgid "Dimensions specified for %s at %L after its initialisation"
msgstr ""
-#: fortran/decl.c:6019
+#: fortran/decl.c:6032
#, gcc-internal-format, gfc-internal-format
msgid "Missing array specification at %L in CODIMENSION statement"
msgstr ""
-#: fortran/decl.c:6028
+#: fortran/decl.c:6041
#, gcc-internal-format, gfc-internal-format
msgid "Array specification must be deferred at %L"
msgstr ""
-#: fortran/decl.c:6127
+#: fortran/decl.c:6140
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected character in variable list at %C"
msgstr ""
-#: fortran/decl.c:6164
+#: fortran/decl.c:6177
#, gcc-internal-format, gfc-internal-format
msgid "Expected '(' at %C"
msgstr ""
-#: fortran/decl.c:6178 fortran/decl.c:6218
+#: fortran/decl.c:6191 fortran/decl.c:6231
#, gcc-internal-format, gfc-internal-format
msgid "Expected variable name at %C"
msgstr ""
-#: fortran/decl.c:6194
+#: fortran/decl.c:6207
#, gcc-internal-format, gfc-internal-format
msgid "Cray pointer at %C must be an integer"
msgstr ""
-#: fortran/decl.c:6198
+#: fortran/decl.c:6211
#, gcc-internal-format, gfc-internal-format
msgid ""
"Cray pointer at %C has %d bytes of precision; memory addresses require %d "
"bytes"
msgstr ""
-#: fortran/decl.c:6204
+#: fortran/decl.c:6217
#, gcc-internal-format, gfc-internal-format
msgid "Expected \",\" at %C"
msgstr ""
-#: fortran/decl.c:6267
+#: fortran/decl.c:6280
#, gcc-internal-format, gfc-internal-format
msgid "Expected \")\" at %C"
msgstr ""
-#: fortran/decl.c:6279
+#: fortran/decl.c:6292
#, gcc-internal-format, gfc-internal-format
msgid "Expected \",\" or end of statement at %C"
msgstr ""
-#: fortran/decl.c:6305
+#: fortran/decl.c:6318
#, gcc-internal-format, gfc-internal-format
msgid "INTENT is not allowed inside of BLOCK at %C"
msgstr ""
-#: fortran/decl.c:6337
+#: fortran/decl.c:6350
#, gcc-internal-format, gfc-internal-format
msgid "OPTIONAL is not allowed inside of BLOCK at %C"
msgstr ""
-#: fortran/decl.c:6356
+#: fortran/decl.c:6369
#, gcc-internal-format, gfc-internal-format
msgid "Cray pointer declaration at %C requires -fcray-pointer flag"
msgstr ""
-#: fortran/decl.c:6395
+#: fortran/decl.c:6408
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: CONTIGUOUS statement at %C"
msgstr ""
-#: fortran/decl.c:6475
+#: fortran/decl.c:6499
#, gcc-internal-format, gfc-internal-format
msgid ""
"Access specification of the %s operator at %C has already been specified"
msgstr ""
-#: fortran/decl.c:6492
+#: fortran/decl.c:6516
#, gcc-internal-format, gfc-internal-format
msgid ""
"Access specification of the .%s. operator at %C has already been specified"
msgstr ""
-#: fortran/decl.c:6530
+#: fortran/decl.c:6554
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: PROTECTED statement at %C"
msgstr ""
-#: fortran/decl.c:6570
+#: fortran/decl.c:6594
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in PROTECTED statement at %C"
msgstr ""
-#: fortran/decl.c:6594
+#: fortran/decl.c:6618
#, gcc-internal-format, gfc-internal-format
msgid ""
"PRIVATE statement at %C is only allowed in the specification part of a module"
msgstr ""
-#: fortran/decl.c:6631
+#: fortran/decl.c:6655
#, gcc-internal-format, gfc-internal-format
msgid ""
"PUBLIC statement at %C is only allowed in the specification part of a module"
msgstr ""
-#: fortran/decl.c:6659
+#: fortran/decl.c:6683
#, gcc-internal-format, gfc-internal-format
msgid "Expected variable name at %C in PARAMETER statement"
msgstr ""
-#: fortran/decl.c:6666
+#: fortran/decl.c:6690
#, gcc-internal-format, gfc-internal-format
msgid "Expected = sign in PARAMETER statement at %C"
msgstr ""
-#: fortran/decl.c:6672
+#: fortran/decl.c:6696
#, gcc-internal-format, gfc-internal-format
msgid "Expected expression at %C in PARAMETER statement"
msgstr ""
-#: fortran/decl.c:6692
+#: fortran/decl.c:6716
#, gcc-internal-format, gfc-internal-format
msgid "Initializing already initialized variable at %C"
msgstr ""
-#: fortran/decl.c:6727
+#: fortran/decl.c:6751
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected characters in PARAMETER statement at %C"
msgstr ""
-#: fortran/decl.c:6751
+#: fortran/decl.c:6775
#, gcc-internal-format, gfc-internal-format
msgid "Blanket SAVE statement at %C follows previous SAVE statement"
msgstr ""
-#: fortran/decl.c:6763
+#: fortran/decl.c:6787
#, gcc-internal-format, gfc-internal-format
msgid "SAVE statement at %C follows blanket SAVE statement"
msgstr ""
-#: fortran/decl.c:6810
+#: fortran/decl.c:6834
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in SAVE statement at %C"
msgstr ""
-#: fortran/decl.c:6824
+#: fortran/decl.c:6848
#, gcc-internal-format, gfc-internal-format
msgid "VALUE is not allowed inside of BLOCK at %C"
msgstr ""
-#: fortran/decl.c:6828
+#: fortran/decl.c:6852
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: VALUE statement at %C"
msgstr ""
-#: fortran/decl.c:6868
+#: fortran/decl.c:6892
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in VALUE statement at %C"
msgstr ""
-#: fortran/decl.c:6879
+#: fortran/decl.c:6903
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: VOLATILE statement at %C"
msgstr ""
-#: fortran/decl.c:6903
+#: fortran/decl.c:6927
#, gcc-internal-format, gfc-internal-format
msgid ""
"Specifying VOLATILE for coarray variable '%s' at %C, which is use-/host-"
"associated"
msgstr ""
-#: fortran/decl.c:6929
+#: fortran/decl.c:6953
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in VOLATILE statement at %C"
msgstr ""
-#: fortran/decl.c:6940
+#: fortran/decl.c:6964
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ASYNCHRONOUS statement at %C"
msgstr ""
-#: fortran/decl.c:6982
+#: fortran/decl.c:7006
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in ASYNCHRONOUS statement at %C"
msgstr ""
-#: fortran/decl.c:7005
+#: fortran/decl.c:7030
#, gcc-internal-format, gfc-internal-format
msgid "MODULE PROCEDURE at %C must be in a generic module interface"
msgstr ""
-#: fortran/decl.c:7050
+#: fortran/decl.c:7055
+#, gcc-internal-format, gfc-internal-format
+msgid "Fortran 2008: double colon in MODULE PROCEDURE statement at %L"
+msgstr ""
+
+#: fortran/decl.c:7089
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic procedure at %L cannot be a MODULE PROCEDURE"
msgstr ""
-#: fortran/decl.c:7099
+#: fortran/decl.c:7138
#, gcc-internal-format, gfc-internal-format
msgid "Ambiguous symbol in TYPE definition at %C"
msgstr ""
-#: fortran/decl.c:7105
+#: fortran/decl.c:7144
#, gcc-internal-format, gfc-internal-format
msgid "No such symbol in TYPE definition at %C"
msgstr ""
-#: fortran/decl.c:7111
+#: fortran/decl.c:7150
#, gcc-internal-format, gfc-internal-format
msgid "'%s' in EXTENDS expression at %C is not a derived type"
msgstr ""
-#: fortran/decl.c:7118
+#: fortran/decl.c:7157
#, gcc-internal-format, gfc-internal-format
msgid "'%s' cannot be extended at %C because it is BIND(C)"
msgstr ""
-#: fortran/decl.c:7125
+#: fortran/decl.c:7164
#, gcc-internal-format, gfc-internal-format
msgid "'%s' cannot be extended at %C because it is a SEQUENCE type"
msgstr ""
-#: fortran/decl.c:7148
+#: fortran/decl.c:7187
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type at %C can only be PRIVATE in the specification part of a module"
msgstr ""
-#: fortran/decl.c:7160
+#: fortran/decl.c:7199
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type at %C can only be PUBLIC in the specification part of a module"
msgstr ""
-#: fortran/decl.c:7181
+#: fortran/decl.c:7220
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ABSTRACT type at %C"
msgstr ""
-#: fortran/decl.c:7245
+#: fortran/decl.c:7284
#, gcc-internal-format, gfc-internal-format
msgid "Expected :: in TYPE definition at %C"
msgstr ""
-#: fortran/decl.c:7256
+#: fortran/decl.c:7295
#, gcc-internal-format, gfc-internal-format
msgid "Type name '%s' at %C cannot be the same as an intrinsic type"
msgstr ""
-#: fortran/decl.c:7266
+#: fortran/decl.c:7305
#, gcc-internal-format, gfc-internal-format
msgid "Derived type name '%s' at %C already has a basic type of %s"
msgstr ""
-#: fortran/decl.c:7282
+#: fortran/decl.c:7321
#, gcc-internal-format, gfc-internal-format
msgid "Derived type definition of '%s' at %C has already been defined"
msgstr ""
-#: fortran/decl.c:7355
+#: fortran/decl.c:7394
#, gcc-internal-format, gfc-internal-format
msgid "Cray Pointee at %C cannot be assumed shape array"
msgstr ""
-#: fortran/decl.c:7375
+#: fortran/decl.c:7414
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ENUM and ENUMERATOR at %C"
msgstr ""
-#: fortran/decl.c:7408
+#: fortran/decl.c:7447
#, gcc-internal-format, gfc-internal-format
msgid "Enumerator exceeds the C integer type at %C"
msgstr ""
-#: fortran/decl.c:7487
+#: fortran/decl.c:7526
#, gcc-internal-format, gfc-internal-format
msgid "ENUMERATOR %L not initialized with integer expression"
msgstr ""
-#: fortran/decl.c:7535
+#: fortran/decl.c:7574
#, gcc-internal-format, gfc-internal-format
msgid "ENUM definition statement expected before %C"
msgstr ""
-#: fortran/decl.c:7571
+#: fortran/decl.c:7610
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in ENUMERATOR definition at %C"
msgstr ""
-#: fortran/decl.c:7618 fortran/decl.c:7633
+#: fortran/decl.c:7657 fortran/decl.c:7672
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate access-specifier at %C"
msgstr ""
-#: fortran/decl.c:7653
+#: fortran/decl.c:7692
#, gcc-internal-format, gfc-internal-format
msgid "Binding attributes already specify passing, illegal NOPASS at %C"
msgstr ""
-#: fortran/decl.c:7673
+#: fortran/decl.c:7712
#, gcc-internal-format, gfc-internal-format
msgid "Binding attributes already specify passing, illegal PASS at %C"
msgstr ""
-#: fortran/decl.c:7700
+#: fortran/decl.c:7739
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate POINTER attribute at %C"
msgstr ""
-#: fortran/decl.c:7718
+#: fortran/decl.c:7757
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate NON_OVERRIDABLE at %C"
msgstr ""
-#: fortran/decl.c:7734
+#: fortran/decl.c:7773
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate DEFERRED at %C"
msgstr ""
-#: fortran/decl.c:7747
+#: fortran/decl.c:7786
#, gcc-internal-format, gfc-internal-format
msgid "Expected access-specifier at %C"
msgstr ""
-#: fortran/decl.c:7749
+#: fortran/decl.c:7788
#, gcc-internal-format, gfc-internal-format
msgid "Expected binding attribute at %C"
msgstr ""
-#: fortran/decl.c:7757
+#: fortran/decl.c:7796
#, gcc-internal-format, gfc-internal-format
msgid "NON_OVERRIDABLE and DEFERRED can't both appear at %C"
msgstr ""
-#: fortran/decl.c:7769
+#: fortran/decl.c:7808
#, gcc-internal-format, gfc-internal-format
msgid "POINTER attribute is required for procedure pointer component at %C"
msgstr ""
-#: fortran/decl.c:7811
+#: fortran/decl.c:7850
#, gcc-internal-format, gfc-internal-format
msgid "Interface-name expected after '(' at %C"
msgstr ""
-#: fortran/decl.c:7817
+#: fortran/decl.c:7856
#, gcc-internal-format, gfc-internal-format
msgid "')' expected at %C"
msgstr ""
-#: fortran/decl.c:7837
+#: fortran/decl.c:7876
#, gcc-internal-format, gfc-internal-format
msgid "Interface must be specified for DEFERRED binding at %C"
msgstr ""
-#: fortran/decl.c:7842
+#: fortran/decl.c:7881
#, gcc-internal-format, gfc-internal-format
msgid "PROCEDURE(interface) at %C should be declared DEFERRED"
msgstr ""
-#: fortran/decl.c:7865
+#: fortran/decl.c:7904
#, gcc-internal-format, gfc-internal-format
msgid "Expected binding name at %C"
msgstr ""
-#: fortran/decl.c:7869
+#: fortran/decl.c:7908
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: PROCEDURE list at %C"
msgstr ""
-#: fortran/decl.c:7882
+#: fortran/decl.c:7921
#, gcc-internal-format, gfc-internal-format
msgid "'=> target' is invalid for DEFERRED binding at %C"
msgstr ""
-#: fortran/decl.c:7888
+#: fortran/decl.c:7927
#, gcc-internal-format, gfc-internal-format
msgid "'::' needed in PROCEDURE binding with explicit target at %C"
msgstr ""
-#: fortran/decl.c:7898
+#: fortran/decl.c:7937
#, gcc-internal-format, gfc-internal-format
msgid "Expected binding target after '=>' at %C"
msgstr ""
-#: fortran/decl.c:7915
+#: fortran/decl.c:7954
#, gcc-internal-format, gfc-internal-format
msgid "Type '%s' containing DEFERRED binding at %C is not ABSTRACT"
msgstr ""
-#: fortran/decl.c:7926
+#: fortran/decl.c:7965
#, gcc-internal-format, gfc-internal-format
msgid ""
"There is already a procedure with binding name '%s' for the derived type "
"'%s' at %C"
msgstr ""
-#: fortran/decl.c:7975
+#: fortran/decl.c:8014
#, gcc-internal-format, gfc-internal-format
msgid "GENERIC at %C must be inside a derived-type CONTAINS"
msgstr ""
-#: fortran/decl.c:7995
+#: fortran/decl.c:8034
#, gcc-internal-format, gfc-internal-format
msgid "Expected '::' at %C"
msgstr ""
-#: fortran/decl.c:8007
+#: fortran/decl.c:8046
#, gcc-internal-format, gfc-internal-format
msgid "Expected generic name or operator descriptor at %C"
msgstr ""
-#: fortran/decl.c:8033
+#: fortran/decl.c:8072
#, gcc-internal-format, gfc-internal-format
msgid "Expected '=>' at %C"
msgstr ""
-#: fortran/decl.c:8075
+#: fortran/decl.c:8114
#, gcc-internal-format, gfc-internal-format
msgid ""
"There's already a non-generic procedure with binding name '%s' for the "
"derived type '%s' at %C"
msgstr ""
-#: fortran/decl.c:8083
+#: fortran/decl.c:8122
#, gcc-internal-format, gfc-internal-format
msgid "Binding at %C must have the same access as already defined binding '%s'"
msgstr ""
-#: fortran/decl.c:8132
+#: fortran/decl.c:8171
#, gcc-internal-format, gfc-internal-format
msgid "Expected specific binding name at %C"
msgstr ""
-#: fortran/decl.c:8142
+#: fortran/decl.c:8181
#, gcc-internal-format, gfc-internal-format
msgid "'%s' already defined as specific binding for the generic '%s' at %C"
msgstr ""
-#: fortran/decl.c:8158
+#: fortran/decl.c:8197
#, gcc-internal-format, gfc-internal-format
msgid "Junk after GENERIC binding at %C"
msgstr ""
-#: fortran/decl.c:8193
+#: fortran/decl.c:8232
#, gcc-internal-format, gfc-internal-format
msgid "FINAL declaration at %C must be inside a derived type CONTAINS section"
msgstr ""
-#: fortran/decl.c:8204
+#: fortran/decl.c:8243
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type declaration with FINAL at %C must be in the specification part "
"of a MODULE"
msgstr ""
-#: fortran/decl.c:8226
+#: fortran/decl.c:8265
#, gcc-internal-format, gfc-internal-format
msgid "Empty FINAL at %C"
msgstr ""
-#: fortran/decl.c:8233
+#: fortran/decl.c:8272
#, gcc-internal-format, gfc-internal-format
msgid "Expected module procedure name at %C"
msgstr ""
-#: fortran/decl.c:8243
+#: fortran/decl.c:8282
#, gcc-internal-format, gfc-internal-format
msgid "Expected ',' at %C"
msgstr ""
-#: fortran/decl.c:8249
+#: fortran/decl.c:8288
#, gcc-internal-format, gfc-internal-format
msgid "Unknown procedure name \"%s\" at %C"
msgstr ""
-#: fortran/decl.c:8263
+#: fortran/decl.c:8302
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %C is already defined as FINAL procedure!"
msgstr ""
-#: fortran/decl.c:8332
+#: fortran/decl.c:8371
#, gcc-internal-format, gfc-internal-format
msgid "Unknown attribute in !GCC$ ATTRIBUTES statement at %C"
msgstr ""
-#: fortran/decl.c:8379
+#: fortran/decl.c:8418
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in !GCC$ ATTRIBUTES statement at %C"
msgstr ""
@@ -35546,506 +36059,511 @@
msgid "Internal Error at (1):"
msgstr ""
-#: fortran/expr.c:1212
+#: fortran/expr.c:1215
#, gcc-internal-format, gfc-internal-format
msgid "Index in dimension %d is out of bounds at %L"
msgstr ""
-#: fortran/expr.c:1391 fortran/expr.c:1442
+#: fortran/expr.c:1394 fortran/expr.c:1445
#, gcc-internal-format, gfc-internal-format
msgid "index in dimension %d is out of bounds at %L"
msgstr ""
-#: fortran/expr.c:2053
+#: fortran/expr.c:2056
#, gcc-internal-format, gfc-internal-format
msgid "elemental function arguments at %C are not compliant"
msgstr ""
-#: fortran/expr.c:2097
+#: fortran/expr.c:2100
#, gcc-internal-format, gfc-internal-format
msgid "Numeric or CHARACTER operands are required in expression at %L"
msgstr ""
-#: fortran/expr.c:2122
+#: fortran/expr.c:2125
#, gcc-internal-format, gfc-internal-format
msgid ""
"Concatenation operator in expression at %L must have two CHARACTER operands"
msgstr ""
-#: fortran/expr.c:2129
+#: fortran/expr.c:2132
#, gcc-internal-format, gfc-internal-format
msgid "Concat operator at %L must concatenate strings of the same kind"
msgstr ""
-#: fortran/expr.c:2139
+#: fortran/expr.c:2142
#, gcc-internal-format, gfc-internal-format
msgid ".NOT. operator in expression at %L must have a LOGICAL operand"
msgstr ""
-#: fortran/expr.c:2155
+#: fortran/expr.c:2158
#, gcc-internal-format, gfc-internal-format
msgid "LOGICAL operands are required in expression at %L"
msgstr ""
-#: fortran/expr.c:2166
+#: fortran/expr.c:2169
#, gcc-internal-format, gfc-internal-format
msgid "Only intrinsic operators can be used in expression at %L"
msgstr ""
-#: fortran/expr.c:2174
+#: fortran/expr.c:2177
#, gcc-internal-format, gfc-internal-format
msgid "Numeric operands are required in expression at %L"
msgstr ""
-#: fortran/expr.c:2197
+#: fortran/expr.c:2200
#, gcc-internal-format, gfc-internal-format
msgid ""
"Invalid initialization expression for ALLOCATABLE component '%s' in "
"structure constructor at %L"
msgstr ""
-#: fortran/expr.c:2295
+#: fortran/expr.c:2298
#, gcc-internal-format, gfc-internal-format
msgid ""
"Assumed or deferred character length variable '%s' in constant expression "
"at %L"
msgstr ""
-#: fortran/expr.c:2361
+#: fortran/expr.c:2364
#, gcc-internal-format, gfc-internal-format
msgid ""
"transformational intrinsic '%s' at %L is not permitted in an initialization "
"expression"
msgstr ""
-#: fortran/expr.c:2392
+#: fortran/expr.c:2395
#, gcc-internal-format, gfc-internal-format
msgid "Extension: Evaluation of nonstandard initialization expression at %L"
msgstr ""
-#: fortran/expr.c:2448
+#: fortran/expr.c:2451
#, gcc-internal-format, gfc-internal-format
msgid ""
"Function '%s' in initialization expression at %L must be an intrinsic "
"function"
msgstr ""
-#: fortran/expr.c:2460
+#: fortran/expr.c:2463
#, gcc-internal-format, gfc-internal-format
msgid ""
"Intrinsic function '%s' at %L is not permitted in an initialization "
"expression"
msgstr ""
-#: fortran/expr.c:2492
+#: fortran/expr.c:2495
#, gcc-internal-format, gfc-internal-format
msgid "PARAMETER '%s' is used at %L before its definition is complete"
msgstr ""
-#: fortran/expr.c:2512
+#: fortran/expr.c:2515
#, gcc-internal-format, gfc-internal-format
msgid ""
"Assumed size array '%s' at %L is not permitted in an initialization "
"expression"
msgstr ""
-#: fortran/expr.c:2518
+#: fortran/expr.c:2521
#, gcc-internal-format, gfc-internal-format
msgid ""
"Assumed shape array '%s' at %L is not permitted in an initialization "
"expression"
msgstr ""
-#: fortran/expr.c:2524
+#: fortran/expr.c:2527
#, gcc-internal-format, gfc-internal-format
msgid ""
"Deferred array '%s' at %L is not permitted in an initialization expression"
msgstr ""
-#: fortran/expr.c:2530
+#: fortran/expr.c:2533
#, gcc-internal-format, gfc-internal-format
msgid ""
"Array '%s' at %L is a variable, which does not reduce to a constant "
"expression"
msgstr ""
-#: fortran/expr.c:2540
+#: fortran/expr.c:2543
#, gcc-internal-format, gfc-internal-format
msgid ""
"Parameter '%s' at %L has not been declared or is a variable, which does not "
"reduce to a constant expression"
msgstr ""
-#: fortran/expr.c:2693
+#: fortran/expr.c:2696
#, gcc-internal-format, gfc-internal-format
msgid "Specification function '%s' at %L cannot be a statement function"
msgstr ""
-#: fortran/expr.c:2700
+#: fortran/expr.c:2703
#, gcc-internal-format, gfc-internal-format
msgid "Specification function '%s' at %L cannot be an internal function"
msgstr ""
-#: fortran/expr.c:2707
+#: fortran/expr.c:2710
#, gcc-internal-format, gfc-internal-format
msgid "Specification function '%s' at %L must be PURE"
msgstr ""
-#: fortran/expr.c:2714
+#: fortran/expr.c:2717
#, gcc-internal-format, gfc-internal-format
msgid "Specification function '%s' at %L cannot be RECURSIVE"
msgstr ""
-#: fortran/expr.c:2848
+#: fortran/expr.c:2851
#, gcc-internal-format, gfc-internal-format
msgid "Dummy argument '%s' not allowed in expression at %L"
msgstr ""
-#: fortran/expr.c:2855
+#: fortran/expr.c:2858
#, gcc-internal-format, gfc-internal-format
msgid "Dummy argument '%s' at %L cannot be OPTIONAL"
msgstr ""
-#: fortran/expr.c:2862
+#: fortran/expr.c:2865
#, gcc-internal-format, gfc-internal-format
msgid "Dummy argument '%s' at %L cannot be INTENT(OUT)"
msgstr ""
-#: fortran/expr.c:2893
+#: fortran/expr.c:2896
#, gcc-internal-format, gfc-internal-format
msgid "Variable '%s' cannot appear in the expression at %L"
msgstr ""
-#: fortran/expr.c:2944
+#: fortran/expr.c:2947
#, gcc-internal-format, gfc-internal-format
msgid "Expression at %L must be of INTEGER type, found %s"
msgstr ""
-#: fortran/expr.c:2956
+#: fortran/expr.c:2959
#, gcc-internal-format, gfc-internal-format
msgid "Function '%s' at %L must be PURE"
msgstr ""
-#: fortran/expr.c:2965
+#: fortran/expr.c:2968
#, gcc-internal-format, gfc-internal-format
msgid "Expression at %L must be scalar"
msgstr ""
-#: fortran/expr.c:2999
+#: fortran/expr.c:3002
#, gcc-internal-format, gfc-internal-format
msgid "Incompatible ranks in %s (%d and %d) at %L"
msgstr ""
-#: fortran/expr.c:3013
+#: fortran/expr.c:3016
#, gcc-internal-format, gfc-internal-format
msgid "Different shape for %s at %L on dimension %d (%d and %d)"
msgstr ""
-#: fortran/expr.c:3102
+#: fortran/expr.c:3105
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L is not a VALUE"
msgstr ""
-#: fortran/expr.c:3109
+#: fortran/expr.c:3112
#, gcc-internal-format, gfc-internal-format
msgid "Incompatible ranks %d and %d in assignment at %L"
msgstr ""
-#: fortran/expr.c:3116
+#: fortran/expr.c:3119
#, gcc-internal-format, gfc-internal-format
msgid "Variable type is UNKNOWN in assignment at %L"
msgstr ""
-#: fortran/expr.c:3128
+#: fortran/expr.c:3131
#, gcc-internal-format, gfc-internal-format
msgid "NULL appears on right-hand side in assignment at %L"
msgstr ""
-#: fortran/expr.c:3138
+#: fortran/expr.c:3141
#, gcc-internal-format, gfc-internal-format
msgid "POINTER valued function appears on right-hand side of assignment at %L"
msgstr ""
-#: fortran/expr.c:3148
+#: fortran/expr.c:3151
#, gcc-internal-format, gfc-internal-format
msgid ""
"Extension: BOZ literal at %L used to initialize non-integer variable '%s'"
msgstr ""
-#: fortran/expr.c:3154 fortran/resolve.c:8782
+#: fortran/expr.c:3157 fortran/resolve.c:8891
#, gcc-internal-format, gfc-internal-format
msgid ""
"Extension: BOZ literal at %L outside a DATA statement and outside INT/REAL/"
"DBLE/CMPLX"
msgstr ""
-#: fortran/expr.c:3164 fortran/resolve.c:8792
+#: fortran/expr.c:3167 fortran/resolve.c:8901
#, gcc-internal-format, gfc-internal-format
msgid "BOZ literal at %L is bitwise transferred non-integer symbol '%s'"
msgstr ""
-#: fortran/expr.c:3172 fortran/resolve.c:8801
+#: fortran/expr.c:3175 fortran/resolve.c:8910
#, gcc-internal-format, gfc-internal-format
msgid ""
"Arithmetic underflow of bit-wise transferred BOZ at %L. This check can be "
"disabled with the option -fno-range-check"
msgstr ""
-#: fortran/expr.c:3176 fortran/resolve.c:8805
+#: fortran/expr.c:3179 fortran/resolve.c:8914
#, gcc-internal-format, gfc-internal-format
msgid ""
"Arithmetic overflow of bit-wise transferred BOZ at %L. This check can be "
"disabled with the option -fno-range-check"
msgstr ""
-#: fortran/expr.c:3180 fortran/resolve.c:8809
+#: fortran/expr.c:3183 fortran/resolve.c:8918
#, gcc-internal-format, gfc-internal-format
msgid ""
"Arithmetic NaN of bit-wise transferred BOZ at %L. This check can be disabled "
"with the option -fno-range-check"
msgstr ""
-#: fortran/expr.c:3202
+#: fortran/expr.c:3205
#, gcc-internal-format, gfc-internal-format
msgid ""
"Incompatible types in DATA statement at %L; attempted conversion of %s to %s"
msgstr ""
-#: fortran/expr.c:3238
+#: fortran/expr.c:3241
#, gcc-internal-format, gfc-internal-format
msgid "Pointer assignment target is not a POINTER at %L"
msgstr ""
-#: fortran/expr.c:3247
+#: fortran/expr.c:3250
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' in the pointer assignment at %L cannot be an l-value since it is a "
"procedure"
msgstr ""
-#: fortran/expr.c:3270
+#: fortran/expr.c:3273
#, gcc-internal-format, gfc-internal-format
msgid "Expected bounds specification for '%s' at %L"
msgstr ""
-#: fortran/expr.c:3275
+#: fortran/expr.c:3278
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Bounds specification for '%s' in pointer assignment at %L"
msgstr ""
-#: fortran/expr.c:3288
+#: fortran/expr.c:3291
#, gcc-internal-format, gfc-internal-format
msgid "Lower bound has to be present at %L"
msgstr ""
-#: fortran/expr.c:3294
+#: fortran/expr.c:3297
#, gcc-internal-format, gfc-internal-format
msgid "Stride must not be present at %L"
msgstr ""
-#: fortran/expr.c:3306
+#: fortran/expr.c:3309
#, gcc-internal-format, gfc-internal-format
msgid "Either all or none of the upper bounds must be specified at %L"
msgstr ""
-#: fortran/expr.c:3332
+#: fortran/expr.c:3335
#, gcc-internal-format, gfc-internal-format
msgid "Pointer object at %L shall not have a coindex"
msgstr ""
-#: fortran/expr.c:3353
+#: fortran/expr.c:3356
#, gcc-internal-format, gfc-internal-format
msgid "Invalid procedure pointer assignment at %L"
msgstr ""
-#: fortran/expr.c:3359
+#: fortran/expr.c:3362
#, gcc-internal-format, gfc-internal-format
msgid ""
"Abstract interface '%s' is invalid in procedure pointer assignment at %L"
msgstr ""
-#: fortran/expr.c:3369
+#: fortran/expr.c:3372
#, gcc-internal-format, gfc-internal-format
msgid ""
"Statement function '%s' is invalid in procedure pointer assignment at %L"
msgstr ""
-#: fortran/expr.c:3375
+#: fortran/expr.c:3378
#, gcc-internal-format, gfc-internal-format
msgid ""
"Internal procedure '%s' is invalid in procedure pointer assignment at %L"
msgstr ""
-#: fortran/expr.c:3398
+#: fortran/expr.c:3401
#, gcc-internal-format, gfc-internal-format
msgid ""
"Mismatch in the procedure pointer assignment at %L: mismatch in the calling "
"convention"
msgstr ""
-#: fortran/expr.c:3429
+#: fortran/expr.c:3432
#, gcc-internal-format, gfc-internal-format
msgid "Interface mismatch in procedure pointer assignment at %L: %s"
msgstr ""
-#: fortran/expr.c:3439
+#: fortran/expr.c:3442
#, gcc-internal-format, gfc-internal-format
msgid ""
"Different types in pointer assignment at %L; attempted assignment of %s to %s"
msgstr ""
-#: fortran/expr.c:3447
+#: fortran/expr.c:3450
#, gcc-internal-format, gfc-internal-format
msgid "Different kind type parameters in pointer assignment at %L"
msgstr ""
-#: fortran/expr.c:3454
+#: fortran/expr.c:3457
#, gcc-internal-format, gfc-internal-format
msgid "Different ranks in pointer assignment at %L"
msgstr ""
-#: fortran/expr.c:3473
+#: fortran/expr.c:3476
#, gcc-internal-format, gfc-internal-format
msgid ""
"Rank remapping target is smaller than size of the pointer (%ld < %ld) at %L"
msgstr ""
-#: fortran/expr.c:3486
+#: fortran/expr.c:3489
#, gcc-internal-format, gfc-internal-format
msgid "Rank remapping target must be rank 1 or simply contiguous at %L"
msgstr ""
-#: fortran/expr.c:3490
+#: fortran/expr.c:3493
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Rank remapping target is not rank 1 at %L"
msgstr ""
-#: fortran/expr.c:3515
+#: fortran/expr.c:3518
#, gcc-internal-format, gfc-internal-format
msgid ""
"Target expression in pointer assignment at %L must deliver a pointer result"
msgstr ""
-#: fortran/expr.c:3523
+#: fortran/expr.c:3526
#, gcc-internal-format, gfc-internal-format
msgid "Pointer assignment target is neither TARGET nor POINTER at %L"
msgstr ""
-#: fortran/expr.c:3530
+#: fortran/expr.c:3533
#, gcc-internal-format, gfc-internal-format
msgid "Bad target in pointer assignment in PURE procedure at %L"
msgstr ""
-#: fortran/expr.c:3540
+#: fortran/expr.c:3543
#, gcc-internal-format, gfc-internal-format
msgid "Pointer assignment with vector subscript on rhs at %L"
msgstr ""
-#: fortran/expr.c:3548
+#: fortran/expr.c:3551
#, gcc-internal-format, gfc-internal-format
msgid "Pointer assignment target has PROTECTED attribute at %L"
msgstr ""
-#: fortran/expr.c:3561
+#: fortran/expr.c:3564
#, gcc-internal-format, gfc-internal-format
msgid "Data target at %L shall not have a coindex"
msgstr ""
-#: fortran/expr.c:3609
+#: fortran/expr.c:3612
#, gcc-internal-format, gfc-internal-format
msgid "Pointer initialization target at %C must not be ALLOCATABLE "
msgstr ""
-#: fortran/expr.c:3615
+#: fortran/expr.c:3618
#, gcc-internal-format, gfc-internal-format
msgid "Pointer initialization target at %C must have the TARGET attribute"
msgstr ""
-#: fortran/expr.c:3621
+#: fortran/expr.c:3624
#, gcc-internal-format, gfc-internal-format
msgid "Pointer initialization target at %C must have the SAVE attribute"
msgstr ""
-#: fortran/expr.c:3633
+#: fortran/expr.c:3636
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure pointer initialization target at %L may not be a procedure pointer"
msgstr ""
-#: fortran/expr.c:4383
+#: fortran/expr.c:4403
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2008: Pointer functions in variable definition context (%s) at %L"
msgstr ""
-#: fortran/expr.c:4391
+#: fortran/expr.c:4411
#, gcc-internal-format, gfc-internal-format
msgid "Non-variable expression in variable definition context (%s) at %L"
msgstr ""
-#: fortran/expr.c:4402
+#: fortran/expr.c:4419
#, gcc-internal-format, gfc-internal-format
msgid "Named constant '%s' in variable definition context (%s) at %L"
msgstr ""
-#: fortran/expr.c:4411
+#: fortran/expr.c:4428
#, gcc-internal-format, gfc-internal-format
msgid "'%s' in variable definition context (%s) at %L is not a variable"
msgstr ""
-#: fortran/expr.c:4423
+#: fortran/expr.c:4440
#, gcc-internal-format, gfc-internal-format
msgid "Non-POINTER in pointer association context (%s) at %L"
msgstr ""
-#: fortran/expr.c:4445
+#: fortran/expr.c:4453
+#, gcc-internal-format, gfc-internal-format
+msgid "LOCK_TYPE in variable definition context (%s) at %L"
+msgstr ""
+
+#: fortran/expr.c:4475
#, gcc-internal-format, gfc-internal-format
msgid ""
"Dummy argument '%s' with INTENT(IN) in pointer association context (%s) at %L"
msgstr ""
-#: fortran/expr.c:4453
+#: fortran/expr.c:4483
#, gcc-internal-format, gfc-internal-format
msgid ""
"Dummy argument '%s' with INTENT(IN) in variable definition context (%s) at %L"
msgstr ""
-#: fortran/expr.c:4466
+#: fortran/expr.c:4496
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' is PROTECTED and can not appear in a pointer association "
"context (%s) at %L"
msgstr ""
-#: fortran/expr.c:4474
+#: fortran/expr.c:4504
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' is PROTECTED and can not appear in a variable definition "
"context (%s) at %L"
msgstr ""
-#: fortran/expr.c:4486
+#: fortran/expr.c:4516
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' can not appear in a variable definition context (%s) at %L in "
"PURE procedure"
msgstr ""
-#: fortran/expr.c:4530
+#: fortran/expr.c:4560
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L associated to vector-indexed target can not be used in a variable "
"definition context (%s)"
msgstr ""
-#: fortran/expr.c:4534
+#: fortran/expr.c:4564
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L associated to expression can not be used in a variable definition "
"context (%s)"
msgstr ""
-#: fortran/expr.c:4545
+#: fortran/expr.c:4576
#, gcc-internal-format, gfc-internal-format
msgid ""
"Associate-name '%s' can not appear in a variable definition context (%s) at "
@@ -36062,6 +36580,18 @@
msgid "can't open input file: %s"
msgstr ""
+#: fortran/frontend-passes.c:306 fortran/trans-array.c:789
+#: fortran/trans-array.c:5068 fortran/trans-array.c:6295
+#: fortran/trans-intrinsic.c:5311
+#, gcc-internal-format, gfc-internal-format
+msgid "Creating array temporary at %L"
+msgstr ""
+
+#: fortran/frontend-passes.c:329 fortran/frontend-passes.c:332
+#, gcc-internal-format, gfc-internal-format
+msgid "Removing call to function '%s' at %L"
+msgstr ""
+
#: fortran/gfortranspec.c:170
#, gcc-internal-format
msgid "overflowed output arg list for %qs"
@@ -36171,12 +36701,12 @@
msgid "Second argument of defined assignment at %L must be INTENT(IN)"
msgstr ""
-#: fortran/interface.c:703 fortran/resolve.c:13416
+#: fortran/interface.c:703 fortran/resolve.c:13559
#, gcc-internal-format, gfc-internal-format
msgid "First argument of operator interface at %L must be INTENT(IN)"
msgstr ""
-#: fortran/interface.c:710 fortran/resolve.c:13434
+#: fortran/interface.c:710 fortran/resolve.c:13577
#, gcc-internal-format, gfc-internal-format
msgid "Second argument of operator interface at %L must be INTENT(IN)"
msgstr ""
@@ -36201,96 +36731,108 @@
msgid "In %s at %L procedures must be either all SUBROUTINEs or all FUNCTIONs"
msgstr ""
-#: fortran/interface.c:1182 fortran/interface.c:1186
+#: fortran/interface.c:1133
+#, gcc-internal-format, gfc-internal-format
+msgid "Extension: Internal procedure '%s' in %s at %L"
+msgstr ""
+
+#: fortran/interface.c:1188 fortran/interface.c:1192
#, gcc-internal-format, gfc-internal-format
msgid "Ambiguous interfaces '%s' and '%s' in %s at %L"
msgstr ""
-#: fortran/interface.c:1190
+#: fortran/interface.c:1196
#, gcc-internal-format, gfc-internal-format
msgid "Although not referenced, '%s' has ambiguous interfaces at %L"
msgstr ""
-#: fortran/interface.c:1224
+#: fortran/interface.c:1230
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L is not a module procedure"
msgstr ""
-#: fortran/interface.c:1439
+#: fortran/interface.c:1437
#, gcc-internal-format, gfc-internal-format
msgid "Rank mismatch in argument '%s' at %L (scalar and rank-%d)"
msgstr ""
-#: fortran/interface.c:1444
+#: fortran/interface.c:1442
#, gcc-internal-format, gfc-internal-format
msgid "Rank mismatch in argument '%s' at %L (rank-%d and scalar)"
msgstr ""
-#: fortran/interface.c:1449
+#: fortran/interface.c:1447
#, gcc-internal-format, gfc-internal-format
msgid "Rank mismatch in argument '%s' at %L (rank-%d and rank-%d)"
msgstr ""
-#: fortran/interface.c:1491
+#: fortran/interface.c:1489
#, gcc-internal-format, gfc-internal-format
msgid "Invalid procedure argument at %L"
msgstr ""
-#: fortran/interface.c:1499
+#: fortran/interface.c:1497
#, gcc-internal-format, gfc-internal-format
msgid "Interface mismatch in dummy procedure '%s' at %L: %s"
msgstr ""
-#: fortran/interface.c:1524
+#: fortran/interface.c:1522
#, gcc-internal-format, gfc-internal-format
msgid ""
"Actual argument to contiguous pointer dummy '%s' at %L must be simply "
"contigous"
msgstr ""
-#: fortran/interface.c:1534
+#: fortran/interface.c:1532
#, gcc-internal-format, gfc-internal-format
msgid "Type mismatch in argument '%s' at %L; passed %s to %s"
msgstr ""
-#: fortran/interface.c:1548
+#: fortran/interface.c:1546
#, gcc-internal-format, gfc-internal-format
msgid "Actual argument to '%s' at %L must be polymorphic"
msgstr ""
-#: fortran/interface.c:1556
+#: fortran/interface.c:1554
#, gcc-internal-format, gfc-internal-format
msgid "Actual argument to '%s' at %L must have the same declared type"
msgstr ""
-#: fortran/interface.c:1571 fortran/interface.c:1601
+#: fortran/interface.c:1568
#, gcc-internal-format, gfc-internal-format
msgid "Actual argument to '%s' at %L must be a coarray"
msgstr ""
-#: fortran/interface.c:1581
+#: fortran/interface.c:1576
#, gcc-internal-format, gfc-internal-format
msgid "Actual argument to '%s' at %L must be a coarray and not coindexed"
msgstr ""
-#: fortran/interface.c:1589
+#: fortran/interface.c:1587
#, gcc-internal-format, gfc-internal-format
msgid ""
"Actual argument to '%s' at %L must be a coarray and thus shall not have an "
"array designator"
msgstr ""
-#: fortran/interface.c:1613
+#: fortran/interface.c:1603
#, gcc-internal-format, gfc-internal-format
msgid "Corank mismatch in argument '%s' at %L (%d and %d)"
msgstr ""
-#: fortran/interface.c:1626
+#: fortran/interface.c:1617
#, gcc-internal-format, gfc-internal-format
msgid "Actual argument to '%s' at %L must be simply contiguous"
msgstr ""
-#: fortran/interface.c:1642
+#: fortran/interface.c:1631
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Actual argument to non-INTENT(INOUT) dummy '%s' at %L, which is LOCK_TYPE or "
+"has a LOCK_TYPE component"
+msgstr ""
+
+#: fortran/interface.c:1648
#, gcc-internal-format, gfc-internal-format
msgid ""
"Dummy argument '%s' has to be a pointer or assumed-shape array without "
@@ -36298,165 +36840,179 @@
"both are ASYNCHRONOUS or VOLATILE"
msgstr ""
-#: fortran/interface.c:1698
+#: fortran/interface.c:1661
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Passing coarray at %L to allocatable, noncoarray, INTENT(OUT) dummy argument "
+"'%s'"
+msgstr ""
+
+#: fortran/interface.c:1668
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Passing coarray at %L to allocatable, noncoarray dummy argument '%s', which "
+"is invalid if the allocation status is modified"
+msgstr ""
+
+#: fortran/interface.c:1722
#, gcc-internal-format, gfc-internal-format
msgid "Polymorphic scalar passed to array dummy argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:1707
+#: fortran/interface.c:1731
#, gcc-internal-format, gfc-internal-format
msgid ""
"Element of assumed-shaped or pointer array passed to array dummy argument "
"'%s' at %L"
msgstr ""
-#: fortran/interface.c:1719
+#: fortran/interface.c:1743
#, gcc-internal-format, gfc-internal-format
msgid ""
"Extension: Scalar non-default-kind, non-C_CHAR-kind CHARACTER actual "
"argument with array dummy argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:1727
+#: fortran/interface.c:1751
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: Scalar CHARACTER actual argument with array dummy argument "
"'%s' at %L"
msgstr ""
-#: fortran/interface.c:2026
+#: fortran/interface.c:2050
#, gcc-internal-format, gfc-internal-format
msgid "Keyword argument '%s' at %L is not in the procedure"
msgstr ""
-#: fortran/interface.c:2034
+#: fortran/interface.c:2058
#, gcc-internal-format, gfc-internal-format
msgid ""
"Keyword argument '%s' at %L is already associated with another actual "
"argument"
msgstr ""
-#: fortran/interface.c:2044
+#: fortran/interface.c:2068
#, gcc-internal-format, gfc-internal-format
msgid "More actual than formal arguments in procedure call at %L"
msgstr ""
-#: fortran/interface.c:2056 fortran/interface.c:2375
+#: fortran/interface.c:2080 fortran/interface.c:2399
#, gcc-internal-format, gfc-internal-format
msgid "Missing alternate return spec in subroutine call at %L"
msgstr ""
-#: fortran/interface.c:2064
+#: fortran/interface.c:2088
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected alternate return spec in subroutine call at %L"
msgstr ""
-#: fortran/interface.c:2074
+#: fortran/interface.c:2098
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected NULL() intrinsic at %L to dummy '%s'"
msgstr ""
-#: fortran/interface.c:2077
+#: fortran/interface.c:2101
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Null pointer at %L to non-pointer dummy '%s'"
msgstr ""
-#: fortran/interface.c:2101
+#: fortran/interface.c:2125
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character length mismatch (%ld/%ld) between actual argument and pointer or "
"allocatable dummy argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:2108
+#: fortran/interface.c:2132
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character length mismatch (%ld/%ld) between actual argument and assumed-"
"shape dummy argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:2122
+#: fortran/interface.c:2146
#, gcc-internal-format, gfc-internal-format
msgid ""
"Actual argument argument at %L to allocatable or pointer dummy argument '%s' "
"must have a deferred length type parameter if and only if the dummy has one"
msgstr ""
-#: fortran/interface.c:2136
+#: fortran/interface.c:2160
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character length of actual argument shorter than of dummy argument '%s' (%lu/"
"%lu) at %L"
msgstr ""
-#: fortran/interface.c:2141
+#: fortran/interface.c:2165
#, gcc-internal-format, gfc-internal-format
msgid ""
"Actual argument contains too few elements for dummy argument '%s' (%lu/%lu) "
"at %L"
msgstr ""
-#: fortran/interface.c:2158
+#: fortran/interface.c:2182
#, gcc-internal-format, gfc-internal-format
msgid "Expected a procedure pointer for argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:2170
+#: fortran/interface.c:2194
#, gcc-internal-format, gfc-internal-format
msgid "Expected a procedure for argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:2180
+#: fortran/interface.c:2204
#, gcc-internal-format, gfc-internal-format
msgid "Expected a PURE procedure for argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:2194
+#: fortran/interface.c:2218
#, gcc-internal-format, gfc-internal-format
msgid "Actual argument for '%s' cannot be an assumed-size array at %L"
msgstr ""
-#: fortran/interface.c:2203
+#: fortran/interface.c:2227
#, gcc-internal-format, gfc-internal-format
msgid "Actual argument for '%s' must be a pointer at %L"
msgstr ""
-#: fortran/interface.c:2213
+#: fortran/interface.c:2237
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Non-pointer actual argument at %L to pointer dummy '%s'"
msgstr ""
-#: fortran/interface.c:2223
+#: fortran/interface.c:2247
#, gcc-internal-format, gfc-internal-format
msgid "Coindexed actual argument at %L to pointer dummy '%s'"
msgstr ""
-#: fortran/interface.c:2236
+#: fortran/interface.c:2260
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed actual argument at %L to allocatable dummy '%s' requires INTENT(IN)"
msgstr ""
-#: fortran/interface.c:2250
+#: fortran/interface.c:2274
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed ASYNCHRONOUS or VOLATILE actual argument at at %L requires that "
"dummy %s' has neither ASYNCHRONOUS nor VOLATILE"
msgstr ""
-#: fortran/interface.c:2264
+#: fortran/interface.c:2288
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed actual argument at %L with allocatable ultimate component to dummy "
"'%s' requires either VALUE or INTENT(IN)"
msgstr ""
-#: fortran/interface.c:2274
+#: fortran/interface.c:2298
#, gcc-internal-format, gfc-internal-format
msgid "Actual argument for '%s' must be ALLOCATABLE at %L"
msgstr ""
-#: fortran/interface.c:2303
+#: fortran/interface.c:2327
#, gcc-internal-format, gfc-internal-format
msgid ""
"Array-section actual argument with vector subscripts at %L is incompatible "
@@ -36464,129 +37020,136 @@
"dummy argument '%s'"
msgstr ""
-#: fortran/interface.c:2321
+#: fortran/interface.c:2345
#, gcc-internal-format, gfc-internal-format
msgid ""
"Assumed-shape actual argument at %L is incompatible with the non-assumed-"
"shape dummy argument '%s' due to VOLATILE attribute"
msgstr ""
-#: fortran/interface.c:2333
+#: fortran/interface.c:2357
#, gcc-internal-format, gfc-internal-format
msgid ""
"Array-section actual argument at %L is incompatible with the non-assumed-"
"shape dummy argument '%s' due to VOLATILE attribute"
msgstr ""
-#: fortran/interface.c:2352
+#: fortran/interface.c:2376
#, gcc-internal-format, gfc-internal-format
msgid ""
"Pointer-array actual argument at %L requires an assumed-shape or pointer-"
"array dummy argument '%s' due to VOLATILE attribute"
msgstr ""
-#: fortran/interface.c:2382
+#: fortran/interface.c:2406
#, gcc-internal-format, gfc-internal-format
msgid "Missing actual argument for argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:2568
+#: fortran/interface.c:2592
#, gcc-internal-format, gfc-internal-format
msgid ""
"Same actual argument associated with INTENT(%s) argument '%s' and INTENT(%s) "
"argument '%s' at %L"
msgstr ""
-#: fortran/interface.c:2624
+#: fortran/interface.c:2648
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure argument at %L is INTENT(IN) while interface specifies INTENT(%s)"
msgstr ""
-#: fortran/interface.c:2634
+#: fortran/interface.c:2658
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure argument at %L is local to a PURE procedure and is passed to an "
"INTENT(%s) argument"
msgstr ""
-#: fortran/interface.c:2642
+#: fortran/interface.c:2666
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure argument at %L is local to a PURE procedure and has the POINTER "
"attribute"
msgstr ""
-#: fortran/interface.c:2654
+#: fortran/interface.c:2678
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed actual argument at %L in PURE procedure is passed to an INTENT(%s) "
"argument"
msgstr ""
-#: fortran/interface.c:2662
+#: fortran/interface.c:2686
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed actual argument at %L in PURE procedure is passed to a POINTER "
"dummy argument"
msgstr ""
-#: fortran/interface.c:2673
+#: fortran/interface.c:2697
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed polymorphic actual argument at %L is passed polymorphic dummy "
"argument '%s'"
msgstr ""
-#: fortran/interface.c:2699
+#: fortran/interface.c:2723
#, gcc-internal-format, gfc-internal-format
msgid "Procedure '%s' called with an implicit interface at %L"
msgstr ""
-#: fortran/interface.c:2703
+#: fortran/interface.c:2727
#, gcc-internal-format, gfc-internal-format
msgid "Procedure '%s' called at %L is not explicitly declared"
msgstr ""
-#: fortran/interface.c:2713
+#: fortran/interface.c:2737
#, gcc-internal-format, gfc-internal-format
msgid ""
"The pointer object '%s' at %L must have an explicit function interface or be "
"declared as array"
msgstr ""
-#: fortran/interface.c:2721
+#: fortran/interface.c:2745
#, gcc-internal-format, gfc-internal-format
msgid ""
"The allocatable object '%s' at %L must have an explicit function interface "
"or be declared as array"
msgstr ""
-#: fortran/interface.c:2729
+#: fortran/interface.c:2753
#, gcc-internal-format, gfc-internal-format
msgid ""
"Allocatable function '%s' at %L must have an explicit function interface"
msgstr ""
-#: fortran/interface.c:2739
+#: fortran/interface.c:2763
#, gcc-internal-format, gfc-internal-format
msgid "Keyword argument requires explicit interface for procedure '%s' at %L"
msgstr ""
-#: fortran/interface.c:2771
+#: fortran/interface.c:2775
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"Actual argument of LOCK_TYPE or with LOCK_TYPE component at %L requires an "
+"explicit interface for procedure '%s'"
+msgstr ""
+
+#: fortran/interface.c:2808
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure pointer component '%s' called with an implicit interface at %L"
msgstr ""
-#: fortran/interface.c:2782
+#: fortran/interface.c:2819
#, gcc-internal-format, gfc-internal-format
msgid ""
"Keyword argument requires explicit interface for procedure pointer component "
"'%s' at %L"
msgstr ""
-#: fortran/interface.c:3274
+#: fortran/interface.c:3311
#, gcc-internal-format, gfc-internal-format
msgid "Entity '%s' at %C is already present in the interface"
msgstr ""
@@ -36599,100 +37162,100 @@
"option or define -fall-intrinsics to allow this intrinsic."
msgstr ""
-#: fortran/intrinsic.c:3500
+#: fortran/intrinsic.c:3518
#, gcc-internal-format, gfc-internal-format
msgid "Too many arguments in call to '%s' at %L"
msgstr ""
-#: fortran/intrinsic.c:3515
+#: fortran/intrinsic.c:3533
#, gcc-internal-format, gfc-internal-format
msgid ""
"The argument list functions %%VAL, %%LOC or %%REF are not allowed in this "
"context at %L"
msgstr ""
-#: fortran/intrinsic.c:3518
+#: fortran/intrinsic.c:3536
#, gcc-internal-format, gfc-internal-format
msgid "Can't find keyword named '%s' in call to '%s' at %L"
msgstr ""
-#: fortran/intrinsic.c:3525
+#: fortran/intrinsic.c:3543
#, gcc-internal-format, gfc-internal-format
msgid "Argument '%s' appears twice in call to '%s' at %L"
msgstr ""
-#: fortran/intrinsic.c:3539
+#: fortran/intrinsic.c:3557
#, gcc-internal-format, gfc-internal-format
msgid "Missing actual argument '%s' in call to '%s' at %L"
msgstr ""
-#: fortran/intrinsic.c:3554
+#: fortran/intrinsic.c:3572
#, gcc-internal-format, gfc-internal-format
msgid "ALTERNATE RETURN not permitted at %L"
msgstr ""
-#: fortran/intrinsic.c:3611
+#: fortran/intrinsic.c:3629
#, gcc-internal-format, gfc-internal-format
msgid "Type of argument '%s' in call to '%s' at %L should be %s, not %s"
msgstr ""
-#: fortran/intrinsic.c:3992
+#: fortran/intrinsic.c:4014
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic '%s' (is %s) is used at %L"
msgstr ""
-#: fortran/intrinsic.c:4063
+#: fortran/intrinsic.c:4085
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Function '%s' as initialization expression at %L"
msgstr ""
-#: fortran/intrinsic.c:4139
+#: fortran/intrinsic.c:4161
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: Elemental function as initialization expression with non-"
"integer/non-character arguments at %L"
msgstr ""
-#: fortran/intrinsic.c:4200
+#: fortran/intrinsic.c:4222
#, gcc-internal-format, gfc-internal-format
msgid "Subroutine call to intrinsic '%s' at %L is not PURE"
msgstr ""
-#: fortran/intrinsic.c:4273
+#: fortran/intrinsic.c:4295
#, gcc-internal-format, gfc-internal-format
msgid "Extension: Conversion from %s to %s at %L"
msgstr ""
-#: fortran/intrinsic.c:4308 fortran/intrinsic.c:4334
+#: fortran/intrinsic.c:4330 fortran/intrinsic.c:4356
#, gcc-internal-format, gfc-internal-format
msgid "Conversion from %s to %s at %L"
msgstr ""
-#: fortran/intrinsic.c:4313 fortran/intrinsic.c:4325
+#: fortran/intrinsic.c:4335 fortran/intrinsic.c:4347
#, gcc-internal-format, gfc-internal-format
msgid "Possible change of value in conversion from %s to %s at %L"
msgstr ""
-#: fortran/intrinsic.c:4387
+#: fortran/intrinsic.c:4409
#, gcc-internal-format, gfc-internal-format
msgid "Can't convert %s to %s at %L"
msgstr ""
-#: fortran/intrinsic.c:4481
+#: fortran/intrinsic.c:4503
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' declared at %L may shadow the intrinsic of the same name. In order to "
"call the intrinsic, explicit INTRINSIC declarations may be required."
msgstr ""
-#: fortran/intrinsic.c:4486
+#: fortran/intrinsic.c:4508
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' declared at %L is also the name of an intrinsic. It can only be called "
"via an explicit interface or if declared EXTERNAL."
msgstr ""
-#: fortran/io.c:168 fortran/primary.c:781
+#: fortran/io.c:168 fortran/primary.c:816
#, gcc-internal-format, gfc-internal-format
msgid "Extension: backslash character at %C"
msgstr ""
@@ -36813,353 +37376,358 @@
"Constant expression in FORMAT tag at %L must be of type default CHARACTER"
msgstr ""
-#: fortran/io.c:1399
+#: fortran/io.c:1401
#, gcc-internal-format, gfc-internal-format
-msgid "FORMAT tag at %L must be of type CHARACTER or INTEGER"
+msgid "FORMAT tag at %L must be of type default-kind CHARACTER or of INTEGER"
msgstr ""
-#: fortran/io.c:1405
+#: fortran/io.c:1407
#, gcc-internal-format, gfc-internal-format
msgid "Deleted feature: ASSIGNED variable in FORMAT tag at %L"
msgstr ""
-#: fortran/io.c:1411
+#: fortran/io.c:1413
#, gcc-internal-format, gfc-internal-format
msgid "Variable '%s' at %L has not been assigned a format label"
msgstr ""
-#: fortran/io.c:1418
+#: fortran/io.c:1420
#, gcc-internal-format, gfc-internal-format
msgid "Scalar '%s' in FORMAT tag at %L is not an ASSIGNED variable"
msgstr ""
-#: fortran/io.c:1430
+#: fortran/io.c:1432
#, gcc-internal-format, gfc-internal-format
msgid "Extension: Non-character in FORMAT tag at %L"
msgstr ""
-#: fortran/io.c:1436
+#: fortran/io.c:1438
#, gcc-internal-format, gfc-internal-format
msgid "Non-character assumed shape array element in FORMAT tag at %L"
msgstr ""
-#: fortran/io.c:1443
+#: fortran/io.c:1445
#, gcc-internal-format, gfc-internal-format
msgid "Non-character assumed size array element in FORMAT tag at %L"
msgstr ""
-#: fortran/io.c:1450
+#: fortran/io.c:1452
#, gcc-internal-format, gfc-internal-format
msgid "Non-character pointer array element in FORMAT tag at %L"
msgstr ""
-#: fortran/io.c:1476
+#: fortran/io.c:1478
#, gcc-internal-format, gfc-internal-format
msgid "%s tag at %L must be of type %s"
msgstr ""
-#: fortran/io.c:1483
+#: fortran/io.c:1485
+#, gcc-internal-format, gfc-internal-format
+msgid "%s tag at %L must be a character string of default kind"
+msgstr ""
+
+#: fortran/io.c:1492
#, gcc-internal-format, gfc-internal-format
msgid "%s tag at %L must be scalar"
msgstr ""
-#: fortran/io.c:1489
+#: fortran/io.c:1498
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: IOMSG tag at %L"
msgstr ""
-#: fortran/io.c:1497
+#: fortran/io.c:1506
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 95 requires default INTEGER in %s tag at %L"
msgstr ""
-#: fortran/io.c:1505
+#: fortran/io.c:1514
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Nondefault LOGICAL in %s tag at %L"
msgstr ""
-#: fortran/io.c:1513
+#: fortran/io.c:1522
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: NEWUNIT specifier at %L"
msgstr ""
-#: fortran/io.c:1531
+#: fortran/io.c:1540
#, gcc-internal-format, gfc-internal-format
msgid "Extension: CONVERT tag at %L"
msgstr ""
-#: fortran/io.c:1717 fortran/io.c:1725
+#: fortran/io.c:1726 fortran/io.c:1734
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: %s specifier in %s statement at %C has value '%s'"
msgstr ""
-#: fortran/io.c:1744 fortran/io.c:1752
+#: fortran/io.c:1753 fortran/io.c:1761
#, gcc-internal-format, gfc-internal-format
msgid "Extension: %s specifier in %s statement at %C has value '%s'"
msgstr ""
-#: fortran/io.c:1765 fortran/io.c:1773
+#: fortran/io.c:1774 fortran/io.c:1782
#, gcc-internal-format, gfc-internal-format
msgid "%s specifier in %s statement at %C has invalid value '%s'"
msgstr ""
-#: fortran/io.c:1826
+#: fortran/io.c:1835
#, gcc-internal-format, gfc-internal-format
msgid "OPEN statement not allowed in PURE procedure at %C"
msgstr ""
-#: fortran/io.c:1840
+#: fortran/io.c:1849
#, gcc-internal-format, gfc-internal-format
msgid "UNIT specifier not allowed with NEWUNIT at %C"
msgstr ""
-#: fortran/io.c:1848
+#: fortran/io.c:1857
#, gcc-internal-format, gfc-internal-format
msgid "NEWUNIT specifier must have FILE= or STATUS='scratch' at %C"
msgstr ""
-#: fortran/io.c:1855
+#: fortran/io.c:1864
#, gcc-internal-format, gfc-internal-format
msgid "OPEN statement at %C must have UNIT or NEWUNIT specified"
msgstr ""
-#: fortran/io.c:1887
+#: fortran/io.c:1896
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ASYNCHRONOUS= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:1905 fortran/io.c:3326
+#: fortran/io.c:1914 fortran/io.c:3335
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: BLANK= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:1923 fortran/io.c:3305
+#: fortran/io.c:1932 fortran/io.c:3314
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: DECIMAL= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:1941 fortran/io.c:3413
+#: fortran/io.c:1950 fortran/io.c:3422
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: DELIM= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:1959
+#: fortran/io.c:1968
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ENCODING= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:2010
+#: fortran/io.c:2019
#, gcc-internal-format, gfc-internal-format
msgid "Fortran F2003: ROUND= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:2030
+#: fortran/io.c:2039
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: SIGN= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:2243
+#: fortran/io.c:2252
#, gcc-internal-format, gfc-internal-format
msgid "CLOSE statement not allowed in PURE procedure at %C"
msgstr ""
-#: fortran/io.c:2293
+#: fortran/io.c:2302
#, gcc-internal-format, gfc-internal-format
msgid "UNIT number in CLOSE statement at %L must be non-negative"
msgstr ""
-#: fortran/io.c:2391 fortran/match.c:2190
+#: fortran/io.c:2400 fortran/match.c:2192
#, gcc-internal-format, gfc-internal-format
msgid "%s statement not allowed in PURE procedure at %C"
msgstr ""
-#: fortran/io.c:2426 fortran/io.c:2844
+#: fortran/io.c:2435 fortran/io.c:2853
#, gcc-internal-format, gfc-internal-format
msgid "UNIT number in statement at %L must be non-negative"
msgstr ""
-#: fortran/io.c:2458
+#: fortran/io.c:2467
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: FLUSH statement at %C"
msgstr ""
-#: fortran/io.c:2514
+#: fortran/io.c:2523
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate UNIT specification at %C"
msgstr ""
-#: fortran/io.c:2574
+#: fortran/io.c:2583
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate format specification at %C"
msgstr ""
-#: fortran/io.c:2591
+#: fortran/io.c:2600
#, gcc-internal-format, gfc-internal-format
msgid "Symbol '%s' in namelist '%s' is INTENT(IN) at %C"
msgstr ""
-#: fortran/io.c:2627
+#: fortran/io.c:2636
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate NML specification at %C"
msgstr ""
-#: fortran/io.c:2636
+#: fortran/io.c:2645
#, gcc-internal-format, gfc-internal-format
msgid "Symbol '%s' at %C must be a NAMELIST group name"
msgstr ""
-#: fortran/io.c:2701
+#: fortran/io.c:2710
#, gcc-internal-format, gfc-internal-format
msgid "END tag at %C not allowed in output statement"
msgstr ""
-#: fortran/io.c:2778
+#: fortran/io.c:2787
#, gcc-internal-format, gfc-internal-format
msgid "UNIT not specified at %L"
msgstr ""
-#: fortran/io.c:2790
+#: fortran/io.c:2799
#, gcc-internal-format, gfc-internal-format
msgid ""
"UNIT specification at %L must be an INTEGER expression or a CHARACTER "
"variable"
msgstr ""
-#: fortran/io.c:2812
+#: fortran/io.c:2821
#, gcc-internal-format, gfc-internal-format
msgid "Invalid form of WRITE statement at %L, UNIT required"
msgstr ""
-#: fortran/io.c:2823
+#: fortran/io.c:2832
#, gcc-internal-format, gfc-internal-format
msgid "Internal unit with vector subscript at %L"
msgstr ""
-#: fortran/io.c:2837
+#: fortran/io.c:2846
#, gcc-internal-format, gfc-internal-format
msgid "External IO UNIT cannot be an array at %L"
msgstr ""
-#: fortran/io.c:2865
+#: fortran/io.c:2874
#, gcc-internal-format, gfc-internal-format
msgid ""
"NAMELIST '%s' in READ statement at %L contains the symbol '%s' which may not "
"appear in a variable definition context"
msgstr ""
-#: fortran/io.c:2875
+#: fortran/io.c:2884
#, gcc-internal-format, gfc-internal-format
msgid "Extension: Comma before i/o item list at %L"
msgstr ""
-#: fortran/io.c:2885
+#: fortran/io.c:2894
#, gcc-internal-format, gfc-internal-format
msgid "ERR tag label %d at %L not defined"
msgstr ""
-#: fortran/io.c:2897
+#: fortran/io.c:2906
#, gcc-internal-format, gfc-internal-format
msgid "END tag label %d at %L not defined"
msgstr ""
-#: fortran/io.c:2909
+#: fortran/io.c:2918
#, gcc-internal-format, gfc-internal-format
msgid "EOR tag label %d at %L not defined"
msgstr ""
-#: fortran/io.c:2919
+#: fortran/io.c:2928
#, gcc-internal-format, gfc-internal-format
msgid "FORMAT label %d at %L not defined"
msgstr ""
-#: fortran/io.c:3041
+#: fortran/io.c:3050
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in I/O iterator at %C"
msgstr ""
-#: fortran/io.c:3072
+#: fortran/io.c:3081
#, gcc-internal-format, gfc-internal-format
msgid "Expected variable in READ statement at %C"
msgstr ""
-#: fortran/io.c:3078
+#: fortran/io.c:3087
#, gcc-internal-format, gfc-internal-format
msgid "Expected expression in %s statement at %C"
msgstr ""
#. A general purpose syntax error.
-#: fortran/io.c:3136 fortran/io.c:3735 fortran/gfortran.h:2437
+#: fortran/io.c:3145 fortran/io.c:3744 fortran/gfortran.h:2442
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in %s statement at %C"
msgstr ""
-#: fortran/io.c:3221
+#: fortran/io.c:3230
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Internal file at %L with namelist"
msgstr ""
-#: fortran/io.c:3279
+#: fortran/io.c:3288
#, gcc-internal-format, gfc-internal-format
msgid "ASYNCHRONOUS= specifier at %L must be an initialization expression"
msgstr ""
-#: fortran/io.c:3347
+#: fortran/io.c:3356
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: PAD= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:3368
+#: fortran/io.c:3377
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ROUND= at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:3562
+#: fortran/io.c:3571
#, gcc-internal-format, gfc-internal-format
msgid "PRINT namelist at %C is an extension"
msgstr ""
-#: fortran/io.c:3705
+#: fortran/io.c:3714
#, gcc-internal-format, gfc-internal-format
msgid "Expected comma in I/O list at %C"
msgstr ""
-#: fortran/io.c:3769
+#: fortran/io.c:3778
#, gcc-internal-format, gfc-internal-format
msgid "PRINT statement at %C not allowed within PURE procedure"
msgstr ""
-#: fortran/io.c:3928 fortran/io.c:3982
+#: fortran/io.c:3937 fortran/io.c:3991
#, gcc-internal-format, gfc-internal-format
msgid "INQUIRE statement not allowed in PURE procedure at %C"
msgstr ""
-#: fortran/io.c:3958
+#: fortran/io.c:3967
#, gcc-internal-format, gfc-internal-format
msgid "IOLENGTH tag invalid in INQUIRE statement at %C"
msgstr ""
-#: fortran/io.c:3968 fortran/trans-io.c:1235
+#: fortran/io.c:3977 fortran/trans-io.c:1229
#, gcc-internal-format, gfc-internal-format
msgid "INQUIRE statement at %L cannot contain both FILE and UNIT specifiers"
msgstr ""
-#: fortran/io.c:3975
+#: fortran/io.c:3984
#, gcc-internal-format, gfc-internal-format
msgid "INQUIRE statement at %L requires either FILE or UNIT specifier"
msgstr ""
-#: fortran/io.c:3991
+#: fortran/io.c:4000
#, gcc-internal-format, gfc-internal-format
msgid ""
"INQUIRE statement at %L requires a PENDING= specifier with the ID= specifier"
msgstr ""
-#: fortran/io.c:4161
+#: fortran/io.c:4171
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: WAIT at %C not allowed in Fortran 95"
msgstr ""
-#: fortran/io.c:4167
+#: fortran/io.c:4177
#, gcc-internal-format, gfc-internal-format
msgid "WAIT statement not allowed in PURE procedure at %C"
msgstr ""
@@ -37179,7 +37747,7 @@
msgid "Integer too large at %C"
msgstr ""
-#: fortran/match.c:459 fortran/parse.c:641
+#: fortran/match.c:459 fortran/parse.c:646
#, gcc-internal-format, gfc-internal-format
msgid "Too many digits in statement label at %C"
msgstr ""
@@ -37270,375 +37838,397 @@
msgid "Block label is not appropriate for IF statement at %C"
msgstr ""
-#: fortran/match.c:1585
+#: fortran/match.c:1587
#, gcc-internal-format, gfc-internal-format
msgid "Cannot assign to a named constant at %C"
msgstr ""
-#: fortran/match.c:1595
+#: fortran/match.c:1597
#, gcc-internal-format, gfc-internal-format
msgid "Unclassifiable statement in IF-clause at %C"
msgstr ""
-#: fortran/match.c:1602
+#: fortran/match.c:1604
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in IF-clause at %C"
msgstr ""
-#: fortran/match.c:1646
+#: fortran/match.c:1648
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected junk after ELSE statement at %C"
msgstr ""
-#: fortran/match.c:1652 fortran/match.c:1687
+#: fortran/match.c:1654 fortran/match.c:1689
#, gcc-internal-format, gfc-internal-format
msgid "Label '%s' at %C doesn't match IF label '%s'"
msgstr ""
-#: fortran/match.c:1681
+#: fortran/match.c:1683
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected junk after ELSE IF statement at %C"
msgstr ""
-#: fortran/match.c:1745
+#: fortran/match.c:1747
#, gcc-internal-format, gfc-internal-format
msgid "Image control statement CRITICAL at %C in PURE procedure"
msgstr ""
-#: fortran/match.c:1752
+#: fortran/match.c:1754
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: CRITICAL statement at %C"
msgstr ""
-#: fortran/match.c:1764
+#: fortran/match.c:1766
#, gcc-internal-format, gfc-internal-format
msgid "Nested CRITICAL block at %C"
msgstr ""
-#: fortran/match.c:1816
+#: fortran/match.c:1818
#, gcc-internal-format, gfc-internal-format
msgid "Expected association list at %C"
msgstr ""
-#: fortran/match.c:1829
+#: fortran/match.c:1831
#, gcc-internal-format, gfc-internal-format
msgid "Expected association at %C"
msgstr ""
-#: fortran/match.c:1838
+#: fortran/match.c:1840
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate name '%s' in association at %C"
msgstr ""
-#: fortran/match.c:1846
+#: fortran/match.c:1848
#, gcc-internal-format, gfc-internal-format
msgid "Association target at %C must not be coindexed"
msgstr ""
-#: fortran/match.c:1864
+#: fortran/match.c:1866
#, gcc-internal-format, gfc-internal-format
msgid "Expected ')' or ',' at %C"
msgstr ""
-#: fortran/match.c:1882
+#: fortran/match.c:1884
#, gcc-internal-format, gfc-internal-format
msgid "Junk after ASSOCIATE statement at %C"
msgstr ""
-#: fortran/match.c:2029
+#: fortran/match.c:2031
#, gcc-internal-format, gfc-internal-format
msgid "Name '%s' in %s statement at %C is unknown"
msgstr ""
-#: fortran/match.c:2037
+#: fortran/match.c:2039
#, gcc-internal-format, gfc-internal-format
msgid "Name '%s' in %s statement at %C is not a construct name"
msgstr ""
-#: fortran/match.c:2049
+#: fortran/match.c:2051
#, gcc-internal-format, gfc-internal-format
msgid "%s statement at %C leaves CRITICAL construct"
msgstr ""
-#: fortran/match.c:2059
+#: fortran/match.c:2061
#, gcc-internal-format, gfc-internal-format
msgid "%s statement at %C is not within a construct"
msgstr ""
-#: fortran/match.c:2062
+#: fortran/match.c:2064
#, gcc-internal-format, gfc-internal-format
msgid "%s statement at %C is not within construct '%s'"
msgstr ""
-#: fortran/match.c:2086
+#: fortran/match.c:2088
#, gcc-internal-format, gfc-internal-format
msgid "CYCLE statement at %C is not applicable to non-loop construct '%s'"
msgstr ""
-#: fortran/match.c:2091
+#: fortran/match.c:2093
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: EXIT statement with no do-construct-name at %C"
msgstr ""
-#: fortran/match.c:2097
+#: fortran/match.c:2099
#, gcc-internal-format, gfc-internal-format
msgid "%s statement at %C is not applicable to construct '%s'"
msgstr ""
-#: fortran/match.c:2104
+#: fortran/match.c:2106
#, gcc-internal-format, gfc-internal-format
msgid "%s statement at %C leaving OpenMP structured block"
msgstr ""
-#: fortran/match.c:2128
+#: fortran/match.c:2130
#, gcc-internal-format, gfc-internal-format
msgid "EXIT statement at %C terminating !$OMP DO loop"
msgstr ""
-#: fortran/match.c:2133
+#: fortran/match.c:2135
#, gcc-internal-format, gfc-internal-format
msgid "CYCLE statement at %C to non-innermost collapsed !$OMP DO loop"
msgstr ""
-#: fortran/match.c:2200
+#: fortran/match.c:2202
#, gcc-internal-format, gfc-internal-format
msgid "Image control statement STOP at %C in CRITICAL block"
msgstr ""
-#: fortran/match.c:2208
+#: fortran/match.c:2210
#, gcc-internal-format, gfc-internal-format
msgid "STOP code at %L must be either INTEGER or CHARACTER type"
msgstr ""
-#: fortran/match.c:2215
+#: fortran/match.c:2217
#, gcc-internal-format, gfc-internal-format
msgid "STOP code at %L must be scalar"
msgstr ""
-#: fortran/match.c:2223
+#: fortran/match.c:2225
#, gcc-internal-format, gfc-internal-format
msgid "STOP code at %L must be default character KIND=%d"
msgstr ""
-#: fortran/match.c:2231
+#: fortran/match.c:2233
#, gcc-internal-format, gfc-internal-format
msgid "STOP code at %L must be default integer KIND=%d"
msgstr ""
-#: fortran/match.c:2277
+#: fortran/match.c:2279
#, gcc-internal-format, gfc-internal-format
msgid "Deleted feature: PAUSE statement at %C"
msgstr ""
-#: fortran/match.c:2300
+#: fortran/match.c:2302
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: ERROR STOP statement at %C"
msgstr ""
-#: fortran/match.c:2326
+#: fortran/match.c:2328 fortran/match.c:2512
#, gcc-internal-format, gfc-internal-format
msgid "Image control statement SYNC at %C in PURE procedure"
msgstr ""
-#: fortran/match.c:2333
-#, gcc-internal-format, gfc-internal-format
-msgid "Fortran 2008: SYNC statement at %C"
-msgstr ""
-
-#: fortran/match.c:2345
+#: fortran/match.c:2343 fortran/match.c:2531
#, gcc-internal-format, gfc-internal-format
msgid "Image control statement SYNC at %C in CRITICAL block"
msgstr ""
-#: fortran/match.c:2391 fortran/match.c:3008 fortran/match.c:3312
+#: fortran/match.c:2372 fortran/match.c:2577 fortran/match.c:3198
+#: fortran/match.c:3509
#, gcc-internal-format, gfc-internal-format
msgid "Redundant STAT tag found at %L "
msgstr ""
-#: fortran/match.c:2408 fortran/match.c:3035 fortran/match.c:3338
+#: fortran/match.c:2393 fortran/match.c:2597 fortran/match.c:3225
+#: fortran/match.c:3535
#, gcc-internal-format, gfc-internal-format
msgid "Redundant ERRMSG tag found at %L "
msgstr ""
-#: fortran/match.c:2521
+#: fortran/match.c:2414
+#, gcc-internal-format, gfc-internal-format
+msgid "Redundant ACQUIRED_LOCK tag found at %L "
+msgstr ""
+
+#: fortran/match.c:2475
+#, gcc-internal-format, gfc-internal-format
+msgid "Fortran 2008: LOCK statement at %C"
+msgstr ""
+
+#: fortran/match.c:2486
+#, gcc-internal-format, gfc-internal-format
+msgid "Fortran 2008: UNLOCK statement at %C"
+msgstr ""
+
+#: fortran/match.c:2519
+#, gcc-internal-format, gfc-internal-format
+msgid "Fortran 2008: SYNC statement at %C"
+msgstr ""
+
+#: fortran/match.c:2711
#, gcc-internal-format, gfc-internal-format
msgid "Deleted feature: ASSIGN statement at %C"
msgstr ""
-#: fortran/match.c:2567
+#: fortran/match.c:2757
#, gcc-internal-format, gfc-internal-format
msgid "Deleted feature: Assigned GOTO statement at %C"
msgstr ""
-#: fortran/match.c:2614 fortran/match.c:2667
+#: fortran/match.c:2804 fortran/match.c:2857
#, gcc-internal-format, gfc-internal-format
msgid "Statement label list in GOTO at %C cannot be empty"
msgstr ""
-#: fortran/match.c:2677
+#: fortran/match.c:2867
#, gcc-internal-format, gfc-internal-format
msgid "Obsolescent feature: Computed GOTO at %C"
msgstr ""
-#: fortran/match.c:2772
+#: fortran/match.c:2962
#, gcc-internal-format, gfc-internal-format
msgid "Derived type '%s' at %L may not be ABSTRACT"
msgstr ""
-#: fortran/match.c:2835
+#: fortran/match.c:3025
#, gcc-internal-format, gfc-internal-format
msgid "Invalid type-spec at %C"
msgstr ""
-#: fortran/match.c:2879
+#: fortran/match.c:3069
#, gcc-internal-format, gfc-internal-format
msgid "Error in type-spec at %L"
msgstr ""
-#: fortran/match.c:2889
+#: fortran/match.c:3079
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: typespec in ALLOCATE at %L"
msgstr ""
-#: fortran/match.c:2928
+#: fortran/match.c:3118
#, gcc-internal-format, gfc-internal-format
msgid "Bad allocate-object at %C for a PURE procedure"
msgstr ""
-#: fortran/match.c:2949
+#: fortran/match.c:3139
#, gcc-internal-format, gfc-internal-format
msgid "Type of entity at %L is type incompatible with typespec"
msgstr ""
-#: fortran/match.c:2957
+#: fortran/match.c:3147
#, gcc-internal-format, gfc-internal-format
msgid ""
"Kind type parameter for entity at %L differs from the kind type parameter of "
"the typespec"
msgstr ""
-#: fortran/match.c:2984
+#: fortran/match.c:3174
#, gcc-internal-format, gfc-internal-format
msgid ""
"Allocate-object at %L is not a nonprocedure pointer or an allocatable "
"variable"
msgstr ""
-#: fortran/match.c:2991
+#: fortran/match.c:3181
#, gcc-internal-format, gfc-internal-format
msgid "Shape specification for allocatable scalar at %C"
msgstr ""
-#: fortran/match.c:3028
+#: fortran/match.c:3218
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ERRMSG tag at %L"
msgstr ""
-#: fortran/match.c:3052
+#: fortran/match.c:3242
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: SOURCE tag at %L"
msgstr ""
-#: fortran/match.c:3059
+#: fortran/match.c:3249
#, gcc-internal-format, gfc-internal-format
msgid "Redundant SOURCE tag found at %L "
msgstr ""
-#: fortran/match.c:3066
+#: fortran/match.c:3256
#, gcc-internal-format, gfc-internal-format
msgid "SOURCE tag at %L conflicts with the typespec at %L"
msgstr ""
-#: fortran/match.c:3073
+#: fortran/match.c:3263
#, gcc-internal-format, gfc-internal-format
msgid "SOURCE tag at %L requires only a single entity in the allocation-list"
msgstr ""
-#: fortran/match.c:3091
+#: fortran/match.c:3281
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: MOLD tag at %L"
msgstr ""
-#: fortran/match.c:3098
+#: fortran/match.c:3288
#, gcc-internal-format, gfc-internal-format
msgid "Redundant MOLD tag found at %L "
msgstr ""
-#: fortran/match.c:3105
+#: fortran/match.c:3295
#, gcc-internal-format, gfc-internal-format
msgid "MOLD tag at %L conflicts with the typespec at %L"
msgstr ""
-#: fortran/match.c:3131
+#: fortran/match.c:3321
#, gcc-internal-format, gfc-internal-format
msgid "MOLD tag at %L conflicts with SOURCE tag at %L"
msgstr ""
-#: fortran/match.c:3139
+#: fortran/match.c:3329
#, gcc-internal-format, gfc-internal-format
msgid ""
"Allocate-object at %L with a deferred type parameter requires either a type-"
"spec or SOURCE tag or a MOLD tag"
msgstr ""
-#: fortran/match.c:3276
+#: fortran/match.c:3390
+#, gcc-internal-format, gfc-internal-format
+msgid "Pointer object at %C shall not be conindexed"
+msgstr ""
+
+#: fortran/match.c:3473
#, gcc-internal-format, gfc-internal-format
msgid "Illegal allocate-object at %C for a PURE procedure"
msgstr ""
-#: fortran/match.c:3295
+#: fortran/match.c:3492
#, gcc-internal-format, gfc-internal-format
msgid ""
"Allocate-object at %C is not a nonprocedure pointer or an allocatable "
"variable"
msgstr ""
-#: fortran/match.c:3332
+#: fortran/match.c:3529
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ERRMSG at %L"
msgstr ""
-#: fortran/match.c:3390
+#: fortran/match.c:3587
#, gcc-internal-format, gfc-internal-format
msgid "Image control statement RETURN at %C in CRITICAL block"
msgstr ""
-#: fortran/match.c:3399
+#: fortran/match.c:3596
#, gcc-internal-format, gfc-internal-format
msgid "Alternate RETURN statement at %C is only allowed within a SUBROUTINE"
msgstr ""
-#: fortran/match.c:3404
+#: fortran/match.c:3601
#, gcc-internal-format, gfc-internal-format
msgid "Obsolescent feature: Alternate RETURN at %C"
msgstr ""
-#: fortran/match.c:3434
+#: fortran/match.c:3631
#, gcc-internal-format, gfc-internal-format
msgid "Extension: RETURN statement in main program at %C"
msgstr ""
-#: fortran/match.c:3462
+#: fortran/match.c:3659
#, gcc-internal-format, gfc-internal-format
msgid "Expected component reference at %C"
msgstr ""
-#: fortran/match.c:3468
+#: fortran/match.c:3665
#, gcc-internal-format, gfc-internal-format
msgid "Junk after CALL at %C"
msgstr ""
-#: fortran/match.c:3478
+#: fortran/match.c:3675
#, gcc-internal-format, gfc-internal-format
msgid "Expected type-bound procedure or procedure pointer component at %C"
msgstr ""
-#: fortran/match.c:3698
+#: fortran/match.c:3895
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in common block name at %C"
msgstr ""
-#: fortran/match.c:3734
+#: fortran/match.c:3931
#, gcc-internal-format, gfc-internal-format
msgid "Symbol '%s' at %C is already an external symbol that is not COMMON"
msgstr ""
@@ -37646,152 +38236,152 @@
#. If we find an error, just print it and continue,
#. cause it's just semantic, and we can see if there
#. are more errors.
-#: fortran/match.c:3793
+#: fortran/match.c:3990
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %L in common block '%s' at %C must be declared with a C "
"interoperable kind since common block '%s' is bind(c)"
msgstr ""
-#: fortran/match.c:3802
+#: fortran/match.c:3999
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' in common block '%s' at %C can not be bind(c) since it is not "
"global"
msgstr ""
-#: fortran/match.c:3809
+#: fortran/match.c:4006
#, gcc-internal-format, gfc-internal-format
msgid "Symbol '%s' at %C is already in a COMMON block"
msgstr ""
-#: fortran/match.c:3817
+#: fortran/match.c:4014
#, gcc-internal-format, gfc-internal-format
msgid "Initialized symbol '%s' at %C can only be COMMON in BLOCK DATA"
msgstr ""
-#: fortran/match.c:3844
+#: fortran/match.c:4041
#, gcc-internal-format, gfc-internal-format
msgid "Array specification for symbol '%s' in COMMON at %C must be explicit"
msgstr ""
-#: fortran/match.c:3854
+#: fortran/match.c:4051
#, gcc-internal-format, gfc-internal-format
msgid "Symbol '%s' in COMMON at %C cannot be a POINTER array"
msgstr ""
-#: fortran/match.c:3886
+#: fortran/match.c:4083
#, gcc-internal-format, gfc-internal-format
msgid ""
"Symbol '%s', in COMMON block '%s' at %C is being indirectly equivalenced to "
"another COMMON block '%s'"
msgstr ""
-#: fortran/match.c:3994
+#: fortran/match.c:4191
#, gcc-internal-format, gfc-internal-format
msgid "Namelist group name '%s' at %C already has a basic type of %s"
msgstr ""
-#: fortran/match.c:4002
+#: fortran/match.c:4199
#, gcc-internal-format, gfc-internal-format
msgid ""
"Namelist group name '%s' at %C already is USE associated and cannot be "
"respecified."
msgstr ""
-#: fortran/match.c:4029
+#: fortran/match.c:4226
#, gcc-internal-format, gfc-internal-format
msgid "Assumed size array '%s' in namelist '%s' at %C is not allowed"
msgstr ""
-#: fortran/match.c:4163
+#: fortran/match.c:4360
#, gcc-internal-format, gfc-internal-format
msgid "Derived type component %C is not a permitted EQUIVALENCE member"
msgstr ""
-#: fortran/match.c:4171
+#: fortran/match.c:4368
#, gcc-internal-format, gfc-internal-format
msgid "Array reference in EQUIVALENCE at %C cannot be an array section"
msgstr ""
-#: fortran/match.c:4199
+#: fortran/match.c:4396
#, gcc-internal-format, gfc-internal-format
msgid "EQUIVALENCE at %C requires two or more objects"
msgstr ""
-#: fortran/match.c:4213
+#: fortran/match.c:4410
#, gcc-internal-format, gfc-internal-format
msgid ""
"Attempt to indirectly overlap COMMON blocks %s and %s by EQUIVALENCE at %C"
msgstr ""
-#: fortran/match.c:4226
+#: fortran/match.c:4423
#, gcc-internal-format, gfc-internal-format
msgid "Expecting a comma in EQUIVALENCE at %C"
msgstr ""
-#: fortran/match.c:4342
+#: fortran/match.c:4539
#, gcc-internal-format, gfc-internal-format
msgid "Statement function at %L is recursive"
msgstr ""
-#: fortran/match.c:4348
+#: fortran/match.c:4545
#, gcc-internal-format, gfc-internal-format
msgid "Obsolescent feature: Statement function at %C"
msgstr ""
-#: fortran/match.c:4434
+#: fortran/match.c:4631
#, gcc-internal-format, gfc-internal-format
msgid "Expected initialization expression in CASE at %C"
msgstr ""
-#: fortran/match.c:4466
+#: fortran/match.c:4663
#, gcc-internal-format, gfc-internal-format
msgid "Expected block name '%s' of SELECT construct at %C"
msgstr ""
-#: fortran/match.c:4604
+#: fortran/match.c:4805
#, gcc-internal-format, gfc-internal-format
msgid ""
"Selector in SELECT TYPE at %C is not a named variable; use associate-name=>"
msgstr ""
-#: fortran/match.c:4637
+#: fortran/match.c:4838
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected CASE statement at %C"
msgstr ""
-#: fortran/match.c:4689
+#: fortran/match.c:4890
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in CASE specification at %C"
msgstr ""
-#: fortran/match.c:4707
+#: fortran/match.c:4908
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected TYPE IS statement at %C"
msgstr ""
-#: fortran/match.c:4740
+#: fortran/match.c:4941
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in TYPE IS specification at %C"
msgstr ""
-#: fortran/match.c:4813
+#: fortran/match.c:5014
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in CLASS IS specification at %C"
msgstr ""
-#: fortran/match.c:4935
+#: fortran/match.c:5136
#, gcc-internal-format, gfc-internal-format
msgid "ELSEWHERE statement at %C not enclosed in WHERE block"
msgstr ""
-#: fortran/match.c:4973
+#: fortran/match.c:5174
#, gcc-internal-format, gfc-internal-format
msgid "Label '%s' at %C doesn't match WHERE label '%s'"
msgstr ""
-#: fortran/match.c:5073
+#: fortran/match.c:5274
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in FORALL iterator at %C"
msgstr ""
@@ -37824,11 +38414,6 @@
"%C"
msgstr ""
-#: fortran/misc.c:39
-#, gcc-internal-format
-msgid "Allocation would exceed memory limit -- malloc() failed"
-msgstr ""
-
#: fortran/module.c:522
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: module nature in USE statement at %C"
@@ -37886,130 +38471,131 @@
msgid "Error writing modules file: %s"
msgstr ""
-#: fortran/module.c:3236
+#: fortran/module.c:3246
#, gcc-internal-format, gfc-internal-format
msgid "Namelist %s cannot be renamed by USE association to %s"
msgstr ""
-#: fortran/module.c:4567
+#: fortran/module.c:4577
#, gcc-internal-format, gfc-internal-format
msgid "Symbol '%s' referenced at %L not found in module '%s'"
msgstr ""
-#: fortran/module.c:4574
+#: fortran/module.c:4584
#, gcc-internal-format, gfc-internal-format
msgid "User operator '%s' referenced at %L not found in module '%s'"
msgstr ""
-#: fortran/module.c:4579
+#: fortran/module.c:4589
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic operator '%s' referenced at %L not found in module '%s'"
msgstr ""
-#: fortran/module.c:5200
+#: fortran/module.c:5213
#, gcc-internal-format, gfc-internal-format
msgid "Can't open module file '%s' for writing at %C: %s"
msgstr ""
-#: fortran/module.c:5238
+#: fortran/module.c:5251
#, gcc-internal-format, gfc-internal-format
msgid "Error writing module file '%s' for writing: %s"
msgstr ""
-#: fortran/module.c:5247
+#: fortran/module.c:5260
#, gcc-internal-format, gfc-internal-format
msgid "Can't delete module file '%s': %s"
msgstr ""
-#: fortran/module.c:5250
+#: fortran/module.c:5263
#, gcc-internal-format, gfc-internal-format
msgid "Can't rename module file '%s' to '%s': %s"
msgstr ""
-#: fortran/module.c:5256
+#: fortran/module.c:5269
#, gcc-internal-format, gfc-internal-format
msgid "Can't delete temporary module file '%s': %s"
msgstr ""
-#: fortran/module.c:5275 fortran/module.c:5406 fortran/module.c:5439
+#: fortran/module.c:5288 fortran/module.c:5419 fortran/module.c:5452
+#: fortran/module.c:5493
#, gcc-internal-format, gfc-internal-format
msgid "Symbol '%s' already declared"
msgstr ""
-#: fortran/module.c:5385
+#: fortran/module.c:5398
#, gcc-internal-format, gfc-internal-format
msgid ""
"Symbol '%s' referenced at %L not found in intrinsic module ISO_C_BINDING"
msgstr ""
-#: fortran/module.c:5510
+#: fortran/module.c:5557
#, gcc-internal-format, gfc-internal-format
msgid ""
"Use of intrinsic module '%s' at %C conflicts with non-intrinsic module name "
"used previously"
msgstr ""
-#: fortran/module.c:5525
+#: fortran/module.c:5572
#, gcc-internal-format, gfc-internal-format
msgid "The symbol '%s', referrenced at %C, is not in the selected standard"
msgstr ""
-#: fortran/module.c:5532 fortran/module.c:5592
+#: fortran/module.c:5579 fortran/module.c:5649
#, gcc-internal-format, gfc-internal-format
msgid ""
"Use of the NUMERIC_STORAGE_SIZE named constant from intrinsic module "
"ISO_FORTRAN_ENV at %C is incompatible with option %s"
msgstr ""
-#: fortran/module.c:5642
+#: fortran/module.c:5707
#, gcc-internal-format, gfc-internal-format
msgid ""
"Symbol '%s' referenced at %L not found in intrinsic module ISO_FORTRAN_ENV"
msgstr ""
-#: fortran/module.c:5675
+#: fortran/module.c:5740
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ISO_FORTRAN_ENV intrinsic module at %C"
msgstr ""
-#: fortran/module.c:5683
+#: fortran/module.c:5748
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ISO_C_BINDING module at %C"
msgstr ""
-#: fortran/module.c:5693
+#: fortran/module.c:5758
#, gcc-internal-format, gfc-internal-format
msgid "Can't find an intrinsic module named '%s' at %C"
msgstr ""
-#: fortran/module.c:5698
+#: fortran/module.c:5763
#, gcc-internal-format, gfc-internal-format
msgid "Can't open module file '%s' for reading at %C: %s"
msgstr ""
-#: fortran/module.c:5706
+#: fortran/module.c:5771
#, gcc-internal-format, gfc-internal-format
msgid ""
"Use of non-intrinsic module '%s' at %C conflicts with intrinsic module name "
"used previously"
msgstr ""
-#: fortran/module.c:5726
+#: fortran/module.c:5791
#, gcc-internal-format, gfc-internal-format
msgid "File '%s' opened at %C is not a GFORTRAN module file"
msgstr ""
-#: fortran/module.c:5733
+#: fortran/module.c:5798
#, gcc-internal-format, gfc-internal-format
msgid "Parse error when checking module version for file '%s' opened at %C"
msgstr ""
-#: fortran/module.c:5738
+#: fortran/module.c:5803
#, gcc-internal-format, gfc-internal-format
msgid "Wrong module version '%s' (expected '%s') for file '%s' opened at %C"
msgstr ""
-#: fortran/module.c:5753
+#: fortran/module.c:5818
#, gcc-internal-format
msgid "Can't USE the same module we're building!"
msgstr ""
@@ -38089,7 +38675,7 @@
msgid "Unexpected junk after NOWAIT clause at %C"
msgstr ""
-#: fortran/openmp.c:783 fortran/resolve.c:8673 fortran/resolve.c:9133
+#: fortran/openmp.c:783 fortran/resolve.c:8782 fortran/resolve.c:9249
#, gcc-internal-format, gfc-internal-format
msgid "IF clause at %L requires a scalar LOGICAL expression"
msgstr ""
@@ -38306,453 +38892,453 @@
msgid "not enough DO loops for collapsed !$OMP DO at %L"
msgstr ""
-#: fortran/options.c:255
+#: fortran/options.c:258
#, gcc-internal-format
msgid "-fexcess-precision=standard for Fortran"
msgstr ""
-#: fortran/options.c:344
+#: fortran/options.c:353
#, gcc-internal-format, gfc-internal-format
msgid "Reading file '%s' as free form"
msgstr ""
-#: fortran/options.c:354
+#: fortran/options.c:363
#, gcc-internal-format
msgid "'-fd-lines-as-comments' has no effect in free form"
msgstr ""
-#: fortran/options.c:357
+#: fortran/options.c:366
#, gcc-internal-format
msgid "'-fd-lines-as-code' has no effect in free form"
msgstr ""
-#: fortran/options.c:375
+#: fortran/options.c:384
#, gcc-internal-format, gfc-internal-format
msgid "Flag -fno-automatic overwrites -fmax-stack-var-size=%d"
msgstr ""
-#: fortran/options.c:378
+#: fortran/options.c:387
#, gcc-internal-format
msgid "Flag -fno-automatic overwrites -frecursive"
msgstr ""
-#: fortran/options.c:380
+#: fortran/options.c:389
#, gcc-internal-format
msgid "Flag -fno-automatic overwrites -frecursive implied by -fopenmp"
msgstr ""
-#: fortran/options.c:384
+#: fortran/options.c:393
#, gcc-internal-format, gfc-internal-format
msgid "Flag -frecursive overwrites -fmax-stack-var-size=%d"
msgstr ""
-#: fortran/options.c:388
+#: fortran/options.c:397
#, gcc-internal-format, gfc-internal-format
msgid "Flag -fmax-stack-var-size=%d overwrites -frecursive implied by -fopenmp"
msgstr ""
-#: fortran/options.c:463
+#: fortran/options.c:480
#, gcc-internal-format
msgid "gfortran: Only one -J option allowed"
msgstr ""
-#: fortran/options.c:507
+#: fortran/options.c:526
#, gcc-internal-format, gfc-internal-format
msgid "Argument to -ffpe-trap is not valid: %s"
msgstr ""
-#: fortran/options.c:520
+#: fortran/options.c:541
#, gcc-internal-format, gfc-internal-format
msgid "Argument to -fcoarray is not valid: %s"
msgstr ""
-#: fortran/options.c:558
+#: fortran/options.c:579
#, gcc-internal-format, gfc-internal-format
msgid "Argument to -fcheck is not valid: %s"
msgstr ""
-#: fortran/options.c:726
+#: fortran/options.c:751
#, gcc-internal-format
msgid "Fixed line length must be at least seven."
msgstr ""
-#: fortran/options.c:744
+#: fortran/options.c:769
#, gcc-internal-format
msgid "Free line length must be at least three."
msgstr ""
-#: fortran/options.c:762
+#: fortran/options.c:787
#, gcc-internal-format
msgid "-static-libgfortran is not supported in this configuration"
msgstr ""
-#: fortran/options.c:806
+#: fortran/options.c:835
#, gcc-internal-format, gfc-internal-format
msgid "Maximum supported identifier length is %d"
msgstr ""
-#: fortran/options.c:838
+#: fortran/options.c:867
#, gcc-internal-format, gfc-internal-format
msgid "Unrecognized option to -finit-logical: %s"
msgstr ""
-#: fortran/options.c:854
+#: fortran/options.c:883
#, gcc-internal-format, gfc-internal-format
msgid "Unrecognized option to -finit-real: %s"
msgstr ""
-#: fortran/options.c:870
+#: fortran/options.c:899
#, gcc-internal-format
msgid "The value of n in -finit-character=n must be between 0 and 127"
msgstr ""
-#: fortran/options.c:962
+#: fortran/options.c:1001
#, gcc-internal-format, gfc-internal-format
msgid "Maximum subrecord length cannot exceed %d"
msgstr ""
-#: fortran/parse.c:470
+#: fortran/parse.c:475
#, gcc-internal-format, gfc-internal-format
msgid "Unclassifiable statement at %C"
msgstr ""
-#: fortran/parse.c:492
+#: fortran/parse.c:497
#, gcc-internal-format, gfc-internal-format
msgid "OpenMP directives at %C may not appear in PURE or ELEMENTAL procedures"
msgstr ""
-#: fortran/parse.c:576
+#: fortran/parse.c:581
#, gcc-internal-format, gfc-internal-format
msgid "Unclassifiable OpenMP directive at %C"
msgstr ""
-#: fortran/parse.c:602
+#: fortran/parse.c:607
#, gcc-internal-format, gfc-internal-format
msgid "Unclassifiable GCC directive at %C"
msgstr ""
-#: fortran/parse.c:644 fortran/parse.c:815
+#: fortran/parse.c:649 fortran/parse.c:820
#, gcc-internal-format, gfc-internal-format
msgid "Zero is not a valid statement label at %C"
msgstr ""
-#: fortran/parse.c:651 fortran/parse.c:807
+#: fortran/parse.c:656 fortran/parse.c:812
#, gcc-internal-format, gfc-internal-format
msgid "Non-numeric character in statement label at %C"
msgstr ""
-#: fortran/parse.c:663 fortran/parse.c:856
+#: fortran/parse.c:668 fortran/parse.c:861
#, gcc-internal-format, gfc-internal-format
msgid "Semicolon at %C needs to be preceded by statement"
msgstr ""
-#: fortran/parse.c:671 fortran/parse.c:871
+#: fortran/parse.c:676 fortran/parse.c:876
#, gcc-internal-format, gfc-internal-format
msgid "Ignoring statement label in empty statement at %L"
msgstr ""
-#: fortran/parse.c:718 fortran/parse.c:858
+#: fortran/parse.c:723 fortran/parse.c:863
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Semicolon at %C without preceding statement"
msgstr ""
-#: fortran/parse.c:794 fortran/parse.c:834
+#: fortran/parse.c:799 fortran/parse.c:839
#, gcc-internal-format, gfc-internal-format
msgid "Bad continuation line at %C"
msgstr ""
-#: fortran/parse.c:1096
+#: fortran/parse.c:1102
#, gcc-internal-format, gfc-internal-format
msgid "FORMAT statement at %L does not have a statement label"
msgstr ""
-#: fortran/parse.c:1677
+#: fortran/parse.c:1689
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected %s statement at %C"
msgstr ""
-#: fortran/parse.c:1824
+#: fortran/parse.c:1836
#, gcc-internal-format, gfc-internal-format
msgid "%s statement at %C cannot follow %s statement at %L"
msgstr ""
-#: fortran/parse.c:1841
+#: fortran/parse.c:1853
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected end of file in '%s'"
msgstr ""
-#: fortran/parse.c:1873
+#: fortran/parse.c:1885
#, gcc-internal-format, gfc-internal-format
msgid "Derived-type '%s' with SEQUENCE must not have a CONTAINS section at %C"
msgstr ""
-#: fortran/parse.c:1876
+#: fortran/parse.c:1888
#, gcc-internal-format, gfc-internal-format
msgid "Derived-type '%s' with BIND(C) must not have a CONTAINS section at %C"
msgstr ""
-#: fortran/parse.c:1896
+#: fortran/parse.c:1908
#, gcc-internal-format, gfc-internal-format
msgid "Components in TYPE at %C must precede CONTAINS"
msgstr ""
-#: fortran/parse.c:1900
+#: fortran/parse.c:1912
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Type-bound procedure at %C"
msgstr ""
-#: fortran/parse.c:1909
+#: fortran/parse.c:1921
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: GENERIC binding at %C"
msgstr ""
-#: fortran/parse.c:1919
+#: fortran/parse.c:1931
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: FINAL procedure declaration at %C"
msgstr ""
-#: fortran/parse.c:1931
+#: fortran/parse.c:1943
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Derived type definition at %C with empty CONTAINS section"
msgstr ""
-#: fortran/parse.c:1942 fortran/parse.c:2045
+#: fortran/parse.c:1954 fortran/parse.c:2057
#, gcc-internal-format, gfc-internal-format
msgid "PRIVATE statement in TYPE at %C must be inside a MODULE"
msgstr ""
-#: fortran/parse.c:1949
+#: fortran/parse.c:1961
#, gcc-internal-format, gfc-internal-format
msgid "PRIVATE statement at %C must precede procedure bindings"
msgstr ""
-#: fortran/parse.c:1956 fortran/parse.c:2058
+#: fortran/parse.c:1968 fortran/parse.c:2070
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate PRIVATE statement at %C"
msgstr ""
-#: fortran/parse.c:1966
+#: fortran/parse.c:1978
#, gcc-internal-format, gfc-internal-format
msgid "SEQUENCE statement at %C must precede CONTAINS"
msgstr ""
-#: fortran/parse.c:1970
+#: fortran/parse.c:1982
#, gcc-internal-format, gfc-internal-format
msgid "Already inside a CONTAINS block at %C"
msgstr ""
-#: fortran/parse.c:2028
+#: fortran/parse.c:2040
#, gcc-internal-format, gfc-internal-format
msgid "FINAL declaration at %C must be inside CONTAINS"
msgstr ""
-#: fortran/parse.c:2036
+#: fortran/parse.c:2048
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Derived type definition at %C without components"
msgstr ""
-#: fortran/parse.c:2052
+#: fortran/parse.c:2064
#, gcc-internal-format, gfc-internal-format
msgid "PRIVATE statement at %C must precede structure components"
msgstr ""
-#: fortran/parse.c:2069
+#: fortran/parse.c:2081
#, gcc-internal-format, gfc-internal-format
msgid "SEQUENCE statement at %C must precede structure components"
msgstr ""
-#: fortran/parse.c:2075
+#: fortran/parse.c:2087
#, gcc-internal-format, gfc-internal-format
msgid "SEQUENCE attribute at %C already specified in TYPE statement"
msgstr ""
-#: fortran/parse.c:2080
+#: fortran/parse.c:2092
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate SEQUENCE statement at %C"
msgstr ""
-#: fortran/parse.c:2090
+#: fortran/parse.c:2102
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: CONTAINS block in derived type definition at %C"
msgstr ""
-#: fortran/parse.c:2177
+#: fortran/parse.c:2198
#, gcc-internal-format, gfc-internal-format
msgid "ENUM declaration at %C has no ENUMERATORS"
msgstr ""
-#: fortran/parse.c:2261
+#: fortran/parse.c:2282
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected %s statement in INTERFACE block at %C"
msgstr ""
-#: fortran/parse.c:2285
+#: fortran/parse.c:2306
#, gcc-internal-format, gfc-internal-format
msgid ""
"Name '%s' of ABSTRACT INTERFACE at %C cannot be the same as an intrinsic type"
msgstr ""
-#: fortran/parse.c:2316
+#: fortran/parse.c:2337
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected %s statement at %C in INTERFACE body"
msgstr ""
-#: fortran/parse.c:2334
+#: fortran/parse.c:2355
#, gcc-internal-format, gfc-internal-format
msgid ""
"INTERFACE procedure '%s' at %L has the same name as the enclosing procedure"
msgstr ""
-#: fortran/parse.c:2458
+#: fortran/parse.c:2479
#, gcc-internal-format, gfc-internal-format
msgid "%s statement is not allowed inside of BLOCK at %C"
msgstr ""
-#: fortran/parse.c:2545
+#: fortran/parse.c:2566
#, gcc-internal-format, gfc-internal-format
msgid "%s statement must appear in a MODULE"
msgstr ""
-#: fortran/parse.c:2553
+#: fortran/parse.c:2574
#, gcc-internal-format, gfc-internal-format
msgid "%s statement at %C follows another accessibility specification"
msgstr ""
-#: fortran/parse.c:2604
+#: fortran/parse.c:2625
#, gcc-internal-format, gfc-internal-format
msgid "Bad kind expression for function '%s' at %L"
msgstr ""
-#: fortran/parse.c:2608
+#: fortran/parse.c:2629
#, gcc-internal-format, gfc-internal-format
msgid "The type for function '%s' at %L is not accessible"
msgstr ""
-#: fortran/parse.c:2666
+#: fortran/parse.c:2687
#, gcc-internal-format, gfc-internal-format
msgid "ELSEWHERE statement at %C follows previous unmasked ELSEWHERE"
msgstr ""
-#: fortran/parse.c:2687
+#: fortran/parse.c:2708
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected %s statement in WHERE block at %C"
msgstr ""
-#: fortran/parse.c:2746
+#: fortran/parse.c:2767
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected %s statement in FORALL block at %C"
msgstr ""
-#: fortran/parse.c:2797
+#: fortran/parse.c:2818
#, gcc-internal-format, gfc-internal-format
msgid "ELSE IF statement at %C cannot follow ELSE statement at %L"
msgstr ""
-#: fortran/parse.c:2815
+#: fortran/parse.c:2836
#, gcc-internal-format, gfc-internal-format
msgid "Duplicate ELSE statements at %L and %C"
msgstr ""
-#: fortran/parse.c:2876
+#: fortran/parse.c:2897
#, gcc-internal-format, gfc-internal-format
msgid "Expected a CASE or END SELECT statement following SELECT CASE at %C"
msgstr ""
-#: fortran/parse.c:2959
+#: fortran/parse.c:2980
#, gcc-internal-format, gfc-internal-format
msgid ""
"Expected TYPE IS, CLASS IS or END SELECT statement following SELECT TYPE at "
"%C"
msgstr ""
-#: fortran/parse.c:3021
+#: fortran/parse.c:3042
#, gcc-internal-format, gfc-internal-format
msgid "Variable '%s' at %C cannot be redefined inside loop beginning at %L"
msgstr ""
-#: fortran/parse.c:3054
+#: fortran/parse.c:3075
#, gcc-internal-format, gfc-internal-format
msgid "End of nonblock DO statement at %C is within another block"
msgstr ""
-#: fortran/parse.c:3063
+#: fortran/parse.c:3084
#, gcc-internal-format, gfc-internal-format
msgid "End of nonblock DO statement at %C is interwoven with another DO loop"
msgstr ""
-#: fortran/parse.c:3110
+#: fortran/parse.c:3131
#, gcc-internal-format, gfc-internal-format
msgid "Statement label in END CRITICAL at %C does not match CRITIAL label"
msgstr ""
-#: fortran/parse.c:3175
+#: fortran/parse.c:3199
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: BLOCK construct at %C"
msgstr ""
-#: fortran/parse.c:3205
+#: fortran/parse.c:3229
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: ASSOCIATE construct at %C"
msgstr ""
-#: fortran/parse.c:3302
+#: fortran/parse.c:3326
#, gcc-internal-format, gfc-internal-format
msgid "Statement label in ENDDO at %C doesn't match DO label"
msgstr ""
-#: fortran/parse.c:3318
+#: fortran/parse.c:3342
#, gcc-internal-format, gfc-internal-format
msgid "Named block DO at %L requires matching ENDDO name"
msgstr ""
-#: fortran/parse.c:3577
+#: fortran/parse.c:3601
#, gcc-internal-format, gfc-internal-format
msgid "Name after !$omp critical and !$omp end critical does not match at %C"
msgstr ""
-#: fortran/parse.c:3634
+#: fortran/parse.c:3658
#, gcc-internal-format, gfc-internal-format
msgid "%s statement at %C cannot terminate a non-block DO loop"
msgstr ""
-#: fortran/parse.c:3830
+#: fortran/parse.c:3854
#, gcc-internal-format, gfc-internal-format
msgid "Contained procedure '%s' at %C is already ambiguous"
msgstr ""
-#: fortran/parse.c:3886
+#: fortran/parse.c:3910
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected %s statement in CONTAINS section at %C"
msgstr ""
-#: fortran/parse.c:3910
+#: fortran/parse.c:3934
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2008: CONTAINS statement without FUNCTION or SUBROUTINE statement at "
"%C"
msgstr ""
-#: fortran/parse.c:3987
+#: fortran/parse.c:4011
#, gcc-internal-format, gfc-internal-format
msgid "CONTAINS statement at %C is already in a contained program unit"
msgstr ""
-#: fortran/parse.c:4037
+#: fortran/parse.c:4061
#, gcc-internal-format, gfc-internal-format
msgid "Global name '%s' at %L is already being used as a %s at %L"
msgstr ""
-#: fortran/parse.c:4058
+#: fortran/parse.c:4082
#, gcc-internal-format, gfc-internal-format
msgid "Blank BLOCK DATA at %C conflicts with prior BLOCK DATA at %L"
msgstr ""
-#: fortran/parse.c:4084
+#: fortran/parse.c:4108
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected %s statement in BLOCK DATA at %C"
msgstr ""
-#: fortran/parse.c:4127
+#: fortran/parse.c:4151
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected %s statement in MODULE at %C"
msgstr ""
@@ -38760,7 +39346,7 @@
#. If we see a duplicate main program, shut down. If the second
#. instance is an implied main program, i.e. data decls or executable
#. statements, we're in for lots of errors.
-#: fortran/parse.c:4449
+#: fortran/parse.c:4516
#, gcc-internal-format, gfc-internal-format
msgid "Two main PROGRAMs at %L and %C"
msgstr ""
@@ -38832,243 +39418,258 @@
msgid "Fortran 2003: BOZ used outside a DATA statement at %C"
msgstr ""
-#: fortran/primary.c:556
+#: fortran/primary.c:547 fortran/primary.c:551
+#, gcc-internal-format, gfc-internal-format
+msgid "Extension: exponent-letter 'q' in real-literal-constant at %C"
+msgstr ""
+
+#: fortran/primary.c:567
#, gcc-internal-format, gfc-internal-format
msgid "Missing exponent in real number at %C"
msgstr ""
-#: fortran/primary.c:612
+#: fortran/primary.c:623
#, gcc-internal-format, gfc-internal-format
msgid "Real number at %C has a 'd' exponent and an explicit kind"
msgstr ""
-#: fortran/primary.c:625
+#: fortran/primary.c:633
+#, gcc-internal-format, gfc-internal-format
+msgid "Real number at %C has a 'q' exponent and an explicit kind"
+msgstr ""
+
+#: fortran/primary.c:647
+#, gcc-internal-format, gfc-internal-format
+msgid "Invalid exponent-letter 'q' in real-literal-constant at %C"
+msgstr ""
+
+#: fortran/primary.c:660
#, gcc-internal-format, gfc-internal-format
msgid "Invalid real kind %d at %C"
msgstr ""
-#: fortran/primary.c:639
+#: fortran/primary.c:674
#, gcc-internal-format, gfc-internal-format
msgid "Real constant overflows its kind at %C"
msgstr ""
-#: fortran/primary.c:644
+#: fortran/primary.c:679
#, gcc-internal-format, gfc-internal-format
msgid "Real constant underflows its kind at %C"
msgstr ""
-#: fortran/primary.c:736
+#: fortran/primary.c:771
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in SUBSTRING specification at %C"
msgstr ""
-#: fortran/primary.c:948
+#: fortran/primary.c:983
#, gcc-internal-format, gfc-internal-format
msgid "Invalid kind %d for CHARACTER constant at %C"
msgstr ""
-#: fortran/primary.c:969
+#: fortran/primary.c:1004
#, gcc-internal-format, gfc-internal-format
msgid "Unterminated character constant beginning at %C"
msgstr ""
-#: fortran/primary.c:1001
+#: fortran/primary.c:1033
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character '%s' in string at %C is not representable in character kind %d"
msgstr ""
-#: fortran/primary.c:1084
+#: fortran/primary.c:1116
#, gcc-internal-format, gfc-internal-format
msgid "Bad kind for logical constant at %C"
msgstr ""
-#: fortran/primary.c:1117
+#: fortran/primary.c:1147
#, gcc-internal-format, gfc-internal-format
msgid "Expected PARAMETER symbol in complex constant at %C"
msgstr ""
-#: fortran/primary.c:1123
+#: fortran/primary.c:1153
#, gcc-internal-format, gfc-internal-format
msgid "Numeric PARAMETER required in complex constant at %C"
msgstr ""
-#: fortran/primary.c:1129
+#: fortran/primary.c:1159
#, gcc-internal-format, gfc-internal-format
msgid "Scalar PARAMETER required in complex constant at %C"
msgstr ""
-#: fortran/primary.c:1133
+#: fortran/primary.c:1163
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: PARAMETER symbol in complex constant at %C"
msgstr ""
-#: fortran/primary.c:1163
+#: fortran/primary.c:1193
#, gcc-internal-format, gfc-internal-format
msgid "Error converting PARAMETER constant in complex constant at %C"
msgstr ""
-#: fortran/primary.c:1292
+#: fortran/primary.c:1321
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in COMPLEX constant at %C"
msgstr ""
-#: fortran/primary.c:1498
+#: fortran/primary.c:1527
#, gcc-internal-format, gfc-internal-format
msgid "Keyword '%s' at %C has already appeared in the current argument list"
msgstr ""
-#: fortran/primary.c:1562
+#: fortran/primary.c:1591
#, gcc-internal-format, gfc-internal-format
msgid "Extension: argument list function at %C"
msgstr ""
-#: fortran/primary.c:1631
+#: fortran/primary.c:1660
#, gcc-internal-format, gfc-internal-format
msgid "Expected alternate return label at %C"
msgstr ""
-#: fortran/primary.c:1649
+#: fortran/primary.c:1678
#, gcc-internal-format, gfc-internal-format
msgid "Missing keyword name in actual argument list at %C"
msgstr ""
-#: fortran/primary.c:1695
+#: fortran/primary.c:1724
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in argument list at %C"
msgstr ""
-#: fortran/primary.c:1752
+#: fortran/primary.c:1781
#, gcc-internal-format, gfc-internal-format
msgid ""
"Array section designator, e.g. '(:)', is required besides the coarray "
"designator '[...]' at %C"
msgstr ""
-#: fortran/primary.c:1758
+#: fortran/primary.c:1787
#, gcc-internal-format, gfc-internal-format
msgid "Coarray designator at %C but '%s' is not a coarray"
msgstr ""
-#: fortran/primary.c:1829
+#: fortran/primary.c:1858
#, gcc-internal-format, gfc-internal-format
msgid "Expected structure component name at %C"
msgstr ""
-#: fortran/primary.c:1876
+#: fortran/primary.c:1905
#, gcc-internal-format, gfc-internal-format
msgid "Expected argument list at %C"
msgstr ""
-#: fortran/primary.c:1908
+#: fortran/primary.c:1937
#, gcc-internal-format, gfc-internal-format
msgid "Procedure pointer component '%s' requires an argument list at %C"
msgstr ""
-#: fortran/primary.c:1996
+#: fortran/primary.c:2025
#, gcc-internal-format, gfc-internal-format
msgid "Coindexed procedure-pointer component at %C"
msgstr ""
-#: fortran/primary.c:2245
+#: fortran/primary.c:2274
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: Structure constructor with missing optional arguments at %C"
msgstr ""
-#: fortran/primary.c:2253
+#: fortran/primary.c:2282
#, gcc-internal-format, gfc-internal-format
msgid ""
"No initializer for component '%s' given in the structure constructor at %C!"
msgstr ""
-#: fortran/primary.c:2300
+#: fortran/primary.c:2329
#, gcc-internal-format, gfc-internal-format
msgid "Can't construct ABSTRACT type '%s' at %C"
msgstr ""
-#: fortran/primary.c:2334
+#: fortran/primary.c:2363
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: Structure constructor with named arguments at %C"
msgstr ""
-#: fortran/primary.c:2349
+#: fortran/primary.c:2378
#, gcc-internal-format, gfc-internal-format
msgid "Component initializer without name after component named %s at %C!"
msgstr ""
-#: fortran/primary.c:2352
+#: fortran/primary.c:2381
#, gcc-internal-format, gfc-internal-format
msgid "Too many components in structure constructor at %C!"
msgstr ""
-#: fortran/primary.c:2385
+#: fortran/primary.c:2414
#, gcc-internal-format, gfc-internal-format
msgid "Component '%s' is initialized twice in the structure constructor at %C!"
msgstr ""
-#: fortran/primary.c:2401
+#: fortran/primary.c:2430
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed expression to pointer component '%s' in structure constructor at "
"%C!"
msgstr ""
-#: fortran/primary.c:2451
+#: fortran/primary.c:2480
#, gcc-internal-format, gfc-internal-format
msgid ""
"component '%s' at %L has already been set by a parent derived type "
"constructor"
msgstr ""
-#: fortran/primary.c:2466
+#: fortran/primary.c:2495
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in structure constructor at %C"
msgstr ""
-#: fortran/primary.c:2582
+#: fortran/primary.c:2611
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %C is the name of a recursive function and so refers to the result "
"variable. Use an explicit RESULT variable for direct recursion (12.5.2.1)"
msgstr ""
-#: fortran/primary.c:2701
+#: fortran/primary.c:2730
#, gcc-internal-format, gfc-internal-format
msgid "Unexpected use of subroutine name '%s' at %C"
msgstr ""
-#: fortran/primary.c:2732
+#: fortran/primary.c:2761
#, gcc-internal-format, gfc-internal-format
msgid "Statement function '%s' requires argument list at %C"
msgstr ""
-#: fortran/primary.c:2735
+#: fortran/primary.c:2764
#, gcc-internal-format, gfc-internal-format
msgid "Function '%s' requires an argument list at %C"
msgstr ""
-#: fortran/primary.c:2782
+#: fortran/primary.c:2811
#, gcc-internal-format, gfc-internal-format
msgid "Missing argument to '%s' at %C"
msgstr ""
-#: fortran/primary.c:2923
+#: fortran/primary.c:2952
#, gcc-internal-format, gfc-internal-format
msgid "Missing argument list in function '%s' at %C"
msgstr ""
-#: fortran/primary.c:2951
+#: fortran/primary.c:2980
#, gcc-internal-format, gfc-internal-format
msgid "Symbol at %C is not appropriate for an expression"
msgstr ""
-#: fortran/primary.c:3050
+#: fortran/primary.c:3079
#, gcc-internal-format, gfc-internal-format
msgid "Named constant at %C in an EQUIVALENCE"
msgstr ""
-#: fortran/primary.c:3084
+#: fortran/primary.c:3113
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %C is not a variable"
msgstr ""
@@ -39121,279 +39722,279 @@
msgid "Dummy procedure at %L not allowed in ELEMENTAL procedure"
msgstr ""
-#: fortran/resolve.c:298 fortran/resolve.c:1657
+#: fortran/resolve.c:298 fortran/resolve.c:1662
#, gcc-internal-format, gfc-internal-format
msgid ""
"Unable to find a specific INTRINSIC procedure for the reference '%s' at %L"
msgstr ""
-#: fortran/resolve.c:347
+#: fortran/resolve.c:348
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2008: Argument '%s' of pure function '%s' at %L with VALUE attribute "
"but without INTENT(IN)"
msgstr ""
-#: fortran/resolve.c:352
+#: fortran/resolve.c:353
#, gcc-internal-format, gfc-internal-format
msgid "Argument '%s' of pure function '%s' at %L must be INTENT(IN) or VALUE"
msgstr ""
-#: fortran/resolve.c:360
+#: fortran/resolve.c:361
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2008: Argument '%s' of pure subroutine '%s' at %L with VALUE "
"attribute but without INTENT"
msgstr ""
-#: fortran/resolve.c:365
+#: fortran/resolve.c:366
#, gcc-internal-format, gfc-internal-format
msgid ""
"Argument '%s' of pure subroutine '%s' at %L must have its INTENT specified "
"or have the VALUE attribute"
msgstr ""
-#: fortran/resolve.c:386
+#: fortran/resolve.c:387
#, gcc-internal-format, gfc-internal-format
msgid "Coarray dummy argument '%s' at %L to elemental procedure"
msgstr ""
-#: fortran/resolve.c:393
+#: fortran/resolve.c:394
#, gcc-internal-format, gfc-internal-format
msgid "Argument '%s' of elemental procedure at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:400
+#: fortran/resolve.c:401
#, gcc-internal-format, gfc-internal-format
msgid ""
"Argument '%s' of elemental procedure at %L cannot have the ALLOCATABLE "
"attribute"
msgstr ""
-#: fortran/resolve.c:408
+#: fortran/resolve.c:409
#, gcc-internal-format, gfc-internal-format
msgid ""
"Argument '%s' of elemental procedure at %L cannot have the POINTER attribute"
msgstr ""
-#: fortran/resolve.c:416
+#: fortran/resolve.c:417
#, gcc-internal-format, gfc-internal-format
msgid "Dummy procedure '%s' not allowed in elemental procedure '%s' at %L"
msgstr ""
-#: fortran/resolve.c:424
+#: fortran/resolve.c:425
#, gcc-internal-format, gfc-internal-format
msgid ""
"Argument '%s' of elemental procedure '%s' at %L must have its INTENT "
"specified"
msgstr ""
-#: fortran/resolve.c:436
+#: fortran/resolve.c:437
#, gcc-internal-format, gfc-internal-format
msgid "Argument '%s' of statement function at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:446
+#: fortran/resolve.c:447
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character-valued argument '%s' of statement function at %L must have "
"constant length"
msgstr ""
-#: fortran/resolve.c:503
+#: fortran/resolve.c:504
#, gcc-internal-format, gfc-internal-format
msgid "Contained function '%s' at %L has no IMPLICIT type"
msgstr ""
-#: fortran/resolve.c:506
+#: fortran/resolve.c:507
#, gcc-internal-format, gfc-internal-format
msgid "Result '%s' of contained function '%s' at %L has no IMPLICIT type"
msgstr ""
-#: fortran/resolve.c:530
+#: fortran/resolve.c:531
#, gcc-internal-format, gfc-internal-format
msgid "Character-valued %s '%s' at %L must not be assumed length"
msgstr ""
-#: fortran/resolve.c:705
+#: fortran/resolve.c:706
#, gcc-internal-format, gfc-internal-format
msgid "Function %s at %L has entries with mismatched array specifications"
msgstr ""
-#: fortran/resolve.c:722
+#: fortran/resolve.c:723
#, gcc-internal-format, gfc-internal-format
msgid ""
"Extension: Function %s at %L with entries returning variables of different "
"string lengths"
msgstr ""
-#: fortran/resolve.c:749
+#: fortran/resolve.c:750
#, gcc-internal-format, gfc-internal-format
msgid "FUNCTION result %s can't be an array in FUNCTION %s at %L"
msgstr ""
-#: fortran/resolve.c:753
+#: fortran/resolve.c:754
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY result %s can't be an array in FUNCTION %s at %L"
msgstr ""
-#: fortran/resolve.c:760
+#: fortran/resolve.c:761
#, gcc-internal-format, gfc-internal-format
msgid "FUNCTION result %s can't be a POINTER in FUNCTION %s at %L"
msgstr ""
-#: fortran/resolve.c:764
+#: fortran/resolve.c:765
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY result %s can't be a POINTER in FUNCTION %s at %L"
msgstr ""
-#: fortran/resolve.c:802
+#: fortran/resolve.c:803
#, gcc-internal-format, gfc-internal-format
msgid "FUNCTION result %s can't be of type %s in FUNCTION %s at %L"
msgstr ""
-#: fortran/resolve.c:807
+#: fortran/resolve.c:808
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY result %s can't be of type %s in FUNCTION %s at %L"
msgstr ""
-#: fortran/resolve.c:850
+#: fortran/resolve.c:851
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %L is in COMMON but only in BLOCK DATA initialization is "
"allowed"
msgstr ""
-#: fortran/resolve.c:854
+#: fortran/resolve.c:855
#, gcc-internal-format, gfc-internal-format
msgid ""
"Initialized variable '%s' at %L is in a blank COMMON but initialization is "
"only allowed in named common blocks"
msgstr ""
-#: fortran/resolve.c:865
+#: fortran/resolve.c:866
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type variable '%s' in COMMON at %L has neither the SEQUENCE nor the "
"BIND(C) attribute"
msgstr ""
-#: fortran/resolve.c:869
+#: fortran/resolve.c:870
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type variable '%s' in COMMON at %L has an ultimate component that is "
"allocatable"
msgstr ""
-#: fortran/resolve.c:873
+#: fortran/resolve.c:874
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type variable '%s' in COMMON at %L may not have default initializer"
msgstr ""
-#: fortran/resolve.c:903
+#: fortran/resolve.c:904
#, gcc-internal-format, gfc-internal-format
msgid "COMMON block '%s' at %L is used as PARAMETER at %L"
msgstr ""
-#: fortran/resolve.c:907
+#: fortran/resolve.c:908
#, gcc-internal-format, gfc-internal-format
msgid "COMMON block '%s' at %L is also an intrinsic procedure"
msgstr ""
-#: fortran/resolve.c:911
+#: fortran/resolve.c:912
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: COMMON block '%s' at %L that is also a function result"
msgstr ""
-#: fortran/resolve.c:916
+#: fortran/resolve.c:917
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: COMMON block '%s' at %L that is also a global procedure"
msgstr ""
-#: fortran/resolve.c:984
+#: fortran/resolve.c:985
#, gcc-internal-format, gfc-internal-format
msgid "Components of structure constructor '%s' at %L are PRIVATE"
msgstr ""
-#: fortran/resolve.c:1012
+#: fortran/resolve.c:1013
#, gcc-internal-format, gfc-internal-format
msgid ""
"The rank of the element in the derived type constructor at %L does not match "
"that of the component (%d/%d)"
msgstr ""
-#: fortran/resolve.c:1034
+#: fortran/resolve.c:1035
#, gcc-internal-format, gfc-internal-format
msgid ""
"The element in the derived type constructor at %L, for pointer component "
"'%s', is %s but should be %s"
msgstr ""
-#: fortran/resolve.c:1112
+#: fortran/resolve.c:1113
#, gcc-internal-format, gfc-internal-format
msgid ""
"The NULL in the derived type constructor at %L is being applied to component "
"'%s', which is neither a POINTER nor ALLOCATABLE"
msgstr ""
-#: fortran/resolve.c:1127
+#: fortran/resolve.c:1128
#, gcc-internal-format, gfc-internal-format
msgid ""
"The element in the derived type constructor at %L, for pointer component "
"'%s' should be a POINTER or a TARGET"
msgstr ""
-#: fortran/resolve.c:1138
+#: fortran/resolve.c:1139
#, gcc-internal-format, gfc-internal-format
msgid "Pointer initialization target at %L must not be ALLOCATABLE "
msgstr ""
-#: fortran/resolve.c:1144
+#: fortran/resolve.c:1145
#, gcc-internal-format, gfc-internal-format
msgid "Pointer initialization target at %L must have the SAVE attribute"
msgstr ""
-#: fortran/resolve.c:1155
+#: fortran/resolve.c:1156
#, gcc-internal-format, gfc-internal-format
msgid ""
"Invalid expression in the derived type constructor for pointer component "
"'%s' at %L in PURE procedure"
msgstr ""
-#: fortran/resolve.c:1284
+#: fortran/resolve.c:1285
#, gcc-internal-format, gfc-internal-format
msgid ""
"The upper bound in the last dimension must appear in the reference to the "
"assumed size array '%s' at %L"
msgstr ""
-#: fortran/resolve.c:1346
+#: fortran/resolve.c:1347
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L is ambiguous"
msgstr ""
-#: fortran/resolve.c:1350
+#: fortran/resolve.c:1351
#, gcc-internal-format, gfc-internal-format
msgid "GENERIC procedure '%s' is not allowed as an actual argument at %L"
msgstr ""
-#: fortran/resolve.c:1457
+#: fortran/resolve.c:1462
#, gcc-internal-format, gfc-internal-format
msgid "Type specified for intrinsic function '%s' at %L is ignored"
msgstr ""
-#: fortran/resolve.c:1470
+#: fortran/resolve.c:1475
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic subroutine '%s' at %L shall not have a type specifier"
msgstr ""
-#: fortran/resolve.c:1481
+#: fortran/resolve.c:1486
#, gcc-internal-format, gfc-internal-format
msgid "'%s' declared INTRINSIC at %L does not exist"
msgstr ""
-#: fortran/resolve.c:1492
+#: fortran/resolve.c:1497
#, gcc-internal-format, gfc-internal-format
msgid ""
"The intrinsic '%s' declared INTRINSIC at %L is not available in the current "
@@ -39401,71 +40002,71 @@
"intrinsics in order to use it."
msgstr ""
-#: fortran/resolve.c:1528
+#: fortran/resolve.c:1533
#, gcc-internal-format, gfc-internal-format
msgid ""
"Non-RECURSIVE procedure '%s' at %L is possibly calling itself recursively. "
"Declare it RECURSIVE or use -frecursive"
msgstr ""
-#: fortran/resolve.c:1561 fortran/resolve.c:8218 fortran/resolve.c:9082
+#: fortran/resolve.c:1566 fortran/resolve.c:8327 fortran/resolve.c:9196
#, gcc-internal-format, gfc-internal-format
msgid "Label %d referenced at %L is never defined"
msgstr ""
-#: fortran/resolve.c:1606
+#: fortran/resolve.c:1611
#, gcc-internal-format, gfc-internal-format
msgid "Statement function '%s' at %L is not allowed as an actual argument"
msgstr ""
-#: fortran/resolve.c:1614
+#: fortran/resolve.c:1619
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic '%s' at %L is not allowed as an actual argument"
msgstr ""
-#: fortran/resolve.c:1622
+#: fortran/resolve.c:1627
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2008: Internal procedure '%s' is used as actual argument at %L"
msgstr ""
-#: fortran/resolve.c:1630
+#: fortran/resolve.c:1635
#, gcc-internal-format, gfc-internal-format
msgid ""
"ELEMENTAL non-INTRINSIC procedure '%s' is not allowed as an actual argument "
"at %L"
msgstr ""
-#: fortran/resolve.c:1679
+#: fortran/resolve.c:1684
#, gcc-internal-format, gfc-internal-format
msgid "Symbol '%s' at %L is ambiguous"
msgstr ""
-#: fortran/resolve.c:1730
+#: fortran/resolve.c:1735
#, gcc-internal-format, gfc-internal-format
msgid "By-value argument at %L is not of numeric type"
msgstr ""
-#: fortran/resolve.c:1737
+#: fortran/resolve.c:1742
#, gcc-internal-format, gfc-internal-format
msgid "By-value argument at %L cannot be an array or an array section"
msgstr ""
-#: fortran/resolve.c:1751
+#: fortran/resolve.c:1756
#, gcc-internal-format, gfc-internal-format
msgid "By-value argument at %L is not allowed in this context"
msgstr ""
-#: fortran/resolve.c:1763
+#: fortran/resolve.c:1768
#, gcc-internal-format, gfc-internal-format
msgid "Passing internal procedure at %L by location not allowed"
msgstr ""
-#: fortran/resolve.c:1774
+#: fortran/resolve.c:1779
#, gcc-internal-format, gfc-internal-format
msgid "Coindexed actual argument at %L with ultimate pointer component"
msgstr ""
-#: fortran/resolve.c:1897
+#: fortran/resolve.c:1902
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L is an array and OPTIONAL; IF IT IS MISSING, it cannot be the "
@@ -39473,707 +40074,714 @@
"argument with the same rank (12.4.1.5)"
msgstr ""
-#: fortran/resolve.c:1936
+#: fortran/resolve.c:1941
#, gcc-internal-format, gfc-internal-format
msgid ""
"Actual argument at %L for INTENT(%s) dummy '%s' of ELEMENTAL subroutine '%s' "
"is a scalar, but another actual argument is an array"
msgstr ""
-#: fortran/resolve.c:2098
+#: fortran/resolve.c:2103
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character length mismatch in return type of function '%s' at %L (%ld/%ld)"
msgstr ""
-#: fortran/resolve.c:2106
+#: fortran/resolve.c:2111
#, gcc-internal-format, gfc-internal-format
msgid "Return type mismatch of function '%s' at %L (%s/%s)"
msgstr ""
-#: fortran/resolve.c:2125
+#: fortran/resolve.c:2130
#, gcc-internal-format, gfc-internal-format
msgid ""
"Dummy argument '%s' of procedure '%s' at %L has an attribute that requires "
"an explicit interface for this procedure"
msgstr ""
-#: fortran/resolve.c:2135
+#: fortran/resolve.c:2140
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure '%s' at %L with assumed-shape dummy argument '%s' must have an "
"explicit interface"
msgstr ""
-#: fortran/resolve.c:2143
+#: fortran/resolve.c:2148
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure '%s' at %L with coarray dummy argument '%s' must have an explicit "
"interface"
msgstr ""
-#: fortran/resolve.c:2151
+#: fortran/resolve.c:2156
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure '%s' at %L with parametrized derived type argument '%s' must have "
"an explicit interface"
msgstr ""
-#: fortran/resolve.c:2160
+#: fortran/resolve.c:2165
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure '%s' at %L with polymorphic dummy argument '%s' must have an "
"explicit interface"
msgstr ""
-#: fortran/resolve.c:2172
+#: fortran/resolve.c:2177
#, gcc-internal-format, gfc-internal-format
msgid ""
"The reference to function '%s' at %L either needs an explicit INTERFACE or "
"the rank is incorrect"
msgstr ""
-#: fortran/resolve.c:2184
+#: fortran/resolve.c:2189
#, gcc-internal-format, gfc-internal-format
msgid ""
"Function '%s' at %L with a POINTER or ALLOCATABLE result must have an "
"explicit interface"
msgstr ""
-#: fortran/resolve.c:2197
+#: fortran/resolve.c:2202
#, gcc-internal-format, gfc-internal-format
msgid ""
"Nonconstant character-length function '%s' at %L must have an explicit "
"interface"
msgstr ""
-#: fortran/resolve.c:2207
+#: fortran/resolve.c:2212
#, gcc-internal-format, gfc-internal-format
msgid "ELEMENTAL procedure '%s' at %L must have an explicit interface"
msgstr ""
-#: fortran/resolve.c:2214
+#: fortran/resolve.c:2219
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure '%s' at %L with BIND(C) attribute must have an explicit interface"
msgstr ""
-#: fortran/resolve.c:2314
+#: fortran/resolve.c:2319
#, gcc-internal-format, gfc-internal-format
msgid "There is no specific function for the generic '%s' at %L"
msgstr ""
-#: fortran/resolve.c:2323
+#: fortran/resolve.c:2328
#, gcc-internal-format, gfc-internal-format
msgid ""
"Generic function '%s' at %L is not consistent with a specific intrinsic "
"interface"
msgstr ""
-#: fortran/resolve.c:2361
+#: fortran/resolve.c:2366
#, gcc-internal-format, gfc-internal-format
msgid ""
"Function '%s' at %L is INTRINSIC but is not compatible with an intrinsic"
msgstr ""
-#: fortran/resolve.c:2410
+#: fortran/resolve.c:2415
#, gcc-internal-format, gfc-internal-format
msgid "Unable to resolve the specific function '%s' at %L"
msgstr ""
-#: fortran/resolve.c:2466 fortran/resolve.c:13351
+#: fortran/resolve.c:2471 fortran/resolve.c:13494
#, gcc-internal-format, gfc-internal-format
msgid "Function '%s' at %L has no IMPLICIT type"
msgstr ""
-#: fortran/resolve.c:2668
+#: fortran/resolve.c:2673
#, gcc-internal-format, gfc-internal-format
msgid "Argument to '%s' at %L is not a variable"
msgstr ""
-#: fortran/resolve.c:2715
+#: fortran/resolve.c:2720
#, gcc-internal-format, gfc-internal-format
msgid "More actual than formal arguments in '%s' call at %L"
msgstr ""
-#: fortran/resolve.c:2727
+#: fortran/resolve.c:2732
#, gcc-internal-format, gfc-internal-format
msgid ""
"Parameter '%s' to '%s' at %L must be either a TARGET or an associated pointer"
msgstr ""
-#: fortran/resolve.c:2736
+#: fortran/resolve.c:2741
#, gcc-internal-format, gfc-internal-format
msgid "Coindexed argument not permitted in '%s' call at %L"
msgstr ""
-#: fortran/resolve.c:2759
+#: fortran/resolve.c:2764
#, gcc-internal-format, gfc-internal-format
msgid "Array section not permitted in '%s' call at %L"
msgstr ""
-#: fortran/resolve.c:2770
+#: fortran/resolve.c:2775
#, gcc-internal-format, gfc-internal-format
msgid "Array section in '%s' call at %L"
msgstr ""
-#: fortran/resolve.c:2789
+#: fortran/resolve.c:2794
#, gcc-internal-format, gfc-internal-format
msgid ""
"Allocatable variable '%s' used as a parameter to '%s' at %L must not be an "
"array of zero size"
msgstr ""
-#: fortran/resolve.c:2806
+#: fortran/resolve.c:2811
#, gcc-internal-format, gfc-internal-format
msgid ""
"Assumed-shape array '%s' at %L cannot be an argument to the procedure '%s' "
"because it is not C interoperable"
msgstr ""
-#: fortran/resolve.c:2816
+#: fortran/resolve.c:2821
#, gcc-internal-format, gfc-internal-format
msgid ""
"Deferred-shape array '%s' at %L cannot be an argument to the procedure '%s' "
"because it is not C interoperable"
msgstr ""
-#: fortran/resolve.c:2839 fortran/resolve.c:2876
+#: fortran/resolve.c:2844 fortran/resolve.c:2881
#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER argument '%s' to '%s' at %L must have a length of 1"
msgstr ""
#. Case 1c, section 15.1.2.5, J3/04-007: an associated
#. scalar pointer.
-#: fortran/resolve.c:2852
+#: fortran/resolve.c:2857
#, gcc-internal-format, gfc-internal-format
msgid "Argument '%s' to '%s' at %L must be an associated scalar POINTER"
msgstr ""
-#: fortran/resolve.c:2868
+#: fortran/resolve.c:2873
#, gcc-internal-format, gfc-internal-format
msgid "Parameter '%s' to '%s' at %L must be a scalar"
msgstr ""
-#: fortran/resolve.c:2884
+#: fortran/resolve.c:2889
#, gcc-internal-format, gfc-internal-format
msgid "Parameter '%s' to '%s' at %L must not be polymorphic"
msgstr ""
#. TODO: Update this error message to allow for procedure
#. pointers once they are implemented.
-#: fortran/resolve.c:2897
+#: fortran/resolve.c:2902
#, gcc-internal-format, gfc-internal-format
msgid "Parameter '%s' to '%s' at %L must be a procedure"
msgstr ""
-#: fortran/resolve.c:2905
+#: fortran/resolve.c:2910
#, gcc-internal-format, gfc-internal-format
msgid "Parameter '%s' to '%s' at %L must be BIND(C)"
msgstr ""
-#: fortran/resolve.c:2954
+#: fortran/resolve.c:2959
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L is not a function"
msgstr ""
-#: fortran/resolve.c:2962 fortran/resolve.c:3579
+#: fortran/resolve.c:2967 fortran/resolve.c:3584
#, gcc-internal-format, gfc-internal-format
msgid "ABSTRACT INTERFACE '%s' must not be referenced at %L"
msgstr ""
#. Internal procedures are taken care of in resolve_contained_fntype.
-#: fortran/resolve.c:3017
+#: fortran/resolve.c:3022
#, gcc-internal-format, gfc-internal-format
msgid ""
"Function '%s' is declared CHARACTER(*) and cannot be used at %L since it is "
"not a dummy argument"
msgstr ""
-#: fortran/resolve.c:3070
+#: fortran/resolve.c:3075
#, gcc-internal-format, gfc-internal-format
msgid ""
"User defined non-ELEMENTAL function '%s' at %L not allowed in WORKSHARE "
"construct"
msgstr ""
-#: fortran/resolve.c:3120
+#: fortran/resolve.c:3125
#, gcc-internal-format, gfc-internal-format
msgid "reference to non-PURE function '%s' at %L inside a FORALL %s"
msgstr ""
-#: fortran/resolve.c:3127
+#: fortran/resolve.c:3132
#, gcc-internal-format, gfc-internal-format
msgid ""
"Function reference to '%s' at %L is to a non-PURE procedure within a PURE "
"procedure"
msgstr ""
-#: fortran/resolve.c:3146
+#: fortran/resolve.c:3151
#, gcc-internal-format, gfc-internal-format
msgid ""
"ENTRY '%s' at %L cannot be called recursively, as function '%s' is not "
"RECURSIVE"
msgstr ""
-#: fortran/resolve.c:3150
+#: fortran/resolve.c:3155
#, gcc-internal-format, gfc-internal-format
msgid ""
"Function '%s' at %L cannot be called recursively, as it is not RECURSIVE"
msgstr ""
-#: fortran/resolve.c:3189
+#: fortran/resolve.c:3194
#, gcc-internal-format, gfc-internal-format
msgid "Subroutine call to '%s' in FORALL block at %L is not PURE"
msgstr ""
-#: fortran/resolve.c:3192
+#: fortran/resolve.c:3197
#, gcc-internal-format, gfc-internal-format
msgid "Subroutine call to '%s' at %L is not PURE"
msgstr ""
-#: fortran/resolve.c:3255
+#: fortran/resolve.c:3260
#, gcc-internal-format, gfc-internal-format
msgid "There is no specific subroutine for the generic '%s' at %L"
msgstr ""
-#: fortran/resolve.c:3264
+#: fortran/resolve.c:3269
#, gcc-internal-format, gfc-internal-format
msgid ""
"Generic subroutine '%s' at %L is not consistent with an intrinsic subroutine "
"interface"
msgstr ""
-#: fortran/resolve.c:3372
+#: fortran/resolve.c:3377
#, gcc-internal-format, gfc-internal-format
msgid "Missing SHAPE parameter for call to %s at %L"
msgstr ""
-#: fortran/resolve.c:3380
+#: fortran/resolve.c:3385
#, gcc-internal-format, gfc-internal-format
msgid "SHAPE parameter for call to %s at %L must be a rank 1 INTEGER array"
msgstr ""
-#: fortran/resolve.c:3447
+#: fortran/resolve.c:3452
#, gcc-internal-format, gfc-internal-format
msgid ""
"Subroutine '%s' at %L is INTRINSIC but is not compatible with an intrinsic"
msgstr ""
-#: fortran/resolve.c:3491
+#: fortran/resolve.c:3496
#, gcc-internal-format, gfc-internal-format
msgid "Unable to resolve the specific subroutine '%s' at %L"
msgstr ""
-#: fortran/resolve.c:3551
+#: fortran/resolve.c:3556
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L has a type, which is not consistent with the CALL at %L"
msgstr ""
-#: fortran/resolve.c:3589
+#: fortran/resolve.c:3594
#, gcc-internal-format, gfc-internal-format
msgid ""
"ENTRY '%s' at %L cannot be called recursively, as subroutine '%s' is not "
"RECURSIVE"
msgstr ""
-#: fortran/resolve.c:3593
+#: fortran/resolve.c:3598
#, gcc-internal-format, gfc-internal-format
msgid ""
"SUBROUTINE '%s' at %L cannot be called recursively, as it is not RECURSIVE"
msgstr ""
-#: fortran/resolve.c:3669
+#: fortran/resolve.c:3674
#, gcc-internal-format, gfc-internal-format
msgid "Shapes for operands at %L and %L are not conformable"
msgstr ""
-#: fortran/resolve.c:4167
+#: fortran/resolve.c:4173
#, gcc-internal-format, gfc-internal-format
msgid "Array reference at %L is out of bounds (%ld < %ld) in dimension %d"
msgstr ""
-#: fortran/resolve.c:4172
+#: fortran/resolve.c:4178
#, gcc-internal-format, gfc-internal-format
msgid "Array reference at %L is out of bounds (%ld < %ld) in codimension %d"
msgstr ""
-#: fortran/resolve.c:4182
+#: fortran/resolve.c:4188
#, gcc-internal-format, gfc-internal-format
msgid "Array reference at %L is out of bounds (%ld > %ld) in dimension %d"
msgstr ""
-#: fortran/resolve.c:4187
+#: fortran/resolve.c:4193
#, gcc-internal-format, gfc-internal-format
msgid "Array reference at %L is out of bounds (%ld > %ld) in codimension %d"
msgstr ""
-#: fortran/resolve.c:4207
+#: fortran/resolve.c:4213
#, gcc-internal-format, gfc-internal-format
msgid "Illegal stride of zero at %L"
msgstr ""
-#: fortran/resolve.c:4224
+#: fortran/resolve.c:4230
#, gcc-internal-format, gfc-internal-format
msgid ""
"Lower array reference at %L is out of bounds (%ld < %ld) in dimension %d"
msgstr ""
-#: fortran/resolve.c:4232
+#: fortran/resolve.c:4238
#, gcc-internal-format, gfc-internal-format
msgid ""
"Lower array reference at %L is out of bounds (%ld > %ld) in dimension %d"
msgstr ""
-#: fortran/resolve.c:4248
+#: fortran/resolve.c:4254
#, gcc-internal-format, gfc-internal-format
msgid ""
"Upper array reference at %L is out of bounds (%ld < %ld) in dimension %d"
msgstr ""
-#: fortran/resolve.c:4257
+#: fortran/resolve.c:4263
#, gcc-internal-format, gfc-internal-format
msgid ""
"Upper array reference at %L is out of bounds (%ld > %ld) in dimension %d"
msgstr ""
-#: fortran/resolve.c:4296
+#: fortran/resolve.c:4302
#, gcc-internal-format, gfc-internal-format
msgid "Rightmost upper bound of assumed size array section not specified at %L"
msgstr ""
-#: fortran/resolve.c:4306
+#: fortran/resolve.c:4312
#, gcc-internal-format, gfc-internal-format
msgid "Rank mismatch in array reference at %L (%d/%d)"
msgstr ""
-#: fortran/resolve.c:4314
+#: fortran/resolve.c:4320
#, gcc-internal-format, gfc-internal-format
msgid "Coindex rank mismatch in array reference at %L (%d/%d)"
msgstr ""
-#: fortran/resolve.c:4329
+#: fortran/resolve.c:4336
#, gcc-internal-format, gfc-internal-format
msgid "Coindex of codimension %d must be a scalar at %L"
msgstr ""
-#: fortran/resolve.c:4357
+#: fortran/resolve.c:4372
#, gcc-internal-format, gfc-internal-format
msgid "Array index at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:4363
+#: fortran/resolve.c:4378
#, gcc-internal-format, gfc-internal-format
msgid "Array index at %L must be of INTEGER type, found %s"
msgstr ""
-#: fortran/resolve.c:4369
+#: fortran/resolve.c:4384
#, gcc-internal-format, gfc-internal-format
msgid "Extension: REAL array index at %L"
msgstr ""
-#: fortran/resolve.c:4408
+#: fortran/resolve.c:4423
#, gcc-internal-format, gfc-internal-format
msgid "Argument dim at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:4415
+#: fortran/resolve.c:4430
#, gcc-internal-format, gfc-internal-format
msgid "Argument dim at %L must be of INTEGER type"
msgstr ""
-#: fortran/resolve.c:4546
+#: fortran/resolve.c:4561
#, gcc-internal-format, gfc-internal-format
msgid "Array index at %L is an array of rank %d"
msgstr ""
-#: fortran/resolve.c:4620
+#: fortran/resolve.c:4635
#, gcc-internal-format, gfc-internal-format
msgid "Substring start index at %L must be of type INTEGER"
msgstr ""
-#: fortran/resolve.c:4627
+#: fortran/resolve.c:4642
#, gcc-internal-format, gfc-internal-format
msgid "Substring start index at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:4636
+#: fortran/resolve.c:4651
#, gcc-internal-format, gfc-internal-format
msgid "Substring start index at %L is less than one"
msgstr ""
-#: fortran/resolve.c:4649
+#: fortran/resolve.c:4664
#, gcc-internal-format, gfc-internal-format
msgid "Substring end index at %L must be of type INTEGER"
msgstr ""
-#: fortran/resolve.c:4656
+#: fortran/resolve.c:4671
#, gcc-internal-format, gfc-internal-format
msgid "Substring end index at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:4666
+#: fortran/resolve.c:4681
#, gcc-internal-format, gfc-internal-format
msgid "Substring end index at %L exceeds the string length"
msgstr ""
-#: fortran/resolve.c:4676
+#: fortran/resolve.c:4691
#, gcc-internal-format, gfc-internal-format
msgid "Substring end index at %L is too large"
msgstr ""
-#: fortran/resolve.c:4821
+#: fortran/resolve.c:4836
#, gcc-internal-format, gfc-internal-format
msgid ""
"Component to the right of a part reference with nonzero rank must not have "
"the POINTER attribute at %L"
msgstr ""
-#: fortran/resolve.c:4828
+#: fortran/resolve.c:4843
#, gcc-internal-format, gfc-internal-format
msgid ""
"Component to the right of a part reference with nonzero rank must not have "
"the ALLOCATABLE attribute at %L"
msgstr ""
-#: fortran/resolve.c:4847
+#: fortran/resolve.c:4862
#, gcc-internal-format, gfc-internal-format
msgid ""
"Two or more part references with nonzero rank must not be specified at %L"
msgstr ""
-#: fortran/resolve.c:5049
+#: fortran/resolve.c:5064
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s', used in a specification expression, is referenced at %L "
"before the ENTRY statement in which it is a parameter"
msgstr ""
-#: fortran/resolve.c:5054
+#: fortran/resolve.c:5069
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' is used at %L before the ENTRY statement in which it is a "
"parameter"
msgstr ""
-#: fortran/resolve.c:5118
+#: fortran/resolve.c:5133
#, gcc-internal-format, gfc-internal-format
msgid "Polymorphic subobject of coindexed object at %L"
msgstr ""
-#: fortran/resolve.c:5131
+#: fortran/resolve.c:5146
#, gcc-internal-format, gfc-internal-format
msgid "Coindexed object with polymorphic allocatable subcomponent at %L"
msgstr ""
-#: fortran/resolve.c:5463
+#: fortran/resolve.c:5478
#, gcc-internal-format, gfc-internal-format
msgid "Passed-object at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:5470
+#: fortran/resolve.c:5485
#, gcc-internal-format, gfc-internal-format
msgid ""
"Base object for procedure-pointer component call at %L is of ABSTRACT type "
"'%s'"
msgstr ""
-#: fortran/resolve.c:5502
+#: fortran/resolve.c:5517
#, gcc-internal-format, gfc-internal-format
msgid ""
"Base object for type-bound procedure call at %L is of ABSTRACT type '%s'"
msgstr ""
-#: fortran/resolve.c:5511
+#: fortran/resolve.c:5526
#, gcc-internal-format, gfc-internal-format
msgid "Base object for NOPASS type-bound procedure call at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:5519
+#: fortran/resolve.c:5534
#, gcc-internal-format, gfc-internal-format
msgid "Non-scalar base object at %L currently not implemented"
msgstr ""
#. Nothing matching found!
-#: fortran/resolve.c:5669
+#: fortran/resolve.c:5684
#, gcc-internal-format, gfc-internal-format
msgid ""
"Found no matching specific binding for the call to the GENERIC '%s' at %L"
msgstr ""
-#: fortran/resolve.c:5696
+#: fortran/resolve.c:5711
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L should be a SUBROUTINE"
msgstr ""
-#: fortran/resolve.c:5743
+#: fortran/resolve.c:5758
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L should be a FUNCTION"
msgstr ""
-#: fortran/resolve.c:6184
+#: fortran/resolve.c:6199
#, gcc-internal-format, gfc-internal-format
msgid "%s at %L must be a scalar"
msgstr ""
-#: fortran/resolve.c:6194
+#: fortran/resolve.c:6209
#, gcc-internal-format, gfc-internal-format
msgid "Deleted feature: %s at %L must be integer"
msgstr ""
-#: fortran/resolve.c:6198 fortran/resolve.c:6205
+#: fortran/resolve.c:6213 fortran/resolve.c:6220
#, gcc-internal-format, gfc-internal-format
msgid "%s at %L must be INTEGER"
msgstr ""
-#: fortran/resolve.c:6246
+#: fortran/resolve.c:6261
#, gcc-internal-format, gfc-internal-format
msgid "Step expression in DO loop at %L cannot be zero"
msgstr ""
-#: fortran/resolve.c:6281
+#: fortran/resolve.c:6296
#, gcc-internal-format, gfc-internal-format
msgid "DO loop at %L will be executed zero times"
msgstr ""
-#: fortran/resolve.c:6342
+#: fortran/resolve.c:6357
#, gcc-internal-format, gfc-internal-format
msgid "FORALL index-name at %L must be a scalar INTEGER"
msgstr ""
-#: fortran/resolve.c:6347
+#: fortran/resolve.c:6362
#, gcc-internal-format, gfc-internal-format
msgid "FORALL start expression at %L must be a scalar INTEGER"
msgstr ""
-#: fortran/resolve.c:6354
+#: fortran/resolve.c:6369
#, gcc-internal-format, gfc-internal-format
msgid "FORALL end expression at %L must be a scalar INTEGER"
msgstr ""
-#: fortran/resolve.c:6362
+#: fortran/resolve.c:6377
#, gcc-internal-format, gfc-internal-format
msgid "FORALL stride expression at %L must be a scalar %s"
msgstr ""
-#: fortran/resolve.c:6367
+#: fortran/resolve.c:6382
#, gcc-internal-format, gfc-internal-format
msgid "FORALL stride expression at %L cannot be zero"
msgstr ""
-#: fortran/resolve.c:6383
+#: fortran/resolve.c:6398
#, gcc-internal-format, gfc-internal-format
msgid "FORALL index '%s' may not appear in triplet specification at %L"
msgstr ""
-#: fortran/resolve.c:6477 fortran/resolve.c:6733
+#: fortran/resolve.c:6492 fortran/resolve.c:6772
#, gcc-internal-format, gfc-internal-format
msgid "Allocate-object at %L must be ALLOCATABLE or a POINTER"
msgstr ""
-#: fortran/resolve.c:6578
+#: fortran/resolve.c:6500 fortran/resolve.c:6738
+#, gcc-internal-format, gfc-internal-format
+msgid "Coindexed allocatable object at %L"
+msgstr ""
+
+#: fortran/resolve.c:6602
#, gcc-internal-format, gfc-internal-format
msgid ""
"Source-expr at %L must be scalar or have the same rank as the allocate-"
"object at %L"
msgstr ""
-#: fortran/resolve.c:6606
+#: fortran/resolve.c:6630
#, gcc-internal-format, gfc-internal-format
msgid "Source-expr at %L and allocate-object at %L must have the same shape"
msgstr ""
-#: fortran/resolve.c:6699
-#, gcc-internal-format, gfc-internal-format
-msgid "Coindexed allocatable object at %L"
-msgstr ""
-
-#: fortran/resolve.c:6744
+#: fortran/resolve.c:6783
#, gcc-internal-format, gfc-internal-format
msgid "Type of entity at %L is type incompatible with source-expr at %L"
msgstr ""
-#: fortran/resolve.c:6757
+#: fortran/resolve.c:6796
#, gcc-internal-format, gfc-internal-format
msgid ""
"The allocate-object at %L and the source-expr at %L shall have the same kind "
"type parameter"
msgstr ""
-#: fortran/resolve.c:6769
+#: fortran/resolve.c:6810
+#, gcc-internal-format, gfc-internal-format
+msgid ""
+"The source-expr at %L shall neither be of type LOCK_TYPE nor have a "
+"LOCK_TYPE component if allocate-object at %L is a coarray"
+msgstr ""
+
+#: fortran/resolve.c:6823
#, gcc-internal-format, gfc-internal-format
msgid ""
"Allocating %s of ABSTRACT base type at %L requires a type-spec or source-expr"
msgstr ""
-#: fortran/resolve.c:6841
+#: fortran/resolve.c:6895
#, gcc-internal-format, gfc-internal-format
msgid "Array specification required in ALLOCATE statement at %L"
msgstr ""
-#: fortran/resolve.c:6853
+#: fortran/resolve.c:6909
#, gcc-internal-format, gfc-internal-format
msgid "Coarray specification required in ALLOCATE statement at %L"
msgstr ""
-#: fortran/resolve.c:6879
+#: fortran/resolve.c:6936
#, gcc-internal-format, gfc-internal-format
msgid "Bad array specification in ALLOCATE statement at %L"
msgstr ""
-#: fortran/resolve.c:6898
+#: fortran/resolve.c:6955
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' must not appear in the array specification at %L in the same ALLOCATE "
"statement where it is itself allocated"
msgstr ""
-#: fortran/resolve.c:6913
+#: fortran/resolve.c:6970
#, gcc-internal-format, gfc-internal-format
msgid "Expected '*' in coindex specification in ALLOCATE statement at %L"
msgstr ""
-#: fortran/resolve.c:6924
+#: fortran/resolve.c:6981
#, gcc-internal-format, gfc-internal-format
msgid "Bad coarray specification in ALLOCATE statement at %L"
msgstr ""
-#: fortran/resolve.c:6931
+#: fortran/resolve.c:6988
#, gcc-internal-format, gfc-internal-format
msgid "Sorry, allocatable scalar coarrays are not yet supported at %L"
msgstr ""
-#: fortran/resolve.c:6961
+#: fortran/resolve.c:7018
#, gcc-internal-format, gfc-internal-format
msgid "Stat-variable at %L must be a scalar INTEGER variable"
msgstr ""
-#: fortran/resolve.c:6984
+#: fortran/resolve.c:7041
#, gcc-internal-format, gfc-internal-format
msgid "Stat-variable at %L shall not be %sd within the same %s statement"
msgstr ""
-#: fortran/resolve.c:6995
+#: fortran/resolve.c:7052
#, gcc-internal-format, gfc-internal-format
msgid "ERRMSG at %L is useless without a STAT tag"
msgstr ""
-#: fortran/resolve.c:7005
+#: fortran/resolve.c:7062
#, gcc-internal-format, gfc-internal-format
msgid "Errmsg-variable at %L must be a scalar CHARACTER variable"
msgstr ""
-#: fortran/resolve.c:7028
+#: fortran/resolve.c:7085
#, gcc-internal-format, gfc-internal-format
msgid "Errmsg-variable at %L shall not be %sd within the same %s statement"
msgstr ""
-#: fortran/resolve.c:7058
+#: fortran/resolve.c:7115
#, gcc-internal-format, gfc-internal-format
msgid "Allocate-object at %L also appears at %L"
msgstr ""
-#: fortran/resolve.c:7064 fortran/resolve.c:7070
+#: fortran/resolve.c:7121 fortran/resolve.c:7127
#, gcc-internal-format, gfc-internal-format
msgid "Allocate-object at %L is subobject of object at %L"
msgstr ""
@@ -40182,169 +40790,179 @@
#. element in the list. Either way, we must
#. issue an error and get the next case from P.
#. FIXME: Sort P and Q by line number.
-#: fortran/resolve.c:7265
+#: fortran/resolve.c:7322
#, gcc-internal-format, gfc-internal-format
msgid "CASE label at %L overlaps with CASE label at %L"
msgstr ""
-#: fortran/resolve.c:7316
+#: fortran/resolve.c:7373
#, gcc-internal-format, gfc-internal-format
msgid "Expression in CASE statement at %L must be of type %s"
msgstr ""
-#: fortran/resolve.c:7327
+#: fortran/resolve.c:7384
#, gcc-internal-format, gfc-internal-format
msgid "Expression in CASE statement at %L must be of kind %d"
msgstr ""
-#: fortran/resolve.c:7340
+#: fortran/resolve.c:7397
#, gcc-internal-format, gfc-internal-format
msgid "Expression in CASE statement at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:7386
+#: fortran/resolve.c:7443
#, gcc-internal-format, gfc-internal-format
msgid ""
"Selection expression in computed GOTO statement at %L must be a scalar "
"integer expression"
msgstr ""
-#: fortran/resolve.c:7404
+#: fortran/resolve.c:7461
#, gcc-internal-format, gfc-internal-format
msgid "Argument of SELECT statement at %L cannot be %s"
msgstr ""
-#: fortran/resolve.c:7413
+#: fortran/resolve.c:7470
#, gcc-internal-format, gfc-internal-format
msgid "Argument of SELECT statement at %L must be a scalar expression"
msgstr ""
-#: fortran/resolve.c:7432 fortran/resolve.c:7440
+#: fortran/resolve.c:7489 fortran/resolve.c:7497
#, gcc-internal-format, gfc-internal-format
msgid "Expression in CASE statement at %L is not in the range of %s"
msgstr ""
-#: fortran/resolve.c:7502 fortran/resolve.c:7808
+#: fortran/resolve.c:7559 fortran/resolve.c:7865
#, gcc-internal-format, gfc-internal-format
msgid ""
"The DEFAULT CASE at %L cannot be followed by a second DEFAULT CASE at %L"
msgstr ""
-#: fortran/resolve.c:7528
+#: fortran/resolve.c:7585
#, gcc-internal-format, gfc-internal-format
msgid "Logical range in CASE statement at %L is not allowed"
msgstr ""
-#: fortran/resolve.c:7540
+#: fortran/resolve.c:7597
#, gcc-internal-format, gfc-internal-format
msgid "Constant logical value in CASE statement is repeated at %L"
msgstr ""
-#: fortran/resolve.c:7554
+#: fortran/resolve.c:7611
#, gcc-internal-format, gfc-internal-format
msgid "Range specification at %L can never be matched"
msgstr ""
-#: fortran/resolve.c:7657
+#: fortran/resolve.c:7714
#, gcc-internal-format, gfc-internal-format
msgid "Logical SELECT CASE block at %L has more that two cases"
msgstr ""
-#: fortran/resolve.c:7721
+#: fortran/resolve.c:7778
#, gcc-internal-format, gfc-internal-format
msgid "Associate-name '%s' at %L is used as array"
msgstr ""
-#: fortran/resolve.c:7763
+#: fortran/resolve.c:7820
#, gcc-internal-format, gfc-internal-format
msgid "Selector shall be polymorphic in SELECT TYPE statement at %L"
msgstr ""
-#: fortran/resolve.c:7786
+#: fortran/resolve.c:7843
#, gcc-internal-format, gfc-internal-format
msgid "Derived type '%s' at %L must be extensible"
msgstr ""
-#: fortran/resolve.c:7796
+#: fortran/resolve.c:7853
#, gcc-internal-format, gfc-internal-format
msgid "Derived type '%s' at %L must be an extension of '%s'"
msgstr ""
-#: fortran/resolve.c:7966
+#: fortran/resolve.c:8023
#, gcc-internal-format, gfc-internal-format
msgid "Double CLASS IS block in SELECT TYPE statement at %L"
msgstr ""
#. FIXME: Test for defined input/output.
-#: fortran/resolve.c:8077
+#: fortran/resolve.c:8135
#, gcc-internal-format, gfc-internal-format
msgid ""
"Data transfer element at %L cannot be polymorphic unless it is processed by "
"a defined input/output procedure"
msgstr ""
-#: fortran/resolve.c:8089
+#: fortran/resolve.c:8147
#, gcc-internal-format, gfc-internal-format
msgid "Data transfer element at %L cannot have POINTER components"
msgstr ""
-#: fortran/resolve.c:8097
+#: fortran/resolve.c:8155
#, gcc-internal-format, gfc-internal-format
msgid "Data transfer element at %L cannot have procedure pointer components"
msgstr ""
-#: fortran/resolve.c:8104
+#: fortran/resolve.c:8162
#, gcc-internal-format, gfc-internal-format
msgid "Data transfer element at %L cannot have ALLOCATABLE components"
msgstr ""
-#: fortran/resolve.c:8111
+#: fortran/resolve.c:8169
#, gcc-internal-format, gfc-internal-format
msgid "Data transfer element at %L cannot have PRIVATE components"
msgstr ""
-#: fortran/resolve.c:8120
+#: fortran/resolve.c:8178
#, gcc-internal-format, gfc-internal-format
msgid ""
"Data transfer element at %L cannot be a full reference to an assumed-size "
"array"
msgstr ""
-#: fortran/resolve.c:8168
+#: fortran/resolve.c:8229
#, gcc-internal-format, gfc-internal-format
-msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression"
+msgid "Lock variable at %L must be a scalar coarray of type LOCK_TYPE"
msgstr ""
-#: fortran/resolve.c:8172 fortran/resolve.c:8182
-#, gcc-internal-format, gfc-internal-format
-msgid "Imageset argument at %L must between 1 and num_images()"
-msgstr ""
-
-#: fortran/resolve.c:8191
+#: fortran/resolve.c:8236 fortran/resolve.c:8300
#, gcc-internal-format, gfc-internal-format
msgid "STAT= argument at %L must be a scalar INTEGER variable"
msgstr ""
-#: fortran/resolve.c:8198
+#: fortran/resolve.c:8248 fortran/resolve.c:8307
#, gcc-internal-format, gfc-internal-format
msgid "ERRMSG= argument at %L must be a scalar CHARACTER variable"
msgstr ""
-#: fortran/resolve.c:8225
+#: fortran/resolve.c:8260
+#, gcc-internal-format, gfc-internal-format
+msgid "ACQUIRED_LOCK= argument at %L must be a scalar LOGICAL variable"
+msgstr ""
+
+#: fortran/resolve.c:8277
+#, gcc-internal-format, gfc-internal-format
+msgid "Imageset argument at %L must be a scalar or rank-1 INTEGER expression"
+msgstr ""
+
+#: fortran/resolve.c:8281 fortran/resolve.c:8291
+#, gcc-internal-format, gfc-internal-format
+msgid "Imageset argument at %L must between 1 and num_images()"
+msgstr ""
+
+#: fortran/resolve.c:8334
#, gcc-internal-format, gfc-internal-format
msgid ""
"Statement at %L is not a valid branch target statement for the branch "
"statement at %L"
msgstr ""
-#: fortran/resolve.c:8234
+#: fortran/resolve.c:8343
#, gcc-internal-format, gfc-internal-format
msgid "Branch at %L may result in an infinite loop"
msgstr ""
#. Note: A label at END CRITICAL does not leave the CRITICAL
#. construct as END CRITICAL is still part of it.
-#: fortran/resolve.c:8250 fortran/resolve.c:8268
+#: fortran/resolve.c:8359 fortran/resolve.c:8377
#, gcc-internal-format, gfc-internal-format
msgid "GOTO statement at %L leaves CRITICAL construct for label at %L"
msgstr ""
@@ -40352,127 +40970,127 @@
#. The label is not in an enclosing block, so illegal. This was
#. allowed in Fortran 66, so we allow it as extension. No
#. further checks are necessary in this case.
-#: fortran/resolve.c:8283
+#: fortran/resolve.c:8392
#, gcc-internal-format, gfc-internal-format
msgid "Label at %L is not in the same block as the GOTO statement at %L"
msgstr ""
-#: fortran/resolve.c:8358
+#: fortran/resolve.c:8467
#, gcc-internal-format, gfc-internal-format
msgid "WHERE mask at %L has inconsistent shape"
msgstr ""
-#: fortran/resolve.c:8374
+#: fortran/resolve.c:8483
#, gcc-internal-format, gfc-internal-format
msgid "WHERE assignment target at %L has inconsistent shape"
msgstr ""
-#: fortran/resolve.c:8382 fortran/resolve.c:8469
+#: fortran/resolve.c:8491 fortran/resolve.c:8578
#, gcc-internal-format, gfc-internal-format
msgid "Non-ELEMENTAL user-defined assignment in WHERE at %L"
msgstr ""
-#: fortran/resolve.c:8392 fortran/resolve.c:8479
+#: fortran/resolve.c:8501 fortran/resolve.c:8588
#, gcc-internal-format, gfc-internal-format
msgid "Unsupported statement inside WHERE at %L"
msgstr ""
-#: fortran/resolve.c:8423
+#: fortran/resolve.c:8532
#, gcc-internal-format, gfc-internal-format
msgid "Assignment to a FORALL index variable at %L"
msgstr ""
-#: fortran/resolve.c:8432
+#: fortran/resolve.c:8541
#, gcc-internal-format, gfc-internal-format
msgid ""
"The FORALL with index '%s' is not used on the left side of the assignment at "
"%L and so might cause multiple assignment to this object"
msgstr ""
-#: fortran/resolve.c:8601
+#: fortran/resolve.c:8710
#, gcc-internal-format, gfc-internal-format
msgid "An outer FORALL construct already has an index with this name %L"
msgstr ""
-#: fortran/resolve.c:8681
+#: fortran/resolve.c:8790
#, gcc-internal-format, gfc-internal-format
msgid "WHERE/ELSEWHERE clause at %L requires a LOGICAL array"
msgstr ""
-#: fortran/resolve.c:8833
+#: fortran/resolve.c:8942
#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER expression will be truncated in assignment (%d/%d) at %L"
msgstr ""
-#: fortran/resolve.c:8865
+#: fortran/resolve.c:8974
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed expression at %L is assigned to a derived type variable with a "
"POINTER component in a PURE procedure"
msgstr ""
-#: fortran/resolve.c:8870
+#: fortran/resolve.c:8979
#, gcc-internal-format, gfc-internal-format
msgid ""
"The impure variable at %L is assigned to a derived type variable with a "
"POINTER component in a PURE procedure (12.6)"
msgstr ""
-#: fortran/resolve.c:8880
+#: fortran/resolve.c:8989
#, gcc-internal-format, gfc-internal-format
msgid "Assignment to coindexed variable at %L in a PURE procedure"
msgstr ""
-#: fortran/resolve.c:8911
+#: fortran/resolve.c:9020
#, gcc-internal-format, gfc-internal-format
msgid "Variable must not be polymorphic in assignment at %L"
msgstr ""
-#: fortran/resolve.c:8919
+#: fortran/resolve.c:9028
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coindexed variable must not be have an allocatable ultimate component in "
"assignment at %L"
msgstr ""
-#: fortran/resolve.c:9041
+#: fortran/resolve.c:9155
#, gcc-internal-format, gfc-internal-format
msgid "ASSIGNED GOTO statement at %L requires an INTEGER variable"
msgstr ""
-#: fortran/resolve.c:9044
+#: fortran/resolve.c:9158
#, gcc-internal-format, gfc-internal-format
msgid "Variable '%s' has not been assigned a target label at %L"
msgstr ""
-#: fortran/resolve.c:9055
+#: fortran/resolve.c:9169
#, gcc-internal-format, gfc-internal-format
msgid ""
"Alternate RETURN statement at %L requires a SCALAR-INTEGER return specifier"
msgstr ""
-#: fortran/resolve.c:9090
+#: fortran/resolve.c:9204
#, gcc-internal-format, gfc-internal-format
msgid "ASSIGN statement at %L requires a scalar default INTEGER variable"
msgstr ""
-#: fortran/resolve.c:9121
+#: fortran/resolve.c:9237
#, gcc-internal-format, gfc-internal-format
msgid "Arithmetic IF statement at %L requires a numeric expression"
msgstr ""
-#: fortran/resolve.c:9180
+#: fortran/resolve.c:9296
#, gcc-internal-format, gfc-internal-format
msgid ""
"Exit condition of DO WHILE loop at %L must be a scalar LOGICAL expression"
msgstr ""
-#: fortran/resolve.c:9263
+#: fortran/resolve.c:9379
#, gcc-internal-format, gfc-internal-format
msgid "FORALL mask clause at %L requires a scalar LOGICAL expression"
msgstr ""
-#: fortran/resolve.c:9342 fortran/resolve.c:9398
+#: fortran/resolve.c:9458 fortran/resolve.c:9514
#, gcc-internal-format, gfc-internal-format
msgid ""
"Binding label '%s' for common block '%s' at %L collides with the global "
@@ -40480,14 +41098,14 @@
msgstr ""
#. Common block names match but binding labels do not.
-#: fortran/resolve.c:9363
+#: fortran/resolve.c:9479
#, gcc-internal-format, gfc-internal-format
msgid ""
"Binding label '%s' for common block '%s' at %L does not match the binding "
"label '%s' for common block '%s' at %L"
msgstr ""
-#: fortran/resolve.c:9410
+#: fortran/resolve.c:9526
#, gcc-internal-format, gfc-internal-format
msgid ""
"Binding label '%s' for common block '%s' at %L collides with global entity "
@@ -40495,74 +41113,74 @@
msgstr ""
#. Make sure global procedures don't collide with anything.
-#: fortran/resolve.c:9462
+#: fortran/resolve.c:9578
#, gcc-internal-format, gfc-internal-format
msgid "Binding label '%s' at %L collides with the global entity '%s' at %L"
msgstr ""
#. Make sure procedures in interface bodies don't collide.
-#: fortran/resolve.c:9475
+#: fortran/resolve.c:9591
#, gcc-internal-format, gfc-internal-format
msgid ""
"Binding label '%s' in interface body at %L collides with the global entity "
"'%s' at %L"
msgstr ""
-#: fortran/resolve.c:9488
+#: fortran/resolve.c:9604
#, gcc-internal-format, gfc-internal-format
msgid "Binding label '%s' at %L collides with global entity '%s' at %L"
msgstr ""
-#: fortran/resolve.c:9567
+#: fortran/resolve.c:9683
#, gcc-internal-format, gfc-internal-format
msgid ""
"CHARACTER variable at %L has negative length %d, the length has been set to "
"zero"
msgstr ""
-#: fortran/resolve.c:9580
+#: fortran/resolve.c:9696
#, gcc-internal-format, gfc-internal-format
msgid "String length at %L is too large"
msgstr ""
-#: fortran/resolve.c:9868
+#: fortran/resolve.c:9989
#, gcc-internal-format, gfc-internal-format
msgid "Allocatable array '%s' at %L must have a deferred shape"
msgstr ""
-#: fortran/resolve.c:9872
+#: fortran/resolve.c:9993
#, gcc-internal-format, gfc-internal-format
msgid "Scalar object '%s' at %L may not be ALLOCATABLE"
msgstr ""
-#: fortran/resolve.c:9880
+#: fortran/resolve.c:10001
#, gcc-internal-format, gfc-internal-format
msgid "Array pointer '%s' at %L must have a deferred shape"
msgstr ""
-#: fortran/resolve.c:9890
+#: fortran/resolve.c:10011
#, gcc-internal-format, gfc-internal-format
msgid "Array '%s' at %L cannot have a deferred shape"
msgstr ""
-#: fortran/resolve.c:9903
+#: fortran/resolve.c:10024
#, gcc-internal-format, gfc-internal-format
msgid "Type '%s' of CLASS variable '%s' at %L is not extensible"
msgstr ""
-#: fortran/resolve.c:9915
+#: fortran/resolve.c:10036
#, gcc-internal-format, gfc-internal-format
msgid "CLASS variable '%s' at %L must be dummy, allocatable or pointer"
msgstr ""
-#: fortran/resolve.c:9944
+#: fortran/resolve.c:10065
#, gcc-internal-format, gfc-internal-format
msgid ""
"The type '%s' cannot be host associated at %L because it is blocked by an "
"incompatible object of the same name declared at %L"
msgstr ""
-#: fortran/resolve.c:9966
+#: fortran/resolve.c:10087
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2008: Implied SAVE for module variable '%s' at %L, needed due to the "
@@ -40571,197 +41189,197 @@
#. The shape of a main program or module array needs to be
#. constant.
-#: fortran/resolve.c:10013
+#: fortran/resolve.c:10134
#, gcc-internal-format, gfc-internal-format
msgid "The module or main program array '%s' at %L must have constant shape"
msgstr ""
-#: fortran/resolve.c:10022
+#: fortran/resolve.c:10143
#, gcc-internal-format, gfc-internal-format
msgid ""
"Entity '%s' at %L has a deferred type parameter and requires either the "
"pointer or allocatable attribute"
msgstr ""
-#: fortran/resolve.c:10036
+#: fortran/resolve.c:10157
#, gcc-internal-format, gfc-internal-format
msgid ""
"Entity with assumed character length at %L must be a dummy argument or a "
"PARAMETER"
msgstr ""
-#: fortran/resolve.c:10055
+#: fortran/resolve.c:10176
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L must have constant character length in this context"
msgstr ""
-#: fortran/resolve.c:10092
+#: fortran/resolve.c:10220
#, gcc-internal-format, gfc-internal-format
msgid "Allocatable '%s' at %L cannot have an initializer"
msgstr ""
-#: fortran/resolve.c:10095
+#: fortran/resolve.c:10223
#, gcc-internal-format, gfc-internal-format
msgid "External '%s' at %L cannot have an initializer"
msgstr ""
-#: fortran/resolve.c:10099
+#: fortran/resolve.c:10227
#, gcc-internal-format, gfc-internal-format
msgid "Dummy '%s' at %L cannot have an initializer"
msgstr ""
-#: fortran/resolve.c:10102
+#: fortran/resolve.c:10230
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic '%s' at %L cannot have an initializer"
msgstr ""
-#: fortran/resolve.c:10105
+#: fortran/resolve.c:10233
#, gcc-internal-format, gfc-internal-format
msgid "Function result '%s' at %L cannot have an initializer"
msgstr ""
-#: fortran/resolve.c:10108
+#: fortran/resolve.c:10236
#, gcc-internal-format, gfc-internal-format
msgid "Automatic array '%s' at %L cannot have an initializer"
msgstr ""
-#: fortran/resolve.c:10145
+#: fortran/resolve.c:10273
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character-valued statement function '%s' at %L must have constant length"
msgstr ""
-#: fortran/resolve.c:10167
+#: fortran/resolve.c:10295
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: '%s' is of a PRIVATE type and cannot be a dummy argument of "
"'%s', which is PUBLIC at %L"
msgstr ""
-#: fortran/resolve.c:10189 fortran/resolve.c:10213
+#: fortran/resolve.c:10317 fortran/resolve.c:10341
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: Procedure '%s' in PUBLIC interface '%s' at %L takes dummy "
"arguments of '%s' which is PRIVATE"
msgstr ""
-#: fortran/resolve.c:10231
+#: fortran/resolve.c:10359
#, gcc-internal-format, gfc-internal-format
msgid "Function '%s' at %L cannot have an initializer"
msgstr ""
-#: fortran/resolve.c:10240
+#: fortran/resolve.c:10368
#, gcc-internal-format, gfc-internal-format
msgid "External object '%s' at %L may not have an initializer"
msgstr ""
-#: fortran/resolve.c:10248
+#: fortran/resolve.c:10376
#, gcc-internal-format, gfc-internal-format
msgid "ELEMENTAL function '%s' at %L must have a scalar result"
msgstr ""
-#: fortran/resolve.c:10258
+#: fortran/resolve.c:10386
#, gcc-internal-format, gfc-internal-format
msgid ""
"Statement function '%s' at %L may not have pointer or allocatable attribute"
msgstr ""
-#: fortran/resolve.c:10277
+#: fortran/resolve.c:10405
#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER(*) function '%s' at %L cannot be array-valued"
msgstr ""
-#: fortran/resolve.c:10281
+#: fortran/resolve.c:10409
#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER(*) function '%s' at %L cannot be pointer-valued"
msgstr ""
-#: fortran/resolve.c:10285
+#: fortran/resolve.c:10413
#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER(*) function '%s' at %L cannot be pure"
msgstr ""
-#: fortran/resolve.c:10289
+#: fortran/resolve.c:10417
#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER(*) function '%s' at %L cannot be recursive"
msgstr ""
-#: fortran/resolve.c:10301
+#: fortran/resolve.c:10429
#, gcc-internal-format, gfc-internal-format
msgid "Obsolescent feature: CHARACTER(*) function '%s' at %L"
msgstr ""
-#: fortran/resolve.c:10356
+#: fortran/resolve.c:10484
#, gcc-internal-format, gfc-internal-format
msgid "PROCEDURE attribute conflicts with SAVE attribute in '%s' at %L"
msgstr ""
-#: fortran/resolve.c:10362
+#: fortran/resolve.c:10490
#, gcc-internal-format, gfc-internal-format
msgid "PROCEDURE attribute conflicts with INTENT attribute in '%s' at %L"
msgstr ""
-#: fortran/resolve.c:10368
+#: fortran/resolve.c:10496
#, gcc-internal-format, gfc-internal-format
msgid "PROCEDURE attribute conflicts with RESULT attribute in '%s' at %L"
msgstr ""
-#: fortran/resolve.c:10376
+#: fortran/resolve.c:10504
#, gcc-internal-format, gfc-internal-format
msgid "EXTERNAL attribute conflicts with FUNCTION attribute in '%s' at %L"
msgstr ""
-#: fortran/resolve.c:10382
+#: fortran/resolve.c:10510
#, gcc-internal-format, gfc-internal-format
msgid "Procedure pointer result '%s' at %L is missing the pointer attribute"
msgstr ""
-#: fortran/resolve.c:10428
+#: fortran/resolve.c:10556
#, gcc-internal-format, gfc-internal-format
msgid "FINAL procedure '%s' at %L is not a SUBROUTINE"
msgstr ""
-#: fortran/resolve.c:10436
+#: fortran/resolve.c:10564
#, gcc-internal-format, gfc-internal-format
msgid "FINAL procedure at %L must have exactly one argument"
msgstr ""
-#: fortran/resolve.c:10445
+#: fortran/resolve.c:10573
#, gcc-internal-format, gfc-internal-format
msgid "Argument of FINAL procedure at %L must be of type '%s'"
msgstr ""
-#: fortran/resolve.c:10453
+#: fortran/resolve.c:10581
#, gcc-internal-format, gfc-internal-format
msgid "Argument of FINAL procedure at %L must not be a POINTER"
msgstr ""
-#: fortran/resolve.c:10459
+#: fortran/resolve.c:10587
#, gcc-internal-format, gfc-internal-format
msgid "Argument of FINAL procedure at %L must not be ALLOCATABLE"
msgstr ""
-#: fortran/resolve.c:10465
+#: fortran/resolve.c:10593
#, gcc-internal-format, gfc-internal-format
msgid "Argument of FINAL procedure at %L must not be OPTIONAL"
msgstr ""
-#: fortran/resolve.c:10473
+#: fortran/resolve.c:10601
#, gcc-internal-format, gfc-internal-format
msgid "Argument of FINAL procedure at %L must not be INTENT(OUT)"
msgstr ""
-#: fortran/resolve.c:10481
+#: fortran/resolve.c:10609
#, gcc-internal-format, gfc-internal-format
msgid "Non-scalar FINAL procedure at %L should have assumed shape argument"
msgstr ""
-#: fortran/resolve.c:10500
+#: fortran/resolve.c:10628
#, gcc-internal-format, gfc-internal-format
msgid "FINAL procedure '%s' declared at %L has the same rank (%d) as '%s'"
msgstr ""
-#: fortran/resolve.c:10533
+#: fortran/resolve.c:10661
#, gcc-internal-format, gfc-internal-format
msgid ""
"Only array FINAL procedures declared for derived type '%s' defined at %L, "
@@ -40769,362 +41387,362 @@
msgstr ""
#. TODO: Remove this error when finalization is finished.
-#: fortran/resolve.c:10538
+#: fortran/resolve.c:10666
#, gcc-internal-format, gfc-internal-format
msgid "Finalization at %L is not yet implemented"
msgstr ""
-#: fortran/resolve.c:10564
+#: fortran/resolve.c:10692
#, gcc-internal-format, gfc-internal-format
msgid "Can't overwrite GENERIC '%s' at %L"
msgstr ""
-#: fortran/resolve.c:10576
+#: fortran/resolve.c:10704
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L overrides a procedure binding declared NON_OVERRIDABLE"
msgstr ""
-#: fortran/resolve.c:10584
+#: fortran/resolve.c:10712
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L must not be DEFERRED as it overrides a non-DEFERRED binding"
msgstr ""
-#: fortran/resolve.c:10592
+#: fortran/resolve.c:10720
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L overrides a PURE procedure and must also be PURE"
msgstr ""
-#: fortran/resolve.c:10601
+#: fortran/resolve.c:10729
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L overrides an ELEMENTAL procedure and must also be ELEMENTAL"
msgstr ""
-#: fortran/resolve.c:10607
+#: fortran/resolve.c:10735
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L overrides a non-ELEMENTAL procedure and must not be ELEMENTAL, "
"either"
msgstr ""
-#: fortran/resolve.c:10616
+#: fortran/resolve.c:10744
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L overrides a SUBROUTINE and must also be a SUBROUTINE"
msgstr ""
-#: fortran/resolve.c:10627
+#: fortran/resolve.c:10755
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L overrides a FUNCTION and must also be a FUNCTION"
msgstr ""
-#: fortran/resolve.c:10638
+#: fortran/resolve.c:10766
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L and the overridden FUNCTION should have matching result types"
msgstr ""
-#: fortran/resolve.c:10649
+#: fortran/resolve.c:10777
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L overrides a PUBLIC procedure and must not be PRIVATE"
msgstr ""
-#: fortran/resolve.c:10678
+#: fortran/resolve.c:10806
#, gcc-internal-format, gfc-internal-format
msgid ""
"Dummy argument '%s' of '%s' at %L should be named '%s' as to match the "
"corresponding argument of the overridden procedure"
msgstr ""
-#: fortran/resolve.c:10691
+#: fortran/resolve.c:10819
#, gcc-internal-format, gfc-internal-format
msgid ""
"Types mismatch for dummy argument '%s' of '%s' %L in respect to the "
"overridden procedure"
msgstr ""
-#: fortran/resolve.c:10701
+#: fortran/resolve.c:10829
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L must have the same number of formal arguments as the overridden "
"procedure"
msgstr ""
-#: fortran/resolve.c:10710
+#: fortran/resolve.c:10838
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L overrides a NOPASS binding and must also be NOPASS"
msgstr ""
-#: fortran/resolve.c:10721
+#: fortran/resolve.c:10849
#, gcc-internal-format, gfc-internal-format
msgid "'%s' at %L overrides a binding with PASS and must also be PASS"
msgstr ""
-#: fortran/resolve.c:10728
+#: fortran/resolve.c:10856
#, gcc-internal-format, gfc-internal-format
msgid ""
"Passed-object dummy argument of '%s' at %L must be at the same position as "
"the passed-object dummy argument of the overridden procedure"
msgstr ""
-#: fortran/resolve.c:10762
+#: fortran/resolve.c:10890
#, gcc-internal-format, gfc-internal-format
msgid "'%s' and '%s' can't be mixed FUNCTION/SUBROUTINE for GENERIC '%s' at %L"
msgstr ""
-#: fortran/resolve.c:10771
+#: fortran/resolve.c:10899
#, gcc-internal-format, gfc-internal-format
msgid "'%s' and '%s' for GENERIC '%s' at %L are ambiguous"
msgstr ""
-#: fortran/resolve.c:10830
+#: fortran/resolve.c:10958
#, gcc-internal-format, gfc-internal-format
msgid "Undefined specific binding '%s' as target of GENERIC '%s' at %L"
msgstr ""
-#: fortran/resolve.c:10842
+#: fortran/resolve.c:10970
#, gcc-internal-format, gfc-internal-format
msgid "GENERIC '%s' at %L must target a specific binding, '%s' is GENERIC, too"
msgstr ""
-#: fortran/resolve.c:10872
+#: fortran/resolve.c:11000
#, gcc-internal-format, gfc-internal-format
msgid "GENERIC '%s' at %L can't overwrite specific binding with the same name"
msgstr ""
-#: fortran/resolve.c:10928
+#: fortran/resolve.c:11056
#, gcc-internal-format, gfc-internal-format
msgid "Type-bound operator at %L can't be NOPASS"
msgstr ""
-#: fortran/resolve.c:11091
+#: fortran/resolve.c:11219
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' must be a module procedure or an external procedure with an explicit "
"interface at %L"
msgstr ""
-#: fortran/resolve.c:11128
+#: fortran/resolve.c:11256
#, gcc-internal-format, gfc-internal-format
msgid "Procedure '%s' with PASS(%s) at %L has no argument '%s'"
msgstr ""
-#: fortran/resolve.c:11142
+#: fortran/resolve.c:11270
#, gcc-internal-format, gfc-internal-format
msgid "Procedure '%s' with PASS at %L must have at least one argument"
msgstr ""
-#: fortran/resolve.c:11156 fortran/resolve.c:11610
+#: fortran/resolve.c:11284 fortran/resolve.c:11738
#, gcc-internal-format, gfc-internal-format
msgid "Non-polymorphic passed-object dummy argument of '%s' at %L"
msgstr ""
-#: fortran/resolve.c:11164
+#: fortran/resolve.c:11292
#, gcc-internal-format, gfc-internal-format
msgid ""
"Argument '%s' of '%s' with PASS(%s) at %L must be of the derived-type '%s'"
msgstr ""
-#: fortran/resolve.c:11173
+#: fortran/resolve.c:11301
#, gcc-internal-format, gfc-internal-format
msgid "Passed-object dummy argument of '%s' at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:11179
+#: fortran/resolve.c:11307
#, gcc-internal-format, gfc-internal-format
msgid "Passed-object dummy argument of '%s' at %L must not be ALLOCATABLE"
msgstr ""
-#: fortran/resolve.c:11185
+#: fortran/resolve.c:11313
#, gcc-internal-format, gfc-internal-format
msgid "Passed-object dummy argument of '%s' at %L must not be POINTER"
msgstr ""
-#: fortran/resolve.c:11211
+#: fortran/resolve.c:11339
#, gcc-internal-format, gfc-internal-format
msgid "Procedure '%s' at %L has the same name as a component of '%s'"
msgstr ""
-#: fortran/resolve.c:11220
+#: fortran/resolve.c:11348
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure '%s' at %L has the same name as an inherited component of '%s'"
msgstr ""
-#: fortran/resolve.c:11310
+#: fortran/resolve.c:11438
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived-type '%s' declared at %L must be ABSTRACT because '%s' is DEFERRED "
"and not overridden"
msgstr ""
-#: fortran/resolve.c:11379
+#: fortran/resolve.c:11507
#, gcc-internal-format, gfc-internal-format
msgid ""
"As extending type '%s' at %L has a coarray component, parent type '%s' shall "
"also have one"
msgstr ""
-#: fortran/resolve.c:11392
+#: fortran/resolve.c:11520
#, gcc-internal-format, gfc-internal-format
msgid "Non-extensible derived-type '%s' at %L must not be ABSTRACT"
msgstr ""
-#: fortran/resolve.c:11403
+#: fortran/resolve.c:11531
#, gcc-internal-format, gfc-internal-format
msgid "Coarray component '%s' at %L must be allocatable with deferred shape"
msgstr ""
-#: fortran/resolve.c:11412
+#: fortran/resolve.c:11540
#, gcc-internal-format, gfc-internal-format
msgid ""
"Component '%s' at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
msgstr ""
-#: fortran/resolve.c:11422
+#: fortran/resolve.c:11550
#, gcc-internal-format, gfc-internal-format
msgid ""
"Component '%s' at %L with coarray component shall be a nonpointer, "
"nonallocatable scalar"
msgstr ""
-#: fortran/resolve.c:11431
+#: fortran/resolve.c:11559
#, gcc-internal-format, gfc-internal-format
msgid ""
"Component '%s' at %L has the CONTIGUOUS attribute but is not an array pointer"
msgstr ""
-#: fortran/resolve.c:11439
+#: fortran/resolve.c:11567
#, gcc-internal-format, gfc-internal-format
msgid ""
"Interface '%s', used by procedure pointer component '%s' at %L, is declared "
"in a later PROCEDURE statement"
msgstr ""
-#: fortran/resolve.c:11504
+#: fortran/resolve.c:11632
#, gcc-internal-format, gfc-internal-format
msgid ""
"Interface '%s' of procedure pointer component '%s' at %L must be explicit"
msgstr ""
-#: fortran/resolve.c:11544
+#: fortran/resolve.c:11672
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure pointer component '%s' with PASS(%s) at %L has no argument '%s'"
msgstr ""
-#: fortran/resolve.c:11558
+#: fortran/resolve.c:11686
#, gcc-internal-format, gfc-internal-format
msgid ""
"Procedure pointer component '%s' with PASS at %L must have at least one "
"argument"
msgstr ""
-#: fortran/resolve.c:11574
+#: fortran/resolve.c:11702
#, gcc-internal-format, gfc-internal-format
msgid ""
"Argument '%s' of '%s' with PASS(%s) at %L must be of the derived type '%s'"
msgstr ""
-#: fortran/resolve.c:11584
+#: fortran/resolve.c:11712
#, gcc-internal-format, gfc-internal-format
msgid "Argument '%s' of '%s' with PASS(%s) at %L must be scalar"
msgstr ""
-#: fortran/resolve.c:11593
+#: fortran/resolve.c:11721
#, gcc-internal-format, gfc-internal-format
msgid ""
"Argument '%s' of '%s' with PASS(%s) at %L may not have the POINTER attribute"
msgstr ""
-#: fortran/resolve.c:11602
+#: fortran/resolve.c:11730
#, gcc-internal-format, gfc-internal-format
msgid "Argument '%s' of '%s' with PASS(%s) at %L may not be ALLOCATABLE"
msgstr ""
-#: fortran/resolve.c:11631
+#: fortran/resolve.c:11759
#, gcc-internal-format, gfc-internal-format
msgid ""
"Component '%s' of '%s' at %L has the same name as an inherited type-bound "
"procedure"
msgstr ""
-#: fortran/resolve.c:11644
+#: fortran/resolve.c:11772
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character length of component '%s' needs to be a constant specification "
"expression at %L"
msgstr ""
-#: fortran/resolve.c:11655
+#: fortran/resolve.c:11783
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character component '%s' of '%s' at %L with deferred length must be a "
"POINTER or ALLOCATABLE"
msgstr ""
-#: fortran/resolve.c:11667
+#: fortran/resolve.c:11795
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: the component '%s' is a PRIVATE type and cannot be a component "
"of '%s', which is PUBLIC at %L"
msgstr ""
-#: fortran/resolve.c:11675
+#: fortran/resolve.c:11803
#, gcc-internal-format, gfc-internal-format
msgid "Polymorphic component %s at %L in SEQUENCE or BIND(C) type %s"
msgstr ""
-#: fortran/resolve.c:11684
+#: fortran/resolve.c:11812
#, gcc-internal-format, gfc-internal-format
msgid ""
"Component %s of SEQUENCE type declared at %L does not have the SEQUENCE "
"attribute"
msgstr ""
-#: fortran/resolve.c:11695 fortran/resolve.c:11705
+#: fortran/resolve.c:11823 fortran/resolve.c:11834
#, gcc-internal-format, gfc-internal-format
msgid ""
"The pointer component '%s' of '%s' at %L is a type that has not been declared"
msgstr ""
-#: fortran/resolve.c:11716
+#: fortran/resolve.c:11846
#, gcc-internal-format, gfc-internal-format
msgid "Component '%s' with CLASS at %L must be allocatable or pointer"
msgstr ""
-#: fortran/resolve.c:11771
+#: fortran/resolve.c:11901
#, gcc-internal-format, gfc-internal-format
msgid "Assumed size array '%s' in namelist '%s' at %L is not allowed"
msgstr ""
-#: fortran/resolve.c:11777
+#: fortran/resolve.c:11907
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: NAMELIST array object '%s' with assumed shape in namelist '%s' "
"at %L"
msgstr ""
-#: fortran/resolve.c:11784
+#: fortran/resolve.c:11914
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: NAMELIST array object '%s' with nonconstant shape in namelist "
"'%s' at %L"
msgstr ""
-#: fortran/resolve.c:11793
+#: fortran/resolve.c:11923
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: NAMELIST object '%s' with nonconstant character length in "
"namelist '%s' at %L"
msgstr ""
-#: fortran/resolve.c:11803
+#: fortran/resolve.c:11933
#, gcc-internal-format, gfc-internal-format
msgid ""
"NAMELIST object '%s' in namelist '%s' at %L is polymorphic and requires a "
"defined input/output procedure"
msgstr ""
-#: fortran/resolve.c:11813
+#: fortran/resolve.c:11943
#, gcc-internal-format, gfc-internal-format
msgid ""
"Fortran 2003: NAMELIST object '%s' in namelist '%s' at %L with ALLOCATABLE "
@@ -41133,357 +41751,367 @@
#. FIXME: Once UDDTIO is implemented, the following can be
#. removed.
-#: fortran/resolve.c:11821
+#: fortran/resolve.c:11951
#, gcc-internal-format, gfc-internal-format
msgid ""
"NAMELIST object '%s' in namelist '%s' at %L has ALLOCATABLE or POINTER "
"components and thus requires a defined input/output procedure"
msgstr ""
-#: fortran/resolve.c:11838
+#: fortran/resolve.c:11968
#, gcc-internal-format, gfc-internal-format
msgid ""
"NAMELIST object '%s' was declared PRIVATE and cannot be member of PUBLIC "
"namelist '%s' at %L"
msgstr ""
-#: fortran/resolve.c:11848
+#: fortran/resolve.c:11978
#, gcc-internal-format, gfc-internal-format
msgid ""
"NAMELIST object '%s' has use-associated PRIVATE components and cannot be "
"member of namelist '%s' at %L"
msgstr ""
-#: fortran/resolve.c:11859
+#: fortran/resolve.c:11989
#, gcc-internal-format, gfc-internal-format
msgid ""
"NAMELIST object '%s' has PRIVATE components and cannot be a member of PUBLIC "
"namelist '%s' at %L"
msgstr ""
-#: fortran/resolve.c:11886
+#: fortran/resolve.c:12016
#, gcc-internal-format, gfc-internal-format
msgid "PROCEDURE attribute conflicts with NAMELIST attribute in '%s' at %L"
msgstr ""
-#: fortran/resolve.c:11905
+#: fortran/resolve.c:12035
#, gcc-internal-format, gfc-internal-format
msgid "Parameter array '%s' at %L cannot be automatic or of deferred shape"
msgstr ""
-#: fortran/resolve.c:11917
+#: fortran/resolve.c:12047
#, gcc-internal-format, gfc-internal-format
msgid ""
"Implicitly typed PARAMETER '%s' at %L doesn't match a later IMPLICIT type"
msgstr ""
-#: fortran/resolve.c:11928
+#: fortran/resolve.c:12058
#, gcc-internal-format, gfc-internal-format
msgid "Incompatible derived type in PARAMETER at %L"
msgstr ""
-#: fortran/resolve.c:12000
+#: fortran/resolve.c:12125
#, gcc-internal-format, gfc-internal-format
msgid "PROTECTED attribute conflicts with EXTERNAL attribute at %L"
msgstr ""
-#: fortran/resolve.c:12003
+#: fortran/resolve.c:12128
#, gcc-internal-format, gfc-internal-format
msgid "PROCEDURE attribute conflicts with PROTECTED attribute at %L"
msgstr ""
-#: fortran/resolve.c:12015
+#: fortran/resolve.c:12140
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L has the CONTIGUOUS attribute but is not an array pointer or an "
"assumed-shape array"
msgstr ""
-#: fortran/resolve.c:12089
+#: fortran/resolve.c:12214
#, gcc-internal-format, gfc-internal-format
msgid "Assumed size array at %L must be a dummy argument"
msgstr ""
-#: fortran/resolve.c:12092
+#: fortran/resolve.c:12217
#, gcc-internal-format, gfc-internal-format
msgid "Assumed shape array at %L must be a dummy argument"
msgstr ""
-#: fortran/resolve.c:12105
+#: fortran/resolve.c:12230
#, gcc-internal-format, gfc-internal-format
msgid "Symbol at %L is not a DUMMY variable"
msgstr ""
-#: fortran/resolve.c:12111
+#: fortran/resolve.c:12236
#, gcc-internal-format, gfc-internal-format
msgid ""
"'%s' at %L cannot have the VALUE attribute because it is not a dummy argument"
msgstr ""
-#: fortran/resolve.c:12121
+#: fortran/resolve.c:12246
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character dummy variable '%s' at %L with VALUE attribute must have constant "
"length"
msgstr ""
-#: fortran/resolve.c:12130
+#: fortran/resolve.c:12255
#, gcc-internal-format, gfc-internal-format
msgid ""
"C interoperable character dummy variable '%s' at %L with VALUE attribute "
"must have length one"
msgstr ""
-#: fortran/resolve.c:12156
+#: fortran/resolve.c:12281
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %L cannot be BIND(C) because it is neither a COMMON block "
"nor declared at the module level scope"
msgstr ""
-#: fortran/resolve.c:12209
+#: fortran/resolve.c:12334
#, gcc-internal-format, gfc-internal-format
msgid "The derived type '%s' at %L is of type '%s', which has not been defined"
msgstr ""
-#: fortran/resolve.c:12248
+#: fortran/resolve.c:12373
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: PUBLIC %s '%s' at %L of PRIVATE derived type '%s'"
msgstr ""
-#: fortran/resolve.c:12267
+#: fortran/resolve.c:12386
+#, gcc-internal-format, gfc-internal-format
+msgid "Variable '%s' at %L of type LOCK_TYPE must be a coarray"
+msgstr ""
+
+#: fortran/resolve.c:12403
#, gcc-internal-format, gfc-internal-format
msgid ""
"The INTENT(OUT) dummy argument '%s' at %L is ASSUMED SIZE and so cannot have "
"a default initializer"
msgstr ""
-#: fortran/resolve.c:12279
+#: fortran/resolve.c:12414
+#, gcc-internal-format, gfc-internal-format
+msgid "Dummy argument '%s' at %L of LOCK_TYPE shall not be INTENT(OUT)"
+msgstr ""
+
+#: fortran/resolve.c:12421
#, gcc-internal-format, gfc-internal-format
msgid ""
"Function result '%s' at %L shall not be a coarray or have a coarray component"
msgstr ""
-#: fortran/resolve.c:12285
+#: fortran/resolve.c:12427
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %L of TYPE(C_PTR) or TYPE(C_FUNPTR) shall not be a coarray"
msgstr ""
-#: fortran/resolve.c:12292
+#: fortran/resolve.c:12434
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %L with coarray component shall be a nonpointer, "
"nonallocatable scalar"
msgstr ""
-#: fortran/resolve.c:12303
+#: fortran/resolve.c:12446
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %L is a coarray or has a coarray component and is not "
"ALLOCATABLE, SAVE nor a dummy argument"
msgstr ""
-#: fortran/resolve.c:12309
+#: fortran/resolve.c:12452
#, gcc-internal-format, gfc-internal-format
msgid ""
"Coarray variable '%s' at %L shall not have codimensions with deferred shape"
msgstr ""
-#: fortran/resolve.c:12313
+#: fortran/resolve.c:12456
#, gcc-internal-format, gfc-internal-format
msgid "Allocatable coarray variable '%s' at %L must have deferred shape"
msgstr ""
-#: fortran/resolve.c:12321
+#: fortran/resolve.c:12464
#, gcc-internal-format, gfc-internal-format
msgid ""
"Variable '%s' at %L is INTENT(OUT) and can thus not be an allocatable "
"coarray or have coarray components"
msgstr ""
-#: fortran/resolve.c:12327
+#: fortran/resolve.c:12470
#, gcc-internal-format, gfc-internal-format
msgid "Coarray dummy variable '%s' at %L not allowed in BIND(C) procedure '%s'"
msgstr ""
-#: fortran/resolve.c:12397
+#: fortran/resolve.c:12540
#, gcc-internal-format, gfc-internal-format
msgid "Threadprivate at %L isn't SAVEd"
msgstr ""
-#: fortran/resolve.c:12491
+#: fortran/resolve.c:12634
#, gcc-internal-format, gfc-internal-format
msgid "BLOCK DATA element '%s' at %L must be in COMMON"
msgstr ""
-#: fortran/resolve.c:12497
+#: fortran/resolve.c:12640
#, gcc-internal-format, gfc-internal-format
msgid "DATA array '%s' at %L must be specified in a previous declaration"
msgstr ""
-#: fortran/resolve.c:12511
+#: fortran/resolve.c:12649
#, gcc-internal-format, gfc-internal-format
msgid "DATA element '%s' at %L cannot have a coindex"
msgstr ""
-#: fortran/resolve.c:12520
+#: fortran/resolve.c:12663
#, gcc-internal-format, gfc-internal-format
msgid "DATA element '%s' at %L is a pointer and so must be a full array"
msgstr ""
-#: fortran/resolve.c:12566
+#: fortran/resolve.c:12709
#, gcc-internal-format, gfc-internal-format
msgid "Nonconstant array section at %L in DATA statement"
msgstr ""
-#: fortran/resolve.c:12579
+#: fortran/resolve.c:12722
#, gcc-internal-format, gfc-internal-format
msgid "DATA statement at %L has more variables than values"
msgstr ""
-#: fortran/resolve.c:12677
+#: fortran/resolve.c:12820
#, gcc-internal-format, gfc-internal-format
msgid ""
"start of implied-do loop at %L could not be simplified to a constant value"
msgstr ""
-#: fortran/resolve.c:12685
+#: fortran/resolve.c:12828
#, gcc-internal-format, gfc-internal-format
msgid ""
"end of implied-do loop at %L could not be simplified to a constant value"
msgstr ""
-#: fortran/resolve.c:12693
+#: fortran/resolve.c:12836
#, gcc-internal-format, gfc-internal-format
msgid ""
"step of implied-do loop at %L could not be simplified to a constant value"
msgstr ""
-#: fortran/resolve.c:12818
+#: fortran/resolve.c:12961
#, gcc-internal-format, gfc-internal-format
msgid "DATA statement at %L has more values than variables"
msgstr ""
-#: fortran/resolve.c:12956
+#: fortran/resolve.c:13099
#, gcc-internal-format, gfc-internal-format
msgid "Label %d at %L defined but not used"
msgstr ""
-#: fortran/resolve.c:12961
+#: fortran/resolve.c:13104
#, gcc-internal-format, gfc-internal-format
msgid "Label %d at %L defined but cannot be used"
msgstr ""
-#: fortran/resolve.c:13045
+#: fortran/resolve.c:13188
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type variable '%s' at %L must have SEQUENCE attribute to be an "
"EQUIVALENCE object"
msgstr ""
-#: fortran/resolve.c:13054
+#: fortran/resolve.c:13197
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type variable '%s' at %L cannot have ALLOCATABLE components to be an "
"EQUIVALENCE object"
msgstr ""
-#: fortran/resolve.c:13062
+#: fortran/resolve.c:13205
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type variable '%s' at %L with default initialization cannot be in "
"EQUIVALENCE with a variable in COMMON"
msgstr ""
-#: fortran/resolve.c:13078
+#: fortran/resolve.c:13221
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived type variable '%s' at %L with pointer component(s) cannot be an "
"EQUIVALENCE object"
msgstr ""
-#: fortran/resolve.c:13181
+#: fortran/resolve.c:13324
#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in EQUIVALENCE statement at %L"
msgstr ""
-#: fortran/resolve.c:13196
+#: fortran/resolve.c:13339
#, gcc-internal-format, gfc-internal-format
msgid ""
"Either all or none of the objects in the EQUIVALENCE set at %L shall have "
"the PROTECTED attribute"
msgstr ""
-#: fortran/resolve.c:13208
+#: fortran/resolve.c:13351
#, gcc-internal-format, gfc-internal-format
msgid ""
"Common block member '%s' at %L cannot be an EQUIVALENCE object in the pure "
"procedure '%s'"
msgstr ""
-#: fortran/resolve.c:13217
+#: fortran/resolve.c:13360
#, gcc-internal-format, gfc-internal-format
msgid "Named constant '%s' at %L cannot be an EQUIVALENCE object"
msgstr ""
-#: fortran/resolve.c:13296
+#: fortran/resolve.c:13439
#, gcc-internal-format, gfc-internal-format
msgid ""
"Array '%s' at %L with non-constant bounds cannot be an EQUIVALENCE object"
msgstr ""
-#: fortran/resolve.c:13307
+#: fortran/resolve.c:13450
#, gcc-internal-format, gfc-internal-format
msgid "Structure component '%s' at %L cannot be an EQUIVALENCE object"
msgstr ""
-#: fortran/resolve.c:13318
+#: fortran/resolve.c:13461
#, gcc-internal-format, gfc-internal-format
msgid "Substring at %L has length zero"
msgstr ""
-#: fortran/resolve.c:13361
+#: fortran/resolve.c:13504
#, gcc-internal-format, gfc-internal-format
msgid "Fortran 2003: PUBLIC function '%s' at %L of PRIVATE type '%s'"
msgstr ""
-#: fortran/resolve.c:13374
+#: fortran/resolve.c:13517
#, gcc-internal-format, gfc-internal-format
msgid "ENTRY '%s' at %L has no IMPLICIT type"
msgstr ""
-#: fortran/resolve.c:13391
+#: fortran/resolve.c:13534
#, gcc-internal-format, gfc-internal-format
msgid "User operator procedure '%s' at %L must be a FUNCTION"
msgstr ""
-#: fortran/resolve.c:13401
+#: fortran/resolve.c:13544
#, gcc-internal-format, gfc-internal-format
msgid "User operator procedure '%s' at %L cannot be assumed character length"
msgstr ""
-#: fortran/resolve.c:13409
+#: fortran/resolve.c:13552
#, gcc-internal-format, gfc-internal-format
msgid "User operator procedure '%s' at %L must have at least one argument"
msgstr ""
-#: fortran/resolve.c:13423
+#: fortran/resolve.c:13566
#, gcc-internal-format, gfc-internal-format
msgid "First argument of operator interface at %L cannot be optional"
msgstr ""
-#: fortran/resolve.c:13441
+#: fortran/resolve.c:13584
#, gcc-internal-format, gfc-internal-format
msgid "Second argument of operator interface at %L cannot be optional"
msgstr ""
-#: fortran/resolve.c:13448
+#: fortran/resolve.c:13591
#, gcc-internal-format, gfc-internal-format
msgid "Operator interface at %L must have, at most, two arguments"
msgstr ""
-#: fortran/resolve.c:13520
+#: fortran/resolve.c:13667
#, gcc-internal-format, gfc-internal-format
msgid "Contained procedure '%s' at %L of a PURE procedure must also be PURE"
msgstr ""
@@ -41719,40 +42347,34 @@
"%L"
msgstr ""
-#: fortran/simplify.c:3485 fortran/simplify.c:3616 fortran/simplify.c:6389
+#: fortran/simplify.c:3486 fortran/simplify.c:3617 fortran/simplify.c:6380
#, gcc-internal-format, gfc-internal-format
msgid "DIM argument at %L is out of bounds"
msgstr ""
-#: fortran/simplify.c:3642
-#, gcc-internal-format, gfc-internal-format
-msgid ""
-"Not yet implemented: LCOBOUND for coarray with non-constant cobounds at %L"
-msgstr ""
-
-#: fortran/simplify.c:3796
+#: fortran/simplify.c:3788
#, gcc-internal-format, gfc-internal-format
msgid "Argument of LOG at %L cannot be less than or equal to zero"
msgstr ""
-#: fortran/simplify.c:3809
+#: fortran/simplify.c:3801
#, gcc-internal-format, gfc-internal-format
msgid "Complex argument of LOG at %L cannot be zero"
msgstr ""
-#: fortran/simplify.c:3837
+#: fortran/simplify.c:3829
#, gcc-internal-format, gfc-internal-format
msgid "Argument of LOG10 at %L cannot be less than or equal to zero"
msgstr ""
#. Result is processor-dependent.
-#: fortran/simplify.c:4285
+#: fortran/simplify.c:4277
#, gcc-internal-format, gfc-internal-format
msgid "Second argument MOD at %L is zero"
msgstr ""
#. Result is processor-dependent.
-#: fortran/simplify.c:4296
+#: fortran/simplify.c:4288
#, gcc-internal-format, gfc-internal-format
msgid "Second argument of MOD at %L is zero"
msgstr ""
@@ -41760,91 +42382,63 @@
#. Result is processor-dependent. This processor just opts
#. to not handle it at all.
#. Result is processor-dependent.
-#: fortran/simplify.c:4338 fortran/simplify.c:4350
+#: fortran/simplify.c:4330 fortran/simplify.c:4342
#, gcc-internal-format, gfc-internal-format
msgid "Second argument of MODULO at %L is zero"
msgstr ""
-#: fortran/simplify.c:4396
+#: fortran/simplify.c:4388
#, gcc-internal-format, gfc-internal-format
msgid "Second argument of NEAREST at %L shall not be zero"
msgstr ""
-#: fortran/simplify.c:4432
+#: fortran/simplify.c:4424
#, gcc-internal-format, gfc-internal-format
msgid "Result of NEAREST is NaN at %L"
msgstr ""
-#: fortran/simplify.c:4886
+#: fortran/simplify.c:4888
#, gcc-internal-format, gfc-internal-format
msgid "Argument NCOPIES of REPEAT intrinsic is negative at %L"
msgstr ""
-#: fortran/simplify.c:4941
+#: fortran/simplify.c:4943
#, gcc-internal-format, gfc-internal-format
msgid "Argument NCOPIES of REPEAT intrinsic is too large at %L"
msgstr ""
-#: fortran/simplify.c:5193
+#: fortran/simplify.c:5195
#, gcc-internal-format, gfc-internal-format
msgid "Result of SCALE overflows its kind at %L"
msgstr ""
-#: fortran/simplify.c:5903
+#: fortran/simplify.c:5905
#, gcc-internal-format, gfc-internal-format
msgid "Argument of SQRT at %L has a negative value"
msgstr ""
-#: fortran/simplify.c:6100
+#: fortran/simplify.c:6102
#, gcc-internal-format, gfc-internal-format
msgid ""
"Intrinsic TRANSFER at %L has partly undefined result: source size %ld < "
"result size %ld"
msgstr ""
-#: fortran/simplify.c:6221
-#, gcc-internal-format, gfc-internal-format
-msgid "Too few elements in expression for SUB= argument at %L"
-msgstr ""
-
-#: fortran/simplify.c:6247
+#: fortran/simplify.c:6244
#, gcc-internal-format, gfc-internal-format
msgid ""
"Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY "
"lower bound is %ld)"
msgstr ""
-#: fortran/simplify.c:6270
+#: fortran/simplify.c:6267
#, gcc-internal-format, gfc-internal-format
msgid ""
"Out of bounds in IMAGE_INDEX at %L for dimension %d, SUB has %ld and COARRAY "
"upper bound is %ld)"
msgstr ""
-#: fortran/simplify.c:6288
-#, gcc-internal-format, gfc-internal-format
-msgid "Too many elements in expression for SUB= argument at %L"
-msgstr ""
-
-#: fortran/simplify.c:6303
-#, gcc-internal-format, gfc-internal-format
-msgid ""
-"Not yet implemented: IMAGE_INDEX for coarray with non-constant cobounds at %L"
-msgstr ""
-
-#: fortran/simplify.c:6402
-#, gcc-internal-format, gfc-internal-format
-msgid ""
-"Not yet implemented: THIS_IMAGE for coarray with non-constant cobounds at %L"
-msgstr ""
-
-#: fortran/simplify.c:6424
-#, gcc-internal-format, gfc-internal-format
-msgid ""
-"Not yet implemented: UCOBOUND for coarray with non-constant cobounds at %L"
-msgstr ""
-
-#: fortran/simplify.c:6781
+#: fortran/simplify.c:6754
#, gcc-internal-format, gfc-internal-format
msgid ""
"Character '%s' in string at %L cannot be converted into character kind %d"
@@ -42224,25 +42818,19 @@
msgid "BOZ constant at %L is too large (%ld vs %ld bits)"
msgstr ""
-#: fortran/trans-array.c:775 fortran/trans-array.c:4932
-#: fortran/trans-array.c:6133 fortran/trans-intrinsic.c:4790
-#, gcc-internal-format, gfc-internal-format
-msgid "Creating array temporary at %L"
-msgstr ""
-
-#: fortran/trans-array.c:6130
+#: fortran/trans-array.c:6292
#, gcc-internal-format, gfc-internal-format
msgid "Creating array temporary at %L for argument '%s'"
msgstr ""
-#: fortran/trans-array.c:7156
+#: fortran/trans-array.c:7328
#, gcc-internal-format
msgid ""
"Possible front-end bug: Deferred array size without pointer, allocatable "
"attribute or derived type without allocatable components."
msgstr ""
-#: fortran/trans-array.c:7655
+#: fortran/trans-array.c:7844
#, gcc-internal-format, gfc-internal-format
msgid "bad expression type during walk (%d)"
msgstr ""
@@ -42334,54 +42922,54 @@
msgid "non-constant initialization expression at %L"
msgstr ""
-#: fortran/trans-decl.c:1262
+#: fortran/trans-decl.c:1316
#, gcc-internal-format
msgid "intrinsic variable which isn't a procedure"
msgstr ""
-#: fortran/trans-decl.c:3321 fortran/trans-decl.c:4843
+#: fortran/trans-decl.c:3398 fortran/trans-decl.c:5158
#, gcc-internal-format, gfc-internal-format
msgid "Return value of function '%s' at %L not set"
msgstr ""
-#: fortran/trans-decl.c:3582
+#: fortran/trans-decl.c:3672
#, gcc-internal-format
msgid "Deferred type parameter not yet supported"
msgstr ""
-#: fortran/trans-decl.c:3789
+#: fortran/trans-decl.c:3879
#, gcc-internal-format, gfc-internal-format
msgid "backend decl for module variable %s already exists"
msgstr ""
-#: fortran/trans-decl.c:4167
+#: fortran/trans-decl.c:4387
#, gcc-internal-format, gfc-internal-format
msgid "Dummy argument '%s' at %L was declared INTENT(OUT) but was not set"
msgstr ""
-#: fortran/trans-decl.c:4171
+#: fortran/trans-decl.c:4391
#, gcc-internal-format, gfc-internal-format
msgid ""
"Derived-type dummy argument '%s' at %L was declared INTENT(OUT) but was not "
"set and does not have a default initializer"
msgstr ""
-#: fortran/trans-decl.c:4177
+#: fortran/trans-decl.c:4397
#, gcc-internal-format, gfc-internal-format
msgid "Unused dummy argument '%s' at %L"
msgstr ""
-#: fortran/trans-decl.c:4186
+#: fortran/trans-decl.c:4406
#, gcc-internal-format, gfc-internal-format
msgid "Unused variable '%s' declared at %L"
msgstr ""
-#: fortran/trans-decl.c:4234
+#: fortran/trans-decl.c:4454
#, gcc-internal-format, gfc-internal-format
msgid "Unused parameter '%s' declared at %L"
msgstr ""
-#: fortran/trans-decl.c:4248
+#: fortran/trans-decl.c:4468
#, gcc-internal-format, gfc-internal-format
msgid "Return value '%s' of function '%s' declared at %L not set"
msgstr ""
@@ -42396,22 +42984,23 @@
msgid "Unknown argument list function at %L"
msgstr ""
-#: fortran/trans-intrinsic.c:851
+#: fortran/trans-intrinsic.c:853
#, gcc-internal-format, gfc-internal-format
msgid "Intrinsic function %s(%d) not recognized"
msgstr ""
-#: fortran/trans-intrinsic.c:987
+#: fortran/trans-intrinsic.c:1014 fortran/trans-intrinsic.c:1346
+#: fortran/trans-intrinsic.c:1526
#, gcc-internal-format, gfc-internal-format
msgid "'dim' argument of %s intrinsic at %L is not a valid dimension index"
msgstr ""
-#: fortran/trans-io.c:2041
+#: fortran/trans-io.c:2035
#, gcc-internal-format, gfc-internal-format
msgid "Derived type '%s' at %L has PRIVATE components"
msgstr ""
-#: fortran/trans-io.c:2189
+#: fortran/trans-io.c:2183
#, gcc-internal-format, gfc-internal-format
msgid "Bad IO basetype (%d)"
msgstr ""
@@ -42426,27 +43015,32 @@
msgid "An alternate return at %L without a * dummy argument"
msgstr ""
-#: fortran/trans-types.c:478
+#: fortran/trans-stmt.c:837
+#, gcc-internal-format, gfc-internal-format
+msgid "Sorry, only support for integer kind %d implemented for image-set at %L"
+msgstr ""
+
+#: fortran/trans-types.c:489
#, gcc-internal-format
msgid "integer kind=8 not available for -fdefault-integer-8 option"
msgstr ""
-#: fortran/trans-types.c:501
+#: fortran/trans-types.c:512
#, gcc-internal-format
msgid "real kind=8 not available for -fdefault-real-8 option"
msgstr ""
-#: fortran/trans-types.c:514
+#: fortran/trans-types.c:525
#, gcc-internal-format
msgid "Use of -fdefault-double-8 requires -fdefault-real-8"
msgstr ""
-#: fortran/trans-types.c:1365
+#: fortran/trans-types.c:1379
#, gcc-internal-format
msgid "Array element size too big"
msgstr ""
-#: fortran/trans.c:1409
+#: fortran/trans.c:1410
#, gcc-internal-format
msgid "gfc_trans_code(): Bad statement code"
msgstr ""
@@ -42481,113 +43075,113 @@
msgid "non-static method %q+D overrides static method"
msgstr ""
-#: java/decl.c:1227
+#: java/decl.c:1209
#, gcc-internal-format
msgid "%q+D used prior to declaration"
msgstr ""
-#: java/decl.c:1653
+#: java/decl.c:1632
#, gcc-internal-format
msgid "In %+D: overlapped variable and exception ranges at %d"
msgstr ""
-#: java/decl.c:1704
+#: java/decl.c:1683
#, gcc-internal-format
msgid "bad type in parameter debug info"
msgstr ""
-#: java/decl.c:1713
+#: java/decl.c:1692
#, gcc-internal-format
msgid "bad PC range for debug info for local %q+D"
msgstr ""
-#: java/expr.c:351
+#: java/expr.c:357
#, gcc-internal-format, gfc-internal-format
msgid "need to insert runtime check for %s"
msgstr ""
-#: java/expr.c:499 java/expr.c:546
+#: java/expr.c:505 java/expr.c:552
#, gcc-internal-format, gfc-internal-format
msgid "assert: %s is assign compatible with %s"
msgstr ""
-#: java/expr.c:657
+#: java/expr.c:663
#, gcc-internal-format
msgid "stack underflow - dup* operation"
msgstr ""
-#: java/expr.c:1656
+#: java/expr.c:1662
#, gcc-internal-format
msgid "reference %qs is ambiguous: appears in interface %qs and interface %qs"
msgstr ""
-#: java/expr.c:1684
+#: java/expr.c:1690
#, gcc-internal-format
msgid "field %qs not found"
msgstr ""
-#: java/expr.c:2247
+#: java/expr.c:2253
#, gcc-internal-format, gfc-internal-format
msgid "method '%s' not found in class"
msgstr ""
-#: java/expr.c:2442
+#: java/expr.c:2448
#, gcc-internal-format, gfc-internal-format
msgid "failed to find class '%s'"
msgstr ""
-#: java/expr.c:2483
+#: java/expr.c:2489
#, gcc-internal-format, gfc-internal-format
msgid "class '%s' has no method named '%s' matching signature '%s'"
msgstr ""
-#: java/expr.c:2514
+#: java/expr.c:2520
#, gcc-internal-format
msgid "invokestatic on non static method"
msgstr ""
-#: java/expr.c:2519
+#: java/expr.c:2525
#, gcc-internal-format
msgid "invokestatic on abstract method"
msgstr ""
-#: java/expr.c:2527
+#: java/expr.c:2533
#, gcc-internal-format
msgid "invoke[non-static] on static method"
msgstr ""
-#: java/expr.c:2886
+#: java/expr.c:2891
#, gcc-internal-format, gfc-internal-format
msgid "missing field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2893
+#: java/expr.c:2898
#, gcc-internal-format, gfc-internal-format
msgid "mismatching signature for field '%s' in '%s'"
msgstr ""
-#: java/expr.c:2922
+#: java/expr.c:2927
#, gcc-internal-format
msgid "assignment to final field %q+D not in field%'s class"
msgstr ""
-#: java/expr.c:3146
+#: java/expr.c:3151
#, gcc-internal-format
msgid "invalid PC in line number table"
msgstr ""
-#: java/expr.c:3196
+#: java/expr.c:3201
#, gcc-internal-format, gfc-internal-format
msgid "unreachable bytecode from %d to before %d"
msgstr ""
-#: java/expr.c:3238
+#: java/expr.c:3243
#, gcc-internal-format, gfc-internal-format
msgid "unreachable bytecode from %d to the end of the method"
msgstr ""
#. duplicate code from LOAD macro
-#: java/expr.c:3546
+#: java/expr.c:3551
#, gcc-internal-format
msgid "unrecogized wide sub-instruction"
msgstr ""
@@ -42658,22 +43252,22 @@
msgid "missing Code attribute"
msgstr ""
-#: java/jcf-parse.c:1850
+#: java/jcf-parse.c:1849
#, gcc-internal-format
msgid "no input file specified"
msgstr ""
-#: java/jcf-parse.c:1886
+#: java/jcf-parse.c:1885
#, gcc-internal-format
msgid "can%'t close input file %s: %m"
msgstr ""
-#: java/jcf-parse.c:1929
+#: java/jcf-parse.c:1928
#, gcc-internal-format, gfc-internal-format
msgid "bad zip/jar file %s"
msgstr ""
-#: java/jcf-parse.c:2131
+#: java/jcf-parse.c:2130
#, gcc-internal-format, gfc-internal-format
msgid "error while reading %s from zip file"
msgstr ""
@@ -42768,7 +43362,7 @@
msgid "bad pc in exception_table"
msgstr ""
-#: lto/lto-lang.c:695
+#: lto/lto-lang.c:679
#, gcc-internal-format
msgid "-fwpa and -fltrans are mutually exclusive"
msgstr ""
@@ -42799,204 +43393,204 @@
msgid "two or more sections for %s"
msgstr ""
-#: lto/lto.c:161
+#: lto/lto.c:169
#, gcc-internal-format, gfc-internal-format
msgid "%s: section %s is missing"
msgstr ""
-#: lto/lto.c:293
+#: lto/lto.c:866
#, gcc-internal-format
msgid "bytecode stream: garbage at the end of symbols section"
msgstr ""
-#: lto/lto.c:317
+#: lto/lto.c:890
#, gcc-internal-format
msgid "could not parse hex number"
msgstr ""
-#: lto/lto.c:349
+#: lto/lto.c:922
#, gcc-internal-format, gfc-internal-format
msgid "unexpected file name %s in linker resolution file. Expected %s"
msgstr ""
-#: lto/lto.c:358
+#: lto/lto.c:931
#, gcc-internal-format
msgid "could not parse file offset"
msgstr ""
-#: lto/lto.c:361
+#: lto/lto.c:934
#, gcc-internal-format
msgid "unexpected offset"
msgstr ""
-#: lto/lto.c:380
+#: lto/lto.c:953
#, gcc-internal-format
msgid "invalid line in the resolution file"
msgstr ""
-#: lto/lto.c:393
+#: lto/lto.c:966
#, gcc-internal-format
msgid "invalid resolution in the resolution file"
msgstr ""
-#: lto/lto.c:399
+#: lto/lto.c:972
#, gcc-internal-format
msgid "resolution sub id %x not in object file"
msgstr ""
-#: lto/lto.c:484
+#: lto/lto.c:1057
#, gcc-internal-format, gfc-internal-format
msgid "cannot read LTO decls from %s"
msgstr ""
-#: lto/lto.c:1460
+#: lto/lto.c:2084
#, gcc-internal-format
msgid "no LTRANS output list filename provided"
msgstr ""
-#: lto/lto.c:1463
+#: lto/lto.c:2087
#, gcc-internal-format
msgid "opening LTRANS output list %s: %m"
msgstr ""
-#: lto/lto.c:1504
+#: lto/lto.c:2128
#, gcc-internal-format
msgid "lto_obj_file_open() failed"
msgstr ""
-#: lto/lto.c:1530
+#: lto/lto.c:2154
#, gcc-internal-format
msgid "writing to LTRANS output list %s: %m"
msgstr ""
-#: lto/lto.c:1538
+#: lto/lto.c:2162
#, gcc-internal-format
msgid "closing LTRANS output list %s: %m"
msgstr ""
-#: lto/lto.c:2130
+#: lto/lto.c:2443
#, gcc-internal-format
msgid "could not open symbol resolution file: %m"
msgstr ""
-#: lto/lto.c:2202
+#: lto/lto.c:2518
#, gcc-internal-format
msgid "errors during merging of translation units"
msgstr ""
-#: objc/objc-act.c:437 objc/objc-act.c:6546
+#: objc/objc-act.c:436 objc/objc-act.c:7010
#, gcc-internal-format
msgid "%<@end%> missing in implementation context"
msgstr ""
-#: objc/objc-act.c:594
+#: objc/objc-act.c:593
#, gcc-internal-format
msgid "class attributes are not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:609
+#: objc/objc-act.c:608
#, gcc-internal-format
msgid "category attributes are not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:612
+#: objc/objc-act.c:611
#, gcc-internal-format
msgid ""
"category attributes are not available in this version of the compiler, "
"(ignored)"
msgstr ""
-#: objc/objc-act.c:618
+#: objc/objc-act.c:617
#, gcc-internal-format
msgid "class extensions are not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:632
+#: objc/objc-act.c:631
#, gcc-internal-format
msgid "class extension for class %qE declared after its %<@implementation%>"
msgstr ""
-#: objc/objc-act.c:647
+#: objc/objc-act.c:646
#, gcc-internal-format
msgid "protocol attributes are not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:712
+#: objc/objc-act.c:711
#, gcc-internal-format
msgid "%<@end%> must appear in an @implementation context"
msgstr ""
-#: objc/objc-act.c:721
+#: objc/objc-act.c:720
#, gcc-internal-format
msgid "%<@package%> is not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:723
+#: objc/objc-act.c:722
#, gcc-internal-format
msgid "%<@package%> presently has the same effect as %<@public%>"
msgstr ""
-#: objc/objc-act.c:734
+#: objc/objc-act.c:733
#, gcc-internal-format
msgid "%<@optional%> is not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:736
+#: objc/objc-act.c:735
#, gcc-internal-format
msgid "%<@required%> is not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:744
+#: objc/objc-act.c:743
#, gcc-internal-format
msgid "%<@optional%> is allowed in @protocol context only"
msgstr ""
-#: objc/objc-act.c:746
+#: objc/objc-act.c:745
#, gcc-internal-format
msgid "%<@required%> is allowed in @protocol context only"
msgstr ""
-#: objc/objc-act.c:853
+#: objc/objc-act.c:852
#, gcc-internal-format
msgid "%<@property%> is not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:857
+#: objc/objc-act.c:856
#, gcc-internal-format
msgid "%<readonly%> attribute conflicts with %<readwrite%> attribute"
msgstr ""
-#: objc/objc-act.c:874
+#: objc/objc-act.c:873
#, gcc-internal-format
msgid "%<readonly%> attribute conflicts with %<setter%> attribute"
msgstr ""
-#: objc/objc-act.c:880
+#: objc/objc-act.c:879
#, gcc-internal-format
msgid "%<assign%> attribute conflicts with %<retain%> attribute"
msgstr ""
-#: objc/objc-act.c:885
+#: objc/objc-act.c:884
#, gcc-internal-format
msgid "%<assign%> attribute conflicts with %<copy%> attribute"
msgstr ""
-#: objc/objc-act.c:890
+#: objc/objc-act.c:889
#, gcc-internal-format
msgid "%<retain%> attribute conflicts with %<copy%> attribute"
msgstr ""
-#: objc/objc-act.c:907
+#: objc/objc-act.c:906
#, gcc-internal-format
msgid "property declaration not in @interface or @protocol context"
msgstr ""
-#: objc/objc-act.c:918
+#: objc/objc-act.c:917
#, gcc-internal-format
msgid "invalid property declaration"
msgstr ""
-#: objc/objc-act.c:926
+#: objc/objc-act.c:925
#, gcc-internal-format
msgid "property can not be an array"
msgstr ""
@@ -43008,84 +43602,84 @@
#. and arguments of functions can not be bitfields). The
#. underlying instance variable could be a bitfield, but that is
#. a different matter.
-#: objc/objc-act.c:944
+#: objc/objc-act.c:943
#, gcc-internal-format
msgid "property can not be a bit-field"
msgstr ""
-#: objc/objc-act.c:976
+#: objc/objc-act.c:975
#, gcc-internal-format
msgid ""
"object property %qD has no %<assign%>, %<retain%> or %<copy%> attribute; "
"assuming %<assign%>"
msgstr ""
-#: objc/objc-act.c:979
+#: objc/objc-act.c:978
#, gcc-internal-format
msgid ""
"%<assign%> can be unsafe for Objective-C objects; please state explicitly if "
"you need it"
msgstr ""
-#: objc/objc-act.c:986
+#: objc/objc-act.c:985
#, gcc-internal-format
msgid "%<retain%> attribute is only valid for Objective-C objects"
msgstr ""
-#: objc/objc-act.c:990
+#: objc/objc-act.c:989
#, gcc-internal-format
msgid "%<copy%> attribute is only valid for Objective-C objects"
msgstr ""
-#: objc/objc-act.c:1044
+#: objc/objc-act.c:1043
#, gcc-internal-format
msgid "redeclaration of property %qD"
msgstr ""
-#: objc/objc-act.c:1047 objc/objc-act.c:1112 objc/objc-act.c:1122
-#: objc/objc-act.c:1135 objc/objc-act.c:1146 objc/objc-act.c:1157
-#: objc/objc-act.c:1194 objc/objc-act.c:7315 objc/objc-act.c:7378
-#: objc/objc-act.c:7400 objc/objc-act.c:7413 objc/objc-act.c:7431
-#: objc/objc-act.c:7530
+#: objc/objc-act.c:1046 objc/objc-act.c:1111 objc/objc-act.c:1121
+#: objc/objc-act.c:1134 objc/objc-act.c:1145 objc/objc-act.c:1156
+#: objc/objc-act.c:1193 objc/objc-act.c:7781 objc/objc-act.c:7844
+#: objc/objc-act.c:7866 objc/objc-act.c:7879 objc/objc-act.c:7897
+#: objc/objc-act.c:7996
#, gcc-internal-format
msgid "originally specified here"
msgstr ""
-#: objc/objc-act.c:1109
+#: objc/objc-act.c:1108
#, gcc-internal-format
msgid ""
"'nonatomic' attribute of property %qD conflicts with previous declaration"
msgstr ""
-#: objc/objc-act.c:1119
+#: objc/objc-act.c:1118
#, gcc-internal-format
msgid "'getter' attribute of property %qD conflicts with previous declaration"
msgstr ""
-#: objc/objc-act.c:1132
+#: objc/objc-act.c:1131
#, gcc-internal-format
msgid "'setter' attribute of property %qD conflicts with previous declaration"
msgstr ""
-#: objc/objc-act.c:1143
+#: objc/objc-act.c:1142
#, gcc-internal-format
msgid ""
"assign semantics attributes of property %qD conflict with previous "
"declaration"
msgstr ""
-#: objc/objc-act.c:1154
+#: objc/objc-act.c:1153
#, gcc-internal-format
msgid ""
"'readonly' attribute of property %qD conflicts with previous declaration"
msgstr ""
-#: objc/objc-act.c:1192
+#: objc/objc-act.c:1191
#, gcc-internal-format
msgid "type of property %qD conflicts with previous declaration"
msgstr ""
-#: objc/objc-act.c:1665
+#: objc/objc-act.c:1664
#, gcc-internal-format
msgid "the dot syntax is not available in Objective-C 1.0"
msgstr ""
@@ -43093,28 +43687,28 @@
#. We know that 'class_name' is an Objective-C class name as the
#. parser won't call this function if it is not. This is only a
#. double-check for safety.
-#: objc/objc-act.c:1681
+#: objc/objc-act.c:1680
#, gcc-internal-format
msgid "could not find class %qE"
msgstr ""
#. Again, this should never happen, but we do check.
-#: objc/objc-act.c:1689
+#: objc/objc-act.c:1688
#, gcc-internal-format
msgid "could not find interface for class %qE"
msgstr ""
-#: objc/objc-act.c:1695 objc/objc-act.c:6583 objc/objc-act.c:6714
+#: objc/objc-act.c:1694 objc/objc-act.c:7047 objc/objc-act.c:7178
#, gcc-internal-format
msgid "class %qE is deprecated"
msgstr ""
-#: objc/objc-act.c:1724
+#: objc/objc-act.c:1723
#, gcc-internal-format
msgid "could not find setter/getter for %qE in class %qE"
msgstr ""
-#: objc/objc-act.c:1760
+#: objc/objc-act.c:1759
#, gcc-internal-format
msgid "readonly property can not be set"
msgstr ""
@@ -43123,67 +43717,67 @@
#. impossible to get here. But it's good to have the check in
#. case the parser changes.
#.
-#: objc/objc-act.c:2030
+#: objc/objc-act.c:2029
#, gcc-internal-format
msgid "method declaration not in @interface context"
msgstr ""
-#: objc/objc-act.c:2034
+#: objc/objc-act.c:2033
#, gcc-internal-format
msgid "method attributes are not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:2051
+#: objc/objc-act.c:2053
#, gcc-internal-format
msgid "method definition not in @implementation context"
msgstr ""
-#: objc/objc-act.c:2066
+#: objc/objc-act.c:2068
#, gcc-internal-format
msgid "method attributes can not be specified in @implementation context"
msgstr ""
-#: objc/objc-act.c:2295
+#: objc/objc-act.c:2297
#, gcc-internal-format
msgid "class %qs does not implement the %qE protocol"
msgstr ""
-#: objc/objc-act.c:2298
+#: objc/objc-act.c:2300
#, gcc-internal-format
msgid "type %qs does not conform to the %qE protocol"
msgstr ""
-#: objc/objc-act.c:2562
+#: objc/objc-act.c:2581
#, gcc-internal-format
msgid "comparison of distinct Objective-C types lacks a cast"
msgstr ""
-#: objc/objc-act.c:2566
+#: objc/objc-act.c:2585
#, gcc-internal-format
msgid "initialization from distinct Objective-C type"
msgstr ""
-#: objc/objc-act.c:2570
+#: objc/objc-act.c:2589
#, gcc-internal-format
msgid "assignment from distinct Objective-C type"
msgstr ""
-#: objc/objc-act.c:2574
+#: objc/objc-act.c:2593
#, gcc-internal-format
msgid "distinct Objective-C type in return"
msgstr ""
-#: objc/objc-act.c:2578
+#: objc/objc-act.c:2597
#, gcc-internal-format
msgid "passing argument %d of %qE from distinct Objective-C type"
msgstr ""
-#: objc/objc-act.c:2716
+#: objc/objc-act.c:2735
#, gcc-internal-format
msgid "statically allocated instance of Objective-C class %qE"
msgstr ""
-#: objc/objc-act.c:2725
+#: objc/objc-act.c:2744
#, gcc-internal-format
msgid "redeclaration of Objective-C class %qs"
msgstr ""
@@ -43195,230 +43789,264 @@
#. Objective-C class, but something else, such as 'int'.
#. This is an error; protocols make no sense unless you use
#. them with Objective-C objects.
-#: objc/objc-act.c:2767
+#: objc/objc-act.c:2786
#, gcc-internal-format
msgid "only Objective-C object types can be qualified with a protocol"
msgstr ""
-#: objc/objc-act.c:2831
+#: objc/objc-act.c:2850
#, gcc-internal-format
msgid "protocol %qE has circular dependency"
msgstr ""
-#: objc/objc-act.c:2864 objc/objc-act.c:5382
+#: objc/objc-act.c:2883 objc/objc-act.c:5807
#, gcc-internal-format
msgid "cannot find protocol declaration for %qE"
msgstr ""
-#: objc/objc-act.c:3167 objc/objc-act.c:3826 objc/objc-act.c:6159
-#: objc/objc-act.c:6634 objc/objc-act.c:6707 objc/objc-act.c:6760
+#: objc/objc-act.c:3186 objc/objc-act.c:3848 objc/objc-act.c:6623
+#: objc/objc-act.c:7098 objc/objc-act.c:7171 objc/objc-act.c:7224
#, gcc-internal-format
msgid "cannot find interface declaration for %qE"
msgstr ""
-#: objc/objc-act.c:3171
+#: objc/objc-act.c:3190
#, gcc-internal-format
msgid "interface %qE does not have valid constant string layout"
msgstr ""
-#: objc/objc-act.c:3176
+#: objc/objc-act.c:3195
#, gcc-internal-format
msgid "cannot find reference tag for class %qE"
msgstr ""
-#: objc/objc-act.c:3321
+#: objc/objc-act.c:3340
#, gcc-internal-format
msgid "%qE is not an Objective-C class name or alias"
msgstr ""
-#: objc/objc-act.c:3336 objc/objc-act.c:3369 objc/objc-act.c:6540
-#: objc/objc-act.c:7862 objc/objc-act.c:7917
+#: objc/objc-act.c:3355 objc/objc-act.c:3387 objc/objc-act.c:7004
+#: objc/objc-act.c:8327 objc/objc-act.c:8378
#, gcc-internal-format
msgid "Objective-C declarations may only appear in global scope"
msgstr ""
-#: objc/objc-act.c:3341
+#: objc/objc-act.c:3360
#, gcc-internal-format
msgid "cannot find class %qE"
msgstr ""
-#: objc/objc-act.c:3343
+#: objc/objc-act.c:3362
#, gcc-internal-format
msgid "class %qE already exists"
msgstr ""
-#: objc/objc-act.c:3391 objc/objc-act.c:6599
+#: objc/objc-act.c:3405 objc/objc-act.c:7063
#, gcc-internal-format
msgid "%qE redeclared as different kind of symbol"
msgstr ""
-#: objc/objc-act.c:3680
+#: objc/objc-act.c:3700
#, gcc-internal-format
msgid "strong-cast assignment has been intercepted"
msgstr ""
-#: objc/objc-act.c:3722
+#: objc/objc-act.c:3742
#, gcc-internal-format
msgid "strong-cast may possibly be needed"
msgstr ""
-#: objc/objc-act.c:3732
+#: objc/objc-act.c:3752
#, gcc-internal-format
msgid "instance variable assignment has been intercepted"
msgstr ""
-#: objc/objc-act.c:3751
+#: objc/objc-act.c:3771
#, gcc-internal-format
msgid "pointer arithmetic for garbage-collected objects not allowed"
msgstr ""
-#: objc/objc-act.c:3757
+#: objc/objc-act.c:3777
#, gcc-internal-format
msgid "global/static variable assignment has been intercepted"
msgstr ""
-#: objc/objc-act.c:3892
+#: objc/objc-act.c:3993 objc/objc-act.c:4021 objc/objc-act.c:4077
+#, gcc-internal-format
+msgid "duplicate instance variable %q+D"
+msgstr ""
+
+#: objc/objc-act.c:4137
#, gcc-internal-format
msgid ""
"%<-fobjc-exceptions%> is required to enable Objective-C exception syntax"
msgstr ""
-#: objc/objc-act.c:3976
+#: objc/objc-act.c:4221
#, gcc-internal-format
msgid "@catch parameter is not a known Objective-C class type"
msgstr ""
-#: objc/objc-act.c:3982
+#: objc/objc-act.c:4227
#, gcc-internal-format
msgid "@catch parameter can not be protocol-qualified"
msgstr ""
-#: objc/objc-act.c:4027
+#: objc/objc-act.c:4272
#, gcc-internal-format
msgid "exception of type %<%T%> will be caught"
msgstr ""
-#: objc/objc-act.c:4029
+#: objc/objc-act.c:4274
#, gcc-internal-format
msgid " by earlier handler for %<%T%>"
msgstr ""
-#: objc/objc-act.c:4076
+#: objc/objc-act.c:4321
#, gcc-internal-format
msgid "%<@try%> without %<@catch%> or %<@finally%>"
msgstr ""
-#: objc/objc-act.c:4104
+#: objc/objc-act.c:4349
#, gcc-internal-format
msgid "%<@throw%> (rethrow) used outside of a @catch block"
msgstr ""
-#: objc/objc-act.c:4117
+#: objc/objc-act.c:4362
#, gcc-internal-format
msgid "%<@throw%> argument is not an object"
msgstr ""
-#: objc/objc-act.c:4138
+#: objc/objc-act.c:4383
#, gcc-internal-format
msgid "%<@synchronized%> argument is not an object"
msgstr ""
-#: objc/objc-act.c:4273
+#: objc/objc-act.c:4518
#, gcc-internal-format
msgid "type %qT does not have a known size"
msgstr ""
-#: objc/objc-act.c:4450
+#: objc/objc-act.c:4695
#, gcc-internal-format
msgid "%s %qs"
msgstr ""
-#: objc/objc-act.c:4473 objc/objc-act.c:4492
+#: objc/objc-act.c:4718 objc/objc-act.c:4737
#, gcc-internal-format
msgid "inconsistent instance variable specification"
msgstr ""
-#: objc/objc-act.c:4547
+#: objc/objc-act.c:4794
#, gcc-internal-format
msgid "can not use an object as parameter to a method"
msgstr ""
-#: objc/objc-act.c:4591
+#: objc/objc-act.c:4838
#, gcc-internal-format
msgid "method argument attributes are not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:4920
+#: objc/objc-act.c:5216
#, gcc-internal-format
msgid "multiple methods named %<%c%E%> found"
msgstr ""
-#: objc/objc-act.c:4923
+#: objc/objc-act.c:5219
#, gcc-internal-format
msgid "using %<%c%s%>"
msgstr ""
-#: objc/objc-act.c:4932
+#: objc/objc-act.c:5228
#, gcc-internal-format
msgid "multiple selectors named %<%c%E%> found"
msgstr ""
-#: objc/objc-act.c:4935
+#: objc/objc-act.c:5231
#, gcc-internal-format
msgid "found %<%c%s%>"
msgstr ""
-#: objc/objc-act.c:4944
+#: objc/objc-act.c:5240
#, gcc-internal-format
msgid "also found %<%c%s%>"
msgstr ""
-#: objc/objc-act.c:5172
+#. If 'rtype' is NULL_TREE at this point it means that
+#. we have seen no @interface corresponding to that
+#. class name, only a @class declaration (alternatively,
+#. this was a call such as [objc_getClass("SomeClass")
+#. alloc], where we've never seen the @interface of
+#. SomeClass). So, we have a class name (class_tree)
+#. but no actual details of the class methods. We won't
+#. be able to check that the class responds to the
+#. method, and we will have to guess the method
+#. prototype. Emit a warning, then keep going (this
+#. will use any method with a matching name, as if the
+#. receiver was of type 'Class').
+#. We could not find an @interface declaration, and
+#. there are no protocols attached to the receiver,
+#. so we can't complete the check that the receiver
+#. responds to the method, and we can't retrieve the
+#. method prototype. But, because the receiver has
+#. a well-specified class, the programmer did want
+#. this check to be performed. Emit a warning, then
+#. keep going as if it was an 'id'. To remove the
+#. warning, either include an @interface for the
+#. class, or cast the receiver to 'id'. Note that
+#. rtype is an IDENTIFIER_NODE at this point.
+#: objc/objc-act.c:5526 objc/objc-act.c:5660
+#, gcc-internal-format
+msgid "@interface of class %qE not found"
+msgstr ""
+
+#: objc/objc-act.c:5534
#, gcc-internal-format
msgid "no super class declared in @interface for %qE"
msgstr ""
-#: objc/objc-act.c:5210
+#: objc/objc-act.c:5585
#, gcc-internal-format
msgid "found %<-%E%> instead of %<+%E%> in protocol(s)"
msgstr ""
-#: objc/objc-act.c:5274
+#. We have a type, but it's not an Objective-C type (!).
+#: objc/objc-act.c:5697
#, gcc-internal-format
msgid "invalid receiver type %qs"
msgstr ""
-#: objc/objc-act.c:5289
+#: objc/objc-act.c:5714
#, gcc-internal-format
msgid "%<%c%E%> not found in protocol(s)"
msgstr ""
-#: objc/objc-act.c:5303
+#: objc/objc-act.c:5728
#, gcc-internal-format
msgid "%qE may not respond to %<%c%E%>"
msgstr ""
-#: objc/objc-act.c:5311
+#: objc/objc-act.c:5736
#, gcc-internal-format
msgid "no %<%c%E%> method found"
msgstr ""
-#: objc/objc-act.c:5318
+#: objc/objc-act.c:5743
#, gcc-internal-format
msgid "(Messages without a matching method signature"
msgstr ""
-#: objc/objc-act.c:5320
+#: objc/objc-act.c:5745
#, gcc-internal-format
msgid "will be assumed to return %<id%> and accept"
msgstr ""
-#: objc/objc-act.c:5322
+#: objc/objc-act.c:5747
#, gcc-internal-format
msgid "%<...%> as arguments.)"
msgstr ""
-#: objc/objc-act.c:5433
+#: objc/objc-act.c:5858
#, gcc-internal-format
msgid "undeclared selector %qE"
msgstr ""
@@ -43432,212 +44060,212 @@
#. to an instance variable. It's better to catch the cases
#. where this is done unknowingly than to support the above
#. paradigm.
-#: objc/objc-act.c:5476
+#: objc/objc-act.c:5901
#, gcc-internal-format
msgid "instance variable %qE accessed in class method"
msgstr ""
-#: objc/objc-act.c:5764 objc/objc-act.c:5784
+#: objc/objc-act.c:6189 objc/objc-act.c:6209
#, gcc-internal-format
msgid ""
"method %<%c%E%> declared %<@optional%> and %<@required%> at the same time"
msgstr ""
-#: objc/objc-act.c:5768
+#: objc/objc-act.c:6193
#, gcc-internal-format
msgid "previous declaration of %<%c%E%> as %<@required%>"
msgstr ""
-#: objc/objc-act.c:5788
+#: objc/objc-act.c:6213
#, gcc-internal-format
msgid "previous declaration of %<%c%E%> as %<@optional%>"
msgstr ""
-#: objc/objc-act.c:5848
+#: objc/objc-act.c:6273
#, gcc-internal-format
msgid "duplicate declaration of method %<%c%E%> with conflicting types"
msgstr ""
-#: objc/objc-act.c:5852
+#: objc/objc-act.c:6277
#, gcc-internal-format
msgid "previous declaration of %<%c%E%>"
msgstr ""
-#: objc/objc-act.c:5914
+#: objc/objc-act.c:6339
#, gcc-internal-format
msgid "duplicate interface declaration for category %<%E(%E)%>"
msgstr ""
-#: objc/objc-act.c:5994
+#: objc/objc-act.c:6427
#, gcc-internal-format
msgid "illegal reference type specified for instance variable %qs"
msgstr ""
-#: objc/objc-act.c:6005
+#: objc/objc-act.c:6438
#, gcc-internal-format
msgid "instance variable %qs has unknown size"
msgstr ""
-#: objc/objc-act.c:6025
+#: objc/objc-act.c:6459
#, gcc-internal-format
msgid "instance variable %qs uses flexible array member"
msgstr ""
-#: objc/objc-act.c:6051
+#: objc/objc-act.c:6486
#, gcc-internal-format
msgid "type %qE has no default constructor to call"
msgstr ""
-#: objc/objc-act.c:6057
+#: objc/objc-act.c:6492
#, gcc-internal-format
msgid "destructor for %qE shall not be run either"
msgstr ""
#. Vtable pointers are Real Bad(tm), since Obj-C cannot
#. initialize them.
-#: objc/objc-act.c:6069
+#: objc/objc-act.c:6504
#, gcc-internal-format
msgid "type %qE has virtual member functions"
msgstr ""
-#: objc/objc-act.c:6070
+#: objc/objc-act.c:6505
#, gcc-internal-format
msgid "illegal aggregate type %qE specified for instance variable %qs"
msgstr ""
-#: objc/objc-act.c:6080
+#: objc/objc-act.c:6515
#, gcc-internal-format
msgid "type %qE has a user-defined constructor"
msgstr ""
-#: objc/objc-act.c:6082
+#: objc/objc-act.c:6517
#, gcc-internal-format
msgid "type %qE has a user-defined destructor"
msgstr ""
-#: objc/objc-act.c:6086
+#: objc/objc-act.c:6521
#, gcc-internal-format
msgid ""
"C++ constructors and destructors will not be invoked for Objective-C fields"
msgstr ""
-#: objc/objc-act.c:6188
+#: objc/objc-act.c:6652
#, gcc-internal-format
msgid "instance variable %qE is declared private"
msgstr ""
-#: objc/objc-act.c:6199
+#: objc/objc-act.c:6663
#, gcc-internal-format
msgid "instance variable %qE is %s; this will be a hard error in the future"
msgstr ""
-#: objc/objc-act.c:6206
+#: objc/objc-act.c:6670
#, gcc-internal-format
msgid "instance variable %qE is declared %s"
msgstr ""
-#: objc/objc-act.c:6317 objc/objc-act.c:6432
+#: objc/objc-act.c:6781 objc/objc-act.c:6896
#, gcc-internal-format
msgid "incomplete implementation of class %qE"
msgstr ""
-#: objc/objc-act.c:6321 objc/objc-act.c:6436
+#: objc/objc-act.c:6785 objc/objc-act.c:6900
#, gcc-internal-format
msgid "incomplete implementation of category %qE"
msgstr ""
-#: objc/objc-act.c:6330 objc/objc-act.c:6444
+#: objc/objc-act.c:6794 objc/objc-act.c:6908
#, gcc-internal-format
msgid "method definition for %<%c%E%> not found"
msgstr ""
-#: objc/objc-act.c:6485
+#: objc/objc-act.c:6949
#, gcc-internal-format
msgid "%s %qE does not fully implement the %qE protocol"
msgstr ""
-#: objc/objc-act.c:6575
+#: objc/objc-act.c:7039
#, gcc-internal-format
msgid "cannot find interface declaration for %qE, superclass of %qE"
msgstr ""
-#: objc/objc-act.c:6614
+#: objc/objc-act.c:7078
#, gcc-internal-format
msgid "reimplementation of class %qE"
msgstr ""
-#: objc/objc-act.c:6647
+#: objc/objc-act.c:7111
#, gcc-internal-format
msgid "conflicting super class name %qE"
msgstr ""
-#: objc/objc-act.c:6650
+#: objc/objc-act.c:7114
#, gcc-internal-format
msgid "previous declaration of %qE"
msgstr ""
-#: objc/objc-act.c:6652
+#: objc/objc-act.c:7116
#, gcc-internal-format
msgid "previous declaration"
msgstr ""
-#: objc/objc-act.c:6665 objc/objc-act.c:6667
+#: objc/objc-act.c:7129 objc/objc-act.c:7131
#, gcc-internal-format
msgid "duplicate interface declaration for class %qE"
msgstr ""
-#: objc/objc-act.c:6985 objc/objc-act.c:7179
+#: objc/objc-act.c:7450 objc/objc-act.c:7645
#, gcc-internal-format
msgid "can not find instance variable associated with property"
msgstr ""
#. TODO: This should be caught much earlier than this.
-#: objc/objc-act.c:7145
+#: objc/objc-act.c:7611
#, gcc-internal-format
msgid "invalid setter, it must have one argument"
msgstr ""
-#: objc/objc-act.c:7308 objc/objc-act.c:7523
+#: objc/objc-act.c:7774 objc/objc-act.c:7989
#, gcc-internal-format
msgid "property %qs already specified in %<@dynamic%>"
msgstr ""
-#: objc/objc-act.c:7311 objc/objc-act.c:7526
+#: objc/objc-act.c:7777 objc/objc-act.c:7992
#, gcc-internal-format
msgid "property %qs already specified in %<@synthesize%>"
msgstr ""
-#: objc/objc-act.c:7325 objc/objc-act.c:7540
+#: objc/objc-act.c:7791 objc/objc-act.c:8006
#, gcc-internal-format
msgid "no declaration of property %qs found in the interface"
msgstr ""
-#: objc/objc-act.c:7352
+#: objc/objc-act.c:7818
#, gcc-internal-format
msgid "ivar %qs used by %<@synthesize%> declaration must be an existing ivar"
msgstr ""
-#: objc/objc-act.c:7373
+#: objc/objc-act.c:7839
#, gcc-internal-format
msgid "property %qs is using instance variable %qs of incompatible type"
msgstr ""
-#: objc/objc-act.c:7395
+#: objc/objc-act.c:7861
#, gcc-internal-format
msgid "'assign' property %qs is using bit-field instance variable %qs"
msgstr ""
-#: objc/objc-act.c:7408
+#: objc/objc-act.c:7874
#, gcc-internal-format
msgid "'atomic' property %qs is using bit-field instance variable %qs"
msgstr ""
-#: objc/objc-act.c:7426
+#: objc/objc-act.c:7892
#, gcc-internal-format
msgid "property %qs is using the same instance variable as property %qs"
msgstr ""
-#: objc/objc-act.c:7467
+#: objc/objc-act.c:7933
#, gcc-internal-format
msgid "%<@synthesize%> is not available in Objective-C 1.0"
msgstr ""
@@ -43646,22 +44274,22 @@
#. detects the problem while parsing, outputs the error
#. "misplaced '@synthesize' Objective-C++ construct" and skips
#. the declaration.
-#: objc/objc-act.c:7478
+#: objc/objc-act.c:7944
#, gcc-internal-format
msgid "%<@synthesize%> not in @implementation context"
msgstr ""
-#: objc/objc-act.c:7484
+#: objc/objc-act.c:7950
#, gcc-internal-format
msgid "%<@synthesize%> can not be used in categories"
msgstr ""
-#: objc/objc-act.c:7493
+#: objc/objc-act.c:7959
#, gcc-internal-format
msgid "%<@synthesize%> requires the @interface of the class to be available"
msgstr ""
-#: objc/objc-act.c:7576
+#: objc/objc-act.c:8042
#, gcc-internal-format
msgid "%<@dynamic%> is not available in Objective-C 1.0"
msgstr ""
@@ -43670,17 +44298,17 @@
#. detects the problem while parsing, outputs the error
#. "misplaced '@dynamic' Objective-C++ construct" and skips the
#. declaration.
-#: objc/objc-act.c:7587
+#: objc/objc-act.c:8053
#, gcc-internal-format
msgid "%<@dynamic%> not in @implementation context"
msgstr ""
-#: objc/objc-act.c:7609
+#: objc/objc-act.c:8075
#, gcc-internal-format
msgid "%<@dynamic%> requires the @interface of the class to be available"
msgstr ""
-#: objc/objc-act.c:7807
+#: objc/objc-act.c:8273
#, gcc-internal-format
msgid "definition of protocol %qE not found"
msgstr ""
@@ -43688,47 +44316,47 @@
#. It would be nice to use warn_deprecated_use() here, but
#. we are using TREE_CHAIN (which is supposed to be the
#. TYPE_STUB_DECL for a TYPE) for something different.
-#: objc/objc-act.c:7838
+#: objc/objc-act.c:8304
#, gcc-internal-format
msgid "protocol %qE is deprecated"
msgstr ""
-#: objc/objc-act.c:7962
+#: objc/objc-act.c:8423
#, gcc-internal-format
msgid "duplicate declaration for protocol %qE"
msgstr ""
-#: objc/objc-act.c:8448
+#: objc/objc-act.c:8933
#, gcc-internal-format
msgid "conflicting types for %<%c%s%>"
msgstr ""
-#: objc/objc-act.c:8452
+#: objc/objc-act.c:8937
#, gcc-internal-format
msgid "previous declaration of %<%c%s%>"
msgstr ""
-#: objc/objc-act.c:8552
+#: objc/objc-act.c:9037
#, gcc-internal-format
msgid "no super class declared in interface for %qE"
msgstr ""
-#: objc/objc-act.c:8579
+#: objc/objc-act.c:9064
#, gcc-internal-format
msgid "[super ...] must appear in a method context"
msgstr ""
-#: objc/objc-act.c:8619
+#: objc/objc-act.c:9104
#, gcc-internal-format
msgid "method possibly missing a [super dealloc] call"
msgstr ""
-#: objc/objc-act.c:9083
+#: objc/objc-act.c:9568
#, gcc-internal-format
msgid "instance variable %qs is declared private"
msgstr ""
-#: objc/objc-act.c:9128
+#: objc/objc-act.c:9613
#, gcc-internal-format
msgid "local declaration of %qE hides instance variable"
msgstr ""
@@ -43736,61 +44364,61 @@
#. This can happen if DECL_ARTIFICIAL (*expr_p), but
#. should be impossible for real properties, which always
#. have a getter.
-#: objc/objc-act.c:9173
+#: objc/objc-act.c:9658
#, gcc-internal-format
msgid "no %qs getter found"
msgstr ""
-#: objc/objc-act.c:9413
+#: objc/objc-act.c:9898
#, gcc-internal-format
msgid "fast enumeration is not available in Objective-C 1.0"
msgstr ""
-#: objc/objc-act.c:9423
+#: objc/objc-act.c:9908
#, gcc-internal-format
msgid "iterating variable in fast enumeration is not an object"
msgstr ""
-#: objc/objc-act.c:9429
+#: objc/objc-act.c:9914
#, gcc-internal-format
msgid "collection in fast enumeration is not an object"
msgstr ""
-#: objc/objc-act.c:10362
+#: objc/objc-act.c:10847
#, gcc-internal-format, gfc-internal-format
msgid "unknown type %s found during Objective-C encoding"
msgstr ""
#. Do not do any encoding, produce an error and keep going.
-#: objc/objc-act.c:10445
+#: objc/objc-act.c:10930
#, gcc-internal-format
msgid "trying to encode non-integer type as a bitfield"
msgstr ""
-#: objc/objc-gnu-runtime-abi-01.c:129
+#: objc/objc-gnu-runtime-abi-01.c:130
#, gcc-internal-format
msgid "%<-fobjc-gc%> is ignored for %<-fgnu-runtime%>"
msgstr ""
-#: objc/objc-gnu-runtime-abi-01.c:137
+#: objc/objc-gnu-runtime-abi-01.c:138
#, gcc-internal-format
msgid "%<-fobjc-sjlj-exceptions%> is ignored for %<-fgnu-runtime%>"
msgstr ""
-#: objc/objc-gnu-runtime-abi-01.c:2168 objc/objc-next-runtime-abi-01.c:2848
-#: objc/objc-next-runtime-abi-02.c:3636
+#: objc/objc-gnu-runtime-abi-01.c:2169 objc/objc-next-runtime-abi-01.c:2848
+#: objc/objc-next-runtime-abi-02.c:3637
#, gcc-internal-format
msgid "non-objective-c type '%T' cannot be caught"
msgstr ""
-#: objc/objc-next-runtime-abi-01.c:150
+#: objc/objc-next-runtime-abi-01.c:151
#, gcc-internal-format
msgid ""
"%<-fobjc-sjlj-exceptions%> is the only supported exceptions system for %<-"
"fnext-runtime%> with %<-fobjc-abi-version%> < 2"
msgstr ""
-#: objc/objc-next-runtime-abi-02.c:247
+#: objc/objc-next-runtime-abi-02.c:248
#, gcc-internal-format
msgid ""
"%<-fobjc-sjlj-exceptions%> is ignored for %<-fnext-runtime%> when %<-fobjc-"
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c
index a0f9dfb..c20ff6c 100644
--- a/gcc/print-rtl.c
+++ b/gcc/print-rtl.c
@@ -552,6 +552,8 @@
#ifndef GENERATOR_FILE
if (i == 0 && GET_CODE (in_rtx) == DEBUG_IMPLICIT_PTR)
print_mem_expr (outfile, DEBUG_IMPLICIT_PTR_DECL (in_rtx));
+ else if (i == 0 && GET_CODE (in_rtx) == DEBUG_PARAMETER_REF)
+ print_mem_expr (outfile, DEBUG_PARAMETER_REF_DECL (in_rtx));
else
dump_addr (outfile, " ", XTREE (in_rtx, i));
#endif
diff --git a/gcc/reg-notes.def b/gcc/reg-notes.def
index 329cd67..9924355 100644
--- a/gcc/reg-notes.def
+++ b/gcc/reg-notes.def
@@ -160,6 +160,11 @@
to the argument, if it is a MEM, it is ignored. */
REG_NOTE (CFA_SET_VDRAP)
+/* Attached to insn that are RTX_FRAME_RELATED_P, indicating a window
+ save operation, i.e. will result in a DW_CFA_GNU_window_save.
+ The argument is ignored. */
+REG_NOTE (CFA_WINDOW_SAVE)
+
/* Indicates that REG holds the exception context for the function.
This context is shared by inline functions, so the code to acquire
the real exception context is delayed until after inlining. */
diff --git a/gcc/reload.h b/gcc/reload.h
index c9df112..ad0cfcd 100644
--- a/gcc/reload.h
+++ b/gcc/reload.h
@@ -420,7 +420,7 @@
extern void init_reload (void);
/* The reload pass itself. */
-extern int reload (rtx, int);
+extern bool reload (rtx, int);
/* Mark the slots in regs_ever_live for the hard regs
used by pseudo-reg number REGNO. */
diff --git a/gcc/reload1.c b/gcc/reload1.c
index a87e6ad..a9aa017 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -250,6 +250,10 @@
examine. */
struct insn_chain *reload_insn_chain;
+/* TRUE if we potentially left dead insns in the insn stream and want to
+ run DCE immediately after reload, FALSE otherwise. */
+static bool need_dce;
+
/* List of all insns needing reloads. */
static struct insn_chain *insns_need_reload;
@@ -695,10 +699,11 @@
If GLOBAL is zero, we do not have enough information to do that,
so any pseudo reg that is spilled must go to the stack.
- Return value is nonzero if reload failed
- and we must not do any more for this function. */
+ Return value is TRUE if reload likely left dead insns in the
+ stream and a DCE pass should be run to elimiante them. Else the
+ return value is FALSE. */
-int
+bool
reload (rtx first, int global)
{
int i, n;
@@ -1329,7 +1334,9 @@
gcc_assert (bitmap_empty_p (&spilled_pseudos));
- return failure;
+ reload_completed = !failure;
+
+ return need_dce;
}
/* Yet another special case. Unfortunately, reg-stack forces people to
@@ -2123,14 +2130,19 @@
rtx prev = prev_active_insn (insn);
rtx prev_dest;
- /* If the previous insn sets a register that dies in our insn, delete it
- too. */
+ /* If the previous insn sets a register that dies in our insn make
+ a note that we want to run DCE immediately after reload.
+
+ We used to delete the previous insn & recurse, but that's wrong for
+ block local equivalences. Instead of trying to figure out the exact
+ circumstances where we can delete the potentially dead insns, just
+ let DCE do the job. */
if (prev && GET_CODE (PATTERN (prev)) == SET
&& (prev_dest = SET_DEST (PATTERN (prev)), REG_P (prev_dest))
&& reg_mentioned_p (prev_dest, PATTERN (insn))
&& find_regno_note (insn, REG_DEAD, REGNO (prev_dest))
&& ! side_effects_p (SET_SRC (PATTERN (prev))))
- delete_dead_insn (prev);
+ need_dce = 1;
SET_INSN_DELETED (insn);
}
diff --git a/gcc/rtl.c b/gcc/rtl.c
index e335a39..52e9e9c 100644
--- a/gcc/rtl.c
+++ b/gcc/rtl.c
@@ -413,6 +413,10 @@
return DEBUG_IMPLICIT_PTR_DECL (x)
== DEBUG_IMPLICIT_PTR_DECL (y);
+ case DEBUG_PARAMETER_REF:
+ return DEBUG_PARAMETER_REF_DECL (x)
+ == DEBUG_PARAMETER_REF_DECL (x);
+
case ENTRY_VALUE:
return rtx_equal_p_cb (ENTRY_VALUE_EXP (x), ENTRY_VALUE_EXP (y), cb);
@@ -548,6 +552,10 @@
return DEBUG_IMPLICIT_PTR_DECL (x)
== DEBUG_IMPLICIT_PTR_DECL (y);
+ case DEBUG_PARAMETER_REF:
+ return DEBUG_PARAMETER_REF_DECL (x)
+ == DEBUG_PARAMETER_REF_DECL (y);
+
case ENTRY_VALUE:
return rtx_equal_p (ENTRY_VALUE_EXP (x), ENTRY_VALUE_EXP (y));
@@ -660,6 +668,7 @@
case CONST_DOUBLE:
case CONST_FIXED:
case DEBUG_IMPLICIT_PTR:
+ case DEBUG_PARAMETER_REF:
return hash;
default:
break;
diff --git a/gcc/rtl.def b/gcc/rtl.def
index cb5555a..a7de8f7 100644
--- a/gcc/rtl.def
+++ b/gcc/rtl.def
@@ -613,6 +613,10 @@
or 0 if arg is 0. */
DEF_RTL_EXPR(FFS, "ffs", "e", RTX_UNARY)
+/* Count number of leading redundant sign bits (number of leading
+ sign bits minus one). */
+DEF_RTL_EXPR(CLRSB, "clrsb", "e", RTX_UNARY)
+
/* Count leading zeros. */
DEF_RTL_EXPR(CLZ, "clz", "e", RTX_UNARY)
@@ -723,6 +727,10 @@
parameter. */
DEF_RTL_EXPR(ENTRY_VALUE, "entry_value", "0", RTX_OBJ)
+/* Used in VAR_LOCATION for a reference to a parameter that has
+ been optimized away completely. */
+DEF_RTL_EXPR(DEBUG_PARAMETER_REF, "debug_parameter_ref", "t", RTX_OBJ)
+
/* All expressions from this point forward appear only in machine
descriptions. */
#ifdef GENERATOR_FILE
diff --git a/gcc/rtl.h b/gcc/rtl.h
index f2c29839..da18788 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -941,6 +941,9 @@
/* VAR_DECL/PARM_DECL DEBUG_IMPLICIT_PTR takes address of. */
#define DEBUG_IMPLICIT_PTR_DECL(RTX) XCTREE (RTX, 0, DEBUG_IMPLICIT_PTR)
+/* PARM_DECL DEBUG_PARAMETER_REF references. */
+#define DEBUG_PARAMETER_REF_DECL(RTX) XCTREE (RTX, 0, DEBUG_PARAMETER_REF)
+
/* Possible initialization status of a variable. When requested
by the user, this information is tracked and recorded in the DWARF
debug information, along with the variable's location. */
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index b52957d..0be6504 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -4134,20 +4134,6 @@
if (result_low > 0)
nonzero &= ~(((unsigned HOST_WIDE_INT) 1 << result_low) - 1);
-
-#ifdef POINTERS_EXTEND_UNSIGNED
- /* If pointers extend unsigned and this is an addition or subtraction
- to a pointer in Pmode, all the bits above ptr_mode are known to be
- zero. */
- /* As we do not know which address space the pointer is refering to,
- we can do this only if the target does not support different pointer
- or address modes depending on the address space. */
- if (target_default_pointer_address_modes_p ()
- && POINTERS_EXTEND_UNSIGNED > 0 && GET_MODE (x) == Pmode
- && (code == PLUS || code == MINUS)
- && REG_P (XEXP (x, 0)) && REG_POINTER (XEXP (x, 0)))
- nonzero &= GET_MODE_MASK (ptr_mode);
-#endif
}
break;
@@ -4619,21 +4605,6 @@
known_x, known_mode, known_ret);
result = MAX (1, MIN (num0, num1) - 1);
-#ifdef POINTERS_EXTEND_UNSIGNED
- /* If pointers extend signed and this is an addition or subtraction
- to a pointer in Pmode, all the bits above ptr_mode are known to be
- sign bit copies. */
- /* As we do not know which address space the pointer is refering to,
- we can do this only if the target does not support different pointer
- or address modes depending on the address space. */
- if (target_default_pointer_address_modes_p ()
- && ! POINTERS_EXTEND_UNSIGNED && GET_MODE (x) == Pmode
- && (code == PLUS || code == MINUS)
- && REG_P (XEXP (x, 0)) && REG_POINTER (XEXP (x, 0)))
- result = MAX ((int) (GET_MODE_BITSIZE (Pmode)
- - GET_MODE_BITSIZE (ptr_mode) + 1),
- result);
-#endif
return result;
case MULT:
diff --git a/gcc/sese.c b/gcc/sese.c
index 3ce83b9..a03cbc9 100644
--- a/gcc/sese.c
+++ b/gcc/sese.c
@@ -1,5 +1,5 @@
/* Single entry single exit control flow regions.
- Copyright (C) 2008, 2009, 2010
+ Copyright (C) 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by Jan Sjodin <jan.sjodin@amd.com> and
Sebastian Pop <sebastian.pop@amd.com>.
@@ -472,6 +472,8 @@
{
if (gimple_debug_bind_p (copy))
gimple_debug_bind_reset_value (copy);
+ else if (gimple_debug_source_bind_p (copy))
+ return false;
else
gcc_unreachable ();
diff --git a/gcc/simplify-rtx.c b/gcc/simplify-rtx.c
index 18f264b..3c4df97 100644
--- a/gcc/simplify-rtx.c
+++ b/gcc/simplify-rtx.c
@@ -1211,6 +1211,7 @@
rtx op, enum machine_mode op_mode)
{
unsigned int width = GET_MODE_BITSIZE (mode);
+ unsigned int op_width = GET_MODE_BITSIZE (op_mode);
if (code == VEC_DUPLICATE)
{
@@ -1321,7 +1322,8 @@
}
if (CONST_INT_P (op)
- && width <= HOST_BITS_PER_WIDE_INT && width > 0)
+ && width <= HOST_BITS_PER_WIDE_INT
+ && op_width <= HOST_BITS_PER_WIDE_INT && op_width > 0)
{
HOST_WIDE_INT arg0 = INTVAL (op);
HOST_WIDE_INT val;
@@ -1341,40 +1343,50 @@
break;
case FFS:
- arg0 &= GET_MODE_MASK (mode);
+ arg0 &= GET_MODE_MASK (op_mode);
val = ffs_hwi (arg0);
break;
case CLZ:
- arg0 &= GET_MODE_MASK (mode);
- if (arg0 == 0 && CLZ_DEFINED_VALUE_AT_ZERO (mode, val))
+ arg0 &= GET_MODE_MASK (op_mode);
+ if (arg0 == 0 && CLZ_DEFINED_VALUE_AT_ZERO (op_mode, val))
;
else
- val = GET_MODE_BITSIZE (mode) - floor_log2 (arg0) - 1;
+ val = GET_MODE_BITSIZE (op_mode) - floor_log2 (arg0) - 1;
+ break;
+
+ case CLRSB:
+ arg0 &= GET_MODE_MASK (op_mode);
+ if (arg0 == 0)
+ val = GET_MODE_BITSIZE (op_mode) - 1;
+ else if (arg0 >= 0)
+ val = GET_MODE_BITSIZE (op_mode) - floor_log2 (arg0) - 2;
+ else if (arg0 < 0)
+ val = GET_MODE_BITSIZE (op_mode) - floor_log2 (~arg0) - 2;
break;
case CTZ:
- arg0 &= GET_MODE_MASK (mode);
+ arg0 &= GET_MODE_MASK (op_mode);
if (arg0 == 0)
{
/* Even if the value at zero is undefined, we have to come
up with some replacement. Seems good enough. */
- if (! CTZ_DEFINED_VALUE_AT_ZERO (mode, val))
- val = GET_MODE_BITSIZE (mode);
+ if (! CTZ_DEFINED_VALUE_AT_ZERO (op_mode, val))
+ val = GET_MODE_BITSIZE (op_mode);
}
else
val = ctz_hwi (arg0);
break;
case POPCOUNT:
- arg0 &= GET_MODE_MASK (mode);
+ arg0 &= GET_MODE_MASK (op_mode);
val = 0;
while (arg0)
val++, arg0 &= arg0 - 1;
break;
case PARITY:
- arg0 &= GET_MODE_MASK (mode);
+ arg0 &= GET_MODE_MASK (op_mode);
val = 0;
while (arg0)
val++, arg0 &= arg0 - 1;
diff --git a/gcc/sync-builtins.def b/gcc/sync-builtins.def
index 614e6e3..731d4a2 100644
--- a/gcc/sync-builtins.def
+++ b/gcc/sync-builtins.def
@@ -28,225 +28,231 @@
is supposed to be using. It's overloaded, and is resolved to one of the
"_1" through "_16" versions, plus some extra casts. */
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_ADD_N, "__sync_fetch_and_add",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_ADD_N, "__sync_fetch_and_add",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_ADD_1, "__sync_fetch_and_add_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_ADD_1, "__sync_fetch_and_add_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_ADD_2, "__sync_fetch_and_add_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_ADD_2, "__sync_fetch_and_add_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_ADD_4, "__sync_fetch_and_add_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_ADD_4, "__sync_fetch_and_add_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_ADD_8, "__sync_fetch_and_add_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_ADD_8, "__sync_fetch_and_add_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_ADD_16, "__sync_fetch_and_add_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_ADD_16, "__sync_fetch_and_add_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_SUB_N, "__sync_fetch_and_sub",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_SUB_N, "__sync_fetch_and_sub",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_SUB_1, "__sync_fetch_and_sub_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_SUB_1, "__sync_fetch_and_sub_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_SUB_2, "__sync_fetch_and_sub_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_SUB_2, "__sync_fetch_and_sub_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_SUB_4, "__sync_fetch_and_sub_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_SUB_4, "__sync_fetch_and_sub_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_SUB_8, "__sync_fetch_and_sub_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_SUB_8, "__sync_fetch_and_sub_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_SUB_16, "__sync_fetch_and_sub_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_SUB_16, "__sync_fetch_and_sub_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_OR_N, "__sync_fetch_and_or",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_OR_N, "__sync_fetch_and_or",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_OR_1, "__sync_fetch_and_or_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_OR_1, "__sync_fetch_and_or_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_OR_2, "__sync_fetch_and_or_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_OR_2, "__sync_fetch_and_or_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_OR_4, "__sync_fetch_and_or_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_OR_4, "__sync_fetch_and_or_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_OR_8, "__sync_fetch_and_or_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_OR_8, "__sync_fetch_and_or_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_OR_16, "__sync_fetch_and_or_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_OR_16, "__sync_fetch_and_or_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_AND_N, "__sync_fetch_and_and",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_AND_N, "__sync_fetch_and_and",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_AND_1, "__sync_fetch_and_and_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_AND_1, "__sync_fetch_and_and_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_AND_2, "__sync_fetch_and_and_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_AND_2, "__sync_fetch_and_and_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_AND_4, "__sync_fetch_and_and_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_AND_4, "__sync_fetch_and_and_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_AND_8, "__sync_fetch_and_and_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_AND_8, "__sync_fetch_and_and_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_AND_16, "__sync_fetch_and_and_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_AND_16, "__sync_fetch_and_and_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_XOR_N, "__sync_fetch_and_xor",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_XOR_N, "__sync_fetch_and_xor",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_XOR_1, "__sync_fetch_and_xor_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_XOR_1, "__sync_fetch_and_xor_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_XOR_2, "__sync_fetch_and_xor_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_XOR_2, "__sync_fetch_and_xor_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_XOR_4, "__sync_fetch_and_xor_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_XOR_4, "__sync_fetch_and_xor_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_XOR_8, "__sync_fetch_and_xor_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_XOR_8, "__sync_fetch_and_xor_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_XOR_16, "__sync_fetch_and_xor_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_XOR_16, "__sync_fetch_and_xor_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_NAND_N, "__sync_fetch_and_nand",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_NAND_N, "__sync_fetch_and_nand",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_NAND_1, "__sync_fetch_and_nand_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_NAND_1, "__sync_fetch_and_nand_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_NAND_2, "__sync_fetch_and_nand_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_NAND_2, "__sync_fetch_and_nand_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_NAND_4, "__sync_fetch_and_nand_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_NAND_4, "__sync_fetch_and_nand_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_NAND_8, "__sync_fetch_and_nand_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_NAND_8, "__sync_fetch_and_nand_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_FETCH_AND_NAND_16, "__sync_fetch_and_nand_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_FETCH_AND_NAND_16, "__sync_fetch_and_nand_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_ADD_AND_FETCH_N, "__sync_add_and_fetch",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_ADD_AND_FETCH_N, "__sync_add_and_fetch",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_ADD_AND_FETCH_1, "__sync_add_and_fetch_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_ADD_AND_FETCH_1, "__sync_add_and_fetch_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_ADD_AND_FETCH_2, "__sync_add_and_fetch_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_ADD_AND_FETCH_2, "__sync_add_and_fetch_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_ADD_AND_FETCH_4, "__sync_add_and_fetch_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_ADD_AND_FETCH_4, "__sync_add_and_fetch_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_ADD_AND_FETCH_8, "__sync_add_and_fetch_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_ADD_AND_FETCH_8, "__sync_add_and_fetch_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_ADD_AND_FETCH_16, "__sync_add_and_fetch_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_ADD_AND_FETCH_16, "__sync_add_and_fetch_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_SUB_AND_FETCH_N, "__sync_sub_and_fetch",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_SUB_AND_FETCH_N, "__sync_sub_and_fetch",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_SUB_AND_FETCH_1, "__sync_sub_and_fetch_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_SUB_AND_FETCH_1, "__sync_sub_and_fetch_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_SUB_AND_FETCH_2, "__sync_sub_and_fetch_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_SUB_AND_FETCH_2, "__sync_sub_and_fetch_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_SUB_AND_FETCH_4, "__sync_sub_and_fetch_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_SUB_AND_FETCH_4, "__sync_sub_and_fetch_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_SUB_AND_FETCH_8, "__sync_sub_and_fetch_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_SUB_AND_FETCH_8, "__sync_sub_and_fetch_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_SUB_AND_FETCH_16, "__sync_sub_and_fetch_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_SUB_AND_FETCH_16, "__sync_sub_and_fetch_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_OR_AND_FETCH_N, "__sync_or_and_fetch",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_OR_AND_FETCH_N, "__sync_or_and_fetch",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_OR_AND_FETCH_1, "__sync_or_and_fetch_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_OR_AND_FETCH_1, "__sync_or_and_fetch_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_OR_AND_FETCH_2, "__sync_or_and_fetch_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_OR_AND_FETCH_2, "__sync_or_and_fetch_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_OR_AND_FETCH_4, "__sync_or_and_fetch_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_OR_AND_FETCH_4, "__sync_or_and_fetch_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_OR_AND_FETCH_8, "__sync_or_and_fetch_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_OR_AND_FETCH_8, "__sync_or_and_fetch_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_OR_AND_FETCH_16, "__sync_or_and_fetch_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_OR_AND_FETCH_16, "__sync_or_and_fetch_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_AND_AND_FETCH_N, "__sync_and_and_fetch",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_AND_AND_FETCH_N, "__sync_and_and_fetch",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_AND_AND_FETCH_1, "__sync_and_and_fetch_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_AND_AND_FETCH_1, "__sync_and_and_fetch_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_AND_AND_FETCH_2, "__sync_and_and_fetch_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_AND_AND_FETCH_2, "__sync_and_and_fetch_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_AND_AND_FETCH_4, "__sync_and_and_fetch_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_AND_AND_FETCH_4, "__sync_and_and_fetch_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_AND_AND_FETCH_8, "__sync_and_and_fetch_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_AND_AND_FETCH_8, "__sync_and_and_fetch_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_AND_AND_FETCH_16, "__sync_and_and_fetch_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_AND_AND_FETCH_16, "__sync_and_and_fetch_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_XOR_AND_FETCH_N, "__sync_xor_and_fetch",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_XOR_AND_FETCH_N, "__sync_xor_and_fetch",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_XOR_AND_FETCH_1, "__sync_xor_and_fetch_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_XOR_AND_FETCH_1, "__sync_xor_and_fetch_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_XOR_AND_FETCH_2, "__sync_xor_and_fetch_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_XOR_AND_FETCH_2, "__sync_xor_and_fetch_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_XOR_AND_FETCH_4, "__sync_xor_and_fetch_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_XOR_AND_FETCH_4, "__sync_xor_and_fetch_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_XOR_AND_FETCH_8, "__sync_xor_and_fetch_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_XOR_AND_FETCH_8, "__sync_xor_and_fetch_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_XOR_AND_FETCH_16, "__sync_xor_and_fetch_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_XOR_AND_FETCH_16, "__sync_xor_and_fetch_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_NAND_AND_FETCH_N, "__sync_nand_and_fetch",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_NAND_AND_FETCH_N, "__sync_nand_and_fetch",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_NAND_AND_FETCH_1, "__sync_nand_and_fetch_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_NAND_AND_FETCH_1, "__sync_nand_and_fetch_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_NAND_AND_FETCH_2, "__sync_nand_and_fetch_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_NAND_AND_FETCH_2, "__sync_nand_and_fetch_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_NAND_AND_FETCH_4, "__sync_nand_and_fetch_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_NAND_AND_FETCH_4, "__sync_nand_and_fetch_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_NAND_AND_FETCH_8, "__sync_nand_and_fetch_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_NAND_AND_FETCH_8, "__sync_nand_and_fetch_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_NAND_AND_FETCH_16, "__sync_nand_and_fetch_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_NAND_AND_FETCH_16, "__sync_nand_and_fetch_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_BOOL_COMPARE_AND_SWAP_N,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_N,
"__sync_bool_compare_and_swap",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_BOOL_COMPARE_AND_SWAP_1,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_1,
"__sync_bool_compare_and_swap_1",
BT_FN_BOOL_VPTR_I1_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_BOOL_COMPARE_AND_SWAP_2,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_2,
"__sync_bool_compare_and_swap_2",
BT_FN_BOOL_VPTR_I2_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_BOOL_COMPARE_AND_SWAP_4,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_4,
"__sync_bool_compare_and_swap_4",
BT_FN_BOOL_VPTR_I4_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_BOOL_COMPARE_AND_SWAP_8,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_8,
"__sync_bool_compare_and_swap_8",
BT_FN_BOOL_VPTR_I8_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_BOOL_COMPARE_AND_SWAP_16,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_BOOL_COMPARE_AND_SWAP_16,
"__sync_bool_compare_and_swap_16",
BT_FN_BOOL_VPTR_I16_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_VAL_COMPARE_AND_SWAP_N,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_N,
"__sync_val_compare_and_swap",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_VAL_COMPARE_AND_SWAP_1,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_1,
"__sync_val_compare_and_swap_1",
BT_FN_I1_VPTR_I1_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_VAL_COMPARE_AND_SWAP_2,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_2,
"__sync_val_compare_and_swap_2",
BT_FN_I2_VPTR_I2_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_VAL_COMPARE_AND_SWAP_4,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_4,
"__sync_val_compare_and_swap_4",
BT_FN_I4_VPTR_I4_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_VAL_COMPARE_AND_SWAP_8,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_8,
"__sync_val_compare_and_swap_8",
BT_FN_I8_VPTR_I8_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_VAL_COMPARE_AND_SWAP_16,
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_VAL_COMPARE_AND_SWAP_16,
"__sync_val_compare_and_swap_16",
BT_FN_I16_VPTR_I16_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_TEST_AND_SET_N, "__sync_lock_test_and_set",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_TEST_AND_SET_N,
+ "__sync_lock_test_and_set",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_TEST_AND_SET_1, "__sync_lock_test_and_set_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_TEST_AND_SET_1,
+ "__sync_lock_test_and_set_1",
BT_FN_I1_VPTR_I1, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_TEST_AND_SET_2, "__sync_lock_test_and_set_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_TEST_AND_SET_2,
+ "__sync_lock_test_and_set_2",
BT_FN_I2_VPTR_I2, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_TEST_AND_SET_4, "__sync_lock_test_and_set_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_TEST_AND_SET_4,
+ "__sync_lock_test_and_set_4",
BT_FN_I4_VPTR_I4, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_TEST_AND_SET_8, "__sync_lock_test_and_set_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_TEST_AND_SET_8,
+ "__sync_lock_test_and_set_8",
BT_FN_I8_VPTR_I8, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_TEST_AND_SET_16, "__sync_lock_test_and_set_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_TEST_AND_SET_16,
+ "__sync_lock_test_and_set_16",
BT_FN_I16_VPTR_I16, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_RELEASE_N, "__sync_lock_release",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_RELEASE_N, "__sync_lock_release",
BT_FN_VOID_VAR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_RELEASE_1, "__sync_lock_release_1",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_RELEASE_1, "__sync_lock_release_1",
BT_FN_VOID_VPTR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_RELEASE_2, "__sync_lock_release_2",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_RELEASE_2, "__sync_lock_release_2",
BT_FN_VOID_VPTR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_RELEASE_4, "__sync_lock_release_4",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_RELEASE_4, "__sync_lock_release_4",
BT_FN_VOID_VPTR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_RELEASE_8, "__sync_lock_release_8",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_RELEASE_8, "__sync_lock_release_8",
BT_FN_VOID_VPTR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_LOCK_RELEASE_16, "__sync_lock_release_16",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_LOCK_RELEASE_16, "__sync_lock_release_16",
BT_FN_VOID_VPTR, ATTR_NOTHROW_LEAF_LIST)
-DEF_SYNC_BUILTIN (BUILT_IN_SYNCHRONIZE, "__sync_synchronize",
+DEF_SYNC_BUILTIN (BUILT_IN_SYNC_SYNCHRONIZE, "__sync_synchronize",
BT_FN_VOID, ATTR_NOTHROW_LEAF_LIST)
diff --git a/gcc/system.h b/gcc/system.h
index 6b8fde2..e02cbcd 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -839,7 +839,7 @@
TARGET_PROMOTE_FUNCTION_ARGS TARGET_PROMOTE_FUNCTION_RETURN \
LANG_HOOKS_MISSING_ARGUMENT LANG_HOOKS_HASH_TYPES \
TARGET_HANDLE_OFAST TARGET_OPTION_OPTIMIZATION \
- TARGET_IRA_COVER_CLASSES
+ TARGET_IRA_COVER_CLASSES TARGET_HELP
/* Hooks into libgcc2. */
#pragma GCC poison LIBGCC2_DOUBLE_TYPE_SIZE LIBGCC2_WORDS_BIG_ENDIAN \
diff --git a/gcc/target.def b/gcc/target.def
index 94c434f..c67f0ba 100644
--- a/gcc/target.def
+++ b/gcc/target.def
@@ -1021,13 +1021,6 @@
void, (void),
hook_void_void)
-/* Display extra, target specific information in response to a
- --target-help switch. */
-DEFHOOK
-(help,
- "",
- void, (void), NULL)
-
DEFHOOK_UNDOC
(eh_return_filter_mode,
"Return machine mode for filter value.",
@@ -2552,13 +2545,6 @@
void, (void),
hook_void_void)
-DEFHOOK
-(default_params,
-"Set target-dependent default values for @option{--param} settings, using\
- calls to @code{set_default_param_value}.",
- void, (void),
- hook_void_void)
-
/* Function to determine if one function can inline another function. */
#undef HOOK_PREFIX
#define HOOK_PREFIX "TARGET_"
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 3da23b1..8c8e1b3 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,196 @@
+2011-06-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR testsuite/49529
+ * gcc.dg/ipa/ipa-pta-17.c: Use dg-require-alias.
+
+ * gcc.dg/debug/pr49294.c (dg-options): Add -fno-common to options on
+ hppa*-*-hpux*.
+
+2011-06-26 Jason Merrill <jason@redhat.com>
+
+ * g++.dg/cpp0x/constexpr-cleanup.C: Tweak error message.
+
+ PR c++/49528
+ * g++.dg/init/ref19.C: New.
+ * g++.dg/cpp0x/constexpr-cleanup.C: New.
+
+2011-06-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/48377
+ * gcc.dg/vect/pr48377.c: Add dg-require-effective-target
+ non_strict_align.
+
+2011-06-26 Steve Ellcey <sje@cup.hp.com>
+
+ PR middle-end/49191
+ * lib/target-supports.exp (check_effective_target_non_strict_align):
+ New.
+ * gcc.dg/memcpy-3.c: Add dg-require-effective-target non_strict_align.
+
+2011-06-24 Martin Jambor <mjambor@suse.cz>
+
+ PR tree-optimizations/49516
+ * g++.dg/tree-ssa/pr49516.C: New test.
+
+2011-06-23 Jason Merrill <jason@redhat.com>
+
+ PR c++/35255
+ * g++.dg/template/partial10.C: New.
+ * g++.dg/template/partial11.C: New.
+
+2011-06-23 Jeff Law <law@redhat.com>
+
+ PR middle-end/48770
+ * gcc.dg/pr48770.c: New test.
+
+2011-06-23 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/49373
+ * g++.dg/torture/pr43879-1_1.C: Revert the xfail introduced yesterday.
+
+2011-06-23 Jakub Jelinek <jakub@redhat.com>
+
+ PR testsuite/49512
+ * gcc.dg/tree-ssa/asm-1.c: Use -fdump-tree-optimized-nouid
+ instead of -fdump-tree-optimized.
+
+2011-06-23 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/44625
+ * g++.dg/template/crash107.C: New.
+ * g++.dg/template/error17.C: Adjust.
+
+2011-06-23 Jason Merrill <jason@redhat.com>
+
+ PR c++/49507
+ * g++.dg/cpp0x/defaulted30.C: New.
+
+ PR c++/49440
+ * g++.dg/rtti/anon-ns1.C: New.
+
+ PR c++/49395
+ * g++.dg/init/ref18.C: New.
+
+ PR c++/36435
+ * g++.dg/template/partial9.C: New.
+
+2011-06-22 Hans-Peter Nilsson <hp@axis.com>
+
+ PR middle-end/49373
+ * g++.dg/torture/pr43879-1_1.C: Xfail for -O1 and above, except -flto.
+
+2011-06-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/49496
+ * gcc.dg/pr49496.c: New test.
+
+2011-06-22 Janis Johnson <janisjo@codesourcery.com>
+
+ * gcc.target/arm/scd42-3.c: Allow -march-xscale; skip if -mcpu
+ is not xscale.
+
+ * gcc.target/arm/thumb-bitfld1.c: Don't specify -march, require thumb1.
+
+ * gcc.target/arm/ctz.c: Don't specify -march, require thumb2.
+ * gcc.target/arm/pr42879.c: Likewise.
+ * gcc.target/arm/pr45701-3.c: Likewise.
+
+ * gcc.target/arm/20031108-1.c: Require thumb1 or thumb2.
+ * gcc.target/arm/pr40482.c: Likewise.
+ * gcc.target/arm/stack-corruption.c: Likewise.
+
+2011-06-22 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49493
+ * gcc.dg/ipa/ipa-pta-17.c: New testcase.
+
+2011-06-22 Jason Merrill <jason@redhat.com>
+
+ PR c++/49260
+ * g++.dg/cpp0x/lambda/lambda-eh2.C: Change options.
+
+2011-06-22 Dmitry Plotnikov <dplotnikov@ispras.ru>
+ Dmitry Melnik <dm@ispras.ru>
+
+ * gcc.target/arm/neon-vshr-imm-1.c: New testcase.
+ * gcc.target/arm/neon-vshl-imm-1.c: New testcase.
+ * gcc.target/arm/neon-vlshr-imm-1.c: New testcase.
+
+2011-06-22 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcc.target/arm/tlscall.c: New.
+
+2011-06-21 Jason Merrill <jason@redhat.com>
+
+ PR c++/49172
+ * g++.dg/cpp0x/constexpr-ref1.C: New.
+ * g++.dg/cpp0x/constexpr-ref2.C: New.
+ * g++.dg/cpp0x/constexpr-ice2.C: Remove dg-error tag.
+
+ PR c++/49482
+ * g++.dg/cpp0x/lambda/lambda-warn3.C: New.
+
+ PR c++/49418
+ * g++.dg/template/param3.C: New.
+
+2011-06-21 Bernd Schmidt <bernds@codesourcery.com>
+
+ * gcc.c-torture/excute/builtin-bitops-1.c (MAKE_FUNS): Make
+ my_clrsb test functions.
+ (main): Test clrsb.
+ * gcc.dg/builtin-protos-1.c (test_s, test_u, test_sl, test_ul,
+ test_sll, test_ull): Add clrsb tests.
+ * gcc.dg/torture/builtin-attr-1.c: Add tests for clrsb, clrsbl,
+ clrsbll.
+
+2011-06-21 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/49112
+ * gfortran.dg/class_44.f03: New.
+
+2011-06-21 Ira Rosen <ira.rosen@linaro.org>
+
+ PR tree-optimization/49478
+ * gcc.dg/vect/pr49478.c
+
+2011-06-21 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49483
+ * gcc.dg/vect/vect-120.c: New testcase.
+
+2011-06-21 Ira Rosen <ira.rosen@linaro.org>
+
+ PR testsuite/49443
+ * gcc.dg/vect/vect-peel-3.c: Expect to fail on vect_no_align targets.
+ * gcc.dg/vect/vect-peel-4.c: Likewise.
+
+2011-06-22 Christian Bruel <christian.bruel@st.com>
+
+ PR middle-end/49139
+ * gcc.dg/always_inline.c: Removed -Winline. Update checks
+ * gcc.dg/always_inline2.c: Likewise.
+ * gcc.dg/always_inline3.c: Likewise.
+ * gcc.dg/debug/pr41264-1.c: Add -Wno-attributes.
+ * gcc.dg/inline_1.c: Likewise.
+ * gcc.dg/inline_2.c: Likewise.
+ * gcc.dg/inline_3.c: Likewise.
+ * gcc.dg/inline_4.c: Likewise.
+ * gcc.dg/20051201-1.c: Likewise.
+ * gcc.dg/pr40087.c: Likewise.
+ * gcc.dg/torture/pta-structcopy-1.c: Likewise.
+ * gcc.dg/inline-22.c: Likewise.
+ * gcc.dg/lto/20090218-1_0.c: Set inline keyword.
+ * gcc.dg/lto/20090218-1_1.c: Likewise.
+ * g++.dg/ipa/devirt-7.C: Likewise.
+ * gcc.dg/uninit-pred-5_a.c: Likewise.
+ * gcc.dg/uninit-pred-5_b.c: Likewise.
+ * gcc.dg/fail_always_inline.c: New.
+
+2011-06-21 Jakub Jelinek <jakub@redhat.com>
+
+ * Make-lang.in (check_gfortran_parallelize): Parallelize dg.exp
+ into 6 jobs instead of 3.
+
2011-06-20 Jason Merrill <jason@redhat.com>
PR c++/49216
@@ -162,7 +355,7 @@
2011-06-16 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
- Revert
+ Revert:
2011-06-10 Wei Guozhi <carrot@google.com>
PR target/45335
@@ -208,7 +401,8 @@
2011-06-14 Janis Johnson <janisjo@codesourcery.com>
- * gcc.target/arm/pr45701-1.c: Ignore warnings about conflicting switches.
+ * gcc.target/arm/pr45701-1.c: Ignore warnings about conflicting
+ switches.
* gcc.target/arm/pr45701-2.c: Likewise.
* gcc.target/arm/thumb-branch1.c: Likewise.
@@ -342,14 +536,14 @@
2011-06-10 Janis Johnson <janisjo@codesourcery.com>
- * gcc/testsuite/gcc.target/arm/20090811-1.c: Skip for incompatible
+ * gcc.target/arm/20090811-1.c: Skip for incompatible
options, do not override other options.
- * gcc/testsuite/gcc.target/arm/combine-cmp-shift.c: Skip for
+ * gcc.target/arm/combine-cmp-shift.c: Skip for
incompatible options.
- * gcc/testsuite/gcc.target/arm/pr45094.c: Likewise.
- * gcc/testsuite/gcc.target/arm/scd42-1.c: Likewise.
- * gcc/testsuite/gcc.target/arm/scd42-3.c: Likewise.
- * gcc/testsuite/gcc.target/arm/thumb-ltu.c: Likewise.
+ * gcc.target/arm/pr45094.c: Likewise.
+ * gcc.target/arm/scd42-1.c: Likewise.
+ * gcc.target/arm/scd42-3.c: Likewise.
+ * gcc.target/arm/thumb-ltu.c: Likewise.
* lib/target-supports.exp
(check_effective_target_arm_neon_fp16_ok_nocache): Return 0 if
@@ -444,7 +638,7 @@
2011-06-09 David Li <davidxl@google.com>
- * testsuite/gcc.dg/dump-pass.c: New test.
+ * gcc.dg/dump-pass.c: New test.
2011-06-09 Paolo Carlini <paolo.carlini@oracle.com>
@@ -631,18 +825,17 @@
2011-06-07 Xinliang David Li <davidxl@google.com>
- * testsuite/gcc.dg/inline_2.c: New test.
- * testsuite/gcc.dg/unroll_2.c: New test.
- * testsuite/gcc.dg/inline_3.c: New test.
- * testsuite/gcc.dg/unroll_3.c: New test.
- * testsuite/gcc.dg/inline_4.c: New test.
- * testsuite/gcc.dg/unroll_4.c: New test.
- * testsuite/gcc.dg/inline_1.c: New test.
- * testsuite/gcc.dg/unroll_1.c: New test.
+ * gcc.dg/inline_2.c: New test.
+ * gcc.dg/unroll_2.c: New test.
+ * gcc.dg/inline_3.c: New test.
+ * gcc.dg/unroll_3.c: New test.
+ * gcc.dg/inline_4.c: New test.
+ * gcc.dg/unroll_4.c: New test.
+ * gcc.dg/inline_1.c: New test.
+ * gcc.dg/unroll_1.c: New test.
2011-06-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
- gcc/testsuite:
PR tree-optimization/48497
* lib/gcc-defs.exp (dg-additional-options): New proc.
* gfortran.dg/graphite/vect-pr40979.f90: Use dg-additional-options
@@ -1181,7 +1374,7 @@
2011-06-04 Jonathan Wakely <jwakely.gcc@gmail.com>
- * testsuite/g++.dg/warn/delete-non-virtual-dtor.C: New.
+ * g++.dg/warn/delete-non-virtual-dtor.C: New.
2011-06-04 Jonathan Wakely <jwakely.gcc@gmail.com>
@@ -1214,8 +1407,7 @@
2011-06-03 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
- * lib/target-supports.exp (check_sse_os_support_available): Use
- movaps.
+ * lib/target-supports.exp (check_sse_os_support_available): Use movaps.
2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
@@ -1305,24 +1497,24 @@
2011-06-01 David Li <davidxl@google.com>
- * testsuite/gcc.dg/profile-dir-1.c: Change pass name.
- * testsuite/gcc.dg/profile-dir-2.c: Ditto.
- * testsuite/gcc.dg/tree-ssa/dump-1.c: Ditto.
- * testsuite/gcc.dg/tree-ssa/loop-25.c: Ditto.
- * testsuite/gcc.dg/tree-prof/stringop-1.c: Ditto.
- * testsuite/gcc.dg/tree-prof/update-loopch.c: Ditto.
- * testsuite/gcc.dg/tree-prof/stringop-2.c: Ditto.
- * testsuite/gcc.dg/tree-prof/ic-misattribution-1.c: Ditto.
- * testsuite/gcc.dg/tree-prof/ic-misattribution-1a.c: Ditto.
- * testsuite/gcc.dg/tree-prof/indir-call-prof.c: Ditto.
- * testsuite/gcc.dg/tree-prof/val-prof-1.c: Ditto.
- * testsuite/gcc.dg/tree-prof/val-prof-2.c: Ditto.
- * testsuite/gcc.dg/tree-prof/val-prof-3.c: Ditto.
- * testsuite/gcc.dg/tree-prof/val-prof-4.c: Ditto.
- * testsuite/gcc.dg/tree-prof/val-prof-5.c: Ditto.
- * testsuite/gcc.dg/tree-prof/val-prof-7.c: Ditto.
- * testsuite/gcc.dg/profile-dir-3.c: Ditto.
- * testsuite/g++.dg/tree-prof/indir-call-prof.C: Ditto.
+ * gcc.dg/profile-dir-1.c: Change pass name.
+ * gcc.dg/profile-dir-2.c: Ditto.
+ * gcc.dg/tree-ssa/dump-1.c: Ditto.
+ * gcc.dg/tree-ssa/loop-25.c: Ditto.
+ * gcc.dg/tree-prof/stringop-1.c: Ditto.
+ * gcc.dg/tree-prof/update-loopch.c: Ditto.
+ * gcc.dg/tree-prof/stringop-2.c: Ditto.
+ * gcc.dg/tree-prof/ic-misattribution-1.c: Ditto.
+ * gcc.dg/tree-prof/ic-misattribution-1a.c: Ditto.
+ * gcc.dg/tree-prof/indir-call-prof.c: Ditto.
+ * gcc.dg/tree-prof/val-prof-1.c: Ditto.
+ * gcc.dg/tree-prof/val-prof-2.c: Ditto.
+ * gcc.dg/tree-prof/val-prof-3.c: Ditto.
+ * gcc.dg/tree-prof/val-prof-4.c: Ditto.
+ * gcc.dg/tree-prof/val-prof-5.c: Ditto.
+ * gcc.dg/tree-prof/val-prof-7.c: Ditto.
+ * gcc.dg/profile-dir-3.c: Ditto.
+ * g++.dg/tree-prof/indir-call-prof.C: Ditto.
2011-06-01 Nicola Pero <nicola.pero@meta-innovation.com>
@@ -1539,7 +1731,7 @@
2011-05-27 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/42056
- * testsuite/g++.dg/cpp0x/auto25.C: New.
+ * g++.dg/cpp0x/auto25.C: New.
2011-05-27 Richard Guenther <rguenther@suse.de>
@@ -2722,8 +2914,8 @@
2011-04-28 Xinliang David Li <davidxl@google.com>
- * testsuite/gcc.dg/tree-prof/prof-robust-1.c: New test.
- * testsuite/g++.dg/prof-robust-1.C: New test.
+ * gcc.dg/tree-prof/prof-robust-1.c: New test.
+ * g++.dg/prof-robust-1.C: New test.
2011-04-28 Ira Rosen <ira.rosen@linaro.org>
@@ -4274,11 +4466,11 @@
2011-03-16 Jason Merrill <jason@redhat.com>
* g++.dg/cpp0x/sfinae6.C: New.
- * gcc/testsuite/g++.dg/cpp0x/initlist38.C: Adjust expected error.
- * gcc/testsuite/g++.dg/cpp0x/pr45908.C: Likewise.
- * gcc/testsuite/g++.dg/cpp0x/sfinae6.C: Likewise.
- * gcc/testsuite/g++.old-deja/g++.jason/conversion11.C: Likewise.
- * gcc/testsuite/g++.old-deja/g++.law/arg11.C: Likewise.
+ * g++.dg/cpp0x/initlist38.C: Adjust expected error.
+ * g++.dg/cpp0x/pr45908.C: Likewise.
+ * g++.dg/cpp0x/sfinae6.C: Likewise.
+ * g++.old-deja/g++.jason/conversion11.C: Likewise.
+ * g++.old-deja/g++.law/arg11.C: Likewise.
2011-03-16 Jason Merrill <jason@redhat.com>
@@ -6803,8 +6995,8 @@
PR lto/45721
PR lto/45375
- * testsuite/gcc.dg/lto/pr45721_1.c: New file.
- * testsuite/gcc.dg/lto/pr45721_0.c: New file.
+ * gcc.dg/lto/pr45721_1.c: New file.
+ * gcc.dg/lto/pr45721_0.c: New file.
2011-01-11 Richard Guenther <rguenther@suse.de>
@@ -7100,8 +7292,8 @@
2011-01-06 Jan Hubicka <jh@suse.cz>
- * testsuite/gcc.dg/lto/pr47188_0.c: New testcase.
- * testsuite/gcc.dg/lto/pr47188_1.c: New testcase.
+ * gcc.dg/lto/pr47188_0.c: New testcase.
+ * gcc.dg/lto/pr47188_1.c: New testcase.
2011-01-06 Daniel Franke <franke.daniel@gmail.com>
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-cleanup.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-cleanup.C
new file mode 100644
index 0000000..de17f3d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-cleanup.C
@@ -0,0 +1,9 @@
+// { dg-options -std=c++0x }
+
+struct A
+{
+ int i;
+ ~A();
+};
+
+constexpr int i = A().i; // { dg-error "non-literal" }
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C
index 35643b9..856246f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ice2.C
@@ -1,3 +1,3 @@
// { dg-options -std=c++0x }
int x;
-constexpr int& rx = x; // { dg-error "int&" }
+constexpr int& rx = x;
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref1.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref1.C
new file mode 100644
index 0000000..482e1ba
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref1.C
@@ -0,0 +1,44 @@
+// PR c++/49172
+// { dg-options -std=c++0x }
+
+#define SA(X) static_assert((X),#X)
+
+constexpr int g() { return 42; };
+constexpr int(&rg)() = g; // #1
+
+SA(rg() == 42);
+
+constexpr int i = 24;
+constexpr int const& ri = i; // #2
+
+SA(&ri == &i);
+SA(ri == 24);
+
+void f()
+{
+ constexpr int(&rg)() = g; // #1
+
+ SA(rg() == 42);
+
+ constexpr static int i = 24;
+ constexpr int const& ri = i; // #2
+
+ SA(&ri == &i);
+ SA(ri == 24);
+}
+
+template <class T>
+void f2()
+{
+ constexpr int(&rg)() = g; // #1
+
+ SA(rg() == 42);
+
+ constexpr static int i = 24;
+ constexpr int const& ri = i; // #2
+
+ SA(&ri == &i);
+ SA(ri == 24);
+}
+
+template void f2<int>();
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ref2.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref2.C
new file mode 100644
index 0000000..2a86eb7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ref2.C
@@ -0,0 +1,17 @@
+// Negative reference variable tests.
+// { dg-options -std=c++0x }
+
+extern int *p;
+constexpr int& ri = *p; // { dg-error "p" }
+
+extern constexpr int &er; // { dg-error "not a definition" }
+constexpr int& ri2 = er; // { dg-error "er" }
+
+void f(int j)
+{
+ constexpr int i = 42;
+ constexpr int const& ri = i; // { dg-error "" }
+
+ constexpr int& rj = j; // { dg-error "" }
+}
+
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-union.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-union.C
index b461305..3c7a7f3 100644
--- a/gcc/testsuite/g++.dg/cpp0x/constexpr-union.C
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-union.C
@@ -1,5 +1,5 @@
// Test that we don't have to deal with type punning
-// FIXME Mike Miller thinks it should work
+// DR 1188 says this is ill-formed
// { dg-options -std=c++0x }
union U
diff --git a/gcc/testsuite/g++.dg/cpp0x/defaulted30.C b/gcc/testsuite/g++.dg/cpp0x/defaulted30.C
new file mode 100644
index 0000000..0bf4425
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/defaulted30.C
@@ -0,0 +1,16 @@
+// PR c++/49507
+// { dg-options -std=c++0x }
+
+template<typename T>
+struct ConcretePoolKey
+{
+ virtual ~ConcretePoolKey();
+};
+
+template<typename T>
+ConcretePoolKey<T>::~ConcretePoolKey() = default;
+
+int main()
+{
+ ConcretePoolKey<int> foo;
+}
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C
index 1490a25..0c94b55 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-eh2.C
@@ -1,5 +1,6 @@
// PR c++/47263
-// { dg-options -std=c++0x }
+// PR c++/49260
+// { dg-options "-std=c++0x -fno-asynchronous-unwind-tables -fno-dwarf2-cfi-asm" }
// { dg-do run }
#include <exception>
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn3.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn3.C
new file mode 100644
index 0000000..77f35bc
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-warn3.C
@@ -0,0 +1,12 @@
+// PR c++/49482
+// { dg-options "-std=c++0x -Wunused-but-set-parameter" }
+
+template<class T>
+void f() {
+ []( bool b ){ return b; };
+}
+
+int main()
+{
+ f<int>();
+}
diff --git a/gcc/testsuite/g++.dg/init/ref18.C b/gcc/testsuite/g++.dg/init/ref18.C
new file mode 100644
index 0000000..e704077
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/ref18.C
@@ -0,0 +1,12 @@
+// PR c++/49395
+
+volatile int foo();
+struct A { volatile int i; };
+typedef volatile int vi;
+
+volatile int i;
+
+const int& ir1 = foo();
+//const int& ir2 = A().i; // line 8
+const int& ir3 = static_cast<volatile int>(i);
+const int& ir4 = vi(); // line 10
diff --git a/gcc/testsuite/g++.dg/init/ref19.C b/gcc/testsuite/g++.dg/init/ref19.C
new file mode 100644
index 0000000..ed78c93
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/ref19.C
@@ -0,0 +1,17 @@
+// PR c++/49528
+// { dg-do run }
+
+int d;
+
+struct A
+{
+ int i;
+ ~A() { ++d; };
+};
+
+int main()
+{
+ const int &r = A().i;
+ if (d != 1)
+ return 1;
+}
diff --git a/gcc/testsuite/g++.dg/ipa/devirt-7.C b/gcc/testsuite/g++.dg/ipa/devirt-7.C
index ac147b5..1c59122 100644
--- a/gcc/testsuite/g++.dg/ipa/devirt-7.C
+++ b/gcc/testsuite/g++.dg/ipa/devirt-7.C
@@ -56,7 +56,7 @@
return 1;
}
-int __attribute__ ((always_inline))
+int inline __attribute__ ((always_inline))
A::middleman_1 (int i)
{
return this->foo (i);
diff --git a/gcc/testsuite/g++.dg/rtti/anon-ns1.C b/gcc/testsuite/g++.dg/rtti/anon-ns1.C
new file mode 100644
index 0000000..fd6f8af
--- /dev/null
+++ b/gcc/testsuite/g++.dg/rtti/anon-ns1.C
@@ -0,0 +1,15 @@
+// PR c++/49440
+// The typeinfo name for A should start with * so we compare
+// it by address rather than contents.
+
+// { dg-final { scan-assembler "\"\*N\[^\"\]+1AE\"" } }
+
+namespace
+{
+ class A { };
+}
+
+void f()
+{
+ throw A();
+}
diff --git a/gcc/testsuite/g++.dg/template/crash107.C b/gcc/testsuite/g++.dg/template/crash107.C
new file mode 100644
index 0000000..cd64c37
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/crash107.C
@@ -0,0 +1,20 @@
+// PR c++/44625
+// { dg-do compile }
+// { dg-options "" }
+
+template<typename FP_> struct Vec { // { dg-message "note" }
+ Vec& operator^=(Vec& rhs) {
+ union {
+ struct {FP_ x,y,z;};
+ }; // { dg-error "anonymous struct" }
+ X = y*rhs.z() - z*rhs.y(); // { dg-error "not declared|no member" }
+ }
+ Vec& operator^(Vec& rhs) {
+ return Vec(*this)^=rhs; // { dg-message "required" }
+ }
+};
+Vec<double> v(3,4,12); // { dg-error "no matching" }
+// { dg-message "note" { target *-*-* } 16 }
+Vec<double> V(12,4,3); // { dg-error "no matching" }
+// { dg-message "note" { target *-*-* } 18 }
+Vec<double> c = v^V; // { dg-message "required" }
diff --git a/gcc/testsuite/g++.dg/template/error17.C b/gcc/testsuite/g++.dg/template/error17.C
index f34234d..10c8b82 100644
--- a/gcc/testsuite/g++.dg/template/error17.C
+++ b/gcc/testsuite/g++.dg/template/error17.C
@@ -6,5 +6,4 @@
{
union { struct { }; }; // { dg-error "prohibits anonymous struct" "anon" }
// { dg-error "not inside" "not inside" { target *-*-* } 7 }
- // { dg-warning "no members" "no members" { target *-*-* } 7 }
}
diff --git a/gcc/testsuite/g++.dg/template/param3.C b/gcc/testsuite/g++.dg/template/param3.C
new file mode 100644
index 0000000..0c1e703
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/param3.C
@@ -0,0 +1,12 @@
+// PR c++/49418
+
+template <class T>
+void f (const T t)
+{
+ t = 1; // { dg-error "" }
+}
+
+int main()
+{
+ f(1);
+}
diff --git a/gcc/testsuite/g++.dg/template/partial10.C b/gcc/testsuite/g++.dg/template/partial10.C
new file mode 100644
index 0000000..53a48fb
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/partial10.C
@@ -0,0 +1,18 @@
+// PR c++/35255, DR 115
+// { dg-do link }
+
+// 14.8.1: In contexts where deduction is done and fails, or in contexts
+// where deduction is not done, if a template argument list is specified
+// and it, along with any default template arguments, identifies a single
+// function template specialization, then the template-id is an lvalue for
+// the function template specialization.
+
+template <class Fn> void def(Fn fn) {}
+
+template <class T1, class T2> T2 fn(T1, T2);
+template <class T1> int fn(T1) { }
+
+int main()
+{
+ def(fn<int>);
+}
diff --git a/gcc/testsuite/g++.dg/template/partial11.C b/gcc/testsuite/g++.dg/template/partial11.C
new file mode 100644
index 0000000..b5ceaa8
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/partial11.C
@@ -0,0 +1,24 @@
+// DR 115
+
+// 14.8.1: In contexts where deduction is done and fails, or in contexts
+// where deduction is not done, if a template argument list is specified
+// and it, along with any default template arguments, identifies a single
+// function template specialization, then the template-id is an lvalue for
+// the function template specialization.
+
+// Here, deduction is not done to resolve fn<int> because the target type
+// is a template parameter, so we resolve to the second template, and then
+// the call to def fails because we deduce different values of Fn for the
+// two function arguments.
+
+template <class Fn> void def(Fn fn, Fn fn2);
+
+template <class T1, class T2> T2 fn(T1, T2);
+template <class T1> int fn(T1);
+
+int f(int,int);
+
+int main()
+{
+ def(fn<int>,f); // { dg-error "" }
+}
diff --git a/gcc/testsuite/g++.dg/template/partial9.C b/gcc/testsuite/g++.dg/template/partial9.C
new file mode 100644
index 0000000..4c340fc
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/partial9.C
@@ -0,0 +1,6 @@
+// PR c++/36435
+
+template <class T> T f();
+template <class T> T* f() { }
+
+template int* f();
diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr49516.C b/gcc/testsuite/g++.dg/tree-ssa/pr49516.C
new file mode 100644
index 0000000..2c6fd04
--- /dev/null
+++ b/gcc/testsuite/g++.dg/tree-ssa/pr49516.C
@@ -0,0 +1,86 @@
+/* { dg-do run } */
+/* { dg-options "-O2" } */
+
+extern "C" void abort (void);
+
+typedef int int32;
+typedef unsigned int uint32;
+typedef unsigned long long uint64;
+typedef short int16;
+
+class Tp {
+ public:
+ Tp(int, const int segment, const int index) __attribute__((noinline));
+
+ inline bool operator==(const Tp& other) const;
+ inline bool operator!=(const Tp& other) const;
+ int GetType() const { return type_; }
+ int GetSegment() const { return segment_; }
+ int GetIndex() const { return index_; }
+ private:
+ inline static bool IsValidSegment(const int segment);
+ static const int kSegmentBits = 28;
+ static const int kTypeBits = 4;
+ static const int kMaxSegment = (1 << kSegmentBits) - 1;
+
+ union {
+
+ struct {
+ int32 index_;
+ uint32 segment_ : kSegmentBits;
+ uint32 type_ : kTypeBits;
+ };
+ struct {
+ int32 dummy_;
+ uint32 type_and_segment_;
+ };
+ uint64 value_;
+ };
+};
+
+Tp::Tp(int t, const int segment, const int index)
+ : index_(index), segment_(segment), type_(t) {}
+
+inline bool Tp::operator==(const Tp& other) const {
+ return value_ == other.value_;
+}
+inline bool Tp::operator!=(const Tp& other) const {
+ return value_ != other.value_;
+}
+
+class Range {
+ public:
+ inline Range(const Tp& position, const int count) __attribute__((always_inline));
+ inline Tp GetBeginTokenPosition() const;
+ inline Tp GetEndTokenPosition() const;
+ private:
+ Tp position_;
+ int count_;
+ int16 begin_index_;
+ int16 end_index_;
+};
+
+inline Range::Range(const Tp& position,
+ const int count)
+ : position_(position), count_(count), begin_index_(0), end_index_(0)
+ { }
+
+inline Tp Range::GetBeginTokenPosition() const {
+ return position_;
+}
+inline Tp Range::GetEndTokenPosition() const {
+ return Tp(position_.GetType(), position_.GetSegment(),
+ position_.GetIndex() + count_);
+}
+
+int main ()
+{
+ Range range(Tp(0, 0, 3), 0);
+ if (!(range.GetBeginTokenPosition() == Tp(0, 0, 3)))
+ abort ();
+
+ if (!(range.GetEndTokenPosition() == Tp(0, 0, 3)))
+ abort();
+
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/builtin-bitops-1.c b/gcc/testsuite/gcc.c-torture/execute/builtin-bitops-1.c
index 8c3122c..7907a75 100644
--- a/gcc/testsuite/gcc.c-torture/execute/builtin-bitops-1.c
+++ b/gcc/testsuite/gcc.c-torture/execute/builtin-bitops-1.c
@@ -62,6 +62,16 @@
return i; \
} \
\
+int my_clrsb##suffix(type x) { \
+ int i; \
+ int leading = (x >> CHAR_BIT * sizeof (type) - 1) & 1; \
+ for (i = 1; i < CHAR_BIT * sizeof (type); i++) \
+ if (((x >> ((CHAR_BIT * sizeof (type)) - i - 1)) & 1) \
+ != leading) \
+ break; \
+ return i - 1; \
+} \
+ \
int my_popcount##suffix(type x) { \
int i; \
int count = 0; \
@@ -176,6 +186,8 @@
if (ints[i] != 0
&& __builtin_ctz (ints[i]) != my_ctz (ints[i]))
abort ();
+ if (__builtin_clrsb (ints[i]) != my_clrsb (ints[i]))
+ abort ();
if (__builtin_popcount (ints[i]) != my_popcount (ints[i]))
abort ();
if (__builtin_parity (ints[i]) != my_parity (ints[i]))
@@ -192,6 +204,8 @@
if (longs[i] != 0
&& __builtin_ctzl (longs[i]) != my_ctzl (longs[i]))
abort ();
+ if (__builtin_clrsbl (longs[i]) != my_clrsbl (longs[i]))
+ abort ();
if (__builtin_popcountl (longs[i]) != my_popcountl (longs[i]))
abort ();
if (__builtin_parityl (longs[i]) != my_parityl (longs[i]))
@@ -208,6 +222,8 @@
if (longlongs[i] != 0
&& __builtin_ctzll (longlongs[i]) != my_ctzll (longlongs[i]))
abort ();
+ if (__builtin_clrsbll (longlongs[i]) != my_clrsbll (longlongs[i]))
+ abort ();
if (__builtin_popcountll (longlongs[i]) != my_popcountll (longlongs[i]))
abort ();
if (__builtin_parityll (longlongs[i]) != my_parityll (longlongs[i]))
@@ -223,6 +239,8 @@
abort (); \
if (x != 0 && __builtin_ctz##suffix (x) != my_ctz##suffix (x)) \
abort (); \
+ if (__builtin_clrsb##suffix (x) != my_clrsb##suffix (x)) \
+ abort (); \
if (__builtin_popcount##suffix (x) != my_popcount##suffix (x)) \
abort (); \
if (__builtin_parity##suffix (x) != my_parity##suffix (x)) \
diff --git a/gcc/testsuite/gcc.dg/20051201-1.c b/gcc/testsuite/gcc.dg/20051201-1.c
index 8e77986..bc8e792 100644
--- a/gcc/testsuite/gcc.dg/20051201-1.c
+++ b/gcc/testsuite/gcc.dg/20051201-1.c
@@ -2,7 +2,7 @@
tree_flow_call_edges_add. */
/* { dg-do compile } */
-/* { dg-options "-O1 -fprofile-generate" } */
+/* { dg-options "-O1 -fprofile-generate -Wno-attributes" } */
static __attribute__ ((always_inline)) void
baz ()
diff --git a/gcc/testsuite/gcc.dg/always_inline.c b/gcc/testsuite/gcc.dg/always_inline.c
index 08119f1..482a0a2 100644
--- a/gcc/testsuite/gcc.dg/always_inline.c
+++ b/gcc/testsuite/gcc.dg/always_inline.c
@@ -1,8 +1,8 @@
/* { dg-do compile } */
-/* { dg-options "-Winline -O2" } */
+/* { dg-options "-O2" } */
#include <stdarg.h>
inline __attribute__ ((always_inline)) void
-e(int t, ...) /* { dg-message "sorry\[^\n\]*variable argument" "" } */
+e(int t, ...) /* { dg-error "variable argument lists" } */
{
va_list q;
va_start (q, t);
diff --git a/gcc/testsuite/gcc.dg/always_inline2.c b/gcc/testsuite/gcc.dg/always_inline2.c
index c65df24..4f1634e 100644
--- a/gcc/testsuite/gcc.dg/always_inline2.c
+++ b/gcc/testsuite/gcc.dg/always_inline2.c
@@ -1,8 +1,8 @@
/* { dg-do compile } */
-/* { dg-options "-Winline -O2" } */
-inline __attribute__ ((always_inline)) void t(void); /* { dg-message "sorry\[^\n\]*body not available" "" } */
+/* { dg-options "-O2" } */
+inline __attribute__ ((always_inline)) void t(void); /* { dg-error "body not available" } */
void
q(void)
{
- t(); /* { dg-message "sorry\[^\n\]*called from here" "" } */
+ t(); /* { dg-error "called from here" } */
}
diff --git a/gcc/testsuite/gcc.dg/always_inline3.c b/gcc/testsuite/gcc.dg/always_inline3.c
index 97c80aa..80ea314 100644
--- a/gcc/testsuite/gcc.dg/always_inline3.c
+++ b/gcc/testsuite/gcc.dg/always_inline3.c
@@ -1,11 +1,11 @@
/* { dg-do compile } */
-/* { dg-options "-Winline -O2" } */
+/* { dg-options "-O2" } */
int do_something_evil (void);
inline __attribute__ ((always_inline)) void
-q2(void) /* { dg-message "sorry\[^\n\]*recursive" "" } */
+q2(void) /* { dg-error "recursive inlining" } */
{
if (do_something_evil ())
return;
- q2(); /* { dg-message "sorry\[^\n\]*called from here" "" } */
+ q2(); /* { dg-error "called from here" } */
q2(); /* With -O2 we don't warn here, it is eliminated by tail recursion. */
}
diff --git a/gcc/testsuite/gcc.dg/builtin-protos-1.c b/gcc/testsuite/gcc.dg/builtin-protos-1.c
index 85f96cf..b9e9396 100644
--- a/gcc/testsuite/gcc.dg/builtin-protos-1.c
+++ b/gcc/testsuite/gcc.dg/builtin-protos-1.c
@@ -7,6 +7,7 @@
return __builtin_abs (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_clz (x) /* { dg-warning "as unsigned due to prototype" } */
+ __builtin_ctz (x) /* { dg-warning "as unsigned due to prototype" } */
+ + __builtin_clrsb (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_ffs (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_parity (x) /* { dg-warning "as unsigned due to prototype" } */
+ __builtin_popcount (x); /* { dg-warning "as unsigned due to prototype" } */
@@ -18,6 +19,7 @@
return __builtin_abs (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_clz (x) /* { dg-bogus "as signed due to prototype" } */
+ __builtin_ctz (x) /* { dg-bogus "as signed due to prototype" } */
+ + __builtin_clrsb (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_ffs (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_parity (x) /* { dg-bogus "as signed due to prototype" } */
+ __builtin_popcount (x); /* { dg-bogus "as signed due to prototype" } */
@@ -29,6 +31,7 @@
return __builtin_labs (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_clzl (x) /* { dg-warning "as unsigned due to prototype" } */
+ __builtin_ctzl (x) /* { dg-warning "as unsigned due to prototype" } */
+ + __builtin_clrsbl (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_ffsl (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_parityl (x) /* { dg-warning "as unsigned due to prototype" } */
+ __builtin_popcountl (x); /* { dg-warning "as unsigned due to prototype" } */
@@ -40,6 +43,7 @@
return __builtin_labs (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_clzl (x) /* { dg-bogus "as signed due to prototype" } */
+ __builtin_ctzl (x) /* { dg-bogus "as signed due to prototype" } */
+ + __builtin_clrsbl (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_ffsl (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_parityl (x) /* { dg-bogus "as signed due to prototype" } */
+ __builtin_popcountl (x); /* { dg-bogus "as signed due to prototype" } */
@@ -51,6 +55,7 @@
return __builtin_llabs (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_clzll (x) /* { dg-warning "as unsigned due to prototype" } */
+ __builtin_ctzll (x) /* { dg-warning "as unsigned due to prototype" } */
+ + __builtin_clrsbll (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_ffsll (x) /* { dg-bogus "as unsigned due to prototype" } */
+ __builtin_parityll (x) /* { dg-warning "as unsigned due to prototype" } */
+ __builtin_popcountll (x); /* { dg-warning "as unsigned due to prototype" } */
@@ -62,6 +67,7 @@
return __builtin_llabs (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_clzll (x) /* { dg-bogus "as signed due to prototype" } */
+ __builtin_ctzll (x) /* { dg-bogus "as signed due to prototype" } */
+ + __builtin_clrsbll (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_ffsll (x) /* { dg-warning "as signed due to prototype" } */
+ __builtin_parityll (x) /* { dg-bogus "as signed due to prototype" } */
+ __builtin_popcountll (x); /* { dg-bogus "as signed due to prototype" } */
diff --git a/gcc/testsuite/gcc.dg/debug/pr41264-1.c b/gcc/testsuite/gcc.dg/debug/pr41264-1.c
index 34bdcfe..7d03e51 100644
--- a/gcc/testsuite/gcc.dg/debug/pr41264-1.c
+++ b/gcc/testsuite/gcc.dg/debug/pr41264-1.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-options "-Wno-attributes" } */
#if (__SIZEOF_INT__ <= 2)
typedef unsigned long hashval_t;
diff --git a/gcc/testsuite/gcc.dg/debug/pr49294.c b/gcc/testsuite/gcc.dg/debug/pr49294.c
index e4869e0..86b53bd 100644
--- a/gcc/testsuite/gcc.dg/debug/pr49294.c
+++ b/gcc/testsuite/gcc.dg/debug/pr49294.c
@@ -1,5 +1,6 @@
/* PR debug/49294 */
/* { dg-do compile } */
+/* { dg-options "-fno-common" { target hppa*-*-hpux* } } */
typedef __attribute__ ((vector_size ((8) * sizeof (short)))) short V;
diff --git a/gcc/testsuite/gcc.dg/fail_always_inline.c b/gcc/testsuite/gcc.dg/fail_always_inline.c
new file mode 100644
index 0000000..4b196ac
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/fail_always_inline.c
@@ -0,0 +1,11 @@
+/* { dg-do compile } */
+
+extern __attribute__ ((always_inline)) void
+ bar() { } /* { dg-warning "function might not be inlinable" } */
+
+void
+f()
+{
+ bar();
+}
+
diff --git a/gcc/testsuite/gcc.dg/fail_always_inline2.c b/gcc/testsuite/gcc.dg/fail_always_inline2.c
new file mode 100644
index 0000000..863597f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/fail_always_inline2.c
@@ -0,0 +1,19 @@
+extern char *__realpath_alias (__const char *__restrict __name, char
+*__restrict __resolved) __asm__ ("" "realpath") __attribute__
+((__nothrow__)) __attribute__ ((__warn_unused_result__));
+
+extern __inline __attribute__ ((__always_inline__)) __attribute__
+((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
+__attribute__ ((__nothrow__)) realpath (__const char *__restrict __name,
+char *__restrict __resolved)
+{
+ return __realpath_alias (__name, __resolved);
+}
+
+char *
+realpath(path, resolved)
+ const char *path;
+ char *resolved;
+{
+ return (((void *)0));
+}
diff --git a/gcc/testsuite/gcc.dg/inline-22.c b/gcc/testsuite/gcc.dg/inline-22.c
index 6d790f9..1785e1c 100644
--- a/gcc/testsuite/gcc.dg/inline-22.c
+++ b/gcc/testsuite/gcc.dg/inline-22.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-funit-at-a-time" } */
+/* { dg-options "-funit-at-a-time -Wno-attributes" } */
/* Verify we can inline without a complete prototype and with promoted
arguments. See also PR32492. */
__attribute__((always_inline)) void f1() {}
diff --git a/gcc/testsuite/gcc.dg/inline_1.c b/gcc/testsuite/gcc.dg/inline_1.c
index 08ccb86..3d04b33 100644
--- a/gcc/testsuite/gcc.dg/inline_1.c
+++ b/gcc/testsuite/gcc.dg/inline_1.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-optimized -fdisable-tree-einline -fdisable-ipa-inline" } */
+/* { dg-options "-O2 -fdump-tree-optimized -fdisable-tree-einline -fdisable-ipa-inline -Wno-attributes" } */
int g;
__attribute__((always_inline)) void bar (void)
{
diff --git a/gcc/testsuite/gcc.dg/inline_2.c b/gcc/testsuite/gcc.dg/inline_2.c
index efdc76a..0607699 100644
--- a/gcc/testsuite/gcc.dg/inline_2.c
+++ b/gcc/testsuite/gcc.dg/inline_2.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-optimized -fdisable-tree-einline=0:100 -fdisable-ipa-inline" } */
+/* { dg-options "-O2 -fdump-tree-optimized -fdisable-tree-einline=0:100 -fdisable-ipa-inline -Wno-attributes" } */
int g;
__attribute__((always_inline)) void bar (void)
{
diff --git a/gcc/testsuite/gcc.dg/inline_3.c b/gcc/testsuite/gcc.dg/inline_3.c
index 70a2366..17871c6 100644
--- a/gcc/testsuite/gcc.dg/inline_3.c
+++ b/gcc/testsuite/gcc.dg/inline_3.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-linux* x86_64-*-linux* } } */
-/* { dg-options "-O2 -fdump-tree-optimized -fdisable-tree-einline=foo,foo2 -fdisable-ipa-inline" } */
+/* { dg-options "-O2 -fdump-tree-optimized -fdisable-tree-einline=foo,foo2 -fdisable-ipa-inline -Wno-attributes" } */
int g;
__attribute__((always_inline)) void bar (void)
{
diff --git a/gcc/testsuite/gcc.dg/inline_4.c b/gcc/testsuite/gcc.dg/inline_4.c
index 9a85242..1feefa1 100644
--- a/gcc/testsuite/gcc.dg/inline_4.c
+++ b/gcc/testsuite/gcc.dg/inline_4.c
@@ -1,5 +1,5 @@
/* { dg-do compile { target i?86-*-linux* x86_64-*-linux* } } */
-/* { dg-options "-O2 -fdump-tree-optimized -fdisable-tree-einline=foo2 -fdisable-ipa-inline" } */
+/* { dg-options "-O2 -fdump-tree-optimized -fdisable-tree-einline=foo2 -fdisable-ipa-inline -Wno-attributes" } */
int g;
__attribute__((always_inline)) void bar (void)
{
diff --git a/gcc/testsuite/gcc.dg/ipa/ipa-pta-17.c b/gcc/testsuite/gcc.dg/ipa/ipa-pta-17.c
new file mode 100644
index 0000000..443ed9d
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/ipa/ipa-pta-17.c
@@ -0,0 +1,7 @@
+/* { dg-do compile } */
+/* { dg-require-alias "" } */
+/* { dg-options "-O -fipa-pta" } */
+
+static int i;
+extern int j __attribute__ ((alias ("i")));
+int *p = &j;
diff --git a/gcc/testsuite/gcc.dg/lto/20090218-1_0.c b/gcc/testsuite/gcc.dg/lto/20090218-1_0.c
index 1dc9ee0..750c202 100644
--- a/gcc/testsuite/gcc.dg/lto/20090218-1_0.c
+++ b/gcc/testsuite/gcc.dg/lto/20090218-1_0.c
@@ -1,4 +1,4 @@
-void set_mem_alias_set () __attribute__ ((always_inline));
+void inline set_mem_alias_set () __attribute__ ((always_inline));
void emit_push_insn () {
set_mem_alias_set ();
}
diff --git a/gcc/testsuite/gcc.dg/lto/20090218-1_1.c b/gcc/testsuite/gcc.dg/lto/20090218-1_1.c
index 33d4fb0..7db2c85 100644
--- a/gcc/testsuite/gcc.dg/lto/20090218-1_1.c
+++ b/gcc/testsuite/gcc.dg/lto/20090218-1_1.c
@@ -4,6 +4,6 @@
}
static void __attribute__ ((noinline)) get_mem_attrs () {
}
-void __attribute__ ((always_inline)) set_mem_alias_set () {
+void inline __attribute__ ((always_inline)) set_mem_alias_set () {
get_mem_attrs ();
}
diff --git a/gcc/testsuite/gcc.dg/memcpy-3.c b/gcc/testsuite/gcc.dg/memcpy-3.c
index ba3db56..3b5693b 100644
--- a/gcc/testsuite/gcc.dg/memcpy-3.c
+++ b/gcc/testsuite/gcc.dg/memcpy-3.c
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O -fdump-tree-optimized" } */
+/* { dg-require-effective-target non_strict_align } */
int get_int(const void *p)
{
diff --git a/gcc/testsuite/gcc.dg/pr48770.c b/gcc/testsuite/gcc.dg/pr48770.c
new file mode 100644
index 0000000..d0b8554
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr48770.c
@@ -0,0 +1,21 @@
+/* { dg-do run } */
+/* { dg-options "-O -fprofile-arcs -fPIC -fno-dce -fno-forward-propagate" } */
+
+int test_goto2 (int f)
+{
+ int i;
+ for (i = 0; ({_Bool a = i < 10;a;}); i++)
+ {
+ if (i == f)
+ goto lab2;
+ }
+ return 4;
+lab2:
+ return 8;
+}
+
+int main ()
+{
+ test_goto2 (30);
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/pr49496.c b/gcc/testsuite/gcc.dg/pr49496.c
new file mode 100644
index 0000000..06563f3
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr49496.c
@@ -0,0 +1,20 @@
+/* PR debug/49496 */
+/* { dg-do compile } */
+/* { dg-options "-O3 -fcompare-debug" } */
+
+unsigned short u[8], s1[8], s2[8];
+
+void bar (unsigned short *);
+
+void
+foo (void)
+{
+ unsigned short e[8];
+ int i;
+ for (i = 0; i < 8; i++)
+ {
+ int tmp = s1[i] * s2[i];
+ e[i] = (tmp & 0xffff0000) >> 16;
+ }
+ bar (e);
+}
diff --git a/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c b/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c
index bd383a2..c138b92 100644
--- a/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c
+++ b/gcc/testsuite/gcc.dg/torture/builtin-attr-1.c
@@ -416,6 +416,9 @@
BUILTIN_TEST1 (ctz, int)
BUILTIN_TEST1 (ctzl, long)
BUILTIN_TEST1 (ctzll, long long)
+BUILTIN_TEST1 (clrsb, int)
+BUILTIN_TEST1 (clrsbl, long)
+BUILTIN_TEST1 (clrsbll, long long)
TEST1 (ffs, int, int)
TEST1 (ffsl, long, int)
TEST1 (ffsll, long long, int)
diff --git a/gcc/testsuite/gcc.dg/torture/pta-structcopy-1.c b/gcc/testsuite/gcc.dg/torture/pta-structcopy-1.c
index 5dc041b..97e8946 100644
--- a/gcc/testsuite/gcc.dg/torture/pta-structcopy-1.c
+++ b/gcc/testsuite/gcc.dg/torture/pta-structcopy-1.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-fdump-tree-ealias" } */
+/* { dg-options "-fdump-tree-ealias -Wno-attributes" } */
/* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */
struct X
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/asm-1.c b/gcc/testsuite/gcc.dg/tree-ssa/asm-1.c
index 6402628..fe27570 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/asm-1.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/asm-1.c
@@ -2,7 +2,7 @@
as a def. */
/* { dg-do compile } */
-/* { dg-options "-O -fdump-tree-optimized" } */
+/* { dg-options "-O -fdump-tree-optimized-nouid" } */
void f()
{
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr40087.c b/gcc/testsuite/gcc.dg/tree-ssa/pr40087.c
index 22e2b62..98d2437 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/pr40087.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/pr40087.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-O1 " } */
+/* { dg-options "-O1 -Wno-attributes" } */
extern void abort (void);
diff --git a/gcc/testsuite/gcc.dg/uninit-pred-5_a.c b/gcc/testsuite/gcc.dg/uninit-pred-5_a.c
index 845f3c4..7fa0b25 100644
--- a/gcc/testsuite/gcc.dg/uninit-pred-5_a.c
+++ b/gcc/testsuite/gcc.dg/uninit-pred-5_a.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-Wuninitialized -O2" } */
+/* { dg-options "-Wuninitialized -Wno-attributes -O2" } */
int g;
int bar();
diff --git a/gcc/testsuite/gcc.dg/uninit-pred-5_b.c b/gcc/testsuite/gcc.dg/uninit-pred-5_b.c
index 13f1e31..9760fa8 100644
--- a/gcc/testsuite/gcc.dg/uninit-pred-5_b.c
+++ b/gcc/testsuite/gcc.dg/uninit-pred-5_b.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-Wuninitialized -O2" } */
+/* { dg-options "-Wuninitialized -Wno-attributes -O2" } */
int g;
int bar();
diff --git a/gcc/testsuite/gcc.dg/vect/pr48377.c b/gcc/testsuite/gcc.dg/vect/pr48377.c
index b9aaf49..24846cd 100644
--- a/gcc/testsuite/gcc.dg/vect/pr48377.c
+++ b/gcc/testsuite/gcc.dg/vect/pr48377.c
@@ -1,4 +1,5 @@
/* PR tree-optimization/48377 */
+/* { dg-require-effective-target non_strict_align } */
typedef unsigned int U __attribute__((__aligned__ (1), __may_alias__));
diff --git a/gcc/testsuite/gcc.dg/vect/pr49478.c b/gcc/testsuite/gcc.dg/vect/pr49478.c
new file mode 100644
index 0000000..0645399
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/pr49478.c
@@ -0,0 +1,24 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_int } */
+
+#include <stdarg.h>
+
+#define N 64
+
+unsigned char X[N] __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))) = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63};
+
+unsigned int
+foo (int len) {
+ int i;
+ unsigned int result = 0;
+ unsigned short prod;
+
+ for (i=0; i<len; i++) {
+ prod = X[i] * 15;
+ result += prod;
+ }
+ return result;
+}
+
+/* { dg-final { cleanup-tree-dump "vect" } } */
+
diff --git a/gcc/testsuite/gcc.dg/vect/vect-120.c b/gcc/testsuite/gcc.dg/vect/vect-120.c
new file mode 100644
index 0000000..b9a2f50
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/vect-120.c
@@ -0,0 +1,36 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target vect_float } */
+/* { dg-require-effective-target vect_shift } */
+
+static inline float
+i2f(int x)
+{
+ union { float f; int i; } tmp;
+ tmp.i=x;
+ return tmp.f;
+}
+static inline float
+vect_ldexpf(float x, int n)
+{
+ n = (n+0x7f)<<23;
+ return x * i2f(n);
+}
+
+float __attribute__ ((aligned(16))) a[1024];
+float __attribute__ ((aligned(16))) b[1024];
+float __attribute__ ((aligned(16))) c[1024];
+
+void
+tV()
+{
+ int i;
+ for (i=0; i!=1024; ++i)
+ {
+ float z = a[i];
+ int n = b[i];
+ c[i] = vect_ldexpf(z,n);
+ }
+}
+
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
+/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-peel-3.c b/gcc/testsuite/gcc.dg/vect/vect-peel-3.c
index 5049b40..8f4d357 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-peel-3.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-peel-3.c
@@ -47,7 +47,7 @@
return main1 ();
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail vect_no_align } } } */
-/* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 1 "vect" { xfail vect_no_align } } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/gcc.dg/vect/vect-peel-4.c b/gcc/testsuite/gcc.dg/vect/vect-peel-4.c
index a52075e..1b47f268 100644
--- a/gcc/testsuite/gcc.dg/vect/vect-peel-4.c
+++ b/gcc/testsuite/gcc.dg/vect/vect-peel-4.c
@@ -44,7 +44,7 @@
return main1 ();
}
-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Vectorizing an unaligned access" 1 "vect" { xfail vect_no_align } } } */
/* { dg-final { scan-tree-dump-times "Alignment of access forced using peeling" 0 "vect" } } */
/* { dg-final { cleanup-tree-dump "vect" } } */
diff --git a/gcc/testsuite/gcc.target/arm/20031108-1.c b/gcc/testsuite/gcc.target/arm/20031108-1.c
index 6573d2b..d9b6006 100644
--- a/gcc/testsuite/gcc.target/arm/20031108-1.c
+++ b/gcc/testsuite/gcc.target/arm/20031108-1.c
@@ -1,5 +1,6 @@
/* PR optimization/10467 */
/* { dg-do compile } */
+/* { dg-skip-if "" { ! { arm_thumb1_ok || arm_thumb2_ok } } } */
/* { dg-options "-O2 -mthumb" } */
typedef enum {Ident_1} Enumeration;
diff --git a/gcc/testsuite/gcc.target/arm/ctz.c b/gcc/testsuite/gcc.target/arm/ctz.c
index 63e9d02..2455f67 100644
--- a/gcc/testsuite/gcc.target/arm/ctz.c
+++ b/gcc/testsuite/gcc.target/arm/ctz.c
@@ -1,6 +1,6 @@
/* { dg-do compile } */
-/* { dg-require-effective-target arm32 } */
-/* { dg-options "-O2 -march=armv6t2" } */
+/* { dg-require-effective-target arm_thumb2_ok } */
+/* { dg-options "-O2" } */
unsigned int functest(unsigned int x)
{
diff --git a/gcc/testsuite/gcc.target/arm/neon-vlshr-imm-1.c b/gcc/testsuite/gcc.target/arm/neon-vlshr-imm-1.c
new file mode 100644
index 0000000..e666371
--- /dev/null
+++ b/gcc/testsuite/gcc.target/arm/neon-vlshr-imm-1.c
@@ -0,0 +1,11 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target arm_neon_ok } */
+/* { dg-options "-O2 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize" } */
+/* { dg-final { scan-assembler "vshr\.u32.*#3" } } */
+
+/* Verify that VSHR immediate is used. */
+void f1(int n, unsigned int x[], unsigned int y[]) {
+ int i;
+ for (i = 0; i < n; ++i)
+ y[i] = x[i] >> 3;
+}
diff --git a/gcc/testsuite/gcc.target/arm/neon-vshl-imm-1.c b/gcc/testsuite/gcc.target/arm/neon-vshl-imm-1.c
new file mode 100644
index 0000000..913d595
--- /dev/null
+++ b/gcc/testsuite/gcc.target/arm/neon-vshl-imm-1.c
@@ -0,0 +1,11 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target arm_neon_ok } */
+/* { dg-options "-O2 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize" } */
+/* { dg-final { scan-assembler "vshl\.i32.*#3" } } */
+
+/* Verify that VSHR immediate is used. */
+void f1(int n, int x[], int y[]) {
+ int i;
+ for (i = 0; i < n; ++i)
+ y[i] = x[i] << 3;
+}
diff --git a/gcc/testsuite/gcc.target/arm/neon-vshr-imm-1.c b/gcc/testsuite/gcc.target/arm/neon-vshr-imm-1.c
new file mode 100644
index 0000000..82a3c5c
--- /dev/null
+++ b/gcc/testsuite/gcc.target/arm/neon-vshr-imm-1.c
@@ -0,0 +1,11 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target arm_neon_ok } */
+/* { dg-options "-O2 -mfpu=neon -mfloat-abi=softfp -ftree-vectorize" } */
+/* { dg-final { scan-assembler "vshr\.s32.*#3" } } */
+
+/* Verify that VSHR immediate is used. */
+void f1(int n, int x[], int y[]) {
+ int i;
+ for (i = 0; i < n; ++i)
+ y[i] = x[i] >> 3;
+}
diff --git a/gcc/testsuite/gcc.target/arm/pr40482.c b/gcc/testsuite/gcc.target/arm/pr40482.c
index 4303a4f..6926e6f 100644
--- a/gcc/testsuite/gcc.target/arm/pr40482.c
+++ b/gcc/testsuite/gcc.target/arm/pr40482.c
@@ -1,3 +1,4 @@
+/* { dg-skip-if "" { ! { arm_thumb1_ok || arm_thumb2_ok } } } */
/* { dg-options "-mthumb -Os" } */
/* { dg-final { scan-assembler-not "ldr" } } */
diff --git a/gcc/testsuite/gcc.target/arm/pr42879.c b/gcc/testsuite/gcc.target/arm/pr42879.c
index 02af72c..9961a83 100644
--- a/gcc/testsuite/gcc.target/arm/pr42879.c
+++ b/gcc/testsuite/gcc.target/arm/pr42879.c
@@ -1,4 +1,5 @@
-/* { dg-options "-march=armv7-a -mthumb -Os" } */
+/* { dg-require-effective-target arm_thumb2_ok } */
+/* { dg-options "-mthumb -Os" } */
/* { dg-final { scan-assembler "lsls" } } */
struct A
diff --git a/gcc/testsuite/gcc.target/arm/pr45701-3.c b/gcc/testsuite/gcc.target/arm/pr45701-3.c
index 8255bae..452c398 100644
--- a/gcc/testsuite/gcc.target/arm/pr45701-3.c
+++ b/gcc/testsuite/gcc.target/arm/pr45701-3.c
@@ -1,5 +1,6 @@
/* { dg-do compile } */
-/* { dg-options "-march=armv7-a -mthumb -Os" } */
+/* { dg-require-effective-target arm_thumb2_ok } */
+/* { dg-options "-mthumb -Os" } */
/* { dg-final { scan-assembler "push\t.*r8" } } */
/* { dg-final { scan-assembler-not "push\t*r3" } } */
diff --git a/gcc/testsuite/gcc.target/arm/scd42-3.c b/gcc/testsuite/gcc.target/arm/scd42-3.c
index d1d07b0..eb90e43 100644
--- a/gcc/testsuite/gcc.target/arm/scd42-3.c
+++ b/gcc/testsuite/gcc.target/arm/scd42-3.c
@@ -1,6 +1,7 @@
/* Verify that ldr is preferred on XScale for loading a 3 or 4 byte constant. */
/* { dg-do compile } */
-/* { dg-skip-if "incompatible options" { arm*-*-* } { "-march=*" } { "" } } */
+/* { dg-skip-if "Test is specific to Xscale" { arm*-*-* } { "-march=*" } { "-march=xscale" } } */
+/* { dg-skip-if "Test is specific to Xscale" { arm*-*-* } { "-mcpu=*" } { "-mcpu=xscale" } } */
/* { dg-options "-mcpu=xscale -O" } */
unsigned load4(void) __attribute__ ((naked));
diff --git a/gcc/testsuite/gcc.target/arm/stack-corruption.c b/gcc/testsuite/gcc.target/arm/stack-corruption.c
index 3a63950..cc44c62 100644
--- a/gcc/testsuite/gcc.target/arm/stack-corruption.c
+++ b/gcc/testsuite/gcc.target/arm/stack-corruption.c
@@ -1,4 +1,5 @@
/* { dg-do compile } */
+/* { dg-skip-if "" { ! { arm_thumb1_ok || arm_thumb2_ok } } } */
/* { dg-options "-O -mthumb -fno-omit-frame-pointer" } */
int main() {
diff --git a/gcc/testsuite/gcc.target/arm/thumb-bitfld1.c b/gcc/testsuite/gcc.target/arm/thumb-bitfld1.c
index 7741b4f..ee39887 100644
--- a/gcc/testsuite/gcc.target/arm/thumb-bitfld1.c
+++ b/gcc/testsuite/gcc.target/arm/thumb-bitfld1.c
@@ -1,5 +1,6 @@
/* { dg-do compile } */
-/* { dg-options "-O1 -mthumb -march=armv5t" } */
+/* { dg-require-effective-target arm_thumb1_ok } */
+/* { dg-options "-O1 -mthumb" } */
struct foo
{
diff --git a/gcc/testsuite/gcc.target/arm/tlscall.c b/gcc/testsuite/gcc.target/arm/tlscall.c
new file mode 100644
index 0000000..366c1ae7
--- /dev/null
+++ b/gcc/testsuite/gcc.target/arm/tlscall.c
@@ -0,0 +1,31 @@
+/* Test non-duplication of tlscall insn */
+
+/* { dg-do assemble } */
+/* { dg-options "-O2 -fPIC -mtls-dialect=gnu2" } */
+
+typedef struct _IO_FILE FILE;
+
+extern int foo(void);
+extern int bar(void);
+
+void uuid__generate_time()
+{
+ static int has_init = 0;
+ static __thread int state_fd = -2;
+ static __thread FILE *state_f;
+
+ if (!has_init) {
+ foo();
+ has_init = 1;
+ }
+
+ if (state_fd == -2) {
+ if (!state_f) {
+ state_fd = -1;
+ }
+ }
+ if (state_fd >= 0) {
+ while (bar() < 0) {}
+ }
+
+}
diff --git a/gcc/testsuite/gfortran.dg/class_44.f03 b/gcc/testsuite/gfortran.dg/class_44.f03
new file mode 100644
index 0000000..f8e4004
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/class_44.f03
@@ -0,0 +1,15 @@
+! { dg-do compile }
+!
+! PR 49112: [4.6/4.7 Regression] [OOP] Missing type-bound procedure, "duplicate save" warnings and internal compiler error
+!
+! Contributed by John <jwmwalrus@gmail.com>
+
+ implicit none
+ save
+
+ type :: DateTime
+ end type
+
+ class(DateTime), allocatable :: dt
+
+end
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index 76e7ccb..7d7cbc3 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -4019,3 +4019,11 @@
return 1
}
+proc check_effective_target_non_strict_align {} {
+ return [check_no_compiler_messages non_strict_align assembly {
+ char *y;
+ typedef char __attribute__ ((__aligned__(__BIGGEST_ALIGNMENT__))) c;
+ c *z;
+ void foo(void) { z = (c *) y; }
+ } "-Wcast-align"]
+}
diff --git a/gcc/timevar.c b/gcc/timevar.c
index c87695b..96eb92a 100644
--- a/gcc/timevar.c
+++ b/gcc/timevar.c
@@ -478,7 +478,7 @@
continue;
/* The timing variable name. */
- fprintf (fp, " %-22s:", tv->name);
+ fprintf (fp, " %-24s:", tv->name);
#ifdef HAVE_USER_TIME
/* Print user-mode time for this process. */
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 2597140..8b02b38 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -183,25 +183,9 @@
#define this_target_flag_state (&default_target_flag_state)
#endif
-typedef struct
-{
- const char *const string;
- int *const variable;
- const int on_value;
-}
-lang_independent_options;
-
/* The user symbol prefix after having resolved same. */
const char *user_label_prefix;
-static const param_info lang_independent_params[] = {
-#define DEFPARAM(ENUM, OPTION, HELP, DEFAULT, MIN, MAX) \
- { OPTION, DEFAULT, MIN, MAX, HELP },
-#include "params.def"
-#undef DEFPARAM
- { NULL, 0, 0, 0, NULL }
-};
-
/* Output files for assembler code (real compiler output)
and debugging dumps. */
@@ -1213,10 +1197,10 @@
init_reg_sets ();
/* Register the language-independent parameters. */
- add_params (lang_independent_params, LAST_PARAM);
- targetm.target_option.default_params ();
+ global_init_params ();
- /* This must be done after add_params but before argument processing. */
+ /* This must be done after global_init_params but before argument
+ processing. */
init_ggc_heuristics();
init_optimization_passes ();
statistics_early_init ();
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index dc3288b..6a8eae8 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -1,5 +1,5 @@
/* Tree inlining.
- Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by Alexandre Oliva <aoliva@redhat.com>
@@ -188,6 +188,33 @@
if (processing_debug_stmt)
{
+ if (TREE_CODE (SSA_NAME_VAR (name)) == PARM_DECL
+ && SSA_NAME_IS_DEFAULT_DEF (name)
+ && id->entry_bb == NULL
+ && single_succ_p (ENTRY_BLOCK_PTR))
+ {
+ tree vexpr = make_node (DEBUG_EXPR_DECL);
+ gimple def_temp;
+ gimple_stmt_iterator gsi;
+ tree val = SSA_NAME_VAR (name);
+
+ n = (tree *) pointer_map_contains (id->decl_map, val);
+ if (n != NULL)
+ val = *n;
+ if (TREE_CODE (val) != PARM_DECL)
+ {
+ processing_debug_stmt = -1;
+ return name;
+ }
+ def_temp = gimple_build_debug_source_bind (vexpr, val, NULL);
+ DECL_ARTIFICIAL (vexpr) = 1;
+ TREE_TYPE (vexpr) = TREE_TYPE (name);
+ DECL_MODE (vexpr) = DECL_MODE (SSA_NAME_VAR (name));
+ gsi = gsi_after_labels (single_succ (ENTRY_BLOCK_PTR));
+ gsi_insert_before (&gsi, def_temp, GSI_SAME_STMT);
+ return vexpr;
+ }
+
processing_debug_stmt = -1;
return name;
}
@@ -1403,6 +1430,14 @@
VEC_safe_push (gimple, heap, id->debug_stmts, copy);
return copy;
}
+ if (gimple_debug_source_bind_p (stmt))
+ {
+ copy = gimple_build_debug_source_bind
+ (gimple_debug_source_bind_get_var (stmt),
+ gimple_debug_source_bind_get_value (stmt), stmt);
+ VEC_safe_push (gimple, heap, id->debug_stmts, copy);
+ return copy;
+ }
/* Create a new deep copy of the statement. */
copy = gimple_copy (stmt);
@@ -1478,7 +1513,7 @@
gimple_set_block (copy, new_block);
- if (gimple_debug_bind_p (copy))
+ if (gimple_debug_bind_p (copy) || gimple_debug_source_bind_p (copy))
return copy;
/* Remap all the operands in COPY. */
@@ -2151,22 +2186,33 @@
{
si = ssi;
gsi_prev (&ssi);
- if (!single_pred_p (e->dest))
+ if (!single_pred_p (e->dest) && gimple_debug_bind_p (stmt))
gimple_debug_bind_reset_value (stmt);
gsi_remove (&si, false);
gsi_insert_before (&dsi, stmt, GSI_SAME_STMT);
continue;
}
- var = gimple_debug_bind_get_var (stmt);
- if (single_pred_p (e->dest))
+ if (gimple_debug_bind_p (stmt))
{
- value = gimple_debug_bind_get_value (stmt);
- value = unshare_expr (value);
+ var = gimple_debug_bind_get_var (stmt);
+ if (single_pred_p (e->dest))
+ {
+ value = gimple_debug_bind_get_value (stmt);
+ value = unshare_expr (value);
+ }
+ else
+ value = NULL_TREE;
+ new_stmt = gimple_build_debug_bind (var, value, stmt);
+ }
+ else if (gimple_debug_source_bind_p (stmt))
+ {
+ var = gimple_debug_source_bind_get_var (stmt);
+ value = gimple_debug_source_bind_get_value (stmt);
+ new_stmt = gimple_build_debug_source_bind (var, value, stmt);
}
else
- value = NULL_TREE;
- new_stmt = gimple_build_debug_bind (var, value, stmt);
+ gcc_unreachable ();
gsi_insert_before (&dsi, new_stmt, GSI_SAME_STMT);
VEC_safe_push (gimple, heap, id->debug_stmts, new_stmt);
gsi_prev (&ssi);
@@ -2317,7 +2363,6 @@
t = id->block;
if (gimple_block (stmt))
{
- tree *n;
n = (tree *) pointer_map_contains (id->decl_map, gimple_block (stmt));
if (n)
t = *n;
@@ -2330,7 +2375,10 @@
processing_debug_stmt = 1;
- t = gimple_debug_bind_get_var (stmt);
+ if (gimple_debug_source_bind_p (stmt))
+ t = gimple_debug_source_bind_get_var (stmt);
+ else
+ t = gimple_debug_bind_get_var (stmt);
if (TREE_CODE (t) == PARM_DECL && id->debug_map
&& (n = (tree *) pointer_map_contains (id->debug_map, t)))
@@ -2347,15 +2395,24 @@
else
walk_tree (&t, remap_gimple_op_r, &wi, NULL);
- gimple_debug_bind_set_var (stmt, t);
+ if (gimple_debug_bind_p (stmt))
+ {
+ gimple_debug_bind_set_var (stmt, t);
- if (gimple_debug_bind_has_value_p (stmt))
- walk_tree (gimple_debug_bind_get_value_ptr (stmt),
- remap_gimple_op_r, &wi, NULL);
+ if (gimple_debug_bind_has_value_p (stmt))
+ walk_tree (gimple_debug_bind_get_value_ptr (stmt),
+ remap_gimple_op_r, &wi, NULL);
- /* Punt if any decl couldn't be remapped. */
- if (processing_debug_stmt < 0)
- gimple_debug_bind_reset_value (stmt);
+ /* Punt if any decl couldn't be remapped. */
+ if (processing_debug_stmt < 0)
+ gimple_debug_bind_reset_value (stmt);
+ }
+ else if (gimple_debug_source_bind_p (stmt))
+ {
+ gimple_debug_source_bind_set_var (stmt, t);
+ walk_tree (gimple_debug_source_bind_get_value_ptr (stmt),
+ remap_gimple_op_r, &wi, NULL);
+ }
processing_debug_stmt = 0;
@@ -3192,7 +3249,7 @@
As a bonus we can now give more details about the reason why a
function is not inlinable. */
if (always_inline)
- sorry (inline_forbidden_reason, fn);
+ error (inline_forbidden_reason, fn);
else if (do_warning)
warning (OPT_Winline, inline_forbidden_reason, fn);
@@ -3742,11 +3799,13 @@
if (lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn))
/* Avoid warnings during early inline pass. */
- && cgraph_global_info_ready)
+ && cgraph_global_info_ready
+ /* PR 20090218-1_0.c. Body can be provided by another module. */
+ && (reason != CIF_BODY_NOT_AVAILABLE || !flag_generate_lto))
{
- sorry ("inlining failed in call to %q+F: %s", fn,
- _(cgraph_inline_failed_string (reason)));
- sorry ("called from here");
+ error ("inlining failed in call to always_inline %q+F: %s", fn,
+ cgraph_inline_failed_string (reason));
+ error ("called from here");
}
else if (warn_inline
&& DECL_DECLARED_INLINE_P (fn)
@@ -4999,6 +5058,20 @@
new_version_node = cgraph_get_node (new_decl);
gcc_checking_assert (new_version_node);
+ /* Copy over debug args. */
+ if (DECL_HAS_DEBUG_ARGS_P (old_decl))
+ {
+ VEC(tree, gc) **new_debug_args, **old_debug_args;
+ gcc_checking_assert (decl_debug_args_lookup (new_decl) == NULL);
+ DECL_HAS_DEBUG_ARGS_P (new_decl) = 0;
+ old_debug_args = decl_debug_args_lookup (old_decl);
+ if (old_debug_args)
+ {
+ new_debug_args = decl_debug_args_insert (new_decl);
+ *new_debug_args = VEC_copy (tree, gc, *old_debug_args);
+ }
+ }
+
/* Output the inlining info for this abstract function, since it has been
inlined. If we don't do this now, we can lose the information about the
variables in the function when the blocks get blown away as soon as we
diff --git a/gcc/tree-into-ssa.c b/gcc/tree-into-ssa.c
index f138e5b..0db9085 100644
--- a/gcc/tree-into-ssa.c
+++ b/gcc/tree-into-ssa.c
@@ -1,5 +1,5 @@
/* Rewrite a program in Normal form into SSA.
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
+ Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by Diego Novillo <dnovillo@redhat.com>
@@ -745,7 +745,17 @@
set_rewrite_uses (stmt, false);
if (is_gimple_debug (stmt))
- return;
+ {
+ FOR_EACH_SSA_USE_OPERAND (use_p, stmt, iter, SSA_OP_USE)
+ {
+ tree sym = USE_FROM_PTR (use_p);
+ gcc_assert (DECL_P (sym));
+ set_rewrite_uses (stmt, true);
+ }
+ if (rewrite_uses_p (stmt))
+ SET_BIT (interesting_blocks, bb->index);
+ return;
+ }
/* If a variable is used before being set, then the variable is live
across a block boundary, so mark it live-on-entry to BB. */
@@ -1279,6 +1289,73 @@
}
+/* Helper function for rewrite_stmt. Rewrite uses in a debug stmt. */
+
+static void
+rewrite_debug_stmt_uses (gimple stmt)
+{
+ use_operand_p use_p;
+ ssa_op_iter iter;
+ bool update = false;
+
+ FOR_EACH_SSA_USE_OPERAND (use_p, stmt, iter, SSA_OP_USE)
+ {
+ tree var = USE_FROM_PTR (use_p), def = NULL_TREE;
+ gcc_assert (DECL_P (var));
+ if (var_ann (var) == NULL)
+ {
+ if (TREE_CODE (var) == PARM_DECL && single_succ_p (ENTRY_BLOCK_PTR))
+ {
+ gimple_stmt_iterator gsi
+ = gsi_after_labels (single_succ (ENTRY_BLOCK_PTR));
+ int lim;
+ /* Search a few source bind stmts at the start of first bb to
+ see if a DEBUG_EXPR_DECL can't be reused. */
+ for (lim = 32;
+ !gsi_end_p (gsi) && lim > 0;
+ gsi_next (&gsi), lim--)
+ {
+ gimple gstmt = gsi_stmt (gsi);
+ if (!gimple_debug_source_bind_p (gstmt))
+ break;
+ if (gimple_debug_source_bind_get_value (gstmt) == var)
+ {
+ def = gimple_debug_source_bind_get_var (gstmt);
+ if (TREE_CODE (def) == DEBUG_EXPR_DECL)
+ break;
+ else
+ def = NULL_TREE;
+ }
+ }
+ /* If not, add a new source bind stmt. */
+ if (def == NULL_TREE)
+ {
+ gimple def_temp;
+ def = make_node (DEBUG_EXPR_DECL);
+ def_temp = gimple_build_debug_source_bind (def, var, NULL);
+ DECL_ARTIFICIAL (def) = 1;
+ TREE_TYPE (def) = TREE_TYPE (var);
+ DECL_MODE (def) = DECL_MODE (var);
+ gsi = gsi_after_labels (single_succ (ENTRY_BLOCK_PTR));
+ gsi_insert_before (&gsi, def_temp, GSI_SAME_STMT);
+ }
+ update = true;
+ }
+ }
+ else
+ def = get_current_def (var);
+ if (def == NULL)
+ {
+ gimple_debug_bind_reset_value (stmt);
+ update_stmt (stmt);
+ return;
+ }
+ SET_USE (use_p, def);
+ }
+ if (update)
+ update_stmt (stmt);
+}
+
/* SSA Rewriting Step 2. Rewrite every variable used in each statement in
the block with its immediate reaching definitions. Update the current
definition of a variable when a new real or virtual definition is found. */
@@ -1306,12 +1383,17 @@
/* Step 1. Rewrite USES in the statement. */
if (rewrite_uses_p (stmt))
- FOR_EACH_SSA_USE_OPERAND (use_p, stmt, iter, SSA_OP_USE)
- {
- tree var = USE_FROM_PTR (use_p);
- gcc_assert (DECL_P (var));
- SET_USE (use_p, get_reaching_def (var));
- }
+ {
+ if (is_gimple_debug (stmt))
+ rewrite_debug_stmt_uses (stmt);
+ else
+ FOR_EACH_SSA_USE_OPERAND (use_p, stmt, iter, SSA_OP_USE)
+ {
+ tree var = USE_FROM_PTR (use_p);
+ gcc_assert (DECL_P (var));
+ SET_USE (use_p, get_reaching_def (var));
+ }
+ }
/* Step 2. Register the statement's DEF operands. */
if (register_defs_p (stmt))
diff --git a/gcc/tree-parloops.c b/gcc/tree-parloops.c
index 9d2ea1a..921821d 100644
--- a/gcc/tree-parloops.c
+++ b/gcc/tree-parloops.c
@@ -1,5 +1,5 @@
/* Loop autoparallelization.
- Copyright (C) 2006, 2007, 2008, 2009, 2010
+ Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by Sebastian Pop <pop@cri.ensmp.fr> and
Zdenek Dvorak <dvorakz@suse.cz>.
@@ -716,8 +716,11 @@
FOR_EACH_VEC_ELT (basic_block, body, i, bb)
if (bb != entry_bb && bb != exit_bb)
for (gsi = gsi_start_bb (bb); !gsi_end_p (gsi); gsi_next (&gsi))
- if (gimple_debug_bind_p (gsi_stmt (gsi)))
- has_debug_stmt = true;
+ if (is_gimple_debug (gsi_stmt (gsi)))
+ {
+ if (gimple_debug_bind_p (gsi_stmt (gsi)))
+ has_debug_stmt = true;
+ }
else
eliminate_local_variables_stmt (entry, &gsi, decl_address);
@@ -883,8 +886,8 @@
replacement decls are stored in DECL_COPIES. */
static bool
-separate_decls_in_region_debug_bind (gimple stmt,
- htab_t name_copies, htab_t decl_copies)
+separate_decls_in_region_debug (gimple stmt, htab_t name_copies,
+ htab_t decl_copies)
{
use_operand_p use;
ssa_op_iter oi;
@@ -893,7 +896,12 @@
struct name_to_copy_elt elt;
void **slot, **dslot;
- var = gimple_debug_bind_get_var (stmt);
+ if (gimple_debug_bind_p (stmt))
+ var = gimple_debug_bind_get_var (stmt);
+ else if (gimple_debug_source_bind_p (stmt))
+ var = gimple_debug_source_bind_get_var (stmt);
+ else
+ return true;
if (TREE_CODE (var) == DEBUG_EXPR_DECL)
return true;
gcc_assert (DECL_P (var) && SSA_VAR_P (var));
@@ -901,7 +909,10 @@
dslot = htab_find_slot_with_hash (decl_copies, &ielt, ielt.uid, NO_INSERT);
if (!dslot)
return true;
- gimple_debug_bind_set_var (stmt, ((struct int_tree_map *) *dslot)->to);
+ if (gimple_debug_bind_p (stmt))
+ gimple_debug_bind_set_var (stmt, ((struct int_tree_map *) *dslot)->to);
+ else if (gimple_debug_source_bind_p (stmt))
+ gimple_debug_source_bind_set_var (stmt, ((struct int_tree_map *) *dslot)->to);
FOR_EACH_PHI_OR_STMT_USE (use, stmt, oi, SSA_OP_USE)
{
@@ -1295,11 +1306,10 @@
{
gimple stmt = gsi_stmt (gsi);
- if (gimple_debug_bind_p (stmt))
+ if (is_gimple_debug (stmt))
{
- if (separate_decls_in_region_debug_bind (stmt,
- name_copies,
- decl_copies))
+ if (separate_decls_in_region_debug (stmt, name_copies,
+ decl_copies))
{
gsi_remove (&gsi, true);
continue;
diff --git a/gcc/tree-pass.h b/gcc/tree-pass.h
index f3a03b0..a17ef35 100644
--- a/gcc/tree-pass.h
+++ b/gcc/tree-pass.h
@@ -577,7 +577,7 @@
/* The root of the compilation pass tree, once constructed. */
extern struct opt_pass *all_passes, *all_small_ipa_passes, *all_lowering_passes,
- *all_regular_ipa_passes, *all_lto_gen_passes;
+ *all_regular_ipa_passes, *all_lto_gen_passes, *all_late_ipa_passes;
/* Define a list of pass lists so that both passes.c and plugins can easily
find all the pass lists. */
diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c
index 322abb5..45ebd93 100644
--- a/gcc/tree-sra.c
+++ b/gcc/tree-sra.c
@@ -1,7 +1,7 @@
/* Scalar Replacement of Aggregates (SRA) converts some structure
references into scalar references, exposing them to the scalar
optimizers.
- Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
Contributed by Martin Jambor <mjambor@suse.cz>
This file is part of GCC.
@@ -648,7 +648,7 @@
scalarization. */
static bool
-type_internals_preclude_sra_p (tree type)
+type_internals_preclude_sra_p (tree type, const char **msg)
{
tree fld;
tree et;
@@ -663,15 +663,39 @@
{
tree ft = TREE_TYPE (fld);
- if (TREE_THIS_VOLATILE (fld)
- || !DECL_FIELD_OFFSET (fld) || !DECL_SIZE (fld)
- || !host_integerp (DECL_FIELD_OFFSET (fld), 1)
- || !host_integerp (DECL_SIZE (fld), 1)
- || (AGGREGATE_TYPE_P (ft)
- && int_bit_position (fld) % BITS_PER_UNIT != 0))
- return true;
+ if (TREE_THIS_VOLATILE (fld))
+ {
+ *msg = "volatile structure field";
+ return true;
+ }
+ if (!DECL_FIELD_OFFSET (fld))
+ {
+ *msg = "no structure field offset";
+ return true;
+ }
+ if (!DECL_SIZE (fld))
+ {
+ *msg = "zero structure field size";
+ return true;
+ }
+ if (!host_integerp (DECL_FIELD_OFFSET (fld), 1))
+ {
+ *msg = "structure field offset not fixed";
+ return true;
+ }
+ if (!host_integerp (DECL_SIZE (fld), 1))
+ {
+ *msg = "structure field size not fixed";
+ return true;
+ }
+ if (AGGREGATE_TYPE_P (ft)
+ && int_bit_position (fld) % BITS_PER_UNIT != 0)
+ {
+ *msg = "structure field is bit field";
+ return true;
+ }
- if (AGGREGATE_TYPE_P (ft) && type_internals_preclude_sra_p (ft))
+ if (AGGREGATE_TYPE_P (ft) && type_internals_preclude_sra_p (ft, msg))
return true;
}
@@ -681,9 +705,12 @@
et = TREE_TYPE (type);
if (TYPE_VOLATILE (et))
- return true;
+ {
+ *msg = "element type is volatile";
+ return true;
+ }
- if (AGGREGATE_TYPE_P (et) && type_internals_preclude_sra_p (et))
+ if (AGGREGATE_TYPE_P (et) && type_internals_preclude_sra_p (et, msg))
return true;
return false;
@@ -1538,6 +1565,19 @@
return TYPE_MAIN_VARIANT (type) == TYPE_MAIN_VARIANT (va_list_type_node);
}
+/* Print message to dump file why a variable was rejected. */
+
+static void
+reject (tree var, const char *msg)
+{
+ if (dump_file && (dump_flags & TDF_DETAILS))
+ {
+ fprintf (dump_file, "Rejected (%d): %s: ", DECL_UID (var), msg);
+ print_generic_expr (dump_file, var, 0);
+ fprintf (dump_file, "\n");
+ }
+}
+
/* The very first phase of intraprocedural SRA. It marks in candidate_bitmap
those with type which is suitable for scalarization. */
@@ -1547,6 +1587,7 @@
tree var, type;
referenced_var_iterator rvi;
bool ret = false;
+ const char *msg;
FOR_EACH_REFERENCED_VAR (cfun, var, rvi)
{
@@ -1554,19 +1595,50 @@
continue;
type = TREE_TYPE (var);
- if (!AGGREGATE_TYPE_P (type)
- || needs_to_live_in_memory (var)
- || TREE_THIS_VOLATILE (var)
- || !COMPLETE_TYPE_P (type)
- || !host_integerp (TYPE_SIZE (type), 1)
- || tree_low_cst (TYPE_SIZE (type), 1) == 0
- || type_internals_preclude_sra_p (type)
- /* Fix for PR 41089. tree-stdarg.c needs to have va_lists intact but
+ if (!AGGREGATE_TYPE_P (type))
+ {
+ reject (var, "not aggregate");
+ continue;
+ }
+ if (needs_to_live_in_memory (var))
+ {
+ reject (var, "needs to live in memory");
+ continue;
+ }
+ if (TREE_THIS_VOLATILE (var))
+ {
+ reject (var, "is volatile");
+ continue;
+ }
+ if (!COMPLETE_TYPE_P (type))
+ {
+ reject (var, "has incomplete type");
+ continue;
+ }
+ if (!host_integerp (TYPE_SIZE (type), 1))
+ {
+ reject (var, "type size not fixed");
+ continue;
+ }
+ if (tree_low_cst (TYPE_SIZE (type), 1) == 0)
+ {
+ reject (var, "type size is zero");
+ continue;
+ }
+ if (type_internals_preclude_sra_p (type, &msg))
+ {
+ reject (var, msg);
+ continue;
+ }
+ if (/* Fix for PR 41089. tree-stdarg.c needs to have va_lists intact but
we also want to schedule it rather late. Thus we ignore it in
the early pass. */
- || (sra_mode == SRA_MODE_EARLY_INTRA
+ (sra_mode == SRA_MODE_EARLY_INTRA
&& is_va_list_type (type)))
- continue;
+ {
+ reject (var, "is va_list");
+ continue;
+ }
bitmap_set_bit (candidate_bitmap, DECL_UID (var));
@@ -2804,7 +2876,8 @@
there to do the copying and then load the scalar replacements of the LHS.
This is what the first branch does. */
- if (gimple_has_volatile_ops (*stmt)
+ if (modify_this_stmt
+ || gimple_has_volatile_ops (*stmt)
|| contains_vce_or_bfcref_p (rhs)
|| contains_vce_or_bfcref_p (lhs))
{
@@ -3228,6 +3301,7 @@
tree parm;
int count = 0;
bool ret = false;
+ const char *msg;
for (parm = DECL_ARGUMENTS (current_function_decl);
parm;
@@ -3268,7 +3342,7 @@
|| !host_integerp (TYPE_SIZE (type), 1)
|| tree_low_cst (TYPE_SIZE (type), 1) == 0
|| (AGGREGATE_TYPE_P (type)
- && type_internals_preclude_sra_p (type)))
+ && type_internals_preclude_sra_p (type, &msg)))
continue;
bitmap_set_bit (candidate_bitmap, DECL_UID (parm));
@@ -4282,28 +4356,87 @@
sra_ipa_reset_debug_stmts (ipa_parm_adjustment_vec adjustments)
{
int i, len;
+ gimple_stmt_iterator *gsip = NULL, gsi;
+ if (MAY_HAVE_DEBUG_STMTS && single_succ_p (ENTRY_BLOCK_PTR))
+ {
+ gsi = gsi_after_labels (single_succ (ENTRY_BLOCK_PTR));
+ gsip = &gsi;
+ }
len = VEC_length (ipa_parm_adjustment_t, adjustments);
for (i = 0; i < len; i++)
{
struct ipa_parm_adjustment *adj;
imm_use_iterator ui;
- gimple stmt;
- tree name;
+ gimple stmt, def_temp;
+ tree name, vexpr, copy = NULL_TREE;
+ use_operand_p use_p;
adj = VEC_index (ipa_parm_adjustment_t, adjustments, i);
if (adj->copy_param || !is_gimple_reg (adj->base))
continue;
name = gimple_default_def (cfun, adj->base);
- if (!name)
- continue;
- FOR_EACH_IMM_USE_STMT (stmt, ui, name)
+ vexpr = NULL;
+ if (name)
+ FOR_EACH_IMM_USE_STMT (stmt, ui, name)
+ {
+ /* All other users must have been removed by
+ ipa_sra_modify_function_body. */
+ gcc_assert (is_gimple_debug (stmt));
+ if (vexpr == NULL && gsip != NULL)
+ {
+ gcc_assert (TREE_CODE (adj->base) == PARM_DECL);
+ vexpr = make_node (DEBUG_EXPR_DECL);
+ def_temp = gimple_build_debug_source_bind (vexpr, adj->base,
+ NULL);
+ DECL_ARTIFICIAL (vexpr) = 1;
+ TREE_TYPE (vexpr) = TREE_TYPE (name);
+ DECL_MODE (vexpr) = DECL_MODE (adj->base);
+ gsi_insert_before (gsip, def_temp, GSI_SAME_STMT);
+ }
+ if (vexpr)
+ {
+ FOR_EACH_IMM_USE_ON_STMT (use_p, ui)
+ SET_USE (use_p, vexpr);
+ }
+ else
+ gimple_debug_bind_reset_value (stmt);
+ update_stmt (stmt);
+ }
+ /* Create a VAR_DECL for debug info purposes. */
+ if (!DECL_IGNORED_P (adj->base))
{
- /* All other users must have been removed by
- ipa_sra_modify_function_body. */
- gcc_assert (is_gimple_debug (stmt));
- gimple_debug_bind_reset_value (stmt);
- update_stmt (stmt);
+ copy = build_decl (DECL_SOURCE_LOCATION (current_function_decl),
+ VAR_DECL, DECL_NAME (adj->base),
+ TREE_TYPE (adj->base));
+ if (DECL_PT_UID_SET_P (adj->base))
+ SET_DECL_PT_UID (copy, DECL_PT_UID (adj->base));
+ TREE_ADDRESSABLE (copy) = TREE_ADDRESSABLE (adj->base);
+ TREE_READONLY (copy) = TREE_READONLY (adj->base);
+ TREE_THIS_VOLATILE (copy) = TREE_THIS_VOLATILE (adj->base);
+ DECL_GIMPLE_REG_P (copy) = DECL_GIMPLE_REG_P (adj->base);
+ DECL_ARTIFICIAL (copy) = DECL_ARTIFICIAL (adj->base);
+ DECL_IGNORED_P (copy) = DECL_IGNORED_P (adj->base);
+ DECL_ABSTRACT_ORIGIN (copy) = DECL_ORIGIN (adj->base);
+ DECL_SEEN_IN_BIND_EXPR_P (copy) = 1;
+ SET_DECL_RTL (copy, 0);
+ TREE_USED (copy) = 1;
+ DECL_CONTEXT (copy) = current_function_decl;
+ add_referenced_var (copy);
+ add_local_decl (cfun, copy);
+ DECL_CHAIN (copy) =
+ BLOCK_VARS (DECL_INITIAL (current_function_decl));
+ BLOCK_VARS (DECL_INITIAL (current_function_decl)) = copy;
+ }
+ if (gsip != NULL && copy && target_for_debug_bind (adj->base))
+ {
+ gcc_assert (TREE_CODE (adj->base) == PARM_DECL);
+ if (vexpr)
+ def_temp = gimple_build_debug_bind (copy, vexpr, NULL);
+ else
+ def_temp = gimple_build_debug_source_bind (copy, adj->base,
+ NULL);
+ gsi_insert_before (gsip, def_temp, GSI_SAME_STMT);
}
}
}
diff --git a/gcc/tree-ssa-alias.c b/gcc/tree-ssa-alias.c
index 02b3ca0..5647899 100644
--- a/gcc/tree-ssa-alias.c
+++ b/gcc/tree-ssa-alias.c
@@ -1,5 +1,5 @@
/* Alias analysis for trees.
- Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by Diego Novillo <dnovillo@redhat.com>
@@ -1199,6 +1199,24 @@
size);
return refs_may_alias_p_1 (&dref, ref, false);
}
+ case BUILT_IN_STRCPY_CHK:
+ case BUILT_IN_STRNCPY_CHK:
+ case BUILT_IN_MEMCPY_CHK:
+ case BUILT_IN_MEMMOVE_CHK:
+ case BUILT_IN_MEMPCPY_CHK:
+ case BUILT_IN_STPCPY_CHK:
+ case BUILT_IN_STRCAT_CHK:
+ case BUILT_IN_STRNCAT_CHK:
+ {
+ ao_ref dref;
+ tree size = NULL_TREE;
+ if (gimple_call_num_args (call) == 4)
+ size = gimple_call_arg (call, 2);
+ ao_ref_init_from_ptr_and_size (&dref,
+ gimple_call_arg (call, 1),
+ size);
+ return refs_may_alias_p_1 (&dref, ref, false);
+ }
case BUILT_IN_BCOPY:
{
ao_ref dref;
@@ -1216,6 +1234,7 @@
case BUILT_IN_STACK_SAVE:
case BUILT_IN_STACK_RESTORE:
case BUILT_IN_MEMSET:
+ case BUILT_IN_MEMSET_CHK:
case BUILT_IN_FREXP:
case BUILT_IN_FREXPF:
case BUILT_IN_FREXPL:
@@ -1453,6 +1472,25 @@
size);
return refs_may_alias_p_1 (&dref, ref, false);
}
+ case BUILT_IN_STRCPY_CHK:
+ case BUILT_IN_STRNCPY_CHK:
+ case BUILT_IN_MEMCPY_CHK:
+ case BUILT_IN_MEMMOVE_CHK:
+ case BUILT_IN_MEMPCPY_CHK:
+ case BUILT_IN_STPCPY_CHK:
+ case BUILT_IN_STRCAT_CHK:
+ case BUILT_IN_STRNCAT_CHK:
+ case BUILT_IN_MEMSET_CHK:
+ {
+ ao_ref dref;
+ tree size = NULL_TREE;
+ if (gimple_call_num_args (call) == 4)
+ size = gimple_call_arg (call, 2);
+ ao_ref_init_from_ptr_and_size (&dref,
+ gimple_call_arg (call, 0),
+ size);
+ return refs_may_alias_p_1 (&dref, ref, false);
+ }
case BUILT_IN_BCOPY:
{
ao_ref dref;
@@ -1697,6 +1735,10 @@
case BUILT_IN_MEMPCPY:
case BUILT_IN_MEMMOVE:
case BUILT_IN_MEMSET:
+ case BUILT_IN_MEMCPY_CHK:
+ case BUILT_IN_MEMPCPY_CHK:
+ case BUILT_IN_MEMMOVE_CHK:
+ case BUILT_IN_MEMSET_CHK:
{
tree dest = gimple_call_arg (stmt, 0);
tree len = gimple_call_arg (stmt, 2);
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c
index 11bfb76..fd95abb 100644
--- a/gcc/tree-ssa-ccp.c
+++ b/gcc/tree-ssa-ccp.c
@@ -1556,7 +1556,7 @@
/* Resort to simplification for bitwise tracking. */
if (flag_tree_bit_ccp
- && likelyvalue == CONSTANT
+ && (likelyvalue == CONSTANT || is_gimple_call (stmt))
&& !is_constant)
{
enum gimple_code code = gimple_code (stmt);
@@ -1616,6 +1616,8 @@
case BUILT_IN_MALLOC:
case BUILT_IN_REALLOC:
case BUILT_IN_CALLOC:
+ case BUILT_IN_STRDUP:
+ case BUILT_IN_STRNDUP:
val.lattice_val = CONSTANT;
val.value = build_int_cst (TREE_TYPE (gimple_get_lhs (stmt)), 0);
val.mask = shwi_to_double_int
@@ -1631,6 +1633,20 @@
/ BITS_PER_UNIT - 1));
break;
+ /* These builtins return their first argument, unmodified. */
+ case BUILT_IN_MEMCPY:
+ case BUILT_IN_MEMMOVE:
+ case BUILT_IN_MEMSET:
+ case BUILT_IN_STRCPY:
+ case BUILT_IN_STRNCPY:
+ case BUILT_IN_MEMCPY_CHK:
+ case BUILT_IN_MEMMOVE_CHK:
+ case BUILT_IN_MEMSET_CHK:
+ case BUILT_IN_STRCPY_CHK:
+ case BUILT_IN_STRNCPY_CHK:
+ val = get_value_for_expr (gimple_call_arg (stmt, 0), true);
+ break;
+
default:;
}
}
diff --git a/gcc/tree-ssa-dce.c b/gcc/tree-ssa-dce.c
index 6b77876..a088ef2 100644
--- a/gcc/tree-ssa-dce.c
+++ b/gcc/tree-ssa-dce.c
@@ -1,5 +1,5 @@
/* Dead code elimination pass for the GNU compiler.
- Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by Ben Elliston <bje@redhat.com>
and Andrew MacLeod <amacleod@redhat.com>
@@ -316,7 +316,8 @@
easily locate the debug temp bind stmt for a use thereof,
would could refrain from marking all debug temps here, and
mark them only if they're used. */
- if (gimple_debug_bind_has_value_p (stmt)
+ if (!gimple_debug_bind_p (stmt)
+ || gimple_debug_bind_has_value_p (stmt)
|| TREE_CODE (gimple_debug_bind_get_var (stmt)) != DEBUG_EXPR_DECL)
mark_stmt_necessary (stmt, false);
return;
@@ -830,7 +831,9 @@
if (callee != NULL_TREE
&& DECL_BUILT_IN_CLASS (callee) == BUILT_IN_NORMAL
&& (DECL_FUNCTION_CODE (callee) == BUILT_IN_MEMSET
+ || DECL_FUNCTION_CODE (callee) == BUILT_IN_MEMSET_CHK
|| DECL_FUNCTION_CODE (callee) == BUILT_IN_MALLOC
+ || DECL_FUNCTION_CODE (callee) == BUILT_IN_CALLOC
|| DECL_FUNCTION_CODE (callee) == BUILT_IN_FREE
|| DECL_FUNCTION_CODE (callee) == BUILT_IN_ALLOCA
|| DECL_FUNCTION_CODE (callee) == BUILT_IN_STACK_SAVE
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 6f076dc..4127e03 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -1,5 +1,5 @@
/* Tree based points-to analysis
- Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+ Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by Daniel Berlin <dberlin@dberlin.org>
@@ -2746,6 +2746,18 @@
return;
}
+ /* For global variables resort to the alias target. */
+ if (TREE_CODE (t) == VAR_DECL
+ && (TREE_STATIC (t) || DECL_EXTERNAL (t)))
+ {
+ struct varpool_node *node = varpool_get_node (t);
+ if (node && node->alias)
+ {
+ node = varpool_variable_node (node, NULL);
+ t = node->decl;
+ }
+ }
+
vi = get_vi_for_tree (t);
cexpr.var = vi->id;
cexpr.type = SCALAR;
@@ -3982,6 +3994,14 @@
case BUILT_IN_STPNCPY:
case BUILT_IN_STRCAT:
case BUILT_IN_STRNCAT:
+ case BUILT_IN_STRCPY_CHK:
+ case BUILT_IN_STRNCPY_CHK:
+ case BUILT_IN_MEMCPY_CHK:
+ case BUILT_IN_MEMMOVE_CHK:
+ case BUILT_IN_MEMPCPY_CHK:
+ case BUILT_IN_STPCPY_CHK:
+ case BUILT_IN_STRCAT_CHK:
+ case BUILT_IN_STRNCAT_CHK:
{
tree res = gimple_call_lhs (t);
tree dest = gimple_call_arg (t, (DECL_FUNCTION_CODE (fndecl)
@@ -4011,6 +4031,7 @@
return true;
}
case BUILT_IN_MEMSET:
+ case BUILT_IN_MEMSET_CHK:
{
tree res = gimple_call_lhs (t);
tree dest = gimple_call_arg (t, 0);
@@ -4627,6 +4648,14 @@
case BUILT_IN_STPNCPY:
case BUILT_IN_STRCAT:
case BUILT_IN_STRNCAT:
+ case BUILT_IN_STRCPY_CHK:
+ case BUILT_IN_STRNCPY_CHK:
+ case BUILT_IN_MEMCPY_CHK:
+ case BUILT_IN_MEMMOVE_CHK:
+ case BUILT_IN_MEMPCPY_CHK:
+ case BUILT_IN_STPCPY_CHK:
+ case BUILT_IN_STRCAT_CHK:
+ case BUILT_IN_STRNCAT_CHK:
{
tree dest = gimple_call_arg (t, (DECL_FUNCTION_CODE (decl)
== BUILT_IN_BCOPY ? 1 : 0));
@@ -4649,6 +4678,7 @@
/* The following function clobbers memory pointed to by
its argument. */
case BUILT_IN_MEMSET:
+ case BUILT_IN_MEMSET_CHK:
{
tree dest = gimple_call_arg (t, 0);
unsigned i;
@@ -6685,16 +6715,6 @@
return false;
}
-/* Associate node with varinfo DATA. Worker for
- varpool_for_node_and_aliases. */
-static bool
-associate_varinfo_to_alias_1 (struct varpool_node *node, void *data)
-{
- if (node->alias)
- insert_vi_for_tree (node->decl, (varinfo_t)data);
- return false;
-}
-
/* Execute the driver for IPA PTA. */
static unsigned int
ipa_pta_execute (void)
@@ -6726,12 +6746,10 @@
/* Create constraints for global variables and their initializers. */
for (var = varpool_nodes; var; var = var->next)
{
- varinfo_t vi;
if (var->alias)
continue;
- vi = get_vi_for_tree (var->decl);
- varpool_for_node_and_aliases (var, associate_varinfo_to_alias_1, vi, true);
+ get_vi_for_tree (var->decl);
}
if (dump_file)
diff --git a/gcc/tree-ssa-threadupdate.c b/gcc/tree-ssa-threadupdate.c
index e0335dc..0cdf846 100644
--- a/gcc/tree-ssa-threadupdate.c
+++ b/gcc/tree-ssa-threadupdate.c
@@ -385,7 +385,7 @@
to keep its control statement and redirect an outgoing edge.
Else we want to remove the control statement & edges, then create
a new outgoing edge. In both cases we may need to update PHIs. */
- if (THREAD_TARGET2 (rd->incoming_edges->e) == rd->outgoing_edge)
+ if (THREAD_TARGET2 (rd->incoming_edges->e))
{
edge victim;
edge e2;
@@ -400,8 +400,11 @@
victim = find_edge (rd->dup_block, THREAD_TARGET (e)->dest);
e2 = redirect_edge_and_branch (victim, THREAD_TARGET2 (e)->dest);
- /* This updates the PHI at the target of the threaded edge. */
- copy_phi_args (e2->dest, THREAD_TARGET2 (e), e2);
+ /* If we redirected the edge, then we need to copy PHI arguments
+ at the target. If the edge already existed (e2 != victim case),
+ then the PHIs in the target already have the correct arguments. */
+ if (e2 == victim)
+ copy_phi_args (e2->dest, THREAD_TARGET2 (e), e2);
}
else
{
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c
index c98eb13..9a2c5b6 100644
--- a/gcc/tree-vect-data-refs.c
+++ b/gcc/tree-vect-data-refs.c
@@ -859,7 +859,9 @@
|| (TREE_CODE (base_addr) == SSA_NAME
&& tree_int_cst_compare (ssize_int (TYPE_ALIGN_UNIT (TREE_TYPE (
TREE_TYPE (base_addr)))),
- alignment) >= 0))
+ alignment) >= 0)
+ || (get_pointer_alignment (base_addr, TYPE_ALIGN (vectype))
+ >= TYPE_ALIGN (vectype)))
base_aligned = true;
else
base_aligned = false;
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index 27305f3..7691267 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -4591,6 +4591,25 @@
return false;
}
+ /* In case of widenning multiplication by a constant, we update the type
+ of the constant to be the type of the other operand. We check that the
+ constant fits the type in the pattern recognition pass. */
+ if (code == DOT_PROD_EXPR
+ && !types_compatible_p (TREE_TYPE (ops[0]), TREE_TYPE (ops[1])))
+ {
+ if (TREE_CODE (ops[0]) == INTEGER_CST)
+ ops[0] = fold_convert (TREE_TYPE (ops[1]), ops[0]);
+ else if (TREE_CODE (ops[1]) == INTEGER_CST)
+ ops[1] = fold_convert (TREE_TYPE (ops[0]), ops[1]);
+ else
+ {
+ if (vect_print_dump_info (REPORT_DETAILS))
+ fprintf (vect_dump, "invalid types in dot-prod");
+
+ return false;
+ }
+ }
+
if (!vec_stmt) /* transformation not required. */
{
if (!vect_model_reduction_cost (stmt_info, epilog_reduc_code, ncopies))
diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c
index ce94142..429dd87 100644
--- a/gcc/tree-vect-patterns.c
+++ b/gcc/tree-vect-patterns.c
@@ -1,5 +1,6 @@
/* Analysis Utilities for Loop Vectorization.
- Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
+ Free Software Foundation, Inc.
Contributed by Dorit Nuzman <dorit@il.ibm.com>
This file is part of GCC.
@@ -557,6 +558,8 @@
FOR_EACH_IMM_USE_FAST (use_p, imm_iter, lhs)
{
+ if (is_gimple_debug (USE_STMT (use_p)))
+ continue;
use_stmt = USE_STMT (use_p);
nuses++;
}
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index 6a5ba22..f9b9639 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -2089,6 +2089,9 @@
else
return false;
+ if (code == VIEW_CONVERT_EXPR)
+ op = TREE_OPERAND (op, 0);
+
if (!vect_is_simple_use_1 (op, loop_vinfo, bb_vinfo,
&def_stmt, &def, &dt[0], &vectype_in))
{
@@ -2099,7 +2102,8 @@
/* We can handle NOP_EXPR conversions that do not change the number
of elements or the vector size. */
- if (CONVERT_EXPR_CODE_P (code)
+ if ((CONVERT_EXPR_CODE_P (code)
+ || code == VIEW_CONVERT_EXPR)
&& (!vectype_in
|| TYPE_VECTOR_SUBPARTS (vectype_in) != nunits
|| (GET_MODE_SIZE (TYPE_MODE (vectype))
@@ -2134,7 +2138,8 @@
/* Arguments are ready. create the new vector stmt. */
FOR_EACH_VEC_ELT (tree, vec_oprnds, i, vop)
{
- if (CONVERT_EXPR_CODE_P (code))
+ if (CONVERT_EXPR_CODE_P (code)
+ || code == VIEW_CONVERT_EXPR)
vop = build1 (VIEW_CONVERT_EXPR, vectype, vop);
new_stmt = gimple_build_assign (vec_dest, vop);
new_temp = make_ssa_name (vec_dest, new_stmt);
diff --git a/gcc/tree.c b/gcc/tree.c
index 73126cf..2872034 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -203,6 +203,9 @@
static GTY ((if_marked ("tree_decl_map_marked_p"), param_is (struct tree_decl_map)))
htab_t value_expr_for_decl;
+static GTY ((if_marked ("tree_vec_map_marked_p"), param_is (struct tree_vec_map)))
+ htab_t debug_args_for_decl;
+
static GTY ((if_marked ("tree_priority_map_marked_p"),
param_is (struct tree_priority_map)))
htab_t init_priority_for_decl;
@@ -5218,82 +5221,119 @@
}
};
-/* Return nonzero if IDENT is a valid name for attribute ATTR,
- or zero if not.
-
- We try both `text' and `__text__', ATTR may be either one. */
-/* ??? It might be a reasonable simplification to require ATTR to be only
- `text'. One might then also require attribute lists to be stored in
- their canonicalized form. */
-
-static int
-is_attribute_with_length_p (const char *attr, int attr_len, const_tree ident)
+/* The backbone of is_attribute_p(). ATTR_LEN is the string length of
+ ATTR_NAME. Also used internally by remove_attribute(). */
+bool
+private_is_attribute_p (const char *attr_name, size_t attr_len, const_tree ident)
{
- int ident_len;
- const char *p;
+ size_t ident_len = IDENTIFIER_LENGTH (ident);
- if (TREE_CODE (ident) != IDENTIFIER_NODE)
- return 0;
-
- p = IDENTIFIER_POINTER (ident);
- ident_len = IDENTIFIER_LENGTH (ident);
-
- if (ident_len == attr_len
- && strcmp (attr, p) == 0)
- return 1;
-
- /* If ATTR is `__text__', IDENT must be `text'; and vice versa. */
- if (attr[0] == '_')
+ if (ident_len == attr_len)
{
- gcc_assert (attr[1] == '_');
- gcc_assert (attr[attr_len - 2] == '_');
- gcc_assert (attr[attr_len - 1] == '_');
- if (ident_len == attr_len - 4
- && strncmp (attr + 2, p, attr_len - 4) == 0)
- return 1;
+ if (strcmp (attr_name, IDENTIFIER_POINTER (ident)) == 0)
+ return true;
}
- else
+ else if (ident_len == attr_len + 4)
{
- if (ident_len == attr_len + 4
- && p[0] == '_' && p[1] == '_'
+ /* There is the possibility that ATTR is 'text' and IDENT is
+ '__text__'. */
+ const char *p = IDENTIFIER_POINTER (ident);
+ if (p[0] == '_' && p[1] == '_'
&& p[ident_len - 2] == '_' && p[ident_len - 1] == '_'
- && strncmp (attr, p + 2, attr_len) == 0)
- return 1;
+ && strncmp (attr_name, p + 2, attr_len) == 0)
+ return true;
}
- return 0;
+ return false;
}
-/* Return nonzero if IDENT is a valid name for attribute ATTR,
- or zero if not.
-
- We try both `text' and `__text__', ATTR may be either one. */
-
-int
-is_attribute_p (const char *attr, const_tree ident)
-{
- return is_attribute_with_length_p (attr, strlen (attr), ident);
-}
-
-/* Given an attribute name and a list of attributes, return a pointer to the
- attribute's list element if the attribute is part of the list, or NULL_TREE
- if not found. If the attribute appears more than once, this only
- returns the first occurrence; the TREE_CHAIN of the return value should
- be passed back in if further occurrences are wanted. */
-
+/* The backbone of lookup_attribute(). ATTR_LEN is the string length
+ of ATTR_NAME, and LIST is not NULL_TREE. */
tree
-lookup_attribute (const char *attr_name, tree list)
+private_lookup_attribute (const char *attr_name, size_t attr_len, tree list)
{
- tree l;
- size_t attr_len = strlen (attr_name);
-
- for (l = list; l; l = TREE_CHAIN (l))
+ while (list)
{
- gcc_assert (TREE_CODE (TREE_PURPOSE (l)) == IDENTIFIER_NODE);
- if (is_attribute_with_length_p (attr_name, attr_len, TREE_PURPOSE (l)))
- return l;
+ size_t ident_len = IDENTIFIER_LENGTH (TREE_PURPOSE (list));
+
+ if (ident_len == attr_len)
+ {
+ if (strcmp (attr_name, IDENTIFIER_POINTER (TREE_PURPOSE (list))) == 0)
+ break;
+ }
+ /* TODO: If we made sure that attributes were stored in the
+ canonical form without '__...__' (ie, as in 'text' as opposed
+ to '__text__') then we could avoid the following case. */
+ else if (ident_len == attr_len + 4)
+ {
+ const char *p = IDENTIFIER_POINTER (TREE_PURPOSE (list));
+ if (p[0] == '_' && p[1] == '_'
+ && p[ident_len - 2] == '_' && p[ident_len - 1] == '_'
+ && strncmp (attr_name, p + 2, attr_len) == 0)
+ break;
+ }
+ list = TREE_CHAIN (list);
}
- return NULL_TREE;
+
+ return list;
+}
+
+/* A variant of lookup_attribute() that can be used with an identifier
+ as the first argument, and where the identifier can be either
+ 'text' or '__text__'.
+
+ Given an attribute ATTR_IDENTIFIER, and a list of attributes LIST,
+ return a pointer to the attribute's list element if the attribute
+ is part of the list, or NULL_TREE if not found. If the attribute
+ appears more than once, this only returns the first occurrence; the
+ TREE_CHAIN of the return value should be passed back in if further
+ occurrences are wanted. ATTR_IDENTIFIER must be an identifier but
+ can be in the form 'text' or '__text__'. */
+static tree
+lookup_ident_attribute (tree attr_identifier, tree list)
+{
+ gcc_checking_assert (TREE_CODE (attr_identifier) == IDENTIFIER_NODE);
+
+ while (list)
+ {
+ gcc_checking_assert (TREE_CODE (TREE_PURPOSE (list)) == IDENTIFIER_NODE);
+
+ /* Identifiers can be compared directly for equality. */
+ if (attr_identifier == TREE_PURPOSE (list))
+ break;
+
+ /* If they are not equal, they may still be one in the form
+ 'text' while the other one is in the form '__text__'. TODO:
+ If we were storing attributes in normalized 'text' form, then
+ this could all go away and we could take full advantage of
+ the fact that we're comparing identifiers. :-) */
+ {
+ size_t attr_len = IDENTIFIER_LENGTH (attr_identifier);
+ size_t ident_len = IDENTIFIER_LENGTH (TREE_PURPOSE (list));
+
+ if (ident_len == attr_len + 4)
+ {
+ const char *p = IDENTIFIER_POINTER (TREE_PURPOSE (list));
+ const char *q = IDENTIFIER_POINTER (attr_identifier);
+ if (p[0] == '_' && p[1] == '_'
+ && p[ident_len - 2] == '_' && p[ident_len - 1] == '_'
+ && strncmp (q, p + 2, attr_len) == 0)
+ break;
+ }
+ else if (ident_len + 4 == attr_len)
+ {
+ const char *p = IDENTIFIER_POINTER (TREE_PURPOSE (list));
+ const char *q = IDENTIFIER_POINTER (attr_identifier);
+ if (q[0] == '_' && q[1] == '_'
+ && q[attr_len - 2] == '_' && q[attr_len - 1] == '_'
+ && strncmp (q + 2, p, ident_len) == 0)
+ break;
+ }
+ }
+ list = TREE_CHAIN (list);
+ }
+
+ return list;
}
/* Remove any instances of attribute ATTR_NAME in LIST and return the
@@ -5305,11 +5345,14 @@
tree *p;
size_t attr_len = strlen (attr_name);
+ gcc_checking_assert (attr_name[0] != '_');
+
for (p = &list; *p; )
{
tree l = *p;
- gcc_assert (TREE_CODE (TREE_PURPOSE (l)) == IDENTIFIER_NODE);
- if (is_attribute_with_length_p (attr_name, attr_len, TREE_PURPOSE (l)))
+ /* TODO: If we were storing attributes in normalized form, here
+ we could use a simple strcmp(). */
+ if (private_is_attribute_p (attr_name, attr_len, TREE_PURPOSE (l)))
*p = TREE_CHAIN (l);
else
p = &TREE_CHAIN (l);
@@ -5346,11 +5389,9 @@
for (; a2 != 0; a2 = TREE_CHAIN (a2))
{
tree a;
- for (a = lookup_attribute (IDENTIFIER_POINTER (TREE_PURPOSE (a2)),
- attributes);
+ for (a = lookup_ident_attribute (TREE_PURPOSE (a2), attributes);
a != NULL_TREE && !attribute_value_equal (a, a2);
- a = lookup_attribute (IDENTIFIER_POINTER (TREE_PURPOSE (a2)),
- TREE_CHAIN (a)))
+ a = lookup_ident_attribute (TREE_PURPOSE (a2), TREE_CHAIN (a)))
;
if (a == NULL_TREE)
{
@@ -5449,24 +5490,7 @@
a = merge_attributes (DECL_ATTRIBUTES (old), DECL_ATTRIBUTES (new_tree));
if (delete_dllimport_p)
- {
- tree prev, t;
- const size_t attr_len = strlen ("dllimport");
-
- /* Scan the list for dllimport and delete it. */
- for (prev = NULL_TREE, t = a; t; prev = t, t = TREE_CHAIN (t))
- {
- if (is_attribute_with_length_p ("dllimport", attr_len,
- TREE_PURPOSE (t)))
- {
- if (prev == NULL_TREE)
- a = TREE_CHAIN (a);
- else
- TREE_CHAIN (prev) = TREE_CHAIN (t);
- break;
- }
- }
- }
+ a = remove_attribute ("dllimport", a);
return a;
}
@@ -5995,6 +6019,49 @@
*(struct tree_decl_map **) loc = h;
}
+/* Lookup a vector of debug arguments for FROM, and return it if we
+ find one. */
+
+VEC(tree, gc) **
+decl_debug_args_lookup (tree from)
+{
+ struct tree_vec_map *h, in;
+
+ if (!DECL_HAS_DEBUG_ARGS_P (from))
+ return NULL;
+ gcc_checking_assert (debug_args_for_decl != NULL);
+ in.base.from = from;
+ h = (struct tree_vec_map *)
+ htab_find_with_hash (debug_args_for_decl, &in, DECL_UID (from));
+ if (h)
+ return &h->to;
+ return NULL;
+}
+
+/* Insert a mapping FROM->empty vector of debug arguments in the value
+ expression hashtable. */
+
+VEC(tree, gc) **
+decl_debug_args_insert (tree from)
+{
+ struct tree_vec_map *h;
+ void **loc;
+
+ if (DECL_HAS_DEBUG_ARGS_P (from))
+ return decl_debug_args_lookup (from);
+ if (debug_args_for_decl == NULL)
+ debug_args_for_decl = htab_create_ggc (64, tree_vec_map_hash,
+ tree_vec_map_eq, 0);
+ h = ggc_alloc_tree_vec_map ();
+ h->base.from = from;
+ h->to = NULL;
+ loc = htab_find_slot_with_hash (debug_args_for_decl, h, DECL_UID (from),
+ INSERT);
+ *(struct tree_vec_map **) loc = h;
+ DECL_HAS_DEBUG_ARGS_P (from) = 1;
+ return &h->to;
+}
+
/* Hashing of types so that we don't make duplicates.
The entry point is `type_hash_canon'. */
@@ -6254,6 +6321,9 @@
int
attribute_list_equal (const_tree l1, const_tree l2)
{
+ if (l1 == l2)
+ return 1;
+
return attribute_list_contained (l1, l2)
&& attribute_list_contained (l2, l1);
}
@@ -6292,11 +6362,9 @@
/* This CONST_CAST is okay because lookup_attribute does not
modify its argument and the return value is assigned to a
const_tree. */
- for (attr = lookup_attribute (IDENTIFIER_POINTER (TREE_PURPOSE (t2)),
- CONST_CAST_TREE(l1));
+ for (attr = lookup_ident_attribute (TREE_PURPOSE (t2), CONST_CAST_TREE(l1));
attr != NULL_TREE && !attribute_value_equal (t2, attr);
- attr = lookup_attribute (IDENTIFIER_POINTER (TREE_PURPOSE (t2)),
- TREE_CHAIN (attr)))
+ attr = lookup_ident_attribute (TREE_PURPOSE (t2), TREE_CHAIN (attr)))
;
if (attr == NULL_TREE)
diff --git a/gcc/tree.h b/gcc/tree.h
index f55574d..20ba295 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1,6 +1,6 @@
/* Front-end tree definitions for GNU compiler.
Copyright (C) 1989, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
- 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+ 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
This file is part of GCC.
@@ -3431,6 +3431,13 @@
#define DECL_DISREGARD_INLINE_LIMITS(NODE) \
(FUNCTION_DECL_CHECK (NODE)->function_decl.disregard_inline_limits)
+extern VEC(tree, gc) **decl_debug_args_lookup (tree);
+extern VEC(tree, gc) **decl_debug_args_insert (tree);
+
+/* Nonzero if a FUNCTION_DECL has DEBUG arguments attached to it. */
+#define DECL_HAS_DEBUG_ARGS_P(NODE) \
+ (FUNCTION_DECL_CHECK (NODE)->function_decl.has_debug_args_flag)
+
/* For FUNCTION_DECL, this holds a pointer to a structure ("struct function")
that describes the status of this function. */
#define DECL_STRUCT_FUNCTION(NODE) \
@@ -3496,16 +3503,16 @@
unsigned operator_new_flag : 1;
unsigned declared_inline_flag : 1;
unsigned regdecl_flag : 1;
-
unsigned no_inline_warning_flag : 1;
+
unsigned no_instrument_function_entry_exit : 1;
unsigned no_limit_stack : 1;
unsigned disregard_inline_limits : 1;
unsigned pure_flag : 1;
unsigned looping_const_or_pure_flag : 1;
+ unsigned has_debug_args_flag : 1;
-
- /* 3 bits left */
+ /* 2 bits left */
};
/* The source language of the translation-unit. */
@@ -4498,18 +4505,54 @@
extern tree merge_decl_attributes (tree, tree);
extern tree merge_type_attributes (tree, tree);
-/* Given a tree node and a string, return nonzero if the tree node is
- a valid attribute name for the string. */
+/* This function is a private implementation detail of lookup_attribute()
+ and you should never call it directly. */
+extern tree private_lookup_attribute (const char *, size_t, tree);
-extern int is_attribute_p (const char *, const_tree);
+/* Given an attribute name ATTR_NAME and a list of attributes LIST,
+ return a pointer to the attribute's list element if the attribute
+ is part of the list, or NULL_TREE if not found. If the attribute
+ appears more than once, this only returns the first occurrence; the
+ TREE_CHAIN of the return value should be passed back in if further
+ occurrences are wanted. ATTR_NAME must be in the form 'text' (not
+ '__text__'). */
-/* Given an attribute name and a list of attributes, return the list element
- of the attribute or NULL_TREE if not found. */
+static inline tree
+lookup_attribute (const char *attr_name, tree list)
+{
+ gcc_checking_assert (attr_name[0] != '_');
+ /* In most cases, list is NULL_TREE. */
+ if (list == NULL_TREE)
+ return NULL_TREE;
+ else
+ /* Do the strlen() before calling the out-of-line implementation.
+ In most cases attr_name is a string constant, and the compiler
+ will optimize the strlen() away. */
+ return private_lookup_attribute (attr_name, strlen (attr_name), list);
+}
-extern tree lookup_attribute (const char *, tree);
+/* This function is a private implementation detail of
+ is_attribute_p() and you should never call it directly. */
+extern bool private_is_attribute_p (const char *, size_t, const_tree);
+
+/* Given an identifier node IDENT and a string ATTR_NAME, return true
+ if the identifier node is a valid attribute name for the string.
+ ATTR_NAME must be in the form 'text' (not '__text__'). IDENT could
+ be the identifier for 'text' or for '__text__'. */
+
+static inline bool
+is_attribute_p (const char *attr_name, const_tree ident)
+{
+ gcc_checking_assert (attr_name[0] != '_');
+ /* Do the strlen() before calling the out-of-line implementation.
+ In most cases attr_name is a string constant, and the compiler
+ will optimize the strlen() away. */
+ return private_is_attribute_p (attr_name, strlen (attr_name), ident);
+}
/* Remove any instances of attribute ATTR_NAME in LIST and return the
- modified list. */
+ modified list. ATTR_NAME must be in the form 'text' (not
+ '__text__'). */
extern tree remove_attribute (const char *, tree);
@@ -5564,10 +5607,6 @@
extern void dwarf2out_def_cfa (const char *, unsigned, HOST_WIDE_INT);
-/* Add the CFI for saving a register window. */
-
-extern void dwarf2out_window_save (const char *);
-
/* Entry point for saving a register to the stack. */
extern void dwarf2out_reg_save (const char *, unsigned, HOST_WIDE_INT);
@@ -5706,6 +5745,17 @@
#define tree_priority_map_hash tree_map_base_hash
#define tree_priority_map_marked_p tree_map_base_marked_p
+/* Map from a decl tree to a tree vector. */
+
+struct GTY(()) tree_vec_map {
+ struct tree_map_base base;
+ VEC(tree,gc) *to;
+};
+
+#define tree_vec_map_eq tree_map_base_eq
+#define tree_vec_map_hash tree_decl_map_hash
+#define tree_vec_map_marked_p tree_map_base_marked_p
+
/* In tree-ssa.c */
tree target_for_debug_bind (tree);
diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
index a8574d2..b3f84a1 100644
--- a/gcc/var-tracking.c
+++ b/gcc/var-tracking.c
@@ -5812,6 +5812,29 @@
}
}
+ /* Add debug arguments. */
+ if (fndecl
+ && TREE_CODE (fndecl) == FUNCTION_DECL
+ && DECL_HAS_DEBUG_ARGS_P (fndecl))
+ {
+ VEC(tree, gc) **debug_args = decl_debug_args_lookup (fndecl);
+ if (debug_args)
+ {
+ unsigned int ix;
+ tree param;
+ for (ix = 0; VEC_iterate (tree, *debug_args, ix, param); ix += 2)
+ {
+ rtx item;
+ tree dtemp = VEC_index (tree, *debug_args, ix + 1);
+ enum machine_mode mode = DECL_MODE (dtemp);
+ item = gen_rtx_DEBUG_PARAMETER_REF (mode, param);
+ item = gen_rtx_CONCAT (mode, item, DECL_RTL (dtemp));
+ call_arguments = gen_rtx_EXPR_LIST (VOIDmode, item,
+ call_arguments);
+ }
+ }
+ }
+
/* Reverse call_arguments chain. */
prev = NULL_RTX;
for (cur = call_arguments; cur; cur = next)
diff --git a/include/ChangeLog b/include/ChangeLog
index fa0dfac..e4a6bcae 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+2011-06-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/47858
+ * dwarf2.h (enum dwarf_location_atom): Add DW_OP_GNU_parameter_ref.
+
2011-06-13 Jan Kratochvil <jan.kratochvil@redhat.com>
* demangle.h (DMGL_RET_POSTFIX): Extend the comment.
diff --git a/include/dwarf2.h b/include/dwarf2.h
index 0b00866..b2806ef 100644
--- a/include/dwarf2.h
+++ b/include/dwarf2.h
@@ -563,6 +563,8 @@
DW_OP_GNU_deref_type = 0xf6,
DW_OP_GNU_convert = 0xf7,
DW_OP_GNU_reinterpret = 0xf9,
+ /* The GNU parameter ref extension. */
+ DW_OP_GNU_parameter_ref = 0xfa,
/* HP extensions. */
DW_OP_HP_unknown = 0xe0, /* Ouch, the same as GNU_push_tls_address. */
DW_OP_HP_is_value = 0xe1,
diff --git a/libcpp/po/ChangeLog b/libcpp/po/ChangeLog
index b36e777..fc43008 100644
--- a/libcpp/po/ChangeLog
+++ b/libcpp/po/ChangeLog
@@ -1,3 +1,7 @@
+2011-06-21 Joseph Myers <joseph@codesourcery.com>
+
+ * cpplib.pot: Regenerate.
+
2011-05-12 Joseph Myers <joseph@codesourcery.com>
* zh_CN.po: Update.
diff --git a/libcpp/po/cpplib.pot b/libcpp/po/cpplib.pot
index 111ec3d..3eaa467 100644
--- a/libcpp/po/cpplib.pot
+++ b/libcpp/po/cpplib.pot
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
-"POT-Creation-Date: 2011-03-24 16:40+0000\n"
+"POT-Creation-Date: 2011-06-21 10:30+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -75,7 +75,7 @@
msgstr ""
#: charset.c:1056
-#: lex.c:1040
+#: lex.c:1041
msgid "'$' in identifier or number"
msgstr ""
@@ -314,102 +314,102 @@
msgid "registering pragma with NULL handler"
msgstr ""
-#: directives.c:1431
+#: directives.c:1460
msgid "#pragma once in main file"
msgstr ""
-#: directives.c:1454
+#: directives.c:1483
msgid "invalid #pragma push_macro directive"
msgstr ""
-#: directives.c:1509
+#: directives.c:1538
msgid "invalid #pragma pop_macro directive"
msgstr ""
-#: directives.c:1564
+#: directives.c:1593
msgid "invalid #pragma GCC poison directive"
msgstr ""
-#: directives.c:1573
+#: directives.c:1602
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr ""
-#: directives.c:1592
+#: directives.c:1621
msgid "#pragma system_header ignored outside include file"
msgstr ""
-#: directives.c:1617
+#: directives.c:1646
#, c-format
msgid "cannot find source file %s"
msgstr ""
-#: directives.c:1621
+#: directives.c:1650
#, c-format
msgid "current file is older than %s"
msgstr ""
-#: directives.c:1806
+#: directives.c:1835
msgid "_Pragma takes a parenthesized string literal"
msgstr ""
-#: directives.c:1927
+#: directives.c:1956
msgid "#else without #if"
msgstr ""
-#: directives.c:1932
+#: directives.c:1961
msgid "#else after #else"
msgstr ""
-#: directives.c:1934
-#: directives.c:1967
+#: directives.c:1963
+#: directives.c:1996
msgid "the conditional began here"
msgstr ""
-#: directives.c:1960
+#: directives.c:1989
msgid "#elif without #if"
msgstr ""
-#: directives.c:1965
+#: directives.c:1994
msgid "#elif after #else"
msgstr ""
-#: directives.c:2003
+#: directives.c:2032
msgid "#endif without #if"
msgstr ""
-#: directives.c:2083
+#: directives.c:2112
msgid "missing '(' after predicate"
msgstr ""
-#: directives.c:2098
+#: directives.c:2127
msgid "missing ')' to complete answer"
msgstr ""
-#: directives.c:2118
+#: directives.c:2147
msgid "predicate's answer is empty"
msgstr ""
-#: directives.c:2145
+#: directives.c:2174
msgid "assertion without predicate"
msgstr ""
-#: directives.c:2148
+#: directives.c:2177
msgid "predicate must be an identifier"
msgstr ""
-#: directives.c:2234
+#: directives.c:2263
#, c-format
msgid "\"%s\" re-asserted"
msgstr ""
-#: directives.c:2525
+#: directives.c:2554
#, c-format
msgid "unterminated #%s"
msgstr ""
#: directives-only.c:222
-#: lex.c:2074
+#: lex.c:2069
#: traditional.c:163
msgid "unterminated comment"
msgstr ""
@@ -667,7 +667,7 @@
msgid "no include path in which to search for %s"
msgstr ""
-#: files.c:1307
+#: files.c:1306
msgid "Multiple include guards may be useful for:\n"
msgstr ""
@@ -709,60 +709,60 @@
"the target requires %lu bits"
msgstr ""
-#: lex.c:834
+#: lex.c:835
msgid "backslash and newline separated by space"
msgstr ""
-#: lex.c:839
+#: lex.c:840
msgid "backslash-newline at end of file"
msgstr ""
-#: lex.c:855
+#: lex.c:856
#, c-format
msgid "trigraph ??%c converted to %c"
msgstr ""
-#: lex.c:863
+#: lex.c:864
#, c-format
msgid "trigraph ??%c ignored, use -trigraphs to enable"
msgstr ""
-#: lex.c:912
+#: lex.c:913
msgid "\"/*\" within comment"
msgstr ""
-#: lex.c:970
+#: lex.c:971
#, c-format
msgid "%s in preprocessing directive"
msgstr ""
-#: lex.c:979
+#: lex.c:980
msgid "null character(s) ignored"
msgstr ""
-#: lex.c:1016
+#: lex.c:1017
#, c-format
msgid "`%.*s' is not in NFKC"
msgstr ""
-#: lex.c:1019
+#: lex.c:1020
#, c-format
msgid "`%.*s' is not in NFC"
msgstr ""
-#: lex.c:1087
-#: lex.c:1164
+#: lex.c:1088
+#: lex.c:1165
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr ""
-#: lex.c:1095
-#: lex.c:1172
+#: lex.c:1096
+#: lex.c:1173
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr ""
-#: lex.c:1101
-#: lex.c:1178
+#: lex.c:1102
+#: lex.c:1179
#, c-format
msgid "identifier \"%s\" is a special operator name in C++"
msgstr ""
@@ -776,34 +776,33 @@
msgid "invalid character '%c' in raw string delimiter"
msgstr ""
-#: lex.c:1447
-#: lex.c:1469
+#: lex.c:1449
+#: lex.c:1471
msgid "unterminated raw string"
msgstr ""
-#: lex.c:1484
-#: lex.c:1583
+#: lex.c:1578
msgid "null character(s) preserved in literal"
msgstr ""
-#: lex.c:1586
+#: lex.c:1581
#, c-format
msgid "missing terminating %c character"
msgstr ""
-#: lex.c:2085
+#: lex.c:2080
msgid "C++ style comments are not allowed in ISO C90"
msgstr ""
-#: lex.c:2087
+#: lex.c:2082
msgid "(this will be reported only once per input file)"
msgstr ""
-#: lex.c:2092
+#: lex.c:2087
msgid "multi-line comment"
msgstr ""
-#: lex.c:2412
+#: lex.c:2407
#, c-format
msgid "unspellable token %s"
msgstr ""
@@ -872,67 +871,67 @@
"C90 and ISO C++98"
msgstr ""
-#: macro.c:1507
+#: macro.c:1506
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr ""
-#: macro.c:1553
+#: macro.c:1552
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr ""
-#: macro.c:1561
+#: macro.c:1560
msgid "macro parameters must be comma-separated"
msgstr ""
-#: macro.c:1578
+#: macro.c:1577
msgid "parameter name missing"
msgstr ""
-#: macro.c:1596
+#: macro.c:1595
msgid "anonymous variadic macros were introduced in C99"
msgstr ""
-#: macro.c:1601
+#: macro.c:1600
msgid "ISO C does not permit named variadic macros"
msgstr ""
-#: macro.c:1610
+#: macro.c:1609
msgid "missing ')' in macro parameter list"
msgstr ""
-#: macro.c:1659
+#: macro.c:1658
msgid "'##' cannot appear at either end of a macro expansion"
msgstr ""
-#: macro.c:1694
+#: macro.c:1693
msgid "ISO C99 requires whitespace after the macro name"
msgstr ""
-#: macro.c:1718
+#: macro.c:1717
msgid "missing whitespace after the macro name"
msgstr ""
-#: macro.c:1752
+#: macro.c:1751
msgid "'#' is not followed by a macro parameter"
msgstr ""
-#: macro.c:1910
+#: macro.c:1909
#, c-format
msgid "\"%s\" redefined"
msgstr ""
-#: macro.c:1916
+#: macro.c:1915
msgid "this is the location of the previous definition"
msgstr ""
-#: macro.c:1977
+#: macro.c:1976
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr ""
-#: macro.c:2004
+#: macro.c:2003
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr ""
@@ -973,7 +972,7 @@
msgstr ""
#: pch.c:712
-#: pch.c:891
+#: pch.c:888
msgid "while reading precompiled header"
msgstr ""
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 0f2384e..363c095 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,5 +1,20 @@
+2011-06-22 Uros Bizjak <ubizjak@gmail.com>
+
+ * enable-execute-stack-empty.c (__enable_execute_stack): Add prototype.
+
+2011-06-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * shared-object.mk (c_flags-$o): Save c_flags.
+ ($(base)$(objext)): Use it.
+ ($(base)_s$(objext)): Likewise.
+
+2011-06-21 Bernd Schmidt <bernds@codesourcery.com>
+
+ * Makefile.in (lib2funcs): Add _clrsbsi2 and _clrsbdi2.
+ * libgcc-std.ver.in (GCC_4.7.0): New section.
+
2011-06-16 Georg-Johann Lay <avr@gjlay.de>
-
+
PR target/49313
PR target/29524
* config/avr/t-avr: Fix line endings.
@@ -368,7 +383,7 @@
2010-09-09 Gerald Pfeifer <gerald@pfeifer.com>
Andrew Pinski <pinskia@gmail.com>
- PR target/40959
+ PR target/40959
* config.host (ia64*-*-freebsd*): Set extra_parts. Set tmake_file.
2010-09-06 H.J. Lu <hongjiu.lu@intel.com>
diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in
index 383a661..d0a1d15 100644
--- a/libgcc/Makefile.in
+++ b/libgcc/Makefile.in
@@ -323,7 +323,7 @@
_ctzsi2 _ctzdi2 _popcount_tab _popcountsi2 _popcountdi2 \
_paritysi2 _paritydi2 _powisf2 _powidf2 _powixf2 _powitf2 \
_mulsc3 _muldc3 _mulxc3 _multc3 _divsc3 _divdc3 _divxc3 \
- _divtc3 _bswapsi2 _bswapdi2
+ _divtc3 _bswapsi2 _bswapdi2 _clrsbsi2 _clrsbdi2
# The floating-point conversion routines that involve a single-word integer.
# XX stands for the integer mode.
diff --git a/libgcc/enable-execute-stack-empty.c b/libgcc/enable-execute-stack-empty.c
index 81786de..e2cc02b 100644
--- a/libgcc/enable-execute-stack-empty.c
+++ b/libgcc/enable-execute-stack-empty.c
@@ -1,6 +1,9 @@
/* Dummy implementation of __enable_execute_stack. */
+extern void __enable_execute_stack (void *);
+
/* Attempt to turn on execute permission for the stack. */
+
void
__enable_execute_stack (void *addr __attribute__((__unused__)))
{
diff --git a/libgcc/libgcc-std.ver.in b/libgcc/libgcc-std.ver.in
index e468ec5..5552a6f 100644
--- a/libgcc/libgcc-std.ver.in
+++ b/libgcc/libgcc-std.ver.in
@@ -1920,3 +1920,10 @@
__morestack_initial_sp
__splitstack_find
}
+
+%inherit GCC_4.7.0 GCC_4.6.0
+GCC_4.7.0 {
+ __PFX__clrsbsi2
+ __PFX__clrsbdi2
+ __PFX__clrsbti2
+}
diff --git a/libgcc/shared-object.mk b/libgcc/shared-object.mk
index 65171b6..d9ee922 100644
--- a/libgcc/shared-object.mk
+++ b/libgcc/shared-object.mk
@@ -6,13 +6,15 @@
base := $(basename $(notdir $o))
+c_flags-$o := $(c_flags)
+
ifeq ($(suffix $o),.c)
$(base)$(objext): $o
- $(gcc_compile) $(c_flags) -c $< $(vis_hide)
+ $(gcc_compile) $(c_flags-$<) -c $< $(vis_hide)
$(base)_s$(objext): $o
- $(gcc_s_compile) $(c_flags) -c $<
+ $(gcc_s_compile) $(c_flags-$<) -c $<
else
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index 7d3fe22..1d93273 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,17 @@
+2011-06-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR libgomp/49490
+ * iter.c (gomp_iter_static_next): For chunk size 0
+ only use n ceil/ nthreads size for the first
+ n % nthreads threads in the team instead of
+ all threads except for the last few ones which
+ get less work or none at all.
+ * iter_ull.c (gomp_iter_ull_static_next): Likewise.
+ * env.c (parse_schedule): If OMP_SCHEDULE doesn't have
+ chunk argument, set run_sched_modifier to 0 for static
+ resp. 1 for other kinds. If chunk argument is 0
+ and not static, set value to 1.
+
2011-05-19 Jakub Jelinek <jakub@redhat.com>
PR c++/49043
diff --git a/libgomp/env.c b/libgomp/env.c
index 92fa8c3..0ca9a1c 100644
--- a/libgomp/env.c
+++ b/libgomp/env.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010
+/* Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Contributed by Richard Henderson <rth@redhat.com>.
@@ -108,7 +108,11 @@
while (isspace ((unsigned char) *env))
++env;
if (*env == '\0')
- return;
+ {
+ gomp_global_icv.run_sched_modifier
+ = gomp_global_icv.run_sched_var != GFS_STATIC;
+ return;
+ }
if (*env++ != ',')
goto unknown;
while (isspace ((unsigned char) *env))
@@ -129,6 +133,8 @@
if ((int)value != value)
goto invalid;
+ if (value == 0 && gomp_global_icv.run_sched_var != GFS_STATIC)
+ value = 1;
gomp_global_icv.run_sched_modifier = value;
return;
diff --git a/libgomp/iter.c b/libgomp/iter.c
index 9ec4dbd..cd9484a 100644
--- a/libgomp/iter.c
+++ b/libgomp/iter.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2008, 2009, 2011 Free Software Foundation, Inc.
Contributed by Richard Henderson <rth@redhat.com>.
This file is part of the GNU OpenMP Library (libgomp).
@@ -59,7 +59,7 @@
trip through the outer loop. */
if (ws->chunk_size == 0)
{
- unsigned long n, q, i;
+ unsigned long n, q, i, t;
unsigned long s0, e0;
long s, e;
@@ -74,11 +74,14 @@
/* Compute the "zero-based" start and end points. That is, as
if the loop began at zero and incremented by one. */
q = n / nthreads;
- q += (q * nthreads != n);
- s0 = q * i;
+ t = n % nthreads;
+ if (i < t)
+ {
+ t = 0;
+ q++;
+ }
+ s0 = q * i + t;
e0 = s0 + q;
- if (e0 > n)
- e0 = n;
/* Notice when no iterations allocated for this thread. */
if (s0 >= e0)
diff --git a/libgomp/iter_ull.c b/libgomp/iter_ull.c
index 1754e63..a393920 100644
--- a/libgomp/iter_ull.c
+++ b/libgomp/iter_ull.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005, 2008, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2008, 2009, 2011 Free Software Foundation, Inc.
Contributed by Richard Henderson <rth@redhat.com>.
This file is part of the GNU OpenMP Library (libgomp).
@@ -60,7 +60,7 @@
trip through the outer loop. */
if (ws->chunk_size_ull == 0)
{
- gomp_ull n, q, i, s0, e0, s, e;
+ gomp_ull n, q, i, t, s0, e0, s, e;
if (thr->ts.static_trip > 0)
return 1;
@@ -75,11 +75,14 @@
/* Compute the "zero-based" start and end points. That is, as
if the loop began at zero and incremented by one. */
q = n / nthreads;
- q += (q * nthreads != n);
- s0 = q * i;
+ t = n % nthreads;
+ if (i < t)
+ {
+ t = 0;
+ q++;
+ }
+ s0 = q * i + t;
e0 = s0 + q;
- if (e0 > n)
- e0 = n;
/* Notice when no iterations allocated for this thread. */
if (s0 >= e0)
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index c800bf3..dfaa803 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2011-06-21 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR libgcj/49314
+ * gnu/gcj/convert/natIconv.cc (iconv_init): Pad in[] with NUL byte.
+
2011-06-17 Jack Howarth <howarth@bromo.med.uc.edu>
PR target/49461
diff --git a/libjava/gnu/gcj/convert/natIconv.cc b/libjava/gnu/gcj/convert/natIconv.cc
index ad75a50..8042ba8 100644
--- a/libjava/gnu/gcj/convert/natIconv.cc
+++ b/libjava/gnu/gcj/convert/natIconv.cc
@@ -1,6 +1,6 @@
// natIconv.cc -- Java side of iconv() reader.
-/* Copyright (C) 2000, 2001, 2003, 2006 Free Software Foundation
+/* Copyright (C) 2000, 2001, 2003, 2006, 2011 Free Software Foundation
This file is part of libgcj.
@@ -264,17 +264,19 @@
if (handle != (iconv_t) -1)
{
jchar c;
- unsigned char in[3];
+ unsigned char in[4];
char *inp, *outp;
size_t inc, outc, r;
- // This is the UTF-8 encoding of \ufeff.
+ // This is the UTF-8 encoding of \ufeff. At least Tru64 UNIX libiconv
+ // needs the trailing NUL byte, otherwise iconv fails with EINVAL.
in[0] = 0xef;
in[1] = 0xbb;
in[2] = 0xbf;
+ in[3] = 0x00;
inp = (char *) in;
- inc = 3;
+ inc = 4;
outp = (char *) &c;
outc = 2;
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 42f9514..d16aa1e 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,58 @@
+2011-06-23 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
+ C++0x mode.
+ * testsuite/25_algorithms/sort/35588.cc: Likewise.
+ * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
+
+2011-06-22 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
+
+2011-06-22 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
+ warning.
+
+2011-06-22 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
+ * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
+ * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
+ * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
+ Likewise.
+ * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
+ * testsuite/20_util/bind/socket.cc: Likewise.
+ * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
+ * testsuite/util/testsuite_random.h: Likewise.
+
+2011-06-22 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/Makefile.am: Add alloc_traits.h headers.
+ * include/Makefile.in: Regenerate.
+ * include/std/memory: Include uses_allocator.h explicitly.
+ * include/bits/allocator.h (allocator_traits): Move to ...
+ * include/bits/alloc_traits.h: New header.
+ * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
+ a common allocator interface for C++98 and C++0x.
+ * include/bits/stl_construct.h: Use __alloc_traits.
+ * include/bits/stl_uninitialized.h: Likewise.
+
+2011-06-22 Daniel Krugler <daniel.kruegler@googlemail.com>
+ Paolo Carlini <paolo.carlini@oracle.com>
+
+ * include/bits/move.h (__is_nothrow_swappable): Add.
+ (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
+ * include/bits/algorithmfwd.h: Adjust.
+ * testsuite/25_algorithms/swap/noexcept.cc: New.
+
+2011-06-21 Jakub Jelinek <jakub@redhat.com>
+
+ * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
+ check-DEJAGNUnormal[4-9].
+ (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
+ * testsuite/Makefile.in: Regenerated.
+
2011-06-20 Daniel Krugler <daniel.kruegler@googlemail.com>
Paolo Carlini <paolo.carlini@oracle.com>
diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am
index 6a21c16..b6a0116 100644
--- a/libstdc++-v3/include/Makefile.am
+++ b/libstdc++-v3/include/Makefile.am
@@ -79,6 +79,7 @@
bits_builddir = ./bits
bits_headers = \
${bits_srcdir}/algorithmfwd.h \
+ ${bits_srcdir}/alloc_traits.h \
${bits_srcdir}/allocator.h \
${bits_srcdir}/atomic_base.h \
${bits_srcdir}/atomic_0.h \
@@ -493,6 +494,7 @@
ext_builddir = ./ext
ext_headers = \
${ext_srcdir}/algorithm \
+ ${ext_srcdir}/alloc_traits.h \
${ext_srcdir}/atomicity.h \
${ext_srcdir}/array_allocator.h \
${ext_srcdir}/bitmap_allocator.h \
diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
index 5b05ef3..7fdf182 100644
--- a/libstdc++-v3/include/Makefile.in
+++ b/libstdc++-v3/include/Makefile.in
@@ -330,6 +330,7 @@
bits_builddir = ./bits
bits_headers = \
${bits_srcdir}/algorithmfwd.h \
+ ${bits_srcdir}/alloc_traits.h \
${bits_srcdir}/allocator.h \
${bits_srcdir}/atomic_base.h \
${bits_srcdir}/atomic_0.h \
@@ -742,6 +743,7 @@
ext_builddir = ./ext
ext_headers = \
${ext_srcdir}/algorithm \
+ ${ext_srcdir}/alloc_traits.h \
${ext_srcdir}/atomicity.h \
${ext_srcdir}/array_allocator.h \
${ext_srcdir}/bitmap_allocator.h \
diff --git a/libstdc++-v3/include/bits/algorithmfwd.h b/libstdc++-v3/include/bits/algorithmfwd.h
index bb7ca25..7bb9880 100644
--- a/libstdc++-v3/include/bits/algorithmfwd.h
+++ b/libstdc++-v3/include/bits/algorithmfwd.h
@@ -558,7 +558,11 @@
template<typename _Tp, size_t _Nm>
void
- swap(_Tp (&)[_Nm], _Tp (&)[_Nm]);
+ swap(_Tp (&)[_Nm], _Tp (&)[_Nm])
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+ noexcept(__is_nothrow_swappable<_Tp>::value)
+#endif
+ ;
template<typename _FIter1, typename _FIter2>
_FIter2
diff --git a/libstdc++-v3/include/bits/alloc_traits.h b/libstdc++-v3/include/bits/alloc_traits.h
new file mode 100644
index 0000000..9d2a472
--- /dev/null
+++ b/libstdc++-v3/include/bits/alloc_traits.h
@@ -0,0 +1,499 @@
+// Allocator traits -*- C++ -*-
+
+// Copyright (C) 2011 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 3, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// Under Section 7 of GPL version 3, you are granted additional
+// permissions described in the GCC Runtime Library Exception, version
+// 3.1, as published by the Free Software Foundation.
+
+// You should have received a copy of the GNU General Public License and
+// a copy of the GCC Runtime Library Exception along with this program;
+// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+// <http://www.gnu.org/licenses/>.
+
+#ifndef _ALLOC_TRAITS_H
+#define _ALLOC_TRAITS_H 1
+
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+
+#include <bits/ptr_traits.h>
+#include <ext/numeric_traits.h>
+
+namespace std _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
+ template<typename _Alloc, typename _Tp>
+ class __alloctr_rebind_helper
+ {
+ template<typename _Alloc2, typename _Tp2>
+ static constexpr bool
+ _S_chk(typename _Alloc2::template rebind<_Tp2>::other*)
+ { return true; }
+
+ template<typename, typename>
+ static constexpr bool
+ _S_chk(...)
+ { return false; }
+
+ public:
+ static const bool __value = _S_chk<_Alloc, _Tp>(nullptr);
+ };
+
+ template<typename _Alloc, typename _Tp,
+ bool = __alloctr_rebind_helper<_Alloc, _Tp>::__value>
+ struct __alloctr_rebind;
+
+ template<typename _Alloc, typename _Tp>
+ struct __alloctr_rebind<_Alloc, _Tp, true>
+ {
+ typedef typename _Alloc::template rebind<_Tp>::other __type;
+ };
+
+ template<template<typename, typename...> class _Alloc, typename _Tp,
+ typename _Up, typename... _Args>
+ struct __alloctr_rebind<_Alloc<_Up, _Args...>, _Tp, false>
+ {
+ typedef _Alloc<_Tp, _Args...> __type;
+ };
+
+ /**
+ * @brief Uniform interface to all allocator types.
+ * @ingroup allocators
+ */
+ template<typename _Alloc>
+ struct allocator_traits
+ {
+ /// The allocator type
+ typedef _Alloc allocator_type;
+ /// The allocated type
+ typedef typename _Alloc::value_type value_type;
+
+#define _GLIBCXX_ALLOC_TR_NESTED_TYPE(_NTYPE, _ALT) \
+ private: \
+ template<typename _Tp> \
+ static typename _Tp::_NTYPE _S_##_NTYPE##_helper(_Tp*); \
+ static _ALT _S_##_NTYPE##_helper(...); \
+ typedef decltype(_S_##_NTYPE##_helper((_Alloc*)0)) __##_NTYPE; \
+ public:
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(pointer, value_type*)
+
+ /**
+ * @brief The allocator's pointer type.
+ *
+ * @c Alloc::pointer if that type exists, otherwise @c value_type*
+ */
+ typedef __pointer pointer;
+
+// TODO: Use pointer_traits::rebind alias template.
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(const_pointer,
+ typename pointer_traits<pointer>::template __rebind<const value_type>::__type)
+
+ /**
+ * @brief The allocator's const pointer type.
+ *
+ * @c Alloc::const_pointer if that type exists, otherwise
+ * <tt> pointer_traits<pointer>::rebind<const value_type> </tt>
+ */
+ typedef __const_pointer const_pointer;
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(void_pointer,
+ typename pointer_traits<pointer>::template __rebind<void>::__type)
+
+ /**
+ * @brief The allocator's void pointer type.
+ *
+ * @c Alloc::void_pointer if that type exists, otherwise
+ * <tt> pointer_traits<pointer>::rebind<void> </tt>
+ */
+ typedef __void_pointer void_pointer;
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(const_void_pointer,
+ typename pointer_traits<pointer>::template __rebind<const void>::__type)
+
+ /**
+ * @brief The allocator's const void pointer type.
+ *
+ * @c Alloc::const_void_pointer if that type exists, otherwise
+ * <tt> pointer_traits<pointer>::rebind<const void> </tt>
+ */
+ typedef __const_void_pointer const_void_pointer;
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(difference_type,
+ typename pointer_traits<pointer>::difference_type)
+
+ /**
+ * @brief The allocator's difference type
+ *
+ * @c Alloc::difference_type if that type exists, otherwise
+ * <tt> pointer_traits<pointer>::difference_type </tt>
+ */
+ typedef __difference_type difference_type;
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(size_type,
+ typename make_unsigned<difference_type>::type)
+
+ /**
+ * @brief The allocator's size type
+ *
+ * @c Alloc::size_type if that type exists, otherwise
+ * <tt> make_unsigned<difference_type>::type </tt>
+ */
+ typedef __size_type size_type;
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(propagate_on_container_copy_assignment,
+ false_type)
+
+ /**
+ * @brief How the allocator is propagated on copy assignment
+ *
+ * @c Alloc::propagate_on_container_copy_assignment if that type exists,
+ * otherwise @c false_type
+ */
+ typedef __propagate_on_container_copy_assignment
+ propagate_on_container_copy_assignment;
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(propagate_on_container_move_assignment,
+ false_type)
+
+ /**
+ * @brief How the allocator is propagated on move assignment
+ *
+ * @c Alloc::propagate_on_container_move_assignment if that type exists,
+ * otherwise @c false_type
+ */
+ typedef __propagate_on_container_move_assignment
+ propagate_on_container_move_assignment;
+
+_GLIBCXX_ALLOC_TR_NESTED_TYPE(propagate_on_container_swap,
+ false_type)
+
+ /**
+ * @brief How the allocator is propagated on swap
+ *
+ * @c Alloc::propagate_on_container_swap if that type exists,
+ * otherwise @c false_type
+ */
+ typedef __propagate_on_container_swap propagate_on_container_swap;
+
+#undef _GLIBCXX_ALLOC_TR_NESTED_TYPE
+
+ /* TODO: use template alias
+ template<typename _Tp>
+ using rebind_alloc = __alloctr_rebind<_Alloc, _Tp>::__type;
+ template<typename _Tp>
+ using rebind_traits = allocator_traits<rebind_alloc<_Tp>>;
+ */
+ template<typename _Tp>
+ struct __rebind_alloc
+ {
+ typedef typename __alloctr_rebind<_Alloc, _Tp>::__type __type;
+ };
+
+ template<typename _Tp>
+ struct __rebind_traits
+ {
+ typedef allocator_traits<typename __rebind_alloc<_Tp>::__type> __type;
+ };
+
+ private:
+ template<typename _Alloc2>
+ struct __allocate_helper
+ {
+ template<typename _Alloc3,
+ typename = decltype(std::declval<_Alloc3*>()->allocate(
+ std::declval<size_type>(),
+ std::declval<const_void_pointer>()))>
+ static true_type __test(int);
+
+ template<typename>
+ static false_type __test(...);
+
+ typedef decltype(__test<_Alloc>(0)) type;
+ static const bool value = type::value;
+ };
+
+ template<typename _Alloc2>
+ static typename
+ enable_if<__allocate_helper<_Alloc2>::value, pointer>::type
+ _S_allocate(_Alloc2& __a, size_type __n, const_void_pointer __hint)
+ { return __a.allocate(__n, __hint); }
+
+ template<typename _Alloc2>
+ static typename
+ enable_if<!__allocate_helper<_Alloc2>::value, pointer>::type
+ _S_allocate(_Alloc2& __a, size_type __n, ...)
+ { return __a.allocate(__n); }
+
+ template<typename _Tp, typename... _Args>
+ struct __construct_helper
+ {
+ template<typename _Alloc2,
+ typename = decltype(std::declval<_Alloc2*>()->construct(
+ std::declval<_Tp*>(), std::declval<_Args>()...))>
+ static true_type __test(int);
+
+ template<typename>
+ static false_type __test(...);
+
+ typedef decltype(__test<_Alloc>(0)) type;
+ static const bool value = type::value;
+ };
+
+ template<typename _Tp, typename... _Args>
+ static typename
+ enable_if<__construct_helper<_Tp, _Args...>::value, void>::type
+ _S_construct(_Alloc& __a, _Tp* __p, _Args&&... __args)
+ { __a.construct(__p, std::forward<_Args>(__args)...); }
+
+ template<typename _Tp, typename... _Args>
+ static typename
+ enable_if<!__construct_helper<_Tp, _Args...>::value, void>::type
+ _S_construct(_Alloc&, _Tp* __p, _Args&&... __args)
+ { ::new((void*)__p) _Tp(std::forward<_Args>(__args)...); }
+
+ template<typename _Tp>
+ struct __destroy_helper
+ {
+ template<typename _Alloc2,
+ typename = decltype(std::declval<_Alloc2*>()->destroy(
+ std::declval<_Tp*>()))>
+ static true_type __test(int);
+
+ template<typename>
+ static false_type __test(...);
+
+ typedef decltype(__test<_Alloc>(0)) type;
+ static const bool value = type::value;
+ };
+
+ template<typename _Tp>
+ static typename enable_if<__destroy_helper<_Tp>::value, void>::type
+ _S_destroy(_Alloc& __a, _Tp* __p)
+ { __a.destroy(__p); }
+
+ template<typename _Tp>
+ static typename enable_if<!__destroy_helper<_Tp>::value, void>::type
+ _S_destroy(_Alloc&, _Tp* __p)
+ { __p->~_Tp(); }
+
+ template<typename _Alloc2>
+ struct __maxsize_helper
+ {
+ template<typename _Alloc3,
+ typename = decltype(std::declval<_Alloc3*>()->max_size())>
+ static true_type __test(int);
+
+ template<typename>
+ static false_type __test(...);
+
+ typedef decltype(__test<_Alloc2>(0)) type;
+ static const bool value = type::value;
+ };
+
+ template<typename _Alloc2>
+ static typename
+ enable_if<__maxsize_helper<_Alloc2>::value, size_type>::type
+ _S_max_size(_Alloc2& __a)
+ { return __a.max_size(); }
+
+ template<typename _Alloc2>
+ static typename
+ enable_if<!__maxsize_helper<_Alloc2>::value, size_type>::type
+ _S_max_size(_Alloc2&)
+ { return __gnu_cxx::__numeric_traits<size_type>::__max; }
+
+ template<typename _Alloc2>
+ struct __select_helper
+ {
+ template<typename _Alloc3, typename
+ = decltype(std::declval<_Alloc3*>()
+ ->select_on_container_copy_construction())>
+ static true_type __test(int);
+
+ template<typename>
+ static false_type __test(...);
+
+ typedef decltype(__test<_Alloc2>(0)) type;
+ static const bool value = type::value;
+ };
+ template<typename _Alloc2>
+ static typename
+ enable_if<__select_helper<_Alloc2>::value, _Alloc2>::type
+ _S_select(_Alloc2& __a)
+ { return __a.select_on_container_copy_construction(); }
+
+ template<typename _Alloc2>
+ static typename
+ enable_if<!__select_helper<_Alloc2>::value, _Alloc2>::type
+ _S_select(_Alloc2& __a)
+ { return __a; }
+
+ public:
+
+ /**
+ * @brief Allocate memory.
+ * @param a An allocator.
+ * @param n The number of objects to allocate space for.
+ *
+ * Calls @c a.allocate(n)
+ */
+ static pointer
+ allocate(_Alloc& __a, size_type __n)
+ { return __a.allocate(__n); }
+
+ /**
+ * @brief Allocate memory.
+ * @param a An allocator.
+ * @param n The number of objects to allocate space for.
+ * @param hint Aid to locality.
+ * @return Memory of suitable size and alignment for @a n objects
+ * of type @c value_type
+ *
+ * Returns <tt> a.allocate(n, hint) </tt> if that expression is
+ * well-formed, otherwise returns @c a.allocate(n)
+ */
+ static pointer
+ allocate(_Alloc& __a, size_type __n, const_void_pointer __hint)
+ { return _S_allocate(__a, __n, __hint); }
+
+ /**
+ * @brief Deallocate memory.
+ * @param a An allocator.
+ * @param p Pointer to the memory to deallocate.
+ * @param n The number of objects space was allocated for.
+ *
+ * Calls <tt> a.deallocate(p, n) </tt>
+ */
+ static void deallocate(_Alloc& __a, pointer __p, size_type __n)
+ { __a.deallocate(__p, __n); }
+
+ /**
+ * @brief Construct an object of type @a Tp
+ * @param a An allocator.
+ * @param p Pointer to memory of suitable size and alignment for Tp
+ * @param args Constructor arguments.
+ *
+ * Calls <tt> a.construct(p, std::forward<Args>(args)...) </tt>
+ * if that expression is well-formed, otherwise uses placement-new
+ * to construct an object of type @a Tp at location @a p from the
+ * arguments @a args...
+ */
+ template<typename _Tp, typename... _Args>
+ static void construct(_Alloc& __a, _Tp* __p, _Args&&... __args)
+ { _S_construct(__a, __p, std::forward<_Args>(__args)...); }
+
+ /**
+ * @brief Destroy an object of type @a Tp
+ * @param a An allocator.
+ * @param p Pointer to the object to destroy
+ *
+ * Calls @c a.destroy(p) if that expression is well-formed,
+ * otherwise calls @c p->~Tp()
+ */
+ template <class _Tp>
+ static void destroy(_Alloc& __a, _Tp* __p)
+ { _S_destroy(__a, __p); }
+
+ /**
+ * @brief The maximum supported allocation size
+ * @param a An allocator.
+ * @return @c a.max_size() or @c numeric_limits<size_type>::max()
+ *
+ * Returns @c a.max_size() if that expression is well-formed,
+ * otherwise returns @c numeric_limits<size_type>::max()
+ */
+ static size_type max_size(const _Alloc& __a)
+ { return _S_max_size(__a); }
+
+ /**
+ * @brief Obtain an allocator to use when copying a container.
+ * @param rhs An allocator.
+ * @return @c rhs.select_on_container_copy_construction() or @a rhs
+ *
+ * Returns @c rhs.select_on_container_copy_construction() if that
+ * expression is well-formed, otherwise returns @a rhs
+ */
+ static _Alloc
+ select_on_container_copy_construction(const _Alloc& __rhs)
+ { return _S_select(__rhs); }
+ };
+
+ template<typename _Alloc>
+ inline void
+ __do_alloc_on_copy(_Alloc& __one, const _Alloc& __two, true_type)
+ { __one = __two; }
+
+ template<typename _Alloc>
+ inline void
+ __do_alloc_on_copy(_Alloc&, const _Alloc&, false_type)
+ { }
+
+ template<typename _Alloc>
+ inline void __alloc_on_copy(_Alloc& __one, const _Alloc& __two)
+ {
+ typedef allocator_traits<_Alloc> __traits;
+ typedef typename __traits::propagate_on_container_copy_assignment __pocca;
+ __do_alloc_on_copy(__one, __two, __pocca());
+ }
+
+ template<typename _Alloc>
+ inline _Alloc __alloc_on_copy(const _Alloc& __a)
+ {
+ typedef allocator_traits<_Alloc> __traits;
+ return __traits::select_on_container_copy_construction(__a);
+ }
+
+ template<typename _Alloc>
+ inline void __do_alloc_on_move(_Alloc& __one, _Alloc& __two, true_type)
+ { __one = std::move(__two); }
+
+ template<typename _Alloc>
+ inline void __do_alloc_on_move(_Alloc&, _Alloc&, false_type)
+ { }
+
+ template<typename _Alloc>
+ inline void __alloc_on_move(_Alloc& __one, _Alloc& __two)
+ {
+ typedef allocator_traits<_Alloc> __traits;
+ typedef typename __traits::propagate_on_container_move_assignment __pocma;
+ __do_alloc_on_move(__one, __two, __pocma());
+ }
+
+ template<typename _Alloc>
+ inline void __do_alloc_on_swap(_Alloc& __one, _Alloc& __two, true_type)
+ {
+ using std::swap;
+ swap(__one, __two);
+ }
+
+ template<typename _Alloc>
+ inline void __do_alloc_on_swap(_Alloc&, _Alloc&, false_type)
+ { }
+
+ template<typename _Alloc>
+ inline void __alloc_on_swap(_Alloc& __one, _Alloc& __two)
+ {
+ typedef allocator_traits<_Alloc> __traits;
+ typedef typename __traits::propagate_on_container_swap __pocs;
+ __do_alloc_on_swap(__one, __two, __pocs());
+ }
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace std
+
+#endif
+#endif
diff --git a/libstdc++-v3/include/bits/allocator.h b/libstdc++-v3/include/bits/allocator.h
index 6801950..76329b3 100644
--- a/libstdc++-v3/include/bits/allocator.h
+++ b/libstdc++-v3/include/bits/allocator.h
@@ -47,12 +47,6 @@
// Define the base class to std::allocator.
#include <bits/c++allocator.h>
-#ifdef __GXX_EXPERIMENTAL_CXX0X__
-#include <bits/ptr_traits.h>
-#include <bits/uses_allocator.h>
-#include <ext/numeric_traits.h>
-#endif
-
namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -62,6 +56,8 @@
* @ingroup memory
*
* Classes encapsulating memory operations.
+ *
+ * @{
*/
template<typename _Tp>
@@ -85,7 +81,6 @@
/**
* @brief The @a standard allocator, as per [20.4].
- * @ingroup allocators
*
* See http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt04ch11.html
* for further details.
@@ -139,6 +134,10 @@
operator!=(const allocator<_Tp>&, const allocator<_Tp>&)
{ return false; }
+ /**
+ * @}
+ */
+
// Inhibit implicit instantiations for required instantiations,
// which are defined via explicit instantiations elsewhere.
#if _GLIBCXX_EXTERN_TEMPLATE
@@ -207,404 +206,9 @@
}
};
- template<typename _Alloc, typename _Tp>
- class __alloctr_rebind_helper
- {
- template<typename _Alloc2, typename _Tp2>
- static constexpr bool
- _S_chk(typename _Alloc2::template rebind<_Tp2>::other*)
- { return true; }
-
- template<typename, typename>
- static constexpr bool
- _S_chk(...)
- { return false; }
-
- public:
- static const bool __value = _S_chk<_Alloc, _Tp>(nullptr);
- };
-
- template<typename _Alloc, typename _Tp,
- bool = __alloctr_rebind_helper<_Alloc, _Tp>::__value>
- struct __alloctr_rebind;
-
- template<typename _Alloc, typename _Tp>
- struct __alloctr_rebind<_Alloc, _Tp, true>
- {
- typedef typename _Alloc::template rebind<_Tp>::other __type;
- };
-
- template<template<typename, typename...> class _Alloc, typename _Tp,
- typename _Up, typename... _Args>
- struct __alloctr_rebind<_Alloc<_Up, _Args...>, _Tp, false>
- {
- typedef _Alloc<_Tp, _Args...> __type;
- };
-
- /**
- * @brief Uniform interface to all allocator types.
- * @ingroup allocators
- */
- template<typename _Alloc>
- struct allocator_traits
- {
- /// The allocator type
- typedef _Alloc allocator_type;
- /// The allocated type
- typedef typename _Alloc::value_type value_type;
-
-#define _GLIBCXX_ALLOC_TR_NESTED_TYPE(_NTYPE, _ALT) \
- private: \
- template<typename _Tp> \
- static typename _Tp::_NTYPE _S_##_NTYPE##_helper(_Tp*); \
- static _ALT _S_##_NTYPE##_helper(...); \
- typedef decltype(_S_##_NTYPE##_helper((_Alloc*)0)) __##_NTYPE; \
- public:
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(pointer, value_type*)
-
- /**
- * @brief The allocator's pointer type.
- *
- * @c Alloc::pointer if that type exists, otherwise @c value_type*
- */
- typedef __pointer pointer;
-
-// TODO: Use pointer_traits::rebind alias template.
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(const_pointer,
- typename pointer_traits<pointer>::template __rebind<const value_type>::__type)
-
- /**
- * @brief The allocator's const pointer type.
- *
- * @c Alloc::const_pointer if that type exists, otherwise
- * <tt> pointer_traits<pointer>::rebind<const value_type> </tt>
- */
- typedef __const_pointer const_pointer;
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(void_pointer,
- typename pointer_traits<pointer>::template __rebind<void>::__type)
-
- /**
- * @brief The allocator's void pointer type.
- *
- * @c Alloc::void_pointer if that type exists, otherwise
- * <tt> pointer_traits<pointer>::rebind<void> </tt>
- */
- typedef __void_pointer void_pointer;
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(const_void_pointer,
- typename pointer_traits<pointer>::template __rebind<const void>::__type)
-
- /**
- * @brief The allocator's const void pointer type.
- *
- * @c Alloc::const_void_pointer if that type exists, otherwise
- * <tt> pointer_traits<pointer>::rebind<const void> </tt>
- */
- typedef __const_void_pointer const_void_pointer;
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(difference_type,
- typename pointer_traits<pointer>::difference_type)
-
- /**
- * @brief The allocator's difference type
- *
- * @c Alloc::difference_type if that type exists, otherwise
- * <tt> pointer_traits<pointer>::difference_type </tt>
- */
- typedef __difference_type difference_type;
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(size_type,
- typename make_unsigned<difference_type>::type)
-
- /**
- * @brief The allocator's size type
- *
- * @c Alloc::size_type if that type exists, otherwise
- * <tt> make_unsigned<difference_type>::type </tt>
- */
- typedef __size_type size_type;
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(propagate_on_container_copy_assignment,
- false_type)
-
- /**
- * @brief How the allocator is propagated on copy assignment
- *
- * @c Alloc::propagate_on_container_copy_assignment if that type exists,
- * otherwise @c false_type
- */
- typedef __propagate_on_container_copy_assignment
- propagate_on_container_copy_assignment;
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(propagate_on_container_move_assignment,
- false_type)
-
- /**
- * @brief How the allocator is propagated on move assignment
- *
- * @c Alloc::propagate_on_container_move_assignment if that type exists,
- * otherwise @c false_type
- */
- typedef __propagate_on_container_move_assignment
- propagate_on_container_move_assignment;
-
-_GLIBCXX_ALLOC_TR_NESTED_TYPE(propagate_on_container_swap,
- false_type)
-
- /**
- * @brief How the allocator is propagated on swap
- *
- * @c Alloc::propagate_on_container_swap if that type exists,
- * otherwise @c false_type
- */
- typedef __propagate_on_container_swap propagate_on_container_swap;
-
-#undef _GLIBCXX_ALLOC_TR_NESTED_TYPE
-
- /* TODO: use template alias
- template<typename _Tp>
- using rebind_alloc = __alloctr_rebind<_Alloc, _Tp>::__type;
- template<typename _Tp>
- using rebind_traits = allocator_traits<rebind_alloc<_Tp>>;
- */
- template<typename _Tp>
- struct __rebind_alloc
- {
- typedef typename __alloctr_rebind<_Alloc, _Tp>::__type __type;
- };
-
- template<typename _Tp>
- struct __rebind_traits
- {
- typedef allocator_traits<typename __rebind_alloc<_Tp>::__type> __type;
- };
-
- private:
- template<typename _Alloc2>
- struct __allocate_helper
- {
- template<typename _Alloc3,
- typename = decltype(std::declval<_Alloc3*>()->allocate(
- std::declval<size_type>(),
- std::declval<const_void_pointer>()))>
- static true_type __test(int);
-
- template<typename>
- static false_type __test(...);
-
- typedef decltype(__test<_Alloc>(0)) type;
- static const bool value = type::value;
- };
-
- template<typename _Alloc2>
- static typename
- enable_if<__allocate_helper<_Alloc2>::value, pointer>::type
- _S_allocate(_Alloc2& __a, size_type __n, const_void_pointer __hint)
- { return __a.allocate(__n, __hint); }
-
- template<typename _Alloc2>
- static typename
- enable_if<!__allocate_helper<_Alloc2>::value, pointer>::type
- _S_allocate(_Alloc2& __a, size_type __n, ...)
- { return __a.allocate(__n); }
-
- template<typename _Tp, typename... _Args>
- struct __construct_helper
- {
- template<typename _Alloc2,
- typename = decltype(std::declval<_Alloc2*>()->construct(
- std::declval<_Tp*>(), std::declval<_Args>()...))>
- static true_type __test(int);
-
- template<typename>
- static false_type __test(...);
-
- typedef decltype(__test<_Alloc>(0)) type;
- static const bool value = type::value;
- };
-
- template<typename _Tp, typename... _Args>
- static typename
- enable_if<__construct_helper<_Tp, _Args...>::value, void>::type
- _S_construct(_Alloc& __a, _Tp* __p, _Args&&... __args)
- { __a.construct(__p, std::forward<_Args>(__args)...); }
-
- template<typename _Tp, typename... _Args>
- static typename
- enable_if<!__construct_helper<_Tp, _Args...>::value, void>::type
- _S_construct(_Alloc&, _Tp* __p, _Args&&... __args)
- { ::new((void*)__p) _Tp(std::forward<_Args>(__args)...); }
-
- template<typename _Tp>
- struct __destroy_helper
- {
- template<typename _Alloc2,
- typename = decltype(std::declval<_Alloc2*>()->destroy(
- std::declval<_Tp*>()))>
- static true_type __test(int);
-
- template<typename>
- static false_type __test(...);
-
- typedef decltype(__test<_Alloc>(0)) type;
- static const bool value = type::value;
- };
-
- template<typename _Tp>
- static typename enable_if<__destroy_helper<_Tp>::value, void>::type
- _S_destroy(_Alloc& __a, _Tp* __p)
- { __a.destroy(__p); }
-
- template<typename _Tp>
- static typename enable_if<!__destroy_helper<_Tp>::value, void>::type
- _S_destroy(_Alloc&, _Tp* __p)
- { __p->~_Tp(); }
-
- template<typename _Alloc2>
- struct __maxsize_helper
- {
- template<typename _Alloc3,
- typename = decltype(std::declval<_Alloc3*>()->max_size())>
- static true_type __test(int);
-
- template<typename>
- static false_type __test(...);
-
- typedef decltype(__test<_Alloc2>(0)) type;
- static const bool value = type::value;
- };
-
- template<typename _Alloc2>
- static typename
- enable_if<__maxsize_helper<_Alloc2>::value, size_type>::type
- _S_max_size(_Alloc2& __a)
- { return __a.max_size(); }
-
- template<typename _Alloc2>
- static typename
- enable_if<!__maxsize_helper<_Alloc2>::value, size_type>::type
- _S_max_size(_Alloc2&)
- { return __gnu_cxx::__numeric_traits<size_type>::__max; }
-
- template<typename _Alloc2>
- struct __select_helper
- {
- template<typename _Alloc3, typename
- = decltype(std::declval<_Alloc3*>()
- ->select_on_container_copy_construction())>
- static true_type __test(int);
-
- template<typename>
- static false_type __test(...);
-
- typedef decltype(__test<_Alloc2>(0)) type;
- static const bool value = type::value;
- };
- template<typename _Alloc2>
- static typename
- enable_if<__select_helper<_Alloc2>::value, _Alloc2>::type
- _S_select(_Alloc2& __a)
- { return __a.select_on_container_copy_construction(); }
-
- template<typename _Alloc2>
- static typename
- enable_if<!__select_helper<_Alloc2>::value, _Alloc2>::type
- _S_select(_Alloc2& __a)
- { return __a; }
-
- public:
-
- /**
- * @brief Allocate memory.
- * @param a An allocator.
- * @param n The number of objects to allocate space for.
- *
- * Calls @c a.allocate(n)
- */
- static pointer
- allocate(_Alloc& __a, size_type __n)
- { return __a.allocate(__n); }
-
- /**
- * @brief Allocate memory.
- * @param a An allocator.
- * @param n The number of objects to allocate space for.
- * @param hint Aid to locality.
- * @return Memory of suitable size and alignment for @a n objects
- * of type @c value_type
- *
- * Returns <tt> a.allocate(n, hint) </tt> if that expression is
- * well-formed, otherwise returns @c a.allocate(n)
- */
- static pointer
- allocate(_Alloc& __a, size_type __n, const_void_pointer __hint)
- { return _S_allocate(__a, __n, __hint); }
-
- /**
- * @brief Deallocate memory.
- * @param a An allocator.
- * @param p Pointer to the memory to deallocate.
- * @param n The number of objects space was allocated for.
- *
- * Calls <tt> a.deallocate(p, n) </tt>
- */
- static void deallocate(_Alloc& __a, pointer __p, size_type __n)
- { __a.deallocate(__p, __n); }
-
- /**
- * @brief Construct an object of type @a Tp
- * @param a An allocator.
- * @param p Pointer to memory of suitable size and alignment for Tp
- * @param args Constructor arguments.
- *
- * Calls <tt> a.construct(p, std::forward<Args>(args)...) </tt>
- * if that expression is well-formed, otherwise uses placement-new
- * to construct an object of type @a Tp at location @a p from the
- * arguments @a args...
- */
- template<typename _Tp, typename... _Args>
- static void construct(_Alloc& __a, _Tp* __p, _Args&&... __args)
- { _S_construct(__a, __p, std::forward<_Args>(__args)...); }
-
- /**
- * @brief Destroy an object of type @a Tp
- * @param a An allocator.
- * @param p Pointer to the object to destroy
- *
- * Calls @c a.destroy(p) if that expression is well-formed,
- * otherwise calls @c p->~Tp()
- */
- template <class _Tp>
- static void destroy(_Alloc& __a, _Tp* __p)
- { _S_destroy(__a, __p); }
-
- /**
- * @brief The maximum supported allocation size
- * @param a An allocator.
- * @return @c a.max_size() or @c %numeric_limits<size_type>::max()
- *
- * Returns @c a.max_size() if that expression is well-formed,
- * otherwise returns @c %numeric_limits<size_type>::max()
- */
- static size_type max_size(const _Alloc& __a)
- { return _S_max_size(__a); }
-
- /**
- * @brief Obtain an allocator to use when copying a container.
- * @param rhs An allocator.
- * @return @c rhs.select_on_container_copy_construction() or @a rhs
- *
- * Returns @c rhs.select_on_container_copy_construction() if that
- * expression is well-formed, otherwise returns @a rhs
- */
- static _Alloc
- select_on_container_copy_construction(const _Alloc& __rhs)
- { return _S_select(__rhs); }
- };
-
+ // Declare uses_allocator so it can be specialized in <queue> etc.
+ template<typename, typename>
+ struct uses_allocator;
#endif
_GLIBCXX_END_NAMESPACE_VERSION
diff --git a/libstdc++-v3/include/bits/move.h b/libstdc++-v3/include/bits/move.h
index d791d69..e82e36d 100644
--- a/libstdc++-v3/include/bits/move.h
+++ b/libstdc++-v3/include/bits/move.h
@@ -152,12 +152,22 @@
__b = _GLIBCXX_MOVE(__tmp);
}
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+ // To work around c++/49045.
+ template<typename _Tp>
+ struct __is_nothrow_swappable
+ { static const bool value = noexcept(swap(std::declval<_Tp&>(),
+ std::declval<_Tp&>())); };
+#endif
+
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 809. std::swap should be overloaded for array types.
template<typename _Tp, size_t _Nm>
inline void
swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
- // noexcept waits for c++/49045
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+ noexcept(__is_nothrow_swappable<_Tp>::value)
+#endif
{
for (size_t __n = 0; __n < _Nm; ++__n)
swap(__a[__n], __b[__n]);
diff --git a/libstdc++-v3/include/bits/stl_construct.h b/libstdc++-v3/include/bits/stl_construct.h
index 2efba93..8aaaab8 100644
--- a/libstdc++-v3/include/bits/stl_construct.h
+++ b/libstdc++-v3/include/bits/stl_construct.h
@@ -1,7 +1,7 @@
// nonstandard construct and destroy functions -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-// 2009, 2010
+// 2009, 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -60,6 +60,7 @@
#include <new>
#include <bits/move.h>
+#include <ext/alloc_traits.h>
namespace std _GLIBCXX_VISIBILITY(default)
{
@@ -141,8 +142,9 @@
_Destroy(_ForwardIterator __first, _ForwardIterator __last,
_Allocator& __alloc)
{
+ typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
for (; __first != __last; ++__first)
- __alloc.destroy(std::__addressof(*__first));
+ __traits::destroy(__alloc, std::__addressof(*__first));
}
template<typename _ForwardIterator, typename _Tp>
diff --git a/libstdc++-v3/include/bits/stl_uninitialized.h b/libstdc++-v3/include/bits/stl_uninitialized.h
index 246d5c3..1660d3e 100644
--- a/libstdc++-v3/include/bits/stl_uninitialized.h
+++ b/libstdc++-v3/include/bits/stl_uninitialized.h
@@ -1,7 +1,7 @@
// Raw memory manipulators -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
-// 2009, 2010
+// 2009, 2010, 2011
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
@@ -241,8 +241,9 @@
_ForwardIterator __cur = __result;
__try
{
+ typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
for (; __first != __last; ++__first, ++__cur)
- __alloc.construct(std::__addressof(*__cur), *__first);
+ __traits::construct(__alloc, std::__addressof(*__cur), *__first);
return __cur;
}
__catch(...)
@@ -290,8 +291,9 @@
_ForwardIterator __cur = __first;
__try
{
+ typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
for (; __cur != __last; ++__cur)
- __alloc.construct(std::__addressof(*__cur), __x);
+ __traits::construct(__alloc, std::__addressof(*__cur), __x);
}
__catch(...)
{
@@ -315,8 +317,9 @@
_ForwardIterator __cur = __first;
__try
{
+ typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
for (; __n > 0; --__n, ++__cur)
- __alloc.construct(std::__addressof(*__cur), __x);
+ __traits::construct(__alloc, std::__addressof(*__cur), __x);
}
__catch(...)
{
@@ -556,8 +559,9 @@
_ForwardIterator __cur = __first;
__try
{
+ typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
for (; __cur != __last; ++__cur)
- __alloc.construct(std::__addressof(*__cur));
+ __traits::construct(__alloc, std::__addressof(*__cur));
}
__catch(...)
{
@@ -585,8 +589,9 @@
_ForwardIterator __cur = __first;
__try
{
+ typedef __gnu_cxx::__alloc_traits<_Allocator> __traits;
for (; __n > 0; --__n, ++__cur)
- __alloc.construct(std::__addressof(*__cur));
+ __traits::construct(__alloc, std::__addressof(*__cur));
}
__catch(...)
{
diff --git a/libstdc++-v3/include/ext/alloc_traits.h b/libstdc++-v3/include/ext/alloc_traits.h
new file mode 100644
index 0000000..0d50fe1
--- /dev/null
+++ b/libstdc++-v3/include/ext/alloc_traits.h
@@ -0,0 +1,121 @@
+// Allocator traits -*- C++ -*-
+
+// Copyright (C) 2011 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 3, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// Under Section 7 of GPL version 3, you are granted additional
+// permissions described in the GCC Runtime Library Exception, version
+// 3.1, as published by the Free Software Foundation.
+
+// You should have received a copy of the GNU General Public License and
+// a copy of the GCC Runtime Library Exception along with this program;
+// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+// <http://www.gnu.org/licenses/>.
+
+/** @file ext/alloc_traits.h
+ * This file is a GNU extension to the Standard C++ Library.
+ */
+
+#ifndef _EXT_ALLOC_TRAITS_H
+#define _EXT_ALLOC_TRAITS_H 1
+
+#pragma GCC system_header
+
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+# include <bits/alloc_traits.h>
+#else
+# include <bits/allocator.h> // for __alloc_swap
+#endif
+
+namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
+ /**
+ * @brief Uniform interface to C++98 and C++0x allocators.
+ * @ingroup allocators
+ */
+template<typename _Alloc>
+ struct __alloc_traits
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+ : std::allocator_traits<_Alloc>
+#endif
+ {
+ typedef _Alloc allocator_type;
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+ typedef std::allocator_traits<_Alloc> _Base_type;
+ typedef typename _Base_type::value_type value_type;
+ typedef typename _Base_type::pointer pointer;
+ typedef typename _Base_type::const_pointer const_pointer;
+ typedef typename _Base_type::size_type size_type;
+ // C++0x allocators do not define reference or const_reference
+ typedef value_type& reference;
+ typedef const value_type& const_reference;
+ using _Base_type::allocate;
+ using _Base_type::deallocate;
+ using _Base_type::construct;
+ using _Base_type::destroy;
+
+ static _Alloc _S_select_on_copy(const _Alloc& __a)
+ { return _Base_type::select_on_container_copy_construction(__a); }
+
+ static void _S_on_swap(_Alloc& __a, _Alloc& __b)
+ { std::__alloc_on_swap(__a, __b); }
+
+ static constexpr bool _S_propagate_on_copy_assign()
+ { return _Base_type::propagate_on_container_copy_assignment::value; }
+
+ static constexpr bool _S_propagate_on_move_assign()
+ { return _Base_type::propagate_on_container_move_assignment::value; }
+
+ static constexpr bool _S_propagate_on_swap()
+ { return _Base_type::propagate_on_container_swap::value; }
+
+#else
+
+ typedef typename _Alloc::pointer pointer;
+ typedef typename _Alloc::const_pointer const_pointer;
+ typedef typename _Alloc::value_type value_type;
+ typedef typename _Alloc::reference reference;
+ typedef typename _Alloc::const_reference const_reference;
+ typedef typename _Alloc::size_type size_type;
+
+ static pointer
+ allocate(_Alloc& __a, size_type __n)
+ { return __a.allocate(__n); }
+
+ static void deallocate(_Alloc& __a, pointer __p, size_type __n)
+ { __a.deallocate(__p, __n); }
+
+ template<typename _Tp>
+ static void construct(_Alloc& __a, pointer __p, const _Tp& __arg)
+ { __a.construct(__p, __arg); }
+
+ static void destroy(_Alloc& __a, pointer __p)
+ { __a.destroy(__p); }
+
+ static const _Alloc& _S_select_on_copy(const _Alloc& __a) { return __a; }
+
+ static void _S_on_swap(_Alloc& __a, _Alloc& __b)
+ {
+ // _GLIBCXX_RESOLVE_LIB_DEFECTS
+ // 431. Swapping containers with unequal allocators.
+ std::__alloc_swap<_Alloc>::_S_do_it(__a, __b);
+ }
+#endif
+ };
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
+
+#endif
diff --git a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp
index f5326e9..b7eb024 100644
--- a/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp
+++ b/libstdc++-v3/include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp
@@ -1318,7 +1318,7 @@
get_begin_pos() const
{
size_type i = 0;
- for (i; i < arr_size && m_a_p_children[i] == 0; ++i)
+ for (; i < arr_size && m_a_p_children[i] == 0; ++i)
;
return i;
}
diff --git a/libstdc++-v3/include/std/memory b/libstdc++-v3/include/std/memory
index 791ffe0..e846eba 100644
--- a/libstdc++-v3/include/std/memory
+++ b/libstdc++-v3/include/std/memory
@@ -76,6 +76,7 @@
# include <ext/concurrence.h>
# include <bits/functexcept.h>
# include <bits/stl_function.h> // std::less
+# include <bits/uses_allocator.h>
# include <type_traits>
# include <functional>
# include <debug/debug.h>
diff --git a/libstdc++-v3/testsuite/20_util/allocator_traits/members/allocate_hint.cc b/libstdc++-v3/testsuite/20_util/allocator_traits/members/allocate_hint.cc
index 6a26adc..e5a57a2 100644
--- a/libstdc++-v3/testsuite/20_util/allocator_traits/members/allocate_hint.cc
+++ b/libstdc++-v3/testsuite/20_util/allocator_traits/members/allocate_hint.cc
@@ -51,7 +51,7 @@
typedef std::allocator_traits<hintable_allocator<X>> traits_type;
traits_type::allocator_type a;
traits_type::const_void_pointer v;
- X* p = traits_type::allocate(a, 1, v);
+ X* p __attribute__((unused)) = traits_type::allocate(a, 1, v);
VERIFY( a.called );
}
@@ -79,7 +79,7 @@
typedef std::allocator_traits<unhintable_allocator<X>> traits_type;
traits_type::allocator_type a;
traits_type::const_void_pointer v;
- X* p = traits_type::allocate(a, 1, v);
+ X* p __attribute__((unused)) = traits_type::allocate(a, 1, v);
VERIFY( a.called );
}
diff --git a/libstdc++-v3/testsuite/20_util/bind/socket.cc b/libstdc++-v3/testsuite/20_util/bind/socket.cc
index d3ccea2..c501921 100644
--- a/libstdc++-v3/testsuite/20_util/bind/socket.cc
+++ b/libstdc++-v3/testsuite/20_util/bind/socket.cc
@@ -35,7 +35,7 @@
{
int fd = 1;
my_sockaddr sa; // N.B. non-const
- size_t len = sizeof(sa); // N.B. size_t not socklen_t
- return bind(fd, &sa, sizeof(sa));
+ size_t len = sizeof(sa); // N.B. size_t not my_socklen_t
+ return bind(fd, &sa, len);
}
diff --git a/libstdc++-v3/testsuite/20_util/pointer_traits/pointer_to.cc b/libstdc++-v3/testsuite/20_util/pointer_traits/pointer_to.cc
index f33582e..33c96e1 100644
--- a/libstdc++-v3/testsuite/20_util/pointer_traits/pointer_to.cc
+++ b/libstdc++-v3/testsuite/20_util/pointer_traits/pointer_to.cc
@@ -32,7 +32,7 @@
void test01()
{
bool test = true;
- Ptr p{&test};
+ Ptr p __attribute__((unused)) {&test};
VERIFY( std::pointer_traits<Ptr>::pointer_to(test).value == &test );
}
diff --git a/libstdc++-v3/testsuite/20_util/ratio/operations/ops_overflow_neg.cc b/libstdc++-v3/testsuite/20_util/ratio/operations/ops_overflow_neg.cc
index 0e36c74..7483016 100644
--- a/libstdc++-v3/testsuite/20_util/ratio/operations/ops_overflow_neg.cc
+++ b/libstdc++-v3/testsuite/20_util/ratio/operations/ops_overflow_neg.cc
@@ -26,19 +26,22 @@
void
test01()
{
- std::ratio_add<std::ratio<INTMAX_MAX, 1>, std::ratio<1>>::type r1;
+ std::ratio_add<std::ratio<INTMAX_MAX, 1>, std::ratio<1>>::type r1
+ __attribute__((unused));
}
void
test02()
{
- std::ratio_multiply<std::ratio<-INTMAX_MAX, 2>, std::ratio<3, 2>>::type r1;
- std::ratio_multiply<std::ratio<INTMAX_MAX>, std::ratio<INTMAX_MAX>>::type r2;
+ std::ratio_multiply<std::ratio<-INTMAX_MAX, 2>, std::ratio<3, 2>>::type r1
+ __attribute__((unused));
+ std::ratio_multiply<std::ratio<INTMAX_MAX>, std::ratio<INTMAX_MAX>>::type r2
+ __attribute__((unused));
}
// { dg-error "required from here" "" { target *-*-* } 29 }
-// { dg-error "required from here" "" { target *-*-* } 35 }
// { dg-error "required from here" "" { target *-*-* } 36 }
+// { dg-error "required from here" "" { target *-*-* } 38 }
// { dg-error "overflow in addition" "" { target *-*-* } 432 }
// { dg-error "overflow in multiplication" "" { target *-*-* } 104 }
// { dg-error "overflow in multiplication" "" { target *-*-* } 100 }
diff --git a/libstdc++-v3/testsuite/20_util/reference_wrapper/invoke-2.cc b/libstdc++-v3/testsuite/20_util/reference_wrapper/invoke-2.cc
index bd9aeb2..01217a4 100644
--- a/libstdc++-v3/testsuite/20_util/reference_wrapper/invoke-2.cc
+++ b/libstdc++-v3/testsuite/20_util/reference_wrapper/invoke-2.cc
@@ -36,8 +36,8 @@
X x = { };
std::ref(m)(x, 1);
std::ref(m)(&x, 1);
- int& i1 = std::ref(m2)(x);
- int& i2 = std::ref(m2)(&x);
+ int& i1 __attribute__((unused)) = std::ref(m2)(x);
+ int& i2 __attribute__((unused)) = std::ref(m2)(&x);
}
int main()
diff --git a/libstdc++-v3/testsuite/20_util/reference_wrapper/invoke.cc b/libstdc++-v3/testsuite/20_util/reference_wrapper/invoke.cc
index 7b694c7..028fe02 100644
--- a/libstdc++-v3/testsuite/20_util/reference_wrapper/invoke.cc
+++ b/libstdc++-v3/testsuite/20_util/reference_wrapper/invoke.cc
@@ -75,7 +75,8 @@
int (::X::* p_foo_c)(float) const = &::X::foo_c;
int (::X::* p_foo_v)(float) volatile = &::X::foo_v;
int (::X::* p_foo_cv)(float) const volatile = &::X::foo_cv;
- int (::X::* p_foo_varargs)(float, ...) = &::X::foo_varargs;
+ int (::X::* p_foo_varargs)(float, ...) __attribute__((unused))
+ = &::X::foo_varargs;
int ::X::* p_bar = &::X::bar;
const float pi = 3.14;
diff --git a/libstdc++-v3/testsuite/20_util/reference_wrapper/typedefs-3.cc b/libstdc++-v3/testsuite/20_util/reference_wrapper/typedefs-3.cc
index 2fea52e..0920ae4 100644
--- a/libstdc++-v3/testsuite/20_util/reference_wrapper/typedefs-3.cc
+++ b/libstdc++-v3/testsuite/20_util/reference_wrapper/typedefs-3.cc
@@ -124,14 +124,14 @@
template<typename T>
void test()
{
- test_arg_type<T> t;
- test_arg_type<const T> tc;
- test_arg_type<volatile T> tv;
- test_arg_type<const volatile T> tcv;
- test_1st_2nd_arg_types<T> t12;
- test_1st_2nd_arg_types<const T> t12c;
- test_1st_2nd_arg_types<volatile T> t12v;
- test_1st_2nd_arg_types<const volatile T> t12cv;
+ test_arg_type<T> t __attribute__((unused));
+ test_arg_type<const T> tc __attribute__((unused));
+ test_arg_type<volatile T> tv __attribute__((unused));
+ test_arg_type<const volatile T> tcv __attribute__((unused));
+ test_1st_2nd_arg_types<T> t12 __attribute__((unused));
+ test_1st_2nd_arg_types<const T> t12c __attribute__((unused));
+ test_1st_2nd_arg_types<volatile T> t12v __attribute__((unused));
+ test_1st_2nd_arg_types<const volatile T> t12cv __attribute__((unused));
}
int main()
diff --git a/libstdc++-v3/testsuite/25_algorithms/sort/35588.cc b/libstdc++-v3/testsuite/25_algorithms/sort/35588.cc
index c16b96d..9dd28a5 100644
--- a/libstdc++-v3/testsuite/25_algorithms/sort/35588.cc
+++ b/libstdc++-v3/testsuite/25_algorithms/sort/35588.cc
@@ -23,9 +23,8 @@
int main()
{
using namespace std;
- using namespace tr1;
using namespace std::tr1::placeholders;
int t[10];
- sort(t, t+10, bind(less<int>(), _1, _2));
+ sort(t, t+10, tr1::bind(less<int>(), _1, _2));
}
diff --git a/libstdc++-v3/testsuite/25_algorithms/swap/noexcept.cc b/libstdc++-v3/testsuite/25_algorithms/swap/noexcept.cc
new file mode 100644
index 0000000..4d8c87a
--- /dev/null
+++ b/libstdc++-v3/testsuite/25_algorithms/swap/noexcept.cc
@@ -0,0 +1,26 @@
+// { dg-do compile }
+// { dg-options "-std=gnu++0x" }
+
+// Copyright (C) 2011 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 3, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING3. If not see
+// <http://www.gnu.org/licenses/>.
+
+#include <utility>
+
+static_assert(noexcept(std::swap(std::declval<int&>(),
+ std::declval<int&>())), "Error");
+static_assert(noexcept(std::swap(std::declval<int(&)[5]>(),
+ std::declval<int(&)[5]>())), "Error");
diff --git a/libstdc++-v3/testsuite/26_numerics/headers/complex/synopsis.cc b/libstdc++-v3/testsuite/26_numerics/headers/complex/synopsis.cc
index 4d88593..ecdbee0 100644
--- a/libstdc++-v3/testsuite/26_numerics/headers/complex/synopsis.cc
+++ b/libstdc++-v3/testsuite/26_numerics/headers/complex/synopsis.cc
@@ -44,15 +44,20 @@
template<class T> complex<T> operator/(const T&, const complex<T>&);
template<class T> complex<T> operator+(const complex<T>&);
template<class T> complex<T> operator-(const complex<T>&);
- template<class T> bool operator==
+ template<class T> _GLIBCXX_CONSTEXPR bool operator==
(const complex<T>&, const complex<T>&);
- template<class T> bool operator==(const complex<T>&, const T&);
- template<class T> bool operator==(const T&, const complex<T>&);
+ template<class T> _GLIBCXX_CONSTEXPR bool operator==
+ (const complex<T>&, const T&);
+ template<class T> _GLIBCXX_CONSTEXPR bool operator==
+ (const T&, const complex<T>&);
- template<class T> bool operator!=(const complex<T>&, const complex<T>&);
- template<class T> bool operator!=(const complex<T>&, const T&);
- template<class T> bool operator!=(const T&, const complex<T>&);
+ template<class T> _GLIBCXX_CONSTEXPR bool operator!=
+ (const complex<T>&, const complex<T>&);
+ template<class T> _GLIBCXX_CONSTEXPR bool operator!=
+ (const complex<T>&, const T&);
+ template<class T> _GLIBCXX_CONSTEXPR bool operator!=
+ (const T&, const complex<T>&);
template<class T, class charT, class traits>
basic_istream<charT, traits>&
operator>>(basic_istream<charT, traits>&, complex<T>&);
@@ -61,8 +66,8 @@
operator<<(basic_ostream<charT, traits>&, const complex<T>&);
// 26.2.7 values:
- template<class T> T real(const complex<T>&);
- template<class T> T imag(const complex<T>&);
+ template<class T> _GLIBCXX_CONSTEXPR T real(const complex<T>&);
+ template<class T> _GLIBCXX_CONSTEXPR T imag(const complex<T>&);
template<class T> T abs(const complex<T>&);
template<class T> T arg(const complex<T>&);
template<class T> T norm(const complex<T>&);
diff --git a/libstdc++-v3/testsuite/Makefile.am b/libstdc++-v3/testsuite/Makefile.am
index 4e297e0..792c831 100644
--- a/libstdc++-v3/testsuite/Makefile.am
+++ b/libstdc++-v3/testsuite/Makefile.am
@@ -100,7 +100,7 @@
@test ! -f $*/site.exp || mv $*/site.exp $*/site.bak
@mv $*/site.exp.tmp $*/site.exp
-check_DEJAGNU_normal_targets = $(patsubst %,check-DEJAGNUnormal%,0 1 2 3)
+check_DEJAGNU_normal_targets = $(patsubst %,check-DEJAGNUnormal%,0 1 2 3 4 5 6 7 8 9)
$(check_DEJAGNU_normal_targets): check-DEJAGNUnormal%: normal%/site.exp
# Run the testsuite in normal mode.
@@ -109,22 +109,17 @@
RANLIB="$(RANLIB)"; export RANLIB; \
if [ -z "$*$(filter-out --target_board=%, $(RUNTESTFLAGS))" ] \
&& [ "$(filter -j, $(MFLAGS))" = "-j" ]; then \
- $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNUnormal0 check-DEJAGNUnormal1 \
- check-DEJAGNUnormal2 check-DEJAGNUnormal3; \
- for idx in 0 1 2 3; do \
+ $(MAKE) $(AM_MAKEFLAGS) $(check_DEJAGNU_normal_targets); \
+ for idx in 0 1 2 3 4 5 6 7 8 9; do \
mv -f normal$$idx/libstdc++.sum normal$$idx/libstdc++.sum.sep; \
mv -f normal$$idx/libstdc++.log normal$$idx/libstdc++.log.sep; \
done; \
mv -f libstdc++.sum libstdc++.sum.sep; \
mv -f libstdc++.log libstdc++.log.sep; \
$(SHELL) $(srcdir)/../../contrib/dg-extract-results.sh \
- libstdc++.sum.sep normal0/libstdc++.sum.sep \
- normal1/libstdc++.sum.sep normal2/libstdc++.sum.sep \
- normal3/libstdc++.sum.sep > libstdc++.sum; \
+ libstdc++.sum.sep normal[0-9]/libstdc++.sum.sep > libstdc++.sum; \
$(SHELL) $(srcdir)/../../contrib/dg-extract-results.sh -L \
- libstdc++.log.sep normal0/libstdc++.log.sep \
- normal1/libstdc++.log.sep normal2/libstdc++.log.sep \
- normal3/libstdc++.log.sep > libstdc++.log; \
+ libstdc++.log.sep normal[0-9]/libstdc++.log.sep > libstdc++.log; \
exit 0; \
fi; \
srcdir=`$(am__cd) $(srcdir) && pwd`; export srcdir; \
@@ -140,13 +135,25 @@
$(RUNTESTFLAGS) abi.exp; \
else echo "WARNING: could not find \`runtest'" 1>&2; :;\
fi; \
- dirs="`cd $$srcdir; echo [013-9][0-9]_*/* [ab]* de* [ep]*/*`";; \
+ dirs="`cd $$srcdir; echo [013-9][0-9]_*/*`";; \
normal1) \
- dirs="`cd $$srcdir; echo 2[0-2]_*/*`";; \
+ dirs="`cd $$srcdir; echo [ab]* de* [ep]*/*`";; \
normal2) \
- dirs="`cd $$srcdir; echo 2[4-9]_*/*`";; \
+ dirs="`cd $$srcdir; echo 2[01]_*/*`";; \
normal3) \
- dirs="`cd $$srcdir; echo 23_*/* t*/*`";; \
+ dirs="`cd $$srcdir; echo 22_*/*`";; \
+ normal4) \
+ dirs="`cd $$srcdir; echo 23_*/[a-km-tw-z]*`";; \
+ normal5) \
+ dirs="`cd $$srcdir; echo 23_*/[luv]*`";; \
+ normal6) \
+ dirs="`cd $$srcdir; echo 2[459]_*/*`";; \
+ normal7) \
+ dirs="`cd $$srcdir; echo 2[68]_*/*`";; \
+ normal8) \
+ dirs="`cd $$srcdir; echo 27_*/*`";; \
+ normal9) \
+ dirs="`cd $$srcdir; echo t*/*`";; \
esac; \
if [ -n "$*" ]; then cd "$*"; fi; \
if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
diff --git a/libstdc++-v3/testsuite/Makefile.in b/libstdc++-v3/testsuite/Makefile.in
index 2a98814..a76772e 100644
--- a/libstdc++-v3/testsuite/Makefile.in
+++ b/libstdc++-v3/testsuite/Makefile.in
@@ -287,7 +287,7 @@
extract_symvers = $(glibcxx_builddir)/scripts/extract_symvers
baseline_subdir := $(shell $(CXX) --print-multi-dir)
-check_DEJAGNU_normal_targets = $(patsubst %,check-DEJAGNUnormal%,0 1 2 3)
+check_DEJAGNU_normal_targets = $(patsubst %,check-DEJAGNUnormal%,0 1 2 3 4 5 6 7 8 9)
# Runs the testsuite, but in compile only mode.
# Can be used to test sources with non-GNU FE's at various warning
@@ -545,22 +545,17 @@
RANLIB="$(RANLIB)"; export RANLIB; \
if [ -z "$*$(filter-out --target_board=%, $(RUNTESTFLAGS))" ] \
&& [ "$(filter -j, $(MFLAGS))" = "-j" ]; then \
- $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNUnormal0 check-DEJAGNUnormal1 \
- check-DEJAGNUnormal2 check-DEJAGNUnormal3; \
- for idx in 0 1 2 3; do \
+ $(MAKE) $(AM_MAKEFLAGS) $(check_DEJAGNU_normal_targets); \
+ for idx in 0 1 2 3 4 5 6 7 8 9; do \
mv -f normal$$idx/libstdc++.sum normal$$idx/libstdc++.sum.sep; \
mv -f normal$$idx/libstdc++.log normal$$idx/libstdc++.log.sep; \
done; \
mv -f libstdc++.sum libstdc++.sum.sep; \
mv -f libstdc++.log libstdc++.log.sep; \
$(SHELL) $(srcdir)/../../contrib/dg-extract-results.sh \
- libstdc++.sum.sep normal0/libstdc++.sum.sep \
- normal1/libstdc++.sum.sep normal2/libstdc++.sum.sep \
- normal3/libstdc++.sum.sep > libstdc++.sum; \
+ libstdc++.sum.sep normal[0-9]/libstdc++.sum.sep > libstdc++.sum; \
$(SHELL) $(srcdir)/../../contrib/dg-extract-results.sh -L \
- libstdc++.log.sep normal0/libstdc++.log.sep \
- normal1/libstdc++.log.sep normal2/libstdc++.log.sep \
- normal3/libstdc++.log.sep > libstdc++.log; \
+ libstdc++.log.sep normal[0-9]/libstdc++.log.sep > libstdc++.log; \
exit 0; \
fi; \
srcdir=`$(am__cd) $(srcdir) && pwd`; export srcdir; \
@@ -576,13 +571,25 @@
$(RUNTESTFLAGS) abi.exp; \
else echo "WARNING: could not find \`runtest'" 1>&2; :;\
fi; \
- dirs="`cd $$srcdir; echo [013-9][0-9]_*/* [ab]* de* [ep]*/*`";; \
+ dirs="`cd $$srcdir; echo [013-9][0-9]_*/*`";; \
normal1) \
- dirs="`cd $$srcdir; echo 2[0-2]_*/*`";; \
+ dirs="`cd $$srcdir; echo [ab]* de* [ep]*/*`";; \
normal2) \
- dirs="`cd $$srcdir; echo 2[4-9]_*/*`";; \
+ dirs="`cd $$srcdir; echo 2[01]_*/*`";; \
normal3) \
- dirs="`cd $$srcdir; echo 23_*/* t*/*`";; \
+ dirs="`cd $$srcdir; echo 22_*/*`";; \
+ normal4) \
+ dirs="`cd $$srcdir; echo 23_*/[a-km-tw-z]*`";; \
+ normal5) \
+ dirs="`cd $$srcdir; echo 23_*/[luv]*`";; \
+ normal6) \
+ dirs="`cd $$srcdir; echo 2[459]_*/*`";; \
+ normal7) \
+ dirs="`cd $$srcdir; echo 2[68]_*/*`";; \
+ normal8) \
+ dirs="`cd $$srcdir; echo 27_*/*`";; \
+ normal9) \
+ dirs="`cd $$srcdir; echo t*/*`";; \
esac; \
if [ -n "$*" ]; then cd "$*"; fi; \
if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
diff --git a/libstdc++-v3/testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc b/libstdc++-v3/testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc
index 7aea516..ea9df08 100644
--- a/libstdc++-v3/testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc
+++ b/libstdc++-v3/testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc
@@ -30,7 +30,7 @@
int i;
std::string s;
- tie(i, ignore, s) = make_tuple(42, 3.14, "C++");
+ std::tr1::tie(i, ignore, s) = make_tuple(42, 3.14, "C++");
VERIFY( i == 42 );
VERIFY( s == "C++" );
}
diff --git a/libstdc++-v3/testsuite/util/testsuite_random.h b/libstdc++-v3/testsuite/util/testsuite_random.h
index 5b55755..950a9ae 100644
--- a/libstdc++-v3/testsuite/util/testsuite_random.h
+++ b/libstdc++-v3/testsuite/util/testsuite_random.h
@@ -48,7 +48,7 @@
for (unsigned long i = 0; i < N; i++)
{
auto r = f();
- if (r >= 0 && r < BINS)
+ if (r >= 0 && (unsigned long)r < BINS)
count[r]++;
}
@@ -116,7 +116,7 @@
if (!wl.size())
wl = { 1.0 };
- if (k < 0 || k >= wl.size())
+ if (k < 0 || (std::size_t)k >= wl.size())
return 0.0;
else
{