Operating System - Linux
1753321 Members
6439 Online
108792 Solutions
New Discussion юеВ

Re: Using aC++ A.06.15 compiler version => Identifier "__fpreg" is undefined

 
SOLVED
Go to solution
Neel2
Regular Advisor

Re: Using aCC 06.15 compiler veersion => Identifier "__fpreg" is undefined

Hello Dennis,

Thanks a ton. The link is really helpfull for porting.

I quickly went thru and found same error described, at ISO-22. No storage class on template specialization (2080)

Where they have suggested to remove the static storage keyword to work on both compilers. It is correct way to solve the my bunch of errors?

OR I should use -W2759 on the command line according to ISO-42.

Best regards,
Neel

Dennis Handly
Acclaimed Contributor

Re: Using aC++ A.06.15 compiler version => Identifier "__fpreg" is undefined

>I quickly went thru and found same error described, at ISO-22. No storage class on template specialization (2080)
>It is correct way to solve the my bunch of errors?

This wasn't your problem, error 3449. You didn't have static there.

>OR I should use -W2759 on the command line according to ISO-42.

You don't have that either. (Unfortunately there is a typo, it should be +Ww2759.)

Neel2
Regular Advisor

Re: Using aCC 06.15 compiler veersion => Identifier "__fpreg" is undefined

Hi Dennis,

Thanks for your input. So I just want to know, to get rid of error #3449 explicit specialization of member...Is it un-avoidable with aCC6, there is no backward-compatibility? then what should be the best way to resolve the above error?

1.
Can I use some flag(command line)which will take care of the above discussed issue.

2. Do I need to start changing all source code files, ( which is itself huge no. of files) just becuase we have change the compiler version ?

3. What best available options are there to solve the above error ? your suggestions are always welcome.

Best regards,
Neel



Neel2
Regular Advisor

Re: Using aCC 06.15 compiler veersion => Identifier "__fpreg" is undefined

Hi Dennis,

Thanks for your input. So I just want to know, to get rid of error #3449 explicit specialization of member...Is it un-avoidable with aCC6, there is no backward-compatibility? then what should be the best way to resolve the above error?

1.
Can I use some flag(command line)which will take care of the above discussed issue.

2. Do I need to start changing all source code files, ( which is itself huge no. of files) just becuase we have change the compiler version ?

3. What best available options are there to solve the above discusse issue, since you the complete issue? your suggestions are always welcome.

Best regards,
Neel



Neel2
Regular Advisor

Re: Using aCC 06.15 compiler veersion => Identifier "__fpreg" is undefined

Hi Dennis,

Thanks for your valuable inputs. So I just want to know, to get rid of error #3449 explicit specialization of member...Is it un-avoidable with aCC6, there is no backward-compatibility? then what should be the best way to resolve the above error?

1.
Can I use some flag(command line)which will take care of the above discussed issue.

2. Do I need to start changing all source code files, ( which is itself huge no. of files) just becuase we have change the compiler version ?

3. What best available options are there to solve the above discusse issue, since you the complete issue? your suggestions are always welcome.

Best regards,
Neel



Dennis Handly
Acclaimed Contributor

Re: Using aC++ A.06.15 compiler version => Identifier "__fpreg" is undefined

>So I just want to know, to get rid of error #3449 explicit specialization of member. Is it unavoidable with aCC6, there is no backward-compatibility?

Yes, it is unavoidable. This is a bug in the old compiler that's been fixed. That it doesn't check for source layout errors.

>1. Can I use some flag which will take care of the above discussed issue.

There are no flags for this. (I don't remember seeing any customer complaints about it either.)

>2. Do I need to start changing all source code files, just because we have change the compiler version?

Yes, your code is broken and you have to fix it.

>3. What best available options are there to solve the above discussed issue, since you the complete issue?

Your only option is to add those explicit specialization declarations.

Neel2
Regular Advisor

Re: Using aCC 06.15 compiler veersion => Identifier "__fpreg" is undefined

Hi Dennis,

Thanks for reply. Today I found that one of my file extn is .c, and the compile log shows that it invoke the cc driver to compile .c file(below).I have set my driver as aCC, and want to compile .c file with aCC only. I do not want to automatically take care by driver, then which flag should I pass from command line to forcefully compile .c file with aCC.

cc -c -D_REENTRANT -mt -g +DD32 +Z -DDEBUG -I.. templates.c -o templates.o

Best regards,
Neel

Dennis Handly
Acclaimed Contributor

Re: Using aC++ A.06.15 compiler version => Identifier "__fpreg" is undefined

>which flag should I pass from command line to forcefully compile .c file with aCC.

The -Ae, -AC89 or -AC99 options:
aCC -Ae -c -mt -g +DD32 +Z -DDEBUG -I.. templates.c

Neel2
Regular Advisor

Re: Using aCC 06.15 compiler veersion => Identifier "__fpreg" is undefined

Thanks Dennis.

I have one more question regarding the template. I found that +ESnolit needed for compiler/linker workaround for templates at least through ACC 03.33/03.30. And -DOS_ENABLE_MEMBER_TEMPLATE_FEATURES in one of our makefiles, Is it still available with aCC6?

Also, +inst_compiletime flag can be useful for the above discussed issue of template?

Best regards,
Neel
Neel2
Regular Advisor

Re: Using aCC 06.15 compiler veersion => Identifier "__fpreg" is undefined

aCC -c -Ae +DD32 +Z -g0 -v template.c

/opt/aCC.06.15/opt/aCC/lbin/ecom -architecture 32 -ia64abi all -ext on -lang c -exception off -sysdir /usr/include -inline_power 1 -link_type dynamic -fpeval float -tls_dyn on -target_os 11.23 --sys_include /usr/include -D__hpux -D__unix -D__ia64=1 -D_BIG_ENDIAN=1 -D__STDCPP__ -D_ILP32 -D__HP_cc=61500 -D__STDC_EXT__ -D_HPUX_SOURCE -D_INCLUDE_LONGLONG -D_INLINE_ASM -D_BIND_LIBCALLS -D_Math_errhandling=MATH_ERREXCEPT -D_FLT_EVAL_METHOD=0 -debug debugG -ucode hdriver=optlevel%1% -plusolistoption -Ol06all! -plusolistoption -Ol13moderate! -plusooption -Oq01,al,ag,cn,sz,ic,vo,Mf,Po,es,rs,Rf,Pr,sp,in,cl,om,vc,pi,fa,pe,rr,pa,pv,nf,cp,lx,Pg,ug,lu,lb,uj,dn,sg,pt,kt,em,np,ar,rp,dl,fs,bp,wp,pc,mp,lr,cx,cr,pi,so,Rc,fa,ft,fe,ap,st,lc,Bl,sr,ib,pl,sd,ll,rl,dl,Lt,ol,fl,lm,ts,rd,dp,If! t.c

Hi Dennis,

When I used command line flag "-Ae", and looking at verbose it shows that "-D__HP_cc=61500", what does it mean, i found that broke my compilation since we had some check for __HP_aCC which got failed now.

I am looking for a flag which will treat .c file as .cpp and will be compile with aCC.

Best regards,
Neel