Jim, > I am trying to compile some old C++ files of ours that include ldm.h. It > used to work with ldm-5.2.2 and gcc-3.2.3, but I am trying to upgrade to > ldm-6.6.5 and gcc-4.1.2. Here are the errors I am getting: > > /usr/local/ldm/include/ldm.h:386: error: declaration of 'prod_class* > feedpar::prod_class' > /usr/local/ldm/include/ldm.h:372: error: changes meaning of 'prod_class' > from 'typedef struct prod_class prod_class' > /usr/local/ldm/include/ldm.h:520: error: declaration of 'prod_class* > fornme_reply_t::<anonymous union>::prod_class' > /usr/local/ldm/include/ldm.h:372: error: changes meaning of 'prod_class' > from 'typedef struct prod_class prod_class' > make: *** [bddsReader.o] Error 1 > > I would greatly appreciate any suggestions you might have. I found this in the CHANGE_LOG file for version 6.7.0: Added the typedef "prod_class_t" to the header-file "ldm.h" and changed all code and documentation to use it instead of the typedef "prod_class". This was done to allow "ldm.h" to be processed by a C++ compiler. The typedef "prod_class" still exists for backward compatibility -- though it is no longer used in the code. Both C and C++ programmers should now use "prod_class_t" instead of "prod_class". I recommend getting the latest version of the LDM and changing all your uses of "prod_class" to "prod_class_t". > Thanks, > Jim Regards, Steve Emmerson Ticket Details =================== Ticket ID: PNF-494350 Department: Support LDM Priority: Normal Status: Closed
NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.