Merge "Fix Google pylint warnings."
diff --git a/core/definitions.mk b/core/definitions.mk
index b8e57be..83f7efc 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -3144,18 +3144,27 @@
 
 define link-type-partitions
 ifndef LOCAL_IS_HOST_MODULE
-ifeq (true,$(LOCAL_PROPRIETARY_MODULE))
+ifneq (true,$(LOCAL_UNINSTALLABLE_MODULE))
+ifneq ($(filter $(TARGET_OUT_VENDOR)/%,$(my_module_path)),)
 $(1): PRIVATE_LINK_TYPE += partition:vendor
+$(1): PRIVATE_WARN_TYPES += partition:data
 $(1): PRIVATE_ALLOWED_TYPES += partition:vendor partition:oem partition:odm
-else ifeq (true,$(LOCAL_OEM_MODULE))
+else ifneq ($(filter $(TARGET_OUT_OEM)/%,$(my_module_path)),)
 $(1): PRIVATE_LINK_TYPE += partition:oem
+$(1): PRIVATE_WARN_TYPES += partition:data
 $(1): PRIVATE_ALLOWED_TYPES += partition:vendor partition:oem partition:odm
-else ifeq (true,$(LOCAL_ODM_MODULE))
+else ifneq ($(filter $(TARGET_OUT_ODM)/%,$(my_module_path)),)
 $(1): PRIVATE_LINK_TYPE += partition:odm
+$(1): PRIVATE_WARN_TYPES += partition:data
 $(1): PRIVATE_ALLOWED_TYPES += partition:vendor partition:oem partition:odm
+else ifneq ($(filter $(TARGET_OUT_DATA)/%,$(my_module_path)),)
+$(1): PRIVATE_LINK_TYPE += partition:data
+$(1): PRIVATE_ALLOWED_TYPES += partition:data partition:vendor partition:oem partition:odm
 else
-# TODO: Mark libraries in /data
-$(1): PRIVATE_WARN_TYPES += partition:vendor partition:oem partition:odm
+$(1): PRIVATE_WARN_TYPES += partition:vendor partition:oem partition:odm partition:data
+endif
+else # uninstallable module
+$(1): PRIVATE_ALLOWED_TYPES += partition:vendor partition:oem partition:odm partition:data
 endif
 endif
 endef
diff --git a/tools/warn.py b/tools/warn.py
index f635ea1..c223d9e 100755
--- a/tools/warn.py
+++ b/tools/warn.py
@@ -338,6 +338,9 @@
     { 'category':'C/C++',   'severity':severity.MEDIUM, 'option':'-Wunknown-pragmas',
         'description':'Ignoring pragma',
         'patterns':[r".*: warning: ignoring #pragma .+"] },
+    { 'category':'C/C++',   'severity':severity.MEDIUM, 'option':'-W#pragma-messages',
+        'description':'Pragma warning messages',
+        'patterns':[r".*: warning: .+W#pragma-messages"] },
     { 'category':'C/C++',   'severity':severity.MEDIUM, 'option':'-Wclobbered',
         'description':'Variable might be clobbered by longjmp or vfork',
         'patterns':[r".*: warning: variable '.+' might be clobbered by 'longjmp' or 'vfork'"] },
@@ -1442,6 +1445,9 @@
     { 'category':'C/C++',   'severity':severity.MEDIUM,
         'description':'Closing a previously closed file',
         'patterns':[r".*: warning: Closing a previously closed file"] },
+    { 'category':'C/C++',   'severity':severity.MEDIUM, 'option':'-Wunnamed-type-template-args',
+        'description':'Unnamed template type argument',
+        'patterns':[r".*: warning: template argument.+Wunnamed-type-template-args"] },
 
     { 'category':'C/C++',   'severity':severity.HARMLESS,
         'description':'Discarded qualifier from pointer target type',