libtool
[Top][All Lists]
Advanced

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

Re: PGI and C++ templates


From: Ralf Wildenhues
Subject: Re: PGI and C++ templates
Date: Fri, 18 Mar 2005 08:15:27 +0100
User-agent: Mutt/1.4.1i

Hi Dave, others,

* address@hidden wrote on Fri, Mar 18, 2005 at 02:08:41AM CET:
> Ralf, Jeff, and everyone,
> 
>   We looked at what you did, and it appears you understand how
> things were put together.
> 
>   However, the 6.0 release is about to come out, and
> the template instantiation mechanism
> has been totally rewritten for linux targets.  All of the
> template related compiler switches will be deprecated:
> 
>         --one_instantiation_per_object
>         --instantiation_dir
>                 --instantiate
>                 --[no_]auto_instantiation
>         --prelink_objects
>         -Wc,-tlocal
>         -Wc,-tused
>         -Wc,-tall

This is great news, I think Jeff mentioned something so this extent.

> This new instantiation method uses the Gnu linker to resolve all
> template references and discard the duplicates.  This new feature
> is not compatible with previous releases.  Users will need to
> recompile all C++ code, and modify the build tools that do a
> prelink step.
> 
> In general, the compiler will simply ignore and give a warning
> when these template switches are used.  Tools that attempt
> to archive Template.dir/*.o will find that the directory
> is no longer created by the compiler driver.

OK.  I had planned to put my changes into a case statement like this
(and in fact, this is what my newest patch will look like):

  case `$CC -V` in
  *pgCC\ [1-5]*)
    # old-style stuff with --prelink_objects and so on ..
    ;;
  *)
    # just like g++ ...
    ;;
  esac

I reckon that should work with both old and new, unless the output style
of "pgCC -V" changes.

Thank you very much for your feedback,
Ralf




reply via email to

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