Author: dim
Date: Sun Jun 17 17:24:57 2018
New Revision: 335288
URL: https://svnweb.freebsd.org/changeset/base/335288

Log:
  MFC r334946:
  
  Fix build of i915kms with base gcc
  
  Base gcc fails to compile sys/dev/drm2/i915/intel_display.c for i386,
  with the following -Werror warnings:
  
  cc1: warnings being treated as errors
  /usr/src/sys/dev/drm2/i915/intel_display.c:8884: warning:
  initialization from incompatible pointer type
  
  This is due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36432, which
  incorrectly interprets the [] as a flexible array member.
  
  Because base gcc does not have a -W flag to suppress this particular
  warning, it requires a rather ugly cast.  To not influence any other
  compiler, put it in a #if/#endif block.
  
  Reviewed by:  kib
  Differential Revision: https://reviews.freebsd.org/D15744

Modified:
  stable/11/sys/dev/drm2/i915/intel_display.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/drm2/i915/intel_display.c
==============================================================================
--- stable/11/sys/dev/drm2/i915/intel_display.c Sun Jun 17 17:10:35 2018        
(r335287)
+++ stable/11/sys/dev/drm2/i915/intel_display.c Sun Jun 17 17:24:57 2018        
(r335288)
@@ -8872,7 +8872,15 @@ static int intel_dmi_reverse_brightness(const struct d
 
 static const struct intel_dmi_quirk intel_dmi_quirks[] = {
        {
-               .dmi_id_list = &(const struct dmi_system_id[]) {
+               .dmi_id_list =
+#if !defined(__clang__) && !__GNUC_PREREQ__(4, 3)
+                   /* gcc 4.2 needs an additional cast, to avoid a bogus
+                    * "initialization from incompatible pointer type" warning.
+                    * see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36432
+                    */
+                   (const struct dmi_system_id (*)[])
+#endif
+                   &(const struct dmi_system_id[]) {
                        {
                                .callback = intel_dmi_reverse_brightness,
                                .ident = "NCR Corporation",
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to