diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 2001-12-10 01:28:03 +0000 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2001-12-09 20:28:03 -0500 |
commit | 0b6c426b5d7299bfcf734b84e6885e4b13f74a7b (patch) | |
tree | 842cc6a6f8f9e704fe43acbb3e6082b5dff21624 /gcc/tree.c | |
parent | 6d8b12448d9bbe96517f2145a93f4589e947edb5 (diff) | |
download | gcc-0b6c426b5d7299bfcf734b84e6885e4b13f74a7b.zip gcc-0b6c426b5d7299bfcf734b84e6885e4b13f74a7b.tar.gz gcc-0b6c426b5d7299bfcf734b84e6885e4b13f74a7b.tar.bz2 |
tree.c (append_random_char): Conditionalize INO for VMS.
* tree.c (append_random_char): Conditionalize INO for VMS.
Co-Authored-By: Douglas B Rupp <rupp@gnat.com>
From-SVN: r47827
Diffstat (limited to 'gcc/tree.c')
-rw-r--r-- | gcc/tree.c | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -4467,14 +4467,20 @@ append_random_chars (template) { struct stat st; - /* VALUE should be unique for each file and must - not change between compiles since this can cause - bootstrap comparison errors. */ + /* VALUE should be unique for each file and must not change between + compiles since this can cause bootstrap comparison errors. */ if (stat (main_input_filename, &st) < 0) abort (); - value = st.st_dev ^ st.st_ino ^ st.st_mtime; + /* In VMS, ino is an array, so we have to use both values. We + conditionalize that. */ +#ifdef VMS +#define INO_TO_INT(INO) ((int) (INO)[1] << 16 ^ (int) (INO)[2]) +#else +#define INO_TO_INT(INO) INO +#endif + value = st.st_dev ^ INO_TO_INT (st.st_ino) ^ st.st_mtime; } template += strlen (template); |