Remove unnecessary friend decls; fix Win-Clang builds

Clang builds on Windows were failing with:

..\..\v8\src\register-configuration.cc(85,17) :  error: unqualified friend
declaration referring to type outside of the nearest enclosing namespace is
a Microsoft extension; add a nested name specifier
[-Werror,-Wmicrosoft-unqualified-friend]

  friend struct Register;
                ^
                ::v8::internal::

How did it work on non-Windows? The friend declarations were declaring
new Register and DoubleRegister structs in the current namespace, instead
of refering the existing classes in the outer namespce.

The code isn't referencing any private members of these classes anyway,
so let's drop the friend declarations.

BUG=82385
LOG=n

Review URL: https://codereview.chromium.org/1389723002

Cr-Commit-Position: refs/heads/master@{#31113}
This commit is contained in:
hans 2015-10-05 12:34:33 -07:00 committed by Commit bot
parent 369d1c5ae1
commit 57ca0f36c4

View File

@ -82,9 +82,6 @@ class ArchDefaultRegisterConfiguration : public RegisterConfiguration {
const char* double_register_name_table_[DoubleRegister::kMaxNumRegisters];
private:
friend struct Register;
friend struct DoubleRegister;
static const int* GetAllocatableGeneralCodes() {
#define REGISTER_CODE(R) Register::kCode_##R,
static const int general_codes[] = {