aboutsummaryrefslogtreecommitdiff
path: root/src/check_type.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2023-07-31 11:09:19 +0100
committergingerBill <bill@gingerbill.org>2023-07-31 11:09:19 +0100
commit60e509b1e066da14461b3832307065726e651153 (patch)
tree24e90b4646dc7a70e24c00ab7154d6bcfc494fe5 /src/check_type.cpp
parent551c379f1bc6fa81f36b0d054eb7a190a27e2c60 (diff)
Add separate `-vet` flags; `-vet-using-*` flags; `//+vet` file flags
Diffstat (limited to 'src/check_type.cpp')
-rw-r--r--src/check_type.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/check_type.cpp b/src/check_type.cpp
index a68f83ba9..c52f32f1a 100644
--- a/src/check_type.cpp
+++ b/src/check_type.cpp
@@ -1474,6 +1474,12 @@ gb_internal Type *check_get_params(CheckerContext *ctx, Scope *scope, Ast *_para
Type *specialization = nullptr;
bool is_using = (p->flags&FieldFlag_using) != 0;
+ if ((build_context.vet_flags & VetFlag_UsingParam) && is_using) {
+ ERROR_BLOCK();
+ error(param, "'using' on a procedure parameter is now allowed when '-vet' or '-vet-using-stmt' is applied");
+ error_line("\t'using' is considered bad practice to use as a statement/procedure parameter outside of immediate refactoring\n");
+
+ }
if (type_expr == nullptr) {
param_value = handle_parameter_value(ctx, nullptr, &type, default_value, true);