[Bug 1032181] Templated types are causing "Could not find a typemap for C type"

bugzilla at redhat.com bugzilla at redhat.com
Wed Nov 20 11:38:51 UTC 2013


https://bugzilla.redhat.com/show_bug.cgi?id=1032181



--- Comment #1 from Petr Pisar <ppisar at redhat.com> ---
The patch moves tidy_type() from ExtUtils::ParseXS::Utilities to
ExtUtils::Typemaps. The patch improves tidy_type(). The patch removes
_tidy_type() from ExtUtils::Typemaps.

ExtUtils::ParseXS::Utilities is declared as not a public API explicitly.

The patch is based on perl commit:

commit ae7fdf584559a304eb5992a58cd58349cc7c58da
Author: Steffen Mueller <smueller at cpan.org>
Date:   Wed May 22 21:49:06 2013 +0200

    EU::ParseXS: Attempt to canonicalize C++ types in tidy_type

    Includes moving tidy_type to ExtUtils::Typemaps where it seems to
    belong. It's a pretty poor canonicalizer, but better than nothing!

The key change is:

+  # for templated C++ types, do some bit of flawed canonicalization
+  # wrt. templates at least
+  if (/[<>]/) {
+    s/\s*([<>])\s*/$1/g;
+    s/>>/> >/g;
+  }

in tidy_type().

-- 
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=DDZ1tuE5g1&a=cc_unsubscribe



More information about the perl-devel mailing list