Closed Bug 1628754 Opened 5 years ago Closed 5 years ago

Update cbindgen to 0.14

Categories

(Core :: General, task, P3)

task

Tracking

()

RESOLVED FIXED
mozilla77
Tracking Status
firefox77 --- fixed

People

(Reporter: kvark, Assigned: kvark)

References

Details

Attachments

(1 file)

No description provided.
Assignee: nobody → dmalyshau
Blocks: 1624174

Alexandru, are you sure that's caused by my change? The try had similar builds that went OK: https://treeherder.mozilla.org/#/jobs?repo=try&revision=5f76e484951034220f6df74250b54f3490da9d7f

Flags: needinfo?(dmalyshau) → needinfo?(malexandru)

Yeah, I think you are correct, Alexandru!

Emilio, you might have ideas about which of the changes regressed Servo. No worries if you are busy, I'll keep looking nevertheless.

Flags: needinfo?(emilio)

So this is:

    bool operator==(const StyleGenericCalcNode& other) const {                                                                                                                                                                                
      if (tag != other.tag) {                                                      
        return false;                                                              
      }                                                                            
      switch (tag) {                                                               
        case Tag::Leaf: return leaf == other.leaf;                                 
        case Tag::Sum: return sum == other.sum;                                    
        case Tag::MinMax: return min_max == other.min_max;                         
        case Tag::Clamp: return clamp == other.clamp;                              
                                                                                   
      }                                                                            
    }

Which with 0.13 it generates:

  bool operator==(const StyleGenericCalcNode& other) const {
    if (tag != other.tag) {
      return false;
    }
    switch (tag) {
      case Tag::Leaf: return leaf == other.leaf;
      case Tag::Sum: return sum == other.sum;
      case Tag::MinMax: return min_max == other.min_max;
      case Tag::Clamp: return clamp == other.clamp;
      default: return true;
    }
  }

So this broke it, basically: https://github.com/eqrion/cbindgen/pull/475

We can generate a return statement outside of the switch to work around it I guess.

Flags: needinfo?(emilio)

Fwiw, i had a thunderbird 76.0b1 build failure when testing cbindgen 0.14.0. Is the beta branch supposed to build with this newer cbindgen version ?

Reverting back to 0.13.1 seems to help so far. Will test upcoming release.

https://treeherder.mozilla.org/#/jobs?repo=try&revision=97de7e703a44a247014159b828689354bcde980c looks green.

:gaston it should work with cbindgen 0.14.1 which I'll release today.

Attachment #9139551 - Attachment description: Cbindgen update to 0.14.0 → CBindGen update to 0.14.1
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla77

Can confirm that tb 76.0b1 builds with cbindgen 0.14.1, thanks!

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: