google/EarlGrey

Version 2.2.2 fails to build in Xcode 15

Opened this issue · 0 comments

There are a few issues I've ran across while upgrading to Xcode 15:

  • C Clang Warnings > Strict Prototypes is set to Yes. I had to set this to No to remove errors where the function declaration did not explicitly set void as the function parameter.
  • UITouchFlags._firstTouchForView assignment to 1 causes an overflow. Setting the value to -1 resolves the error. I'm assuming that is what the value should be as you may only assign 0 or -1 to a char that has its bit field assigned to 1.

Here is the declaration of the struct with the char assigned a bit field of 1.
grey_touch_injector_struct

Here is where the value gets set to 1 causing an overflow. I believe it should be -1.
grey_touch_injector_set_touch

Alternatively to the Clang warnings, I can update the AppFramework, CommonLib, and TestLib to explicitly add void to function definitions if we want to keep the Strict Prototypes value set to Yes.

If this is correct, I will put up a PR asap.