Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failing test #239

Closed
joker-eph opened this issue Apr 11, 2014 · 1 comment
Closed

Failing test #239

joker-eph opened this issue Apr 11, 2014 · 1 comment

Comments

@joker-eph
Copy link
Collaborator

def mix_builtin_foo(a):
    return ((bar((a + 42)) + foo(a)) + numpy.arange(10).sum())
def bar(a):
    return (a + 42)
def foo(a):
    return (a + (2 * 42))
def entry(a):
    return mix_builtin_foo(a)
CRITICAL Leave the vessel! Women and children first!
C++ compiler failed to compile translated code.
E: Compile error!

******** Command line was: ********
'g++-mp-4.8' '/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp' '-I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7' '-I/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/core/include/numpy' '-I/Users/amini/projects/pythran/install/lib/python2.7/site-packages/.' '-I/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran' '-DENABLE_PYTHON_MODULE' '-DUSE_GMP' '-I' '/opt/local/include/' '-std=c++11' '-O2' '-shared' '-o' 'test.so' '-L/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config' '-lpython2.7' '-L/opt/local/lib' '-lboost_python-mt' '-lgmp' '-lgmpxx' '-fPIC' '-L' '/opt/local/lib/gcc48/'

******** Output :  ********

In file included from /Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:5:0,
                 from /var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp:7:
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/types/numpy_type.hpp: In instantiation of 'struct pythonic::types::numpy_type<long int>':
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:12:72:   required by substitution of 'template<class T, class U, class S, class dtype> pythonic::types::ndarray<typename pythonic::types::numpy_type<dtype>::type, 1ul> pythonic::numpy::arange(T, U, S, dtype) [with T = long int; U = long int; S = long int; dtype = long int]'
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:32:40:   required from 'pythonic::types::ndarray<T, 1ul> pythonic::numpy::arange(T) [with T = long int]'
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:34:9:   required from 'decltype (pythonic::numpy::arange((forward<Types>)(pythonic::numpy::proxy::arange::operator()::types)...)) pythonic::numpy::proxy::arange::operator()(Types&& ...) const [with Types = {long int}; decltype (pythonic::numpy::arange((forward<Types>)(pythonic::numpy::proxy::arange::operator()::types)...)) = pythonic::types::ndarray<long int, 1ul>]'
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp:110:111:   required from 'typename __pythran_test::mix_builtin_foo::type<argument_type0>::result_type __pythran_test::mix_builtin_foo::operator()(const argument_type0&) const [with argument_type0 = long int; typename __pythran_test::mix_builtin_foo::type<argument_type0>::result_type = long int]'
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp:115:31:   required from 'typename __pythran_test::entry::type<argument_type0>::result_type __pythran_test::entry::operator()(const argument_type0&) const [with argument_type0 = long int; typename __pythran_test::entry::type<argument_type0>::result_type = long int]'
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp:121:36:   required from here
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/types/numpy_type.hpp:12:50: error: expression cannot be used as a function
                 typedef decltype(std::declval<T>()()) type;
                                                  ^
