Can I install VAC++ and Compilers?

Can I install VAC++ and Compilers?

Post by wlt » Fri, 25 Aug 2000 11:10:54



Hello.

Can I install VisualAge C++ V5.0 and Compilers V 3.6.6
on the same machine on AIX 4.3.3?

Please advise me.

With regards,
woolist.

Sent via Deja.com http://www.deja.com/
Before you buy.

 
 
 

Can I install VAC++ and Compilers?

Post by Gary R. Hoo » Fri, 25 Aug 2000 04:00:00



> Hello.

> Can I install VisualAge C++ V5.0 and Compilers V 3.6.6
> on the same machine on AIX 4.3.3?

3.6 goes into /usr/ibmcxx; 5 goes into /usr/vac & /usr/vacpp

You can install both.

--
Gary R. Hook / AIX Kernel Development, IBM / These opinions are _MINE_
________________________________________________________________________
A piece of canvas is only the beginning
It takes on character with every loving stroke
This thing of beauty is the passion of an artist's heart
By God's design, we are a skin kaleidoscope    "Colored people", dc Talk

 
 
 

1. Template handling on VAC 5.0 compiler.

I posted the following on the ibm.software.vacpp.compiler
group a few weeks ago, but there seems to be little or no traffic
over there.    So, I was hoping maybe someone over here could help.

I have encountered a compile problem with template handling using
VAC 5.0.

This is code which has already been successfully compiled on
about 10 other platforms, but doesn't get past this compiler.     I've tried
all the obvious ways to solve this, but it's a bit stubborn.    If anyone is
familiar with the problem, I would welcome some pointers.

The basic problem concerns a member function of a template class.
The relevant snippets of the template definition are.

template<class T, int max>
class MySeq
{
public:

    typedef MySeq<T,max> tempParamType;
    DECLARE_MEMORY(tempParamType)

    ....  other declarations etc.

    static void                                 freebuf(T* p);

    .....  etc.

The function freebuf is declared in the same file as

template<class T, int max>
inline void
MySeq<T, max>::freebuf(T* buffer)
{
        if (buffer)
        {
        int     nelems  = vec_size(buffer);
        char            *       spp             = (char*)buffer;

                for (int i = nelems; i > 0; i--)
                {
                       ((T*)spp)->T::~T();       // Compiler fails on these
2 lines - see below
                        spp += sizeof(T);
                        .......etc.
                 }
         ......... etc.

I have taken the irrelevant bits out of the above for clarity.
When I instantiate the MySeq template, say with class X,
I get 2 errors (for the 2 lines indicated in the for loop above) :

The first is :
The "->" operator cannot be applied to the undefined class "class X".

The second is:
The use of undefined class "X" is not valid.

Basically, anywhere within freebuf that T is referenced produces an error.
The class X is definitely known at the point of instantiation (I have
double-checked this),
but the compiler seems to think it isn't.     I assume it is an error in the
above
definitions, but I have not as yet been able to track it down.
I have also looked at the VAC 5.0 guides extensively, but they have provided
no
clues.

Any help greatly appreciated,

Ken Darmody.

2. Newbie sound prob

3. vac.C vs xlccmp Compilers

4. Can't get ghostscript output into multiple files

5. String handling on VAC compiler (version 5) on AIX

6. Who can explain this one (CD-R related)

7. install visual age C++ (VAC) V5.x on AIX 4.3.3

8. compression utility?

9. ./configure runs incredibly slow after installing VAC++

10. Installing a compiler on a Lixux system with an existing compiler?

11. Matrox Mystique ands X.

12. It's not bad canned meat...