Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flutter engine build failure using clang 10 #55071

Open
JakeSays opened this issue Apr 17, 2020 · 2 comments
Open

Flutter engine build failure using clang 10 #55071

JakeSays opened this issue Apr 17, 2020 · 2 comments
Labels
c: new feature Nothing broken; request for a new capability engine flutter/engine repository. See also e: labels. P3 Issues that are less important to the Flutter project team-engine Owned by Engine team triaged-engine Triaged by Engine team

Comments

@JakeSays
Copy link

JakeSays commented Apr 17, 2020

I am re-building my custom engine build using clang 10 and have encountered the following build errors:

In file included from ../../flutter/lib/ui/window/window.cc:5:
In file included from ../../flutter/lib/ui/window/window.h:16:
../../flutter/lib/ui/window/viewport_metrics.h:54:3: error: definition of implicit copy assignment operator for 'ViewportMetrics' is deprecated because it has a user-declared copy constructor [-Werror,-Wdeprecated-copy]
  ViewportMetrics(const ViewportMetrics& other);
  ^
../../flutter/lib/ui/window/window.cc:190:21: note: in implicit copy assignment operator for 'flutter::ViewportMetrics' first required here
  viewport_metrics_ = metrics;
../../third_party/icu/source/i18n/plurrule.cpp:1664:24: error: implicit conversion from 'int64_t' (aka 'long long') to 'double' changes value from 9223372036854775807 to 9223372036854775808 [-Werror,-Wimplicit-int-float-conversion]
          if (scaled > U_INT64_MAX) {
                     ~ ^~~~~~~~~~~
../../third_party/icu/source/common/unicode/umachine.h:212:33: note: expanded from macro 'U_INT64_MAX'
#     define U_INT64_MAX       ((int64_t)(INT64_C(9223372036854775807)))
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

As an experiment, adding -Wno-deprecated-copy -Wno-implicit-int-float-conversion to toolchain.ninja allowed the build to complete, and the resulting engine runs fine.

Host arch: x86_64 ubuntu linux 19.10
Target arch: arm-linux-gnueabihf

Output of /p/flutter/f/flutter-build-master/flutter/bin/flutter --local-engine=linux_debug_arm --version below (before rebuild):

Flutter 1.12.13+hotfix.8 • channel v1.12.13-hotfixes • https://github.com/flutter/flutter
Framework • revision 0b8abb4724 (9 weeks ago) • 2020-02-11 11:44:36 -0800
Engine • revision e1e6ced81d
Tools • Dart 2.7.0

Note that the exact same source tree built fine with clang 8, same configuration.

@iapicca iapicca added engine flutter/engine repository. See also e: labels. c: crash Stack traces logged to the console tool Affects the "flutter" command-line tool. See also t: labels. labels Apr 20, 2020
@jmagman jmagman removed the tool Affects the "flutter" command-line tool. See also t: labels. label Apr 21, 2020
@chinmaygarde chinmaygarde removed the c: crash Stack traces logged to the console label Jun 12, 2020
@chinmaygarde
Copy link
Member

Would you mind preparing an engine patch for this?

@chinmaygarde chinmaygarde added P3 Issues that are less important to the Flutter project c: new feature Nothing broken; request for a new capability labels Jun 12, 2020
@JakeSays
Copy link
Author

I can. I'll try to do it this weekend.

@flutter-triage-bot flutter-triage-bot bot added team-engine Owned by Engine team triaged-engine Triaged by Engine team labels Jul 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c: new feature Nothing broken; request for a new capability engine flutter/engine repository. See also e: labels. P3 Issues that are less important to the Flutter project team-engine Owned by Engine team triaged-engine Triaged by Engine team
Projects
None yet
Development

No branches or pull requests

6 participants