Browse Source

Sanity check per-axis settings for size

Scott Lahteine 8 years ago
parent
commit
34308368c0
1 changed files with 13 additions and 0 deletions
  1. 13
    0
      Marlin/SanityCheck.h

+ 13
- 0
Marlin/SanityCheck.h View File

@@ -1074,3 +1074,16 @@ static_assert(1 >= 0
1074 1074
   #endif
1075 1075
   , "Please select no more than one LCD controller option."
1076 1076
 );
1077
+
1078
+/**
1079
+ * Require 4 or more elements in per-axis initializers
1080
+ */
1081
+constexpr float sanity_arr_1[] = DEFAULT_AXIS_STEPS_PER_UNIT,
1082
+                sanity_arr_2[] = DEFAULT_MAX_FEEDRATE,
1083
+                sanity_arr_3[] = DEFAULT_MAX_ACCELERATION;
1084
+static_assert(COUNT(sanity_arr_1) >= XYZE, "DEFAULT_AXIS_STEPS_PER_UNIT requires 4 (or more) elements.");
1085
+static_assert(COUNT(sanity_arr_2) >= XYZE, "DEFAULT_MAX_FEEDRATE requires 4 (or more) elements.");
1086
+static_assert(COUNT(sanity_arr_3) >= XYZE, "DEFAULT_MAX_ACCELERATION requires 4 (or more) elements.");
1087
+static_assert(COUNT(sanity_arr_1) <= XYZE_N, "DEFAULT_AXIS_STEPS_PER_UNIT has too many elements.");
1088
+static_assert(COUNT(sanity_arr_2) <= XYZE_N, "DEFAULT_MAX_FEEDRATE has too many elements.");
1089
+static_assert(COUNT(sanity_arr_3) <= XYZE_N, "DEFAULT_MAX_ACCELERATION has too many elements.");

Loading…
Cancel
Save