🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.bug
Article #305

template syntax

#305
From: nguyen
Date: Tue, 28 Jul 1992 21:35
62 lines
2122 bytes
<..> should be specified in all functions inside a class header,
except constructor and destructor. ARM p.350.

The following code compiles with AT&T but not with GNU g++2.0
(gcc-2.2.2). Who is wrong?

----------------------------
#include <iostream.h>


template<class T1, class T2>
class foo{
public:
  T1 value1;
  T2 value2;
  foo(T1 a, T2 b) { value1 = a; value2 = b;}
  void bar(foo<T1,T2>& t) { value1 = t.value1; value2 = t.value2;} //********
  void print() { cout << value1 << " " << value2 << endl;}
};



main()
{
  foo<int, int> fi(10, 0), fii(0, 5);
  foo<float, int> ff(5.0, 0);
  foo<char, int> fc('c', 1);


  fi.print();
  fii.print();
  fii.bar(fi);
  fii.print();
  ff.print();
  fc.print();
  
  cout << "hello" << endl;
}
---------------------------
% /home/thuban/software3/gnu/bin/g++ -I /home/thuban/software3/gnu/lib/g++-incl
ude gnu_template.C
gnu_template.C:10: parse error before `,'
gnu_template.C:10: parse error before `,'
gnu_template.C:10: parse error before `,'
gnu_template.C: In method `void  foo<char ,int>::bar (...)':
gnu_template.C:10: `t' undeclared (first use this function)
gnu_template.C:10: (Each undeclared identifier is reported only once
gnu_template.C:10: for each function it appears in.)
gnu_template.C: In method `void  foo<float ,int>::bar (...)':
gnu_template.C:10: `t' undeclared (first use this function)
gnu_template.C: In method `void  foo<int ,int>::bar (...)':
gnu_template.C:10: `t' undeclared (first use this function)
-------------

Van-Duc Nguyen
General Electric 
Research & Development Ctr
1 River Road, Room K1-5C39.
Schenectady, NY 12301.
Phone: (518) 387-5659
Fax:   (518) 387-6845
nguyen@crd.ge.com
Technical Details
Message-ID: <9207282135.AA11012@etamin.crd.Ge.Com>
Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!sol.CRd.ge.COM!nguyen

Show Full Headers
Complete Article Headers
Newsgroups: gnu.gcc.bug
Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!sol.CRd.ge.COM!nguyen
From: nguyen@sol.CRd.ge.COM
Subject: template syntax
Message-ID: <9207282135.AA11012@etamin.crd.Ge.Com>
Sender: gnulists@ai.mit.edu
Reply-To: nguyen@sol.crd.ge.com
Organization: GNUs Not Usenet
Distribution: gnu
Date: Tue, 28 Jul 1992 21:35:49 GMT
Approved: bug-gcc@prep.ai.mit.edu
Lines: 64