[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference turris::c_plus_plus

Title:C++
Notice:Read 1.* and use keywords (e.g. SHOW KEY/FULL KIT_CXX_VAX_VMS)
Moderator:DECCXX::AMARTIN
Created:Fri Nov 06 1987
Last Modified:Thu Jun 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:3604
Total number of notes:18242

3436.0. "migrate Alpha -> VAX" by DV780::LANGFELDT (Coloradical) Thu Feb 06 1997 18:44

    
    I have a customer who for reasons I won't go into here, is migrating 
    from Alpha to VAX.  
    
    Are there any "gotchas" I need to warn them about?  They use STL 
    quite heavily.
    
    Thanks,
    
    Sharon
T.RTitleUserPersonal
Name
DateLines
3436.1STL-specific problems...DECC::J_WARDThu Feb 06 1997 19:4833

The only difference specific to VAX that might
affect users of the STL (that we know about)
are: 

1. string pooling does not occur on VAX/VMS, i.e.:

/*
This program prints "they are equal" on Digital
Unix and Alpha VMS but does not print anything on 
VAX VMS. 
*/
extern "C" int printf(const char*,...);

int main() {
	if ("Smith" == "Smith") 
		printf("they are equal\n");
	return 0;
}

2. You can get a "virtual memory exceeded" compiler error
on VAX when instantiating complicated STL templates, i.e.:

#include <map>
#include <string>

// A map<int,int> works ok
// A vector<string> is ok

map<string, string> mymap; // this causes VAX VMS compiler problems 

I think we're hoping to fix this one in the next release (V5.6).