make CheckArithmeticConstantExpression() aware of &foo and pointers

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@55607 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Sema/array-init.c b/test/Sema/array-init.c
index 24a0070..7d6e6c6 100644
--- a/test/Sema/array-init.c
+++ b/test/Sema/array-init.c
@@ -222,3 +222,16 @@
 struct {int a; int:5;} noNamedImplicit[] = {1,2,3};
 int noNamedImplicitCheck[sizeof(noNamedImplicit) == 3 * sizeof(*noNamedImplicit) ? 1 : -1];
 
+
+// ptrs are constant
+struct soft_segment_descriptor {
+	int ssd_base;
+};
+static int dblfault_tss;
+
+union uniao { int ola; } xpto[1];
+
+struct soft_segment_descriptor gdt_segs[] = {
+	{(int) &dblfault_tss},
+	{ (int)xpto},
+};