diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2024-01-11 22:46:49 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2024-01-13 11:08:00 +0900 |
commit | 3edb7f1a0747b92ccc22f881e0a74530c0a7036e (patch) | |
tree | 4d890c1d1863fe739b6521e14de1153426c5c20c /template | |
parent | f7178045bb11fc3722a98082ed81e1ec39c4940f (diff) |
[DOC] Documentize known_errors
Diffstat (limited to 'template')
-rw-r--r-- | template/Makefile.in | 11 | ||||
-rw-r--r-- | template/known_errors.inc.tmpl | 8 |
2 files changed, 16 insertions, 3 deletions
diff --git a/template/Makefile.in b/template/Makefile.in index 8c462f20fb..5b6cd87b06 100644 --- a/template/Makefile.in +++ b/template/Makefile.in @@ -575,7 +575,16 @@ update-benchmark-driver: $(BENCHMARK_DRIVER_GIT_URL) benchmark-driver $(GIT_OPTS) update-known-errors: - errno --list | cut -d' ' -f1 | sort -u - $(srcdir)/defs/known_errors.def | \ + errno --list | \ + $(BASERUBY) -nl -e 'BEGIN {errs = {}}' \ + -e '/^(E[A-Z_0-9]+)(?: +(?:\d+ +)?(.+))?/ =~ $$_ && errs[$$1] ||= $$2' \ + -e 'END {' \ + -e 'errs.delete("ELAST")' \ + -e 'errs = errs.sort' \ + -e 'errs << ["ELAST", "Largest errno"]' \ + -e 'errs.each {|e,d| puts sprintf("%-15s %s", e, d).strip}' \ + -e '}' \ + $(srcdir)/defs/known_errors.def - | \ $(IFCHANGE) $(srcdir)/defs/known_errors.def - INSNS = optinsn.inc optunifs.inc insns.inc insns_info.inc \ diff --git a/template/known_errors.inc.tmpl b/template/known_errors.inc.tmpl index c3aee77477..4d453395ca 100644 --- a/template/known_errors.inc.tmpl +++ b/template/known_errors.inc.tmpl @@ -4,8 +4,12 @@ * template/known_errors.inc.tmpl and defs/known_errors.def. */ -% error_names = ARGF.read.split(/\s+/) -% error_names.each do |name| +% error_names = ARGF.readlines.map {|line| [$1, $2] if /\A([A-Z]\S+)(?:\s+(\S.*))?/ =~ line}.compact +% error_names.each do |name, doc| +#if 0 + /* <% if doc %>"<%= doc %>"<% else %>\<%= name %><% end %> error */ + rb_define_const(rb_mErrno, "<%=name%>", e<%=name%>); +#endif #ifdef <%=name%> defined_error("<%=name%>", <%=name%>) #else |