* bfd.c (struct bfd_preserve, bfd_preserve_save, bfd_preserve_restore,
[binutils-gdb.git] / gold / testsuite / odr_violation2.cc
index 6c57b6f18a01e6edc40cfc405f42d608bbbd75cc..e3d30f3949b0e204a885ffccacda779c32f115d4 100644 (file)
@@ -6,11 +6,14 @@ class Ordering {
   bool operator()(int a, int b) __attribute__((never_inline));
 };
 
+// This comment makes the line numbers in Ordering::operator() all have
+// two digits, which causes gold's output to be independent of which
+// instruction the compiler optimizes into the front of the function.
 bool Ordering::operator()(int a, int b) {
   // Optimization makes this operator() a different size than the one
   // in odr_violation1.cc.
-    return a + 1 > b + 1;
-  }
+  return a + 12345 > b / 67;
+}
 
 void SortDescending(int array[], int size) {
   std::sort(array, array + size, Ordering());