You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR updates the complex implementation.
From the POV of the complex's user, the interface does not change.
The modification made to the implementation are:
- the operators are now declared as hidden friends
- encapsulation of helper functions of the implementation (only expose
what needs to be)
- using metaprogramming to specialize the complex when the trait
`is_genfloat` is true, which removes the duplication of the operators
- using metaprogramming to specialize different math operations when the
trait `is_genfloat` is true, which removes some boilerplate code
- add the missing `inline` attribute to different functions
- remove unnecessary const and ref keywords on `value_type`
- add missing `std::enable_if` on free functions
llvm-test-suite: intel/llvm-test-suite#1533
0 commit comments