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

Build fixes for clang 18.1.8 #359

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion SOPE/NGCards/iCalYearlyRecurrenceCalculator.m
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ - (NSArray *) recurrenceRangesWithinCalendarDateRange: (NGCalendarDateRange *) _
NSMutableArray *ranges;
NSArray *byMonth;
NSCalendarDate *firStart, *lastDate, *rStart, *rEnd, *until, *referenceDate, *rTemp;
NSInteger *hoursOfOffset;
NSInteger hoursOfOffset;
iCalMonthlyRecurrenceCalculator *monthlyCalc;
unsigned j, yearIdxInRange, numberOfYearsInRange, count, interval, monthDiff;
int diff, repeatCount, currentMonth, origNbDaysInMonth;
Expand Down
3 changes: 2 additions & 1 deletion SoObjects/Mailer/SOGoMailFolder.m
Original file line number Diff line number Diff line change
Expand Up @@ -104,10 +104,11 @@ static NSComparisonResult _compareFetchResultsByMODSEQ (id entry1, id entry2, vo
return [modseq1 compare: modseq2];
}

static NSInteger _compareFetchResultsByUID (id entry1, id entry2, NSDictionary *uids)
static NSComparisonResult _compareFetchResultsByUID (id entry1, id entry2, void *uidsp)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure to understand the utility the void* then the NSDictionnary* casting? Can you check again if this causes a fail?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Without this:

SOGoMailFolder.m:233:52: error: incompatible function pointer types sending 'NSInteger (id, id, NSDictionary *)' (aka 'long (id, id, NSDictionary *)') to parameter of type 'NSComparisonResult (*)(id, id, void *)' (aka 'enum NSComparisonResult (*)(id, id, void *)') [-Wincompatible-function-pointer-types]
  233 |   result = [fetchResults sortedArrayUsingFunction: _compareFetchResultsByUID
      |                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/Foundation/NSArray.h:145:44: note: passing argument to parameter 'comparator' here
  145 |     (NSComparisonResult (*)(id, id, void*))comparator
      |                                            ^

{
NSString *uid1, *uid2;
NSUInteger pos1, pos2;
NSDictionary *uids=(NSDictionary*)uidsp;

uid1 = [entry1 objectForKey: @"uid"];
uid2 = [entry2 objectForKey: @"uid"];
Expand Down
2 changes: 1 addition & 1 deletion SoObjects/SOGo/SOGoMailer.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
{
NSString *mailingMechanism;
NSString *smtpServer;
BOOL *smtpMasterUserEnabled;
BOOL smtpMasterUserEnabled;
NSString *smtpMasterUserUsername;
NSString *smtpMasterUserPassword;
NSString *authenticationType;
Expand Down
4 changes: 2 additions & 2 deletions SoObjects/SOGo/SOGoUserDefaults.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,8 +156,8 @@ extern NSString *SOGoPasswordRecoverySecondaryEmail;
- (void) setMailComposeFontSize: (int) newValue;
- (int) mailComposeFontSize;

- (void) setMailDisplayFullEmail: (BOOL *) newValue;
- (BOOL *) mailDisplayFullEmail;
- (void) setMailDisplayFullEmail: (BOOL) newValue;
- (BOOL) mailDisplayFullEmail;

- (void) setMailDisplayRemoteInlineImages: (NSString *) newValue;
- (NSString *) mailDisplayRemoteInlineImages;
Expand Down
6 changes: 3 additions & 3 deletions SoObjects/SOGo/SOGoUserDefaults.m
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ + (SOGoUserDefaults *) defaultsForUser: (NSString *) userId
[ud setObject: @"text" forKey: @"SOGoMailComposeMessageType"];
}

[ud setObject: [NSNumber numberWithUnsignedLongLong: [up getCDefaultsSize]] forKey: @"CDefaultsSize"]; // Add c_defaults field size
[ud setObject: [NSNumber numberWithUnsignedLongLong: (unsigned long long)[up getCDefaultsSize]] forKey: @"CDefaultsSize"]; // Add c_defaults field size
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you sure this cause a build falied? as this method is already defined as
- (unsigned long long)getCDefaultsSize;

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Without this, I get

 Compiling file SOGoUserDefaults.m ...
SOGoUserDefaults.m:92:60: warning: instance method '-getCDefaultsSize' not found (return type defaults to 'id') [-Wobjc-method-access]
   92 |   [ud setObject: [NSNumber numberWithUnsignedLongLong: [up getCDefaultsSize]] forKey: @"CDefaultsSize"]; // Add c_defaults field size
      |                                                            ^~~~~~~~~~~~~~~~
./SOGoUserProfile.h:44:12: note: receiver is instance of class declared here
   44 | @interface SOGoUserProfile : NSObject
      |            ^
SOGoUserDefaults.m:92:56: error: incompatible pointer to integer conversion sending 'id' to parameter of type 'unsigned long long' [-Wint-conversion]
   92 |   [ud setObject: [NSNumber numberWithUnsignedLongLong: [up getCDefaultsSize]] forKey: @"CDefaultsSize"]; // Add c_defaults field size
      |                                                        ^~~~~~~~~~~~~~~~~~~~~
/usr/include/Foundation/NSValue.h:205:63: note: passing argument to parameter 'value' here
  205 | + (NSNumber*) numberWithUnsignedLongLong: (unsigned long long)value;
      |                                                               ^
1 warning and 1 error generated.


return ud;
}
Expand Down Expand Up @@ -634,12 +634,12 @@ - (int) mailComposeFontSize
return [self integerForKey: @"SOGoMailComposeFontSize"];
}

- (void) setMailDisplayFullEmail: (BOOL *) newValue
- (void) setMailDisplayFullEmail: (BOOL) newValue
{
[self setBool: newValue forKey: @"SOGoMailDisplayFullEmail"];
}

- (BOOL *) mailDisplayFullEmail;
- (BOOL) mailDisplayFullEmail;
{
return [self boolForKey: @"SOGoMailDisplayFullEmail"];
}
Expand Down