In file included from /var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp:7:0:
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp: In instantiation of 'pythonic::types::ndarray<T, 1ul> pythonic::numpy::arange(T) [with T = long int]':
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:34:9:   required from 'decltype (pythonic::numpy::arange((forward<Types>)(pythonic::numpy::proxy::arange::operator()::types)...)) pythonic::numpy::proxy::arange::operator()(Types&& ...) const [with Types = {long int}; decltype (pythonic::numpy::arange((forward<Types>)(pythonic::numpy::proxy::arange::operator()::types)...)) = pythonic::types::ndarray<long int, 1ul>]'
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp:110:111:   required from 'typename __pythran_test::mix_builtin_foo::type<argument_type0>::result_type __pythran_test::mix_builtin_foo::operator()(const argument_type0&) const [with argument_type0 = long int; typename __pythran_test::mix_builtin_foo::type<argument_type0>::result_type = long int]'
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp:115:31:   required from 'typename __pythran_test::entry::type<argument_type0>::result_type __pythran_test::entry::operator()(const argument_type0&) const [with argument_type0 = long int; typename __pythran_test::entry::type<argument_type0>::result_type = long int]'
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmp0CmSek.cpp:121:36:   required from here
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:32:40: error: no matching function for call to 'arange(long int, long int&)'
                 return arange(T(0), end);
                                        ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:32:40: note: candidates are:
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:12:72: note: template<class T, class U, class S, class dtype> pythonic::types::ndarray<typename pythonic::types::numpy_type<dtype>::type, 1ul> pythonic::numpy::arange(T, U, S, dtype)
             types::ndarray<typename types::numpy_type<dtype>::type, 1> arange(T begin, U end, S step=S(1), dtype d=dtype())
                                                                        ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:12:72: note:   substitution of deduced template arguments resulted in errors seen above
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:31:34: note: template<class T> pythonic::types::ndarray<T, 1ul> pythonic::numpy::arange(T)
             types::ndarray<T, 1> arange(T end) {
                                  ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:31:34: note:   template argument deduction/substitution failed:
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:32:40: note:   candidate expects 1 argument, 2 provided
                 return arange(T(0), end);
                                        ^

Clang++

******
CRITICAL Leave the vessel! Women and children first!
C++ compiler failed to compile translated code.
E: Compile error!

******** Command line was: ********
'clang++' '/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp' '-I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7' '-I/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/numpy/core/include/numpy' '-I/Users/amini/projects/pythran/install/lib/python2.7/site-packages/.' '-I/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran' '-DENABLE_PYTHON_MODULE' '-DUSE_GMP' '-I' '/opt/local/include/' '-stdlib=libc++' '-std=c++11' '-O2' '-shared' '-o' 'test.so' '-L/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config' '-lpython2.7' '-L/opt/local/lib' '-lboost_python-mt' '-lgmp' '-lgmpxx' '-fPIC' '-L' '/opt/local/lib/gcc48/'

******** Output :  ********

In file included from /var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:7:
In file included from /Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:6:
In file included from /Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/types/ndarray.hpp:24:
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/types/numpy_iexpr.hpp:156:64: error: no member named 'accumulate' in namespace 'std'
                long size() const { return /*arg.size()*/ std::accumulate(shape.begin() + 1, shape.end(), *shape.begin(), std::multiplies<long>()); }
                                                          ~~~~~^
In file included from /var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:7:
In file included from /Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:6:
In file included from /Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/types/ndarray.hpp:25:
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/types/numpy_gexpr.hpp:283:33: error: no member named 'accumulate' in namespace 'std'
                    return std::accumulate(shape.begin() + 1, shape.end(), *shape.begin(), std::multiplies<long>());
                           ~~~~~^
In file included from /var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:7:
In file included from /Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:5:
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/types/numpy_type.hpp:12:34: error: called object type 'long' is not a function or function pointer
                typedef decltype(std::declval<T>()()) type;
                                 ^~~~~~~~~~~~~~~~~
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:12:44: note: in instantiation of template class 'pythonic::types::numpy_type<long>' requested here
            types::ndarray<typename types::numpy_type<dtype>::type, 1> arange(T begin, U end, S step=S(1), dtype d=dtype())
                                           ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:32:24: note: while substituting deduced template arguments into function template 'arange' [with T = long, U = long, S = <no value>, dtype = <no value>]
                return arange(T(0), end);
                       ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:34:32: note: in instantiation of function template specialization 'pythonic::numpy::arange<long>' requested here
        PROXY(pythonic::numpy, arange);
                               ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/utils/proxy.hpp:21:35: note: expanded from macro 'PROXY'
#define PROXY(ns,f) FPROXY(ns, f, f)
                                  ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/utils/proxy.hpp:15:28: note: expanded from macro 'FPROXY'
                return ns::f(std::forward<Types>(types)...); \
                           ^
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:110:107: note: in instantiation of function template specialization 'pythonic::numpy::proxy::arange::operator()<long>' requested here
    return ((bar()((a + 42L)) + foo()(a)) + pythonic::numpy::proxy::sum{}(pythonic::numpy::proxy::arange{}(10L)));
                                                                                                          ^
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:115:12: note: in instantiation of function template specialization '__pythran_test::mix_builtin_foo::operator()<long>' requested here
    return mix_builtin_foo()(a);
           ^
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:121:33: note: in instantiation of function template specialization '__pythran_test::entry::operator()<long>' requested here
  return __pythran_test::entry()(a0);
                                ^
In file included from /var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:7:
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:32:24: error: call to function 'arange' that is neither visible in the template definition nor found by argument-dependent lookup
                return arange(T(0), end);
                       ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:34:32: note: in instantiation of function template specialization 'pythonic::numpy::arange<long>' requested here
        PROXY(pythonic::numpy, arange);
                               ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/utils/proxy.hpp:21:35: note: expanded from macro 'PROXY'
#define PROXY(ns,f) FPROXY(ns, f, f)
                                  ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/utils/proxy.hpp:15:28: note: expanded from macro 'FPROXY'
                return ns::f(std::forward<Types>(types)...); \
                           ^
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:110:107: note: in instantiation of function template specialization 'pythonic::numpy::proxy::arange::operator()<long>' requested here
    return ((bar()((a + 42L)) + foo()(a)) + pythonic::numpy::proxy::sum{}(pythonic::numpy::proxy::arange{}(10L)));
                                                                                                          ^
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:115:12: note: in instantiation of function template specialization '__pythran_test::mix_builtin_foo::operator()<long>' requested here
    return mix_builtin_foo()(a);
           ^
/var/folders/b6/s_v2kl3918s2v6lf3xpqnp100000gn/T/tmpemQ77S.cpp:121:33: note: in instantiation of function template specialization '__pythran_test::entry::operator()<long>' requested here
  return __pythran_test::entry()(a0);
                                ^
/Users/amini/projects/pythran/install/lib/python2.7/site-packages/pythran/pythonic/numpy/arange.hpp:12:72: note: 'arange' should be declared prior to the call site
            types::ndarray<typename types::numpy_type<dtype>::type, 1> arange(T begin, U end, S step=S(1), dtype d=dtype())
                                                                       ^
4 errors generated.
@serge-sans-paille
Copy link
Owner

I can't reproduce this, with

#pythran export entry(int)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants