HDTenEightyP/NetNews huggingface dataset:
From: dak@pool.INformatik.rwth-aachen.DE
Subject: Pointer to data member bug in g++ 2.3.1
Organization: GNUs Not Usenet
Distribution: gnu
Date: Sat, 7 Nov 1992 03:17:24 GMT

Ok, here is another bug report for pointer to data member operations.
Sorry for my bad language at the last post. Instead of f***ing up I
really wanted to use the expression fouling up. The offensiveness
of my language unfortunately escaped me.

Declaration of pointer to data members
as a function argument is not possible. Defining COMPILE
will get the thing compiled with a circumvention. However, the actual
access uses one
indirection too much of the pointer prior to the proper use,
generating a core dump.
I tried to track this down in the compiler, but got absolutely
lost in the parser syntax. Sorry for that.

Here the specs:

Reading specs from /usr/local/lib/gcc-lib/isc/2.3.1/specs
gcc version 2.3.1
 /usr/local/lib/gcc-lib/isc/2.3.1/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -Dunix -Di386 -D__unix__ -D__i386__ -D__unix -D__i386 test.cc /usr/tmp/cca01039.i
GNU CPP version 2.3.1 (80386, ATT syntax)
 /usr/local/lib/gcc-lib/isc/2.3.1/cc1plus /usr/tmp/cca01039.i -quiet -dumpbase test.cc -version -o test.s
GNU C++ version 2.3.1 (80386, ATT syntax) compiled by GNU C version 2.3.1.
test.cc:9: parse error before `ptr'

Here the source:

struct xxx {
	int i;
} lll;

typedef int xxx::*kah;
#ifdef COMPILE
kkk(kah ptr)
#else
kkk(int xxx::*ptr)
#endif
{
	return (&lll)->*ptr;	// code is (&lll)->*(*ptr)
	return lll.*ptr;	// code is lll.*(*ptr)
// The code will have this erroneous level of indirection even if
// you declare a variable int xxx::*ptr = &xxx::i instead of the
// function argument and use that
}

main() {
	return kkk(&xxx::i);	// Code seems correct, but is
	return kkk(0);		// indistinguishable from this line.
// ARM says, 0 must be a separate pointer to member
// Most reasonable is always giving 1 too much as offset, then
// compensating at the time of the dereference
}

Newsgroups: gnu.g++.bug
From: witold@gaga.maschinenbau.uni-dortmund.de
Subject: (none)
Organization: GNUs Not Usenet
Distribution: gnu
Date: Wed, 11 Nov 1992 03:15:20 GMT

Hi!

After typing:
 
 gcc -lg++ wbug.cc

where "wbug.cc" looks like:

 #include <iostream.h>

 #define DoubleAbs(a) ({double _a = (a); -a >= 0.0 ? _a : -_a})

 main()
 {
  cout << DoubleAbs(-5.0) << "\n";
 }

I obtained:

 wbug.cc: In function 'int main()':
 wbug.cc:7: invalid lvalue in decrement
 gcc: Internal compiler error: program cc1plus got fatal signal 11

Of course it is a mistake in the program ("-a" instead of "_a") but as you
said: "reliable compilers never crash".

Other informations:

computer and system:
 IBM RISC System/6000 AIX Version 3.2.1

compiler:
 gcc version 2.3.1

library:
 GNU C++ library v. 2.0

Unfortunately I am not able to say something about configure command. 
As a matter of fact I remember that the compilation of the compiler wasn't
very smooth but afterwards we run checking procedures without any problems.

We didn't make any modifications to the compiler itself.

Anyway I hope I could be helpfull.

Sincerely yours, W.
From: waterman@ips.CS.tu-bs.DE
Newsgroups: gnu.g++.bug
Subject: (none)
Date: 5 Nov 92 14:06:22 GMT
Distribution: gnu
Organization: GNUs Not Usenet

Hi y'all,

I think I have discoverd an error of the gcc-Compiler, version 2.3.1.
The following piece of C++-code is the smallest program that causes
the problem: 


// ptolink.h

template<class T>
class ptolink
  {
    private:
      T* pointer;

    public:
      ptolink()                   { pointer = 0; }
      ptolink(const ptolink& ptl) { pointer = 0; }

  };


// Term.h

#include "ptolink.h"
typedef ptolink<int> intlink;
void a_function(intlink il);


// Term.C

#include "Term.h"
void a_function(intlink il)
  {
    a_function(il);                 // this is line 10
  };
int main() {}



The Compiler produces the following message: 

g++ -c Term.C -o Term
Term.C: In function `void  a_function (class ptolink<int>)':
Term.C:10: no constructor named `ptolink' in visible scope
*** Error code 1
make: Fatal error: Command failed for target `Term'


It works fine if I don't define the copy-constructor in class ptolink
or if I declare a_function as "void a_function(const intlink& il)".
By the way, gcc 2.2.2 does not complain about the above program.

Bye, Rolf Watermann
Newsgroups: gnu.g++.bug
From: timhu@ico.isc.com (Timothy Hu)
Subject: (none)
Organization: GNUs Not Usenet
Distribution: gnu
Date: Tue, 10 Nov 1992 03:21:39 GMT

Sir/Madam: (bug-g++@prep.ai.mit.edu)

I'm trying to install g++ v1.42.0 on SPARC 1+ running SunOS 4.1.2. When I run
config as follows:

config.g++ sun4-os4

I get the following error:

config.g++: cannot create a link `config.h',
since the file `config/xm-sparc.h' does not exist.

I have gcc v2.3.1 installed.

Where do I go from here?

Thanks,
Tim


Newsgroups: gnu.g++.bug
From: eggert@twinsun.COM (Paul Eggert)
Subject: missing virtual table for objects with virtual function and base class
Organization: GNUs Not Usenet
Distribution: gnu
Date: Fri, 6 Nov 1992 03:29:44 GMT

GCC 2.3.1 sometimes forgets to initialize the virtual table for an object with
a virtual function and virtual base class.  In the following example (SunOS
4.1.2, sparc), y's virtual table is never initialized, leading to a bus error
when it's used.

$ cat t.cc
class R {};

class T : virtual public R {
 public:
    T() {}
    virtual void v() {}
    void f() { v(); }
};

T x;

int main()
{
    T y(x);
    y.f();
    return 0;
}
$ gcc -g t.cc
$ ./a.out
Bus error - core dumped
$ gdb a.out
GDB is free software and you are welcome to distribute copies of it
 under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for details.
GDB 4.7, Copyright 1992 Free Software Foundation, Inc...
(gdb) run
Starting program: /tmp/a.out 

Program received signal 10, Bus error
0x2300 in T::f (this=0xf7fffcd0) at t.cc:7
7	    void f() { v(); }
(gdb) up
#1  0x2358 in main () at t.cc:15
15	    y.f();
(gdb) display x
1: x = {<R> = {}, _vb$R = 0x40c8, _vptr$FOO = 0x40d0 <T virtual table>}
(gdb) display y
2: y = {<R> = {}, _vb$R = 0xf7fffcd8, _vptr$FOO = 0x8103010b}
(gdb) 

The 0x8103010b is uninitialized garbage.

Newsgroups: gnu.g++.bug
From: mrs@cygnus.com (Mike Stump)
Subject: Re:  Segmentation Fault
Organization: GNUs Not Usenet
Distribution: gnu
Date: Tue, 10 Nov 1992 20:49:06 GMT

This problem has been fixed, and should not exist in the release after
next of gcc.

Yes, it could be added, but Richard Stallman does not want the
compiler to do this.  In our comercial product of gcc, we by default
let the user know where in the user source code the code lies that the
compiler dies on.  By default, gcc does not give you a clue what in
the user source code caused the fault.

If you would like to see this functionality added, please him
<rms@prep.ai.mit.edu> know that the behaviour is desirable.

> Message-Id: <9210121639.AA01071@solace.me.uiuc.edu>
> From: Mike Tiller <tiller@solace.me.uiuc.edu>
> To: bug-g++@prep.ai.mit.edu
> Date: Mon, 12 Oct 92 11:39:45 -0500

> The following code although erroneous should trigger an error not a
> segmentation fault.  This brings me to an additional point...would
> it be possible to add a debugging flag to g++ and gcc so you can
> find out what line they are one when they die this most horrible
> kind of death.  Most of the time it is an error that compiler can't
> digest and would be easily recognizable.  In other words, most of
> the time it is something I could fix...If I only knew where it was.

> template<class T>
> class	Array
> {
> 	int	size;
> };

> enum	Source { Scalar, Array, Function };

Newsgroups: gnu.g++.bug
From: lma@dayton.stanford.edu (Larry Augustin)
Subject: g++-2.3.1: Internal compiler error: program cc1plus got fatal signal 11
Organization: DSO, Stanford University
Distribution: gnu
Date: Tue, 10 Nov 1992 18:21:43 GMT

