|
From: Scott Klement Joe Pluta wrote:I couldn't get it to compile and the documentation said it couldn't be done (it says you can only map to a 10-character object name). I forgot the quotes and of course I should know better than to rely on the documentation.From the V5R3 ILE C/C++ Compiler Reference manual (page 54): #--pragma--map--(--name1--,--"--name2--"--) Specifies that the compiler is to replace the external symbol (that is used in your C source) "name1" with the external symbol "name2". Case significance is preseved only for those systems that support case distinction for external symbols. The #pragma map directive supports library-qualified program names. See "linkage" on page 52 for more information. I agree that this documentation is rather confusing. (In particular, the reference to "linkage" is confusing and misleading.) But it does say that it supports library-qualified program names.
I got it from here: http://publib.boulder.ibm.com/infocenter/iadthelp/v6r0/index.jsp?topic=/com. ibm.etools.iseries.pgmgd.doc/cpprog508.htm "The program name that the ILE C/C++ program calls must be in uppercase. You can use the #pragma map directive to map an internal identifier longer than 10 characters to an OS/400-compliant object name (10 characters or less) in your program." Says pretty clearly it must be an uppercase object name of ten characters or less, which led me to believe that fully qualified wouldn't work. This wouldn't be the first time two IBM documents didn't agree. Joe
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.