mie: builtin: add isolated-from-above trait
This commit is contained in:
@@ -3,4 +3,5 @@
|
|||||||
|
|
||||||
MIE_DIALECT_BEGIN(mie_builtin, "builtin")
|
MIE_DIALECT_BEGIN(mie_builtin, "builtin")
|
||||||
MIE_DIALECT_ADD_TYPE(mie_builtin_string);
|
MIE_DIALECT_ADD_TYPE(mie_builtin_string);
|
||||||
|
MIE_DIALECT_ADD_TRAIT(mie_builtin_isolated_from_above);
|
||||||
MIE_DIALECT_END()
|
MIE_DIALECT_END()
|
||||||
|
|||||||
21
mie/dialect/builtin/isolated-from-above.c
Normal file
21
mie/dialect/builtin/isolated-from-above.c
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
#include <mie/dialect/dialect.h>
|
||||||
|
#include <mie/macros.h>
|
||||||
|
#include <mie/trait/trait-definition.h>
|
||||||
|
#include <mie/trait/trait.h>
|
||||||
|
|
||||||
|
static enum mie_status validate(
|
||||||
|
const struct mie_trait_definition *trait_def,
|
||||||
|
const struct mie_trait *trait, const struct mie_trait_target *target)
|
||||||
|
{
|
||||||
|
return MIE_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* builtin.isolated-from-above trait:
|
||||||
|
* regions of an op that has this trait cannot capture or reference
|
||||||
|
* values defined in the enclosing scope. */
|
||||||
|
MIE_TRAIT_DEFINITION_BEGIN(
|
||||||
|
mie_builtin_isolated_from_above, "isolated-from-above")
|
||||||
|
MIE_TRAIT_DEFINITION_TARGETS(MIE_TRAIT_TARGET_OP | MIE_TRAIT_TARGET_TYPE);
|
||||||
|
MIE_TRAIT_DEFINITION_STRUCT(struct mie_trait);
|
||||||
|
MIE_TRAIT_DEFINITION_VALIDATE(validate);
|
||||||
|
MIE_TRAIT_DEFINITION_END()
|
||||||
Reference in New Issue
Block a user