diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-10-15 08:05:47 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-10-15 08:05:47 +0000 |
commit | 699e610855e7b9679119fc02ce3c95881924e667 (patch) | |
tree | 0c2daae5b102f2e145e947b863e9b531fa3bba4f /gcc/melt/warmelt-normal.melt | |
parent | 63e2e91386f4beb5b96e2b6a245001eaa672ef46 (diff) | |
download | gcc-699e610855e7b9679119fc02ce3c95881924e667.tar.gz |
2014-10-15 Basile Starynkevitch <basile@starynkevitch.net>
* melt/warmelt-macro.melt (lambda_arg_bindings): Handle when
macro-expansion is of class_formal_binding.
* melt/warmelt-normal.melt (check_ctype_nargs): Use
foreach_in_multiple instead of multiple_every. Add more debug.
* melt/warmelt-normatch.melt (scanpat_anypattern): Improve debug.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@216239 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/melt/warmelt-normal.melt')
-rw-r--r-- | gcc/melt/warmelt-normal.melt | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/gcc/melt/warmelt-normal.melt b/gcc/melt/warmelt-normal.melt index 6d35c3fd857..b946e93a1d5 100644 --- a/gcc/melt/warmelt-normal.melt +++ b/gcc/melt/warmelt-normal.melt @@ -1580,15 +1580,17 @@ routine procedures.}# ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; utility to check that every normalized argument has a passable ctype (defun check_ctype_nargs (nargs env sloc) - (multiple_every - nargs - (lambda (cnarg :long ix) - (let ( (ctyp (get_ctype cnarg env)) ) - (assert_msg "check_ctype_nargs ctyp" (is_a ctyp class_ctype) ctyp) - (if (not (is_string (unsafe_get_field :ctype_parstring ctyp))) - (error_at sloc "argument has invalid type $1"_ (unsafe_get_field :named_name ctyp)) - )) - ))) + (foreach_in_multiple + (nargs) + (cnarg :long ix) + (let ( (ctyp (get_ctype cnarg env)) ) + (assert_msg "check_ctype_nargs ctyp" (is_a ctyp class_ctype) ctyp) + (when (not (is_string (unsafe_get_field :ctype_parstring ctyp))) + (debug "check_ctype_nargs" " ix#" ix " cnarg=" cnarg + "\n.. ctyp=" ctyp) + (error_at sloc "argument has invalid type $1"_ (unsafe_get_field :named_name ctyp)) + )) + )) (defselector normalize_binding class_selector |