g++ 2.3.1 gave me an internal compiler error.  Example follows.  SunOS
4.1.2, SS 2.

Larry

Larry M. Augustin			ERL 414, M/C 4055
lma@dayton.stanford.edu			Computer Systems Lab
+1 415.723.9285 (voice)			Stanford University
+1 415.725.7398 (fax)			Stanford, CA 94305


dayton> g++ -v -c bug.cc
Reading specs from /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.1/specs
gcc version 2.3.1
 /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.1/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -Dsparc -Dsun -Dunix -D__sparc__ -D__sun__ -D__unix__ -D__sparc -D__sun -D__unix bug.cc /usr/tmp/cca18449.i
GNU CPP version 2.3.1 (sparc)
 /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.1/cc1plus /usr/tmp/cca18449.i -quiet -dumpbase bug.cc -version -o /usr/tmp/cca18449.s
GNU C++ version 2.3.1 (sparc) compiled by GNU C version 2.3.1.
/usr/local/bin/gcc: Internal compiler error: program cc1plus got fatal signal 11

File bug.cc:

class PP {
  int row = 0, col = 0, indent_amount = 4;
public:
  PP() {};
  int linewidth = 80;
  int indent_level = 0;
  void nl();
  void put(char *s);
};

class Node {
private:
  Node *parent;
  Node *brother;
  Node *child;
  int nkids;
protected:
  static PP &pp;
public:
  static const char *version;
  // constructors
  Node();
  // destructors
  virtual ~Node();
  // other access functions
  Node *GetNthSon(int);        // get the nth son of the node
  void SetNthSon(int, Node *); // set the nth son
  void SetSon(Node *);         // set the first son
  void AppendSon(Node *);      // add a son to the list of sons
  Node *GetBrother();          // get the nodes brother
  void AddBrother(Node *);     // add a brother
  int GetNkids() {             // return the number of sons
    return nkids;
  };
  Node *GetParent() {          // return the nodes parent
    return parent;
  };
  Node *Copy();                // make a copy of the node
  //
  virtual char *Info();
  //
  virtual void Print();
};

PP &Node::pp = PP();

Newsgroups: gnu.g++.bug
From: chip@tct.COM (Chip Salzenberg)
Subject: Fix for G++ 2.3.1 TREE_PUBLIC bug
Organization: GNUs Not Usenet
Distribution: gnu
Date: Fri, 6 Nov 1992 09:02:04 GMT

Under some circumstances, G++ 2.3.1 can set DECL_EXTERNAL on a
function without setting TREE_PUBLIC.  Below is a fix.

========================================================================
Thu Nov  5 16:52:37 1992  Chip Salzenberg  (chip@tct.com)

	* cp-decl.c (finish_decl): Set TREE_STATIC, TREE_PUBLIC and
	DECL_EXTERNAL correctly for use with #pragma interface.

