From c5f5123f4a887df97deebeadb993ec95cbac2c22 Mon Sep 17 00:00:00 2001 From: Arnaud Charlet Date: Fri, 2 Sep 2011 11:47:42 +0200 Subject: [multiple changes] 2011-09-02 Robert Dewar * exp_ch4.adb, exp_ch6.adb, prj-nmsc.adb: Minor reformatting. 2011-09-02 Hristian Kirtchev * exp_util.adb (Extract_Renamed_Object): Renamed to Find_Renamed_Object. This routine has been reimplemented and now uses tree traversal to locate a renamed object. (Is_Aliased): Replace call to Extract_Renamed_Object with Find_Renamed_Object. 2011-09-02 Tristan Gingold * init.c: (__gnat_is_vms_v7): New function. 2011-09-02 Olivier Hainque * tracebak.c (STOP_FRAME, ppc elf/vxworks case): Stop on frames that have a misaligned backchain, necessarily bogus. From-SVN: r178457 --- gcc/ada/init.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gcc/ada/init.c') diff --git a/gcc/ada/init.c b/gcc/ada/init.c index 0e6fb11745c..02771d57c7c 100644 --- a/gcc/ada/init.c +++ b/gcc/ada/init.c @@ -1747,6 +1747,29 @@ __gnat_set_features (void) __gnat_features_set = 1; } +/* Return true if the VMS version is 7.x. */ + +#define SYI$_VERSION 0x1000 + +int +__gnat_is_vms_v7 (void) +{ + struct descriptor_s desc; + char version[8]; + int status; + int code = SYI$_VERSION; + + desc.len = sizeof (version); + desc.mbz = 0; + desc.adr = version; + + status = lib$getsyi (&code, 0, &desc); + if ((status & 1) == 1 && version[1] == '7' && version[2] == '.') + return 1; + else + return 0; +} + /*******************/ /* FreeBSD Section */ /*******************/ -- cgit v1.2.1