HLSL: Fix #1154: Support PointSize, as an attribute.
diff --git a/hlsl/hlslParseHelper.cpp b/hlsl/hlslParseHelper.cpp
index c418745..4022940 100755
--- a/hlsl/hlslParseHelper.cpp
+++ b/hlsl/hlslParseHelper.cpp
@@ -1854,6 +1854,9 @@
 // attributes.
 void HlslParseContext::transferTypeAttributes(const TAttributeMap& attributes, TType& type)
 {
+    if (attributes.size() == 0)
+        return;
+
     // location
     int value;
     if (attributes.getInt(EatLocation, value))
@@ -1880,6 +1883,13 @@
     // input attachment
     if (attributes.getInt(EatInputAttachment, value))
         type.getQualifier().layoutAttachment = value;
+
+    // PointSize built-in
+    TString builtInString;
+    if (attributes.getString(EatBuiltIn, builtInString, 0, false)) {
+        if (builtInString == "PointSize")
+            type.getQualifier().builtIn = EbvPointSize;
+    }
 }
 
 //