[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference turris::c_plus_plus

Title:C++
Notice:Read 1.* and use keywords (e.g. SHOW KEY/FULL KIT_CXX_VAX_VMS)
Moderator:DECCXX::AMARTIN
Created:Fri Nov 06 1987
Last Modified:Thu Jun 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:3604
Total number of notes:18242

3556.0. "%CXX-E-TYPEXPR error with release notes example" by CSC32::D_SANFORD () Fri Apr 25 1997 23:06

  DEC C ++ V5.5

  The following example in the release notes (V5.4 and V5.5) does not
  compile.  Get %CXX-E-TYPEXPR compilation errors.  Maybe the examples
  aren't intended to be used?

  I'm trying to use DEC's STL library and I've run into a problem. I have
  an example program from the C++ 5.4 release notes and it doesn't compile.

  Regards, Drew Sanford
  Customer Support Center
  C970424-3931


#include <map>

#pragma define_template map<int, int, less<int> >
#pragma define_template rb_tree<int, pair<const int, int>,
               select1st<pair<const int, int>, int>, less<int> >

int main(void)
{
   map<int, int, less<int> > m;
   return 0;
}


		    raw_storage_iterator<Pointer, T> result3 = result2;
	........................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 1168 in ALGORITHM.

		raw_storage_iterator<RandomAccessIterator3, T> p = result;
	..................................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 1486 in ALGORITHM.

		    raw_storage_iterator<RandomAccessIterator3, T> p = result;  
	......................................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 1501 in ALGORITHM.

		    raw_storage_iterator<RandomAccessIterator3, T> p = result;  
	......................................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 1512 in ALGORITHM.

		raw_storage_iterator<RandomAccessIterator3, T> p = result;
	..................................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 1538 in ALGORITHM.

		    raw_storage_iterator<RandomAccessIterator3, T> p = result;  
	......................................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 1553 in ALGORITHM.

		    raw_storage_iterator<RandomAccessIterator3, T> p = result;  
	......................................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 1564 in ALGORITHM.

		raw_storage_iterator<Pointer, T> end_buffer = buffer;
	....................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 2590 in ALGORITHM.

		raw_storage_iterator<Pointer, T> end_buffer = buffer;
	....................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 2604 in ALGORITHM.

		raw_storage_iterator<Pointer, T> end_buffer = buffer;
	....................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 2652 in ALGORITHM.

		raw_storage_iterator<Pointer, T> end_buffer = buffer;
	....................................^
%CXX-E-TYPEXPR, Type not followed by "(" in an expression.
		At line number 2666 in ALGORITHM.

	template <class Key, class Value, class KeyOfValue, class Compare, class Allocator = allocator<Value> >
	.....................................................................................^
%CXX-E-MISSINGTYPE, Missing type specifier or type qualifier.
		At line number 69 in TREE.

	    typedef allocator<void>::pointer void_pointer;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 73 in TREE.

	        color_type color_field; 
	...................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 77 in TREE.

	        void_pointer parent_link;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 78 in TREE.

	        void_pointer left_link;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 79 in TREE.

	        void_pointer right_link;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 80 in TREE.

	        Value value_field;
	..............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 81 in TREE.

	    allocator<rb_tree_node> rb_tree_node_allocator;
	.............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 83 in TREE.

	    typedef Value value_type;
	..................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 87 in TREE.

	    typedef Allocator::pointer pointer;
	...............................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 88 in TREE.

	    typedef Allocator::const_pointer const_pointer;
	.....................................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 89 in TREE.

	    typedef Allocator::reference reference;
	.................................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 90 in TREE.

	    typedef Allocator::const_reference const_reference;
	.......................................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 91 in TREE.

	    typedef allocator<rb_tree_node> rb_tree_node_allocator_type;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 92 in TREE.

	    typedef allocator<rb_tree_node>::pointer link_type;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 93 in TREE.

	    typedef allocator<rb_tree_node>::size_type size_type;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 94 in TREE.

	    typedef allocator<rb_tree_node>::difference_type difference_type;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 95 in TREE.

	        void_pointer next_buffer;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 104 in TREE.

	        link_type buffer;
	..................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 105 in TREE.

	public:
	^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 107 in TREE.

	    typedef allocator<rb_tree_node_buffer>::pointer buffer_pointer;     
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 109 in TREE.

	        buffer_pointer tmp = buffer_allocator.allocate((size_type)1);
	.......................^
%CXX-E-NOSEMI, Missing ";".
		At line number 117 in TREE.

	    static size_type number_of_trees;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 124 in TREE.

	    link_type get_node() {
	..............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 126 in TREE.

	        link_type tmp = free_list;
	..................^
%CXX-E-NOSEMI, Missing ";".
		At line number 127 in TREE.

	    void put_node(link_type p) {
	............................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 134 in TREE.

	protected:
	^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 138 in TREE.

	    link_type& root() const { return parent(header); }
	.............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 141 in TREE.

	    link_type& leftmost() const { return left(header); }
	.............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 143 in TREE.

	    link_type& rightmost() const { return right(header); }
	.............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 145 in TREE.

	__DECPROTECTED:
	^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 149 in TREE.

	    static link_type NIL;
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 151 in TREE.

	    static link_type& left(link_type x) { 
	....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 152 in TREE.

	        return (link_type&)((*x).left_link);
	..........................^
%CXX-E-BADEXPR, Invalid expression.
		At line number 153 in TREE.

	    static link_type& right(link_type x) {
	....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 155 in TREE.

	        return (link_type&)((*x).right_link); 
	..........................^
%CXX-E-BADEXPR, Invalid expression.
		At line number 156 in TREE.

	    static link_type& parent(link_type x) {
	....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 158 in TREE.

	        return (link_type&)((*x).parent_link);
	..........................^
%CXX-E-BADEXPR, Invalid expression.
		At line number 159 in TREE.

	    static reference value(link_type x) { return (*x).value_field; }
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 161 in TREE.

	    static allocator<Key>::const_reference key(link_type x) {
	....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 162 in TREE.

	    static color_type& color(link_type x) { 
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 165 in TREE.

	        return (color_type&)(*x).color_field; }
	...........................^
%CXX-E-BADEXPR, Invalid expression.
		At line number 166 in TREE.

	    static link_type minimum(link_type x) {
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 167 in TREE.

	    static link_type maximum(link_type x) {
	.....................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 172 in TREE.

	public:
	^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 177 in TREE.

	        link_type node;
	..................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 186 in TREE.

	        iterator(link_type x) : node(x) {}
	...........................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 187 in TREE.

	    public:
	....^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 188 in TREE.

	        reference operator*() const { return value(node); }
	..................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 191 in TREE.

	                link_type y = parent(node);
	..........................^
%CXX-E-NOSEMI, Missing ";".
		At line number 199 in TREE.

	                link_type y = left(node);
	..........................^
%CXX-E-NOSEMI, Missing ";".
		At line number 219 in TREE.

	                link_type y = parent(node);
	..........................^
%CXX-E-NOSEMI, Missing ";".
		At line number 224 in TREE.

	    };
	....^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 238 in TREE.

	        link_type node;
	..................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 244 in TREE.

	        const_iterator(link_type x) : node(x) {}
	.................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 245 in TREE.

	    public:
	....^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 246 in TREE.

	        bool operator==(const const_iterator& y) const { 
	............................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 249 in TREE.

	                link_type y = parent(node);
	..........................^
%CXX-E-NOSEMI, Missing ";".
		At line number 263 in TREE.

	        const_iterator operator++(int) {
	.......................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 273 in TREE.

	            const_iterator tmp = *this;
	...........................^
%CXX-E-NOSEMI, Missing ";".
		At line number 274 in TREE.

	        const_iterator& operator--() {
	......................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 278 in TREE.

	                link_type y = left(node);
	..........................^
%CXX-E-NOSEMI, Missing ";".
		At line number 283 in TREE.

	                link_type y = parent(node);
	..........................^
%CXX-E-NOSEMI, Missing ";".
		At line number 288 in TREE.

	        const_iterator operator--(int) {
	.......................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 297 in TREE.

	            const_iterator tmp = *this;
	...........................^
%CXX-E-NOSEMI, Missing ";".
		At line number 298 in TREE.

	    };
	....^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 302 in TREE.

	private:
	^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 309 in TREE.

	    void __erase(link_type x);
	...........................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 312 in TREE.

	public:
	^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 343 in TREE.

	    rb_tree(const value_type* first, const value_type* last, 
	............^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 352 in TREE.

	        size_type local_number_of_trees = --number_of_trees;
	..................^
%CXX-E-NOSEMI, Missing ";".
		At line number 397 in TREE.

	    Compare key_comp() const { return key_compare; }
	............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 413 in TREE.

	    const_iterator begin() const { return leftmost(); }
	...................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 415 in TREE.

	    const_iterator end() const { return header; }
	...................^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 417 in TREE.

	    size_type size() const { return node_count; }
	..............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 427 in TREE.

	    pair_iterator_bool insert(const value_type& x);
	..............................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 449 in TREE.

	    iterator insert(iterator position, const value_type& x);
	.......................................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 450 in TREE.

	    void insert(const value_type* first, const value_type* last);
	................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 452 in TREE.

	    size_type erase(const key_type& x);
	..............^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 454 in TREE.

	    void erase(const key_type* first, const key_type* last);
	.............................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 456 in TREE.

	    iterator find(const key_type& x);
	................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 460 in TREE.

	    iterator lower_bound(const key_type& x);
	.......................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 463 in TREE.

	    iterator upper_bound(const key_type& x);
	.......................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 465 in TREE.

	    pair_iterator_iterator equal_range(const key_type& x);
	.....................................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 469 in TREE.

	    pair_citerator_citerator equal_range(const key_type& x) const;
	.......................................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 472 in TREE.

	    inline void rotate_left(link_type x);
	......................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 473 in TREE.

	    inline void rotate_right(link_type x);
	.......................................^
%CXX-E-CLOSEPAREN, Missing ")".
		At line number 474 in TREE.

	        buffer_pointer tmp = buffer_list;
	.......................^
%CXX-E-NOSEMI, Missing ";".
		At line number 489 in TREE.

	rb_tree<Key, Value, KeyOfValue, Compare, Allocator>::
	.......^
%CXX-E-DECLARATION, Invalid declaration.
		At line number 512 in TREE.

	rb_tree<Key, Value, KeyOfValue, Compare, Allocator>::iterator
	...................................................^
%CXX-E-DECLARATOR, Invalid declarator.
		At line number 531 in TREE.

	rb_tree<Key, Value, KeyOfValue, Compare, Allocator>::iterator
	...................................................^
%VCG-F-TOOMANYERR, The total number of errors exceeds the
		limit of 100.
		At line number 531 in TREE.

	rb_tree<Key, Value, KeyOfValue, Compare, Allocator>::iterator
	...................................................^
%VCG-I-NOBJECT, No object file produced.
		At line number 531 in TREE.


T.RTitleUserPersonal
Name
DateLines
3556.1need assume=noheader_type_defaultDECC::J_WARDMon Apr 28 1997 12:4417
That's because on VMS (as it says in the documentation)
you need to compile with /assume=noheader_type_default
(and you also need to link with cxxlink to get automatic
instantiation).

$ cxx/assume=noheader_type_default t.cxx
$ cxxlink t
$ run t

This is because on VMS users have been allowed to
say #include <stdio> or #include <vector> and get
the old vector.hxx and stdio.hxx. In order to distinguish
between the new standard header file names (which
have no extensions) and the old ones (that do) we
needed a special flag to say "I really mean no
extensions! I want the new header files!"
3556.2Thank you!CSC32::D_SANFORDWed Apr 30 1997 15:391