|
From: | Marius Schamschula |
Subject: | Re: Octave 4.0.0 release candidate 1 available for ftp |
Date: | Thu, 5 Mar 2015 20:14:03 -0600 |
On Mar 5, 2015, at 3:55 PM, John W. Eaton <address@hidden> wrote: The first release candidate for Octave 4.0.0 is available from On OS X (I’m my case Mavericks with Xcode 6.1), the default build using llvm/clang-3.4 fails (see below). As I’m trying to build 4.0.0-rc1 as octave-devel under MacPorts, I’m avoiding rebuilding everything using gcc-4.9, which I’ve done building hg tip. In file included from corefcn/oct-obj.h:33: ./octave-value/ov.h:1071:37: error: friend declaration specifying a default argument must be a definition friend OCTINTERP_API octave_value do_colon_op (const octave_value& base, ^ In file included from builtins.cc:7: In file included from corefcn/defun.h:30: In file included from corefcn/defun-int.h:28: In file included from ./octave-value/ov-builtin.h:28: In file included from ./octave-value/ov-fcn.h:31: In file included from corefcn/oct-obj.h:33: ./octave-value/ov.h:1071:37: error: friend declaration specifying a default argument must be a definition friend OCTINTERP_API octave_value do_colon_op (const octave_value& base, ^ In file included from octave.cc:35: In file included from /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/iostream:38: In file included from /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/ios:216: In file included from /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/__locale:15: In file included from /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/string:439: In file included from /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/algorithm:626: /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/utility:253:9: error: field has incomplete type 'const cdef_class' _T1 first; ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:629:16: note: in instantiation of template class 'std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >' requested here value_type __cc; ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/__tree:603:16: note: in instantiation of template class 'std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >' requested here value_type __value_; ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/__tree:694:22: note: in instantiation of template class 'std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *>' requested here typedef typename __node::base __node_base; ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:715:19: note: in instantiation of template class 'std::__1::__tree_const_iterator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *> *, long>' requested here _TreeIterator __i_; ^ ./octave-value/ov-classdef.h:441:71: note: in instantiation of template class 'std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *> *, long> >' requested here void mark_as_constructed (const cdef_class& cls) { ctor_list.erase (cls); } ^ ./octave-value/ov-classdef.h:36:7: note: forward declaration of 'cdef_class' class cdef_class; ^ In file included from octave.cc:72: In file included from ./octave-value/ov-range.h:41: In file included from ./octave-value/ov-re-mat.h:38: ./octave-value/ov-base-mat.h:95:8: warning: 'octave_base_matrix<NDArray>::assign' hides overloaded virtual function [-Woverloaded-virtual] void assign (const octave_value_list& idx, const MT& rhs); ^ ./octave-value/ov-re-mat.h:51:24: note: in instantiation of template class 'octave_base_matrix<NDArray>' requested here octave_matrix : public octave_base_matrix<NDArray> ^ ./octave-value/ov-base.h:278:16: note: hidden overloaded virtual function 'octave_base_value::assign' declared here: type mismatch at 1st parameter ('const std::string &' (aka 'const basic_string<char, char_traits<char>, allocator<char> > &') vs 'const octave_value_list &') virtual void assign (const std::string&, const octave_value&) { } ^ In file included from octave.cc:72: In file included from ./octave-value/ov-range.h:41: In file included from ./octave-value/ov-re-mat.h:38: ./octave-value/ov-base-mat.h:97:8: warning: 'octave_base_matrix<NDArray>::assign' hides overloaded virtual function [-Woverloaded-virtual] void assign (const octave_value_list& idx, typename MT::element_type rhs); ^ ./octave-value/ov-base.h:278:16: note: hidden overloaded virtual function 'octave_base_value::assign' declared here: type mismatch at 1st parameter ('const std::string &' (aka 'const basic_string<char, char_traits<char>, allocator<char> > &') vs 'const octave_value_list &') virtual void assign (const std::string&, const octave_value&) { } ^ 1 error generated. make[3]: *** [liboctinterp_la-builtins.lo] Error 1 make[3]: *** Waiting for unfinished jobs.... In file included from octave.cc:42: In file included from ../liboctave/util/cmd-edit.h:28: In file included from /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/set:387: /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/__tree:1985:19: error: static_cast from '__node_pointer' (aka 'std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *> *') to '__node_base_pointer' (aka 'std::__1::__tree_node_base<void *> *') is not allowed static_cast<__node_base_pointer>(__np)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/__tree:2007:5: note: in instantiation of member function 'std::__1::__tree<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__map_value_compare<cdef_class, std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::less<cdef_class>, true>, std::__1::allocator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::erase' requested here erase(__i); ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:1068:25: note: in instantiation of function template specialization 'std::__1::__tree<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__map_value_compare<cdef_class, std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::less<cdef_class>, true>, std::__1::allocator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::__erase_unique<cdef_class>' requested here {return __tree_.__erase_unique(__k);} ^ ./octave-value/ov-classdef.h:441:64: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::erase' requested here void mark_as_constructed (const cdef_class& cls) { ctor_list.erase (cls); } ^ In file included from octave.cc:42: In file included from ../liboctave/util/cmd-edit.h:28: In file included from /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/set:387: /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/__tree:656:59: error: static_cast from '__node_pointer' (aka 'std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *> *') to '__node_base_pointer' (aka 'std::__1::__tree_node_base<void *> *') is not allowed {__ptr_ = static_cast<__node_pointer>(__tree_next(static_cast<__node_base_pointer>(__ptr_))); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/__tree:1978:5: note: in instantiation of member function 'std::__1::__tree_iterator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *> *, long>::operator++' requested here ++__r; ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/__tree:2007:5: note: in instantiation of member function 'std::__1::__tree<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__map_value_compare<cdef_class, std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::less<cdef_class>, true>, std::__1::allocator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::erase' requested here erase(__i); ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:1068:25: note: in instantiation of function template specialization 'std::__1::__tree<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__map_value_compare<cdef_class, std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::less<cdef_class>, true>, std::__1::allocator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::__erase_unique<cdef_class>' requested here {return __tree_.__erase_unique(__k);} ^ ./octave-value/ov-classdef.h:441:64: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::erase' requested here void mark_as_constructed (const cdef_class& cls) { ctor_list.erase (cls); } ^ In file included from octave.cc:53: In file included from corefcn/defun.h:30: In file included from corefcn/defun-int.h:28: In file included from ./octave-value/ov-builtin.h:28: In file included from ./octave-value/ov-fcn.h:34: In file included from corefcn/symtab.h:29: /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:967:50: error: no viable conversion from 'const_iterator' (aka '__tree_const_iterator<value_type, __node_pointer, difference_type>') to 'const_iterator' (aka '__map_const_iterator<typename __base::const_iterator>') const_iterator end() const _NOEXCEPT {return __tree_.end();} ^~~~~~~~~~~~~ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:878:37: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::end' requested here insert(__m.begin(), __m.end()); ^ ./octave-value/ov-classdef.h:455:46: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::map' requested here : cdef_object_base (obj), map (obj.map), ctor_list (obj.ctor_list) { } ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:713:29: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'const_iterator' (aka '__tree_const_iterator<value_type, __node_pointer, difference_type>') to 'const std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *> *, long> > &' for 1st argument class _LIBCPP_TYPE_VIS_ONLY __map_const_iterator ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:739:5: note: candidate constructor not viable: no known conversion from 'const_iterator' (aka '__tree_const_iterator<value_type, __node_pointer, difference_type>') to '__map_iterator<typename __tree_const_iterator<__value_type<cdef_class, list<cdef_class, allocator<cdef_class> > >, __tree_node<__value_type<cdef_class, list<cdef_class, allocator<cdef_class> > >, void *> *, long>::__non_const_iterator>' for 1st argument __map_const_iterator( ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:984:51: error: member function 'end' not viable: 'this' argument has type 'const std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >', but function is not marked const const_iterator cend() const _NOEXCEPT {return end();} ^~~ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:1052:39: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::cend' requested here for (const_iterator __e = cend(); __f != __l; ++__f) ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:878:13: note: in instantiation of function template specialization 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::insert<std::__1::__map_const_iterator<std::__1::__tree_const_iterator<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, std::__1::__tree_node<std::__1::__value_type<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > >, void *> *, long> > >' requested here insert(__m.begin(), __m.end()); ^ ./octave-value/ov-classdef.h:455:46: note: in instantiation of member function 'std::__1::map<cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> >, std::__1::less<cdef_class>, std::__1::allocator<std::__1::pair<const cdef_class, std::__1::list<cdef_class, std::__1::allocator<cdef_class> > > > >::map' requested here : cdef_object_base (obj), map (obj.map), ctor_list (obj.ctor_list) { } ^ /opt/local/libexec/llvm-3.4/bin/../include/c++/v1/map:965:20: note: 'end' declared here iterator end() _NOEXCEPT {return __tree_.end();} ^ 2 warnings and 6 errors generated. Marius -- Marius Schamschula |
[Prev in Thread] | Current Thread | [Next in Thread] |