Index: cp-decl.c
*************** finish_decl (decl, init, asmspec_tree, n
*** 5818,5834 ****
  	      /* If this is a static const, change its apparent linkage
  		 if it belongs to a #pragma interface.  */
! 	      if (TREE_STATIC (decl) && interface_unknown == 0)
  		{
! 		  if (interface_only)
! 		    {
! 		      TREE_STATIC (decl) = 0;
! 		      DECL_EXTERNAL (decl) = 1;
! 		    }
! 		  else
! 		    {
! 		      TREE_PUBLIC (decl) = 1;
! 		      /* Marking it used will cause it to be written.  */
! 		      TREE_USED (decl) = 1;
! 		    }
  		}
  	      make_decl_rtl (decl, asmspec, toplev);
--- 5818,5825 ----
  	      /* If this is a static const, change its apparent linkage
  		 if it belongs to a #pragma interface.  */
! 	      if (TREE_STATIC (decl) && !interface_unknown)
  		{
! 		  TREE_PUBLIC (decl) = 1;
! 		  DECL_EXTERNAL (decl) = interface_only;
  		}
  	      make_decl_rtl (decl, asmspec, toplev);

-- 
Chip Salzenberg at Teltronics/TCT  <chip@tct.com>, <73717.366@compuserve.com>
From: dewerk@yosemite (<dewerk@cis.ohio-state.edu>)
Subject: sys/wait.h problem
Organization: GNUs Not Usenet
Distribution: gnu
Date: Sun, 8 Nov 1992 00:36:16 GMT

while using g++ (version unknown) i came across a problem with one of the
include files (sys/wait.h to be exact)...  

the problem is in the wait3() and wait4() prototyping lines...  it seems
that WaitStatus is undefined...  any help would be appreciated...  i'll
include the file sisnce it isn't too long...

thanks in advance...

 -- Paul-Joseph

--- start: sys/wait.h ---
#ifndef wait_h

#include <sys/resource.h>

#define wait WaitStatus

extern "C" {

#ifdef VMS
#include "GNU_CC_INCLUDE:[sys]wait.h"
#else
#include "//usr/include/sys/wait.h"
#endif

#undef wait

#ifndef wait_h
#define wait_h 1
#endif

extern int wait3(WaitStatus*, int options, struct rusage*);
extern int wait4(int, WaitStatus*, int, struct rusage*);
}

#endif
--- end: sys/wait.h ---

                                * - * - *

Paul-Joseph "Dragon" de Werk        | "Therefore you shall love the Lord
Department of Computer Science      | your God with all your heart, with
California State University, Fresno | all your soul, with all your mind,
dewerk@csufres.CSUFresno.EDU        | and with all your strength." Mk 12, 30

Newsgroups: gnu.g++.bug
From: cliff@cs.cornell.edu (Cliff Krumvieda)
Subject: Incorrect error and fatal signal with g++-2.3.1 on sparcs
Organization: GNUs Not Usenet
Distribution: gnu
Date: Tue, 10 Nov 1992 08:50:15 GMT

Howdy:

We're running g++-2.3.1 on sparcs and SunOS 4.1.1; g++ is producing
some strange output on the two programs below.

######################################################################
######################################################################

bug.C:
======================================================================
#include <stream.h>

template<class T> 
class X{
  T ick;
public:
  X(T j){ ick = j;}
  X(X& x){ ick = x.ick;}
  T get(){ return ick; };
};

void zook ( X<char> y) {
  cout << y.get() << "\n";
}

main () {
  X<char> xc('a');
  zook(xc);
}
======================================================================

Compiling yields:

======================================================================
[~/bug/samuel] gnu% g++ -v
Reading specs from /usr/local/gnu/gcc-2.3.1/lib/gcc-lib/sparc-sun-sunos4.1/2.3.1/specs
gcc version 2.3.1
[~/bug/samuel] gnu% g++ bug.C
bug.C: In function `int  main ()':
bug.C:18: no constructor named `X' in visible scope
[~/bug/samuel] gnu%
======================================================================

However, it appears to me that X is in line 18's scope; indeed, AT&T's
CC compiler has no problem with bug.C.

######################################################################
######################################################################

bug2.C:
======================================================================
#include <stream.h>

template<class T> 
class X{
  T ick;
public:
  X(T j){ ick = j;}
  X(X& x){ ick = x.ick;}
  T get(){ return ick; };
};

template<class T>
void zook ( X y) {
  cout << y.get() << "\n";
}

main () {
  X<char> xc('a');
  zook(xc);
}
======================================================================

Compiling yields:

======================================================================

[~/bug/samuel] gnu% g++ bug2.C
bug2.C:13: parse error before `)'
/usr/local/gnu/bin/gcc: Internal compiler error: program cc1plus got fatal signal 11
[~/bug/samuel] gnu%
======================================================================

Thanks.

						--Cliff Krumvieda

Newsgroups: gnu.g++.bug
From: lewis@sophists.COM
Subject: -Wpointer-arith warnings overzealous in g++ 2.3.1
Organization: GNUs Not Usenet
Distribution: gnu
Date: Sun, 8 Nov 1992 07:22:54 GMT

/*
 * I'm not sure the warning here is entirely justified (useful).
 *
 * The file is compiled with gcc 2.3.1 as follows:
 *      g++ -c -Wpointer-arith bug.c
 *
 * and the output is:
 *
 *      bug.c: In function `void  fred ()':
 *      bug.c:15: warning: ANSI C forbids taking the sizeof a void type
 */
void    fred ()
{
    void* p = new char [100];
    delete p;
}
Lewis Gordon Pringle, Jr.                                (lewis@sophists.com)
From: cogen@ll.mit.edu (David Cogen)
Newsgroups: gnu.g++.bug
Subject: Can't use -fPIC option
Date: 11 Nov 92 04:49:54 GMT
Article-I.D.: LL.9211110949.AA08840
Distribution: gnu
Organization: GNUs Not Usenet

The -fPIC and -fpic options seem to be dead. I need them to compile position
independent code for shared libraries. 

The environment:

  hancock% gcc -v
  Reading specs from /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.1/specs
  gcc version 2.3.1
  hancock% g++ -v
  Reading specs from /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.3.1/specs
  gcc version 2.3.1

  hancock% cat /etc/motd
  SunOS Release 4.1.1 (SUN4_2scsi) #4: Mon Jan 13 13:06:18 EST 1992
 
  Oct 21  xv              - version 2.21 displays images in the JPEG, GIF, 
                                  PBM, PGM, PPM, X11 bitmap, and PM formats

The sample source file:

  hancock% cat test.cc
  #include <iostream.h>

  void test (int argc, char **argv)
  {
    cout << "argc = " << argc << "\n";
    int argi;
    for (argi = 0; argi < argc; argi ++) {
      cout << "argv[" << argi << "] = " << argv[argi];
    }
  }

OK without -fPIC:

  hancock% g++ -c test.cc

But not with -fPIC:

  hancock% g++ -fPIC -c test.cc
  /usr/local/bin/gcc: Internal compiler error: program cc1plus got fatal signal 6

Please adivse. Is there a workaround? If I can't make shared libraries I will
not be able to use g++. I will be forced to use another product that is in all
other ways inferior.

Thanks,

David Cogen.
From: mrs@cygnus.com (Mike Stump)
Newsgroups: gnu.g++.bug
Subject: Re:  template feature
Date: 6 Nov 92 07:38:50 GMT
Article-I.D.: cygnus.9211060738.AA27691
Distribution: gnu
Organization: GNUs Not Usenet

This problem and been fixed, and should not exist in the next release
of gcc.

> Message-Id: <9206260147.AA22392@AECL.ntt.jp>
> From: gennart@nttica.ntt.jp
> To: bug-gcc@prep.ai.mit.edu
> Cc: gennart@nttica.ntt.jp
> Date: Fri, 26 Jun 92 10:50:28 +0900

> info :
>     compiler : g++ version 2.2.1
>     command  : g++ tnp.c -o tnp
>     machine  : sparc2 sunOS 4.1.1

> The following program is a naive attempt at making
> an intrusive list. However, compilation causes
> the following error :

>     tnp.c:4: parse error before `>'

> Can somebody explain why it does not compile ?

> file : tnp.c
>   L1
>   L2    template <class Type>
>   L3    struct ListT {
>   L4       ListT<Type>* NextP ;             
>   L5       ListT (Type* objectP) ;
>   L6    } ;
>   L7 
>   L8    template <class Type>
>   L9    ListT<Type>::ListT (Type* objectP)
>  L10
>  L11    {
>  L12         NextP = 0 ;
>  L13    }
>  L14
>  L15    int main ()
>  L16
>  L17    {
>  L18        ListT<int> l (0) ;
>  L19    }
>  L20

> The problem can be formulated as follows. I can write
> easily the following type :

>     struct ObjectT {
>         ObjectT* NextP ;
>     } ;

> But if I want to make a template out of it, I cannot.

>     template<Type>
>     struct ListT {
>         ListT<Type>* NextP ;
>     }
Newsgroups: gnu.g++.bug
From: anhaeupl@late.e-technik.uni-erlangen.DE (Bernd Anhaeupl)
Subject: g++ 2.3.1 - wrong register argument passing
Organization: GNUs Not Usenet
Distribution: gnu
Date: Mon, 9 Nov 1992 19:19:29 GMT

gcc version: 2.3.1
HPUX-Version: 8.07
configure:   configure hp720-hpux --gas

gcc does not always save register arguments on the stack when calling other
functions with the address of one of these arguments as argument.

Example:
-----------------------------------------------------
#include <iostream.h>
inline conv(const char*c)
{
        cout << "conv arg:"<< *c << "\n";
        return *c;
}

class foo
{
  public:
        char rep;
        foo(char c);
};

inline foo::foo(char c)
:rep(conv(&c))					<--(1)
{
        rep=conv(&c);				<--(2)
        cout << "foo arg:" << c << "\n";
}

int main()
{
        char a='@';
        foo  b(a);
        return 0;
}
-------------------------------------------------------
The constructor foo::foo receives c in a register. It should initilize the
correspondig memory position before <--(1), since it must pass the memory location
of this variable to conv(...). Actually the initialization takes place just
before <--(2), which is too late.

Newsgroups: gnu.g++.bug
From: mrs@cygnus.com (Mike Stump)
Newsgroups: gnu.g++.bug
Subject: Re:  g++ 2.2.1 template bug (3)
Date: 6 Nov 92 08:26:41 GMT
Article-I.D.: cygnus.9211060826.AA01395
Distribution: gnu
Organization: GNUs Not Usenet

This problem has been fixed, and should not exist in the next release
of gcc.

> Message-Id: <9206121505.AA01169@joker>
> From: stefan@mpi-sb.mpg.de
> To: bug-gcc@prep.ai.mit.edu
> Date: Fri, 12 Jun 92 17:05:13 +0200
> Organization: Universitaet des Saarlandes
>               D-W-6600 Saarbruecken, Germany

> // g++-2.2.1: friend function declaration in template class

> template <class T1, class T2> class A 
> { 
>    T1 a;
>    T2 b;

> friend T1 F1(A<T1,T2> x) { return x.a; }
> friend T2 F2(A<T1,T2> x) { return x.b; }

> };


> A<int,int> a;


> /*

> OUTPUT:

> Reading specs from /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.2.1/specs
> gcc version 2.2.1
>  /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.2.1/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -Dsparc -Dsun -Dunix -D__sparc__ -D__sun__ -D__unix__ -D__sparc -D__sun -D__unix template3.c /usr/tmp/cca16502.i
> GNU CPP version 2.2.1 (sparc)
>  /usr/local/lib/gcc-lib/sparc-sun-sunos4.1/2.2.1/cc1plus /usr/tmp/cca16502.i -quiet -dumpbase template3.cc -version -o /usr/tmp/cca16502.s
> GNU C++ version 2.2.1 (sparc) compiled by GNU C version 2.2.1.
> template3.c:10: parse error before `,'
> template3.c:11: parse error before `,'
> */
Newsgroups: gnu.g++.bug
From: brendan@cygnus.com (Brendan Kehoe)
Subject: bug in template instantiation
Reply-To: brendan@cygnus.com
Organization: GNUs Not Usenet
Distribution: gnu
Date: Sat, 7 Nov 1992 00:27:37 GMT

[By the way, I made it not spew out all of that nasty garbage.  I
still need to fix it to not barf like it does.]

> Sorry, the previous version of this bug report was slightly incorrect.
> 
> Version:
> Reading specs from /usr/local/lib/gcc-lib/sparc/2.3.1/specs
> gcc version 2.3.1
> on a Sun sparc workstation
> 
> Bug in template instantiation: I have a 
> 
> template < class T, enum Types Tcode, const char* Name >
> 
> and g++ belches on Name, on the line
> typedef qdesBase<long,Int,"integer scalar"> intScalar;
> saying
> 
> cd /u2/mcgrant/src/qdes/ver2/
> g++ -DNOINLINE -c bug1.C
> qdesVar.C:42: invalid pointer constant for template parameter
>  <pointer_type 195b60
>     type <integer_type 195b08 char readonly permanent QI
>         size <integer_cst 1932a8 constant permanent 8>
>         align 8 symtab 0 precision 8
>         min <integer_cst 193278 constant permanent -128>
>         max <integer_cst 193290 constant permanent 127>
>         pointer_to_this <pointer_type 195b60>>
>     unsigned permanent SI
>     size <integer_cst 1931b0 type <integer_type 193128 int> constant permanent 32>
>     align 32 symtab 0
>     pointer_to_this <pointer_type 1ab6b8>>
>  <nop_expr 1c37a8
>     type <pointer_type 195ab0
>         type <integer_type 193220 char permanent QI
>             size <integer_cst 1932a8 constant permanent 8>
>             align 8 symtab 0 precision 8
>             min <integer_cst 193278 constant permanent -128>
>             max <integer_cst 193290 constant permanent 127>
>             pointer_to_this <pointer_type 195ab0>>
>         unsigned permanent SI
>         size <integer_cst 1931b0 constant permanent 32>
>         align 32 symtab 0>
>     constant permanent
>     arg 0 <addr_expr 1c3790
>         type <pointer_type 1c3738 type <array_type 1c3668>
>             unsigned permanent SI size <integer_cst 1931b0 32>
>             align 32 symtab 0>
>         constant permanent
>         arg 0 <string_cst 1c35a8 type <array_type 1c3668>
>             constant permanent static "integer scalar">>>
> qdesVar.H:24: please fix above error, and try recompiling.

Newsgroups: gnu.g++.bug