bug-cgicc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: cgicc compile on HP-UX 11.11 using aCC


From: Stephen F. Booth
Subject: RE: cgicc compile on HP-UX 11.11 using aCC
Date: Wed, 9 Jan 2002 08:55:22 -0500

I'll try to address your two issues separately:

> I was able to compile cgicc version 3.1.5 on HP-UX 11.11 using the
> HP aCC c++ compiler (version C.03.26).  However, I had to make the
> following changes.
> 
> I would appreciate it if these changes could be included in the next
> version of cgicc.

I'll be happy to incorporate the changes, but I have a few questions to
help clear things up in my head.

> 1)  The HP aCC compilter requires a -AA compiler option in order
>     to compile ANSI C++ code.  I couldn't figure out a way to do
>     this via configure (although there may be a way.)
> 
>     To resolve this issue, I changed line 94 of the cgicc/Makefile
> 
>     from:
> 
>       DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I.
> 
>     to:
> 
>       DEFS = -DHAVE_CONFIG_H -I. -I$(srcdir) -I. -AA

Is there a way with aCC to tell the compiler type?  For example, if at
configure time cgicc detects g++ it enables some verbose warnings and
things of that nature.  But I need to know a command line switch and the
output so I can grep for a version string or type information.  Just
something simple like

% aCC -v

which produces 

HP C++ compiler ...

Or something that will uniquely identify that compiler so I can
selectively enable the switch.

> 2)  The MStreamable.cpp file is missing the CGICC_BEGIN_NAMESPACE,
>     and CGICC_END_NAMESPACE macros at the beginning and end of the
>     file.  I'm not sure why it compiles correctly with gcc, but the
>     HP aCC compiler gave compiler errors without these macros.
> 
>       Here's the (HP) diff -e output to fix the problem:
> 
> BEGIN--------------------------------------------
> 36a
> 
> CGICC_END_NAMESPACE
> .
> 26a
> CGICC_BEGIN_NAMESPACE
> 
> .
> END----------------------------------------------

I'm not sure that MStreamable.cpp needs to have those macros- my general
approach is that in longer cpp files I will use those macros, but in
shorter files like MStreamable I use the CGICCNS macro which usually
expands to 'cgicc::', which should take care of the scoping.  I'm not
sure why it didn't work.  If you look at the pre-processed output is
there actually a namespace qualifier in front of the streaming operator?

> Please let me know if you have any questions regarding these issues.
> James Wade and myself (both HP employees) found these issues.

Thanks for the info!

-Stephen





reply via email to

[Prev in Thread] Current Thread [Next in Thread]