non_bool_operand
The operands of the operator '{0}' must be assignable to 'bool'.
Description
#The analyzer produces this diagnostic when one of the operands of either the &&
or ||
operator doesn't have the type bool
.
Example
#The following code produces this diagnostic because a
isn't a Boolean value:
dart
int a = 3;
bool b = a || a > 1;
Common fixes
#Change the operand to a Boolean value:
dart
int a = 3;
bool b = a == 0 || a > 1;
Unless stated otherwise, the documentation on this site reflects Dart 3.7.3. Page last updated on 2025-05-08. View source or report an issue.