// debug_msg.cc -- a test case for printing debug info for missing symbols.
-// Copyright 2006, 2007, 2008 Free Software Foundation, Inc.
+// Copyright (C) 2006-2019 Free Software Foundation, Inc.
// Written by Ian Lance Taylor <iant@google.com>.
// This file is part of gold.
// This tests One Definition Rule (ODR) violations.
void SortAscending(int array[], int size); // in odr_violation1.cc
void SortDescending(int array[], int size); // in odr_violation2.cc
+// This tests One Definition Rule (ODR) non-violations.
+#include "odr_header2.h"
+OdrBase* CreateOdrDerived1(); // in odr_violation1.cc
+OdrBase* CreateOdrDerived2(); // in odr_violation2.cc
+
+extern "C" int OverriddenCFunction(int i); // in odr_violation*.cc
+
+inline int SometimesInlineFunction(int i) { // strong in odr_violation2.cc.
+ return i * i * 3;
+}
+
int main()
{
int kSize2 = sizeof(kInput2) / sizeof(int);
SortDescending(kInput2, kSize2);
+ OverriddenCFunction(3);
+ SometimesInlineFunction(3);
+
+ delete CreateOdrDerived1();
+ delete CreateOdrDerived2();
+
return 0;
}