Skip to content

Fix all "Double-quoted include in framework header, expected angle-bracketed instead" warnings #60025

@jmagman

Description

@jmagman

Xcode 14 beta 1 is shipping with clang version 12.0.0 (clang-1200.0.22.7). First opening a newly created Flutter app suggests setting CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER=YES.

Warns when a quoted include is used instead of a framework style include in a framework header.

Turning it on spews warnings for all the places Flutter framework is using a project (quote) include instead of a framework (angle bracket) import.

While we're at it, can we switch all these from includes to imports?

Flutter.h:54:10: warning: double-quoted include "FlutterAppDelegate.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterAppDelegate.h"
         ^~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterAppDelegate.h>

FlutterAppDelegate.h:10:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>

FlutterAppDelegate.h:11:10: warning: double-quoted include "FlutterPlugin.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterPlugin.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterPlugin.h>

FlutterPlugin.h:11:10: warning: double-quoted include "FlutterBinaryMessenger.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterBinaryMessenger.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterBinaryMessenger.h>

FlutterBinaryMessenger.h:10:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>

FlutterPlugin.h:12:10: warning: double-quoted include "FlutterChannels.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterChannels.h"
         ^~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterChannels.h>

FlutterChannels.h:8:10: warning: double-quoted include "FlutterBinaryMessenger.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterBinaryMessenger.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterBinaryMessenger.h>
FlutterChannels.h:9:10: warning: double-quoted include "FlutterCodecs.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterCodecs.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterCodecs.h>

FlutterCodecs.h:9:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>

FlutterPlugin.h:13:10: warning: double-quoted include "FlutterCodecs.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterCodecs.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterCodecs.h>
FlutterPlugin.h:14:10: warning: double-quoted include "FlutterPlatformViews.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterPlatformViews.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterPlatformViews.h>

FlutterPlatformViews.h:10:9: warning: double-quoted include "FlutterCodecs.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#import "FlutterCodecs.h"
        ^~~~~~~~~~~~~~~~~
        <Flutter/FlutterCodecs.h>
FlutterPlatformViews.h:11:9: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#import "FlutterMacros.h"
        ^~~~~~~~~~~~~~~~~
        <Flutter/FlutterMacros.h>

FlutterPlugin.h:15:10: warning: double-quoted include "FlutterTexture.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterTexture.h"
         ^~~~~~~~~~~~~~~~~~
         <Flutter/FlutterTexture.h>

FlutterTexture.h:11:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>

Flutter.h:55:10: warning: double-quoted include "FlutterBinaryMessenger.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterBinaryMessenger.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterBinaryMessenger.h>
Flutter.h:56:10: warning: double-quoted include "FlutterCallbackCache.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterCallbackCache.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterCallbackCache.h>

FlutterCallbackCache.h:10:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>

Flutter.h:57:10: warning: double-quoted include "FlutterChannels.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterChannels.h"
         ^~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterChannels.h>
Flutter.h:58:10: warning: double-quoted include "FlutterCodecs.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterCodecs.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterCodecs.h>
Flutter.h:59:10: warning: double-quoted include "FlutterDartProject.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterDartProject.h"
         ^~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterDartProject.h>

FlutterDartProject.h:10:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>

Flutter.h:60:10: warning: double-quoted include "FlutterEngine.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterEngine.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterEngine.h>

FlutterEngine.h:11:10: warning: double-quoted include "FlutterBinaryMessenger.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterBinaryMessenger.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterBinaryMessenger.h>
FlutterEngine.h:12:10: warning: double-quoted include "FlutterDartProject.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterDartProject.h"
         ^~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterDartProject.h>
FlutterEngine.h:13:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>
FlutterEngine.h:14:10: warning: double-quoted include "FlutterPlugin.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterPlugin.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterPlugin.h>
FlutterEngine.h:15:10: warning: double-quoted include "FlutterTexture.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterTexture.h"
         ^~~~~~~~~~~~~~~~~~
         <Flutter/FlutterTexture.h>

Flutter.h:61:10: warning: double-quoted include "FlutterHeadlessDartRunner.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterHeadlessDartRunner.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterHeadlessDartRunner.h>

FlutterHeadlessDartRunner.h:10:10: warning: double-quoted include "FlutterBinaryMessenger.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterBinaryMessenger.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterBinaryMessenger.h>
FlutterHeadlessDartRunner.h:11:10: warning: double-quoted include "FlutterDartProject.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterDartProject.h"
         ^~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterDartProject.h>
FlutterHeadlessDartRunner.h:12:10: warning: double-quoted include "FlutterEngine.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterEngine.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterEngine.h>
FlutterHeadlessDartRunner.h:13:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>

Flutter.h:62:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>
Flutter.h:63:10: warning: double-quoted include "FlutterPlatformViews.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterPlatformViews.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterPlatformViews.h>
Flutter.h:64:10: warning: double-quoted include "FlutterPlugin.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterPlugin.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterPlugin.h>
Flutter.h:65:10: warning: double-quoted include "FlutterPluginAppLifeCycleDelegate.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterPluginAppLifeCycleDelegate.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterPluginAppLifeCycleDelegate.h>

FlutterPluginAppLifeCycleDelegate.h:8:10: warning: double-quoted include "FlutterPlugin.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterPlugin.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterPlugin.h>

Flutter.h:66:10: warning: double-quoted include "FlutterTexture.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterTexture.h"
         ^~~~~~~~~~~~~~~~~~
         <Flutter/FlutterTexture.h>
Flutter.h:67:10: warning: double-quoted include "FlutterViewController.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterViewController.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterViewController.h>

FlutterViewController.h:11:10: warning: double-quoted include "FlutterBinaryMessenger.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterBinaryMessenger.h"
         ^~~~~~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterBinaryMessenger.h>
FlutterViewController.h:12:10: warning: double-quoted include "FlutterDartProject.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterDartProject.h"
         ^~~~~~~~~~~~~~~~~~~~~~
         <Flutter/FlutterDartProject.h>
FlutterViewController.h:13:10: warning: double-quoted include "FlutterEngine.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterEngine.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterEngine.h>
FlutterViewController.h:14:10: warning: double-quoted include "FlutterMacros.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterMacros.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterMacros.h>
FlutterViewController.h:15:10: warning: double-quoted include "FlutterPlugin.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterPlugin.h"
         ^~~~~~~~~~~~~~~~~
         <Flutter/FlutterPlugin.h>
FlutterViewController.h:16:10: warning: double-quoted include "FlutterTexture.h" in framework header, expected angle-bracketed instead [-Wquoted-include-in-framework-header]
#include "FlutterTexture.h"
         ^~~~~~~~~~~~~~~~~~
         <Flutter/FlutterTexture.h>

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Issues that are less important to the Flutter projecta: qualityA truly polished experienceengineflutter/engine related. See also e: labels.platform-iosiOS applications specificallyteam-iosOwned by iOS platform teamtriaged-iosTriaged by iOS platform team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions