[PATCH] D29986: Fix crash when an incorrect redeclaration only differs in __unaligned type-qualifier

2017-02-24 Thread Roger Ferrer Ibanez via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL296099: Fix crash when an incorrect redeclaration only 
differs in __unaligned type… (authored by rogfer01).

Changed prior to commit:
  https://reviews.llvm.org/D29986?vs=88514=89617#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D29986

Files:
  cfe/trunk/lib/AST/ASTContext.cpp
  cfe/trunk/test/Sema/unaligned-qualifier.c


Index: cfe/trunk/test/Sema/unaligned-qualifier.c
===
--- cfe/trunk/test/Sema/unaligned-qualifier.c
+++ cfe/trunk/test/Sema/unaligned-qualifier.c
@@ -0,0 +1,4 @@
+// RUN: %clang_cc1 %s -verify -fsyntax-only -fms-extensions
+
+int __unaligned * p1; // expected-note {{previous definition is here}}
+int * p1; // expected-error {{redefinition of 'p1' with a different type: 'int 
*' vs '__unaligned int *'}}
Index: cfe/trunk/lib/AST/ASTContext.cpp
===
--- cfe/trunk/lib/AST/ASTContext.cpp
+++ cfe/trunk/lib/AST/ASTContext.cpp
@@ -8077,7 +8077,8 @@
 // mismatch.
 if (LQuals.getCVRQualifiers() != RQuals.getCVRQualifiers() ||
 LQuals.getAddressSpace() != RQuals.getAddressSpace() ||
-LQuals.getObjCLifetime() != RQuals.getObjCLifetime())
+LQuals.getObjCLifetime() != RQuals.getObjCLifetime() ||
+LQuals.hasUnaligned() != RQuals.hasUnaligned())
   return QualType();
 
 // Exactly one GC qualifier difference is allowed: __strong is


Index: cfe/trunk/test/Sema/unaligned-qualifier.c
===
--- cfe/trunk/test/Sema/unaligned-qualifier.c
+++ cfe/trunk/test/Sema/unaligned-qualifier.c
@@ -0,0 +1,4 @@
+// RUN: %clang_cc1 %s -verify -fsyntax-only -fms-extensions
+
+int __unaligned * p1; // expected-note {{previous definition is here}}
+int * p1; // expected-error {{redefinition of 'p1' with a different type: 'int *' vs '__unaligned int *'}}
Index: cfe/trunk/lib/AST/ASTContext.cpp
===
--- cfe/trunk/lib/AST/ASTContext.cpp
+++ cfe/trunk/lib/AST/ASTContext.cpp
@@ -8077,7 +8077,8 @@
 // mismatch.
 if (LQuals.getCVRQualifiers() != RQuals.getCVRQualifiers() ||
 LQuals.getAddressSpace() != RQuals.getAddressSpace() ||
-LQuals.getObjCLifetime() != RQuals.getObjCLifetime())
+LQuals.getObjCLifetime() != RQuals.getObjCLifetime() ||
+LQuals.hasUnaligned() != RQuals.hasUnaligned())
   return QualType();
 
 // Exactly one GC qualifier difference is allowed: __strong is
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D29986: Fix crash when an incorrect redeclaration only differs in __unaligned type-qualifier

2017-02-24 Thread Roger Ferrer Ibanez via Phabricator via cfe-commits
rogfer01 added a comment.

Sorry for the noise. I was expecting some more formal approval in the usual 
form of "Ready to land" but if you think it is OK I will commit it shortly.

Regards.


https://reviews.llvm.org/D29986



___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D29986: Fix crash when an incorrect redeclaration only differs in __unaligned type-qualifier

2017-02-23 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment.

In https://reviews.llvm.org/D29986#684811, @rogfer01 wrote:

> Ping?


Are you expecting something even more conclusive than "looks good to me"?  
Because I sent you that feedback a week ago. :)


https://reviews.llvm.org/D29986



___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D29986: Fix crash when an incorrect redeclaration only differs in __unaligned type-qualifier

2017-02-23 Thread Roger Ferrer Ibanez via Phabricator via cfe-commits
rogfer01 added a comment.

Ping?


https://reviews.llvm.org/D29986



___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D29986: Fix crash when an incorrect redeclaration only differs in __unaligned type-qualifier

2017-02-16 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment.

LGTM.


https://reviews.llvm.org/D29986



___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D29986: Fix crash when an incorrect redeclaration only differs in __unaligned type-qualifier

2017-02-15 Thread Roger Ferrer Ibanez via Phabricator via cfe-commits
rogfer01 created this revision.

This patch fixes an assertion that is hit when a redeclaration with differing 
types only differs in the unaligned type-qualifier.


https://reviews.llvm.org/D29986

Files:
  lib/AST/ASTContext.cpp
  test/Sema/unaligned-qualifier.c


Index: test/Sema/unaligned-qualifier.c
===
--- /dev/null
+++ test/Sema/unaligned-qualifier.c
@@ -0,0 +1,4 @@
+// RUN: %clang_cc1 %s -verify -fsyntax-only -fms-extensions
+
+int __unaligned * p1; // expected-note {{previous definition is here}}
+int * p1; // expected-error {{redefinition of 'p1' with a different type: 'int 
*' vs '__unaligned int *'}}
Index: lib/AST/ASTContext.cpp
===
--- lib/AST/ASTContext.cpp
+++ lib/AST/ASTContext.cpp
@@ -8077,7 +8077,8 @@
 // mismatch.
 if (LQuals.getCVRQualifiers() != RQuals.getCVRQualifiers() ||
 LQuals.getAddressSpace() != RQuals.getAddressSpace() ||
-LQuals.getObjCLifetime() != RQuals.getObjCLifetime())
+LQuals.getObjCLifetime() != RQuals.getObjCLifetime() ||
+LQuals.hasUnaligned() != RQuals.hasUnaligned())
   return QualType();
 
 // Exactly one GC qualifier difference is allowed: __strong is


Index: test/Sema/unaligned-qualifier.c
===
--- /dev/null
+++ test/Sema/unaligned-qualifier.c
@@ -0,0 +1,4 @@
+// RUN: %clang_cc1 %s -verify -fsyntax-only -fms-extensions
+
+int __unaligned * p1; // expected-note {{previous definition is here}}
+int * p1; // expected-error {{redefinition of 'p1' with a different type: 'int *' vs '__unaligned int *'}}
Index: lib/AST/ASTContext.cpp
===
--- lib/AST/ASTContext.cpp
+++ lib/AST/ASTContext.cpp
@@ -8077,7 +8077,8 @@
 // mismatch.
 if (LQuals.getCVRQualifiers() != RQuals.getCVRQualifiers() ||
 LQuals.getAddressSpace() != RQuals.getAddressSpace() ||
-LQuals.getObjCLifetime() != RQuals.getObjCLifetime())
+LQuals.getObjCLifetime() != RQuals.getObjCLifetime() ||
+LQuals.hasUnaligned() != RQuals.hasUnaligned())
   return QualType();
 
 // Exactly one GC qualifier difference is allowed: __strong is
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits