@@ -233,7 +233,7 @@ def __init__(
233
233
for var_name , var_value in value .items ()
234
234
}
235
235
236
- self .locals [k . lower () ] = value
236
+ self .locals [k ] = value
237
237
238
238
def send (
239
239
self , name : str , * args : t .Any , ** kwargs : t .Any
@@ -342,7 +342,9 @@ def evaluate(self, node: MacroFunc) -> exp.Expression | t.List[exp.Expression] |
342
342
args [0 ] if len (args ) == 1 else exp .Tuple (expressions = list (args ))
343
343
)
344
344
else :
345
+ # Make variables defined through `@DEF` case-insensitive
345
346
self .locals [node .name .lower ()] = self .transform (node .expression )
347
+
346
348
return node
347
349
348
350
if isinstance (node , (MacroSQL , MacroStrReplace )):
@@ -645,7 +647,7 @@ def substitute(
645
647
) -> exp .Expression | t .List [exp .Expression ] | None :
646
648
if isinstance (node , (exp .Identifier , exp .Var )):
647
649
if not isinstance (node .parent , exp .Column ):
648
- name = node .name
650
+ name = node .name . lower ()
649
651
if name in args :
650
652
return args [name ].copy ()
651
653
if name in evaluator .locals :
@@ -678,7 +680,7 @@ def substitute(
678
680
return expressions , lambda args : func .this .transform (
679
681
substitute ,
680
682
{
681
- expression .name : arg
683
+ expression .name . lower () : arg
682
684
for expression , arg in zip (
683
685
func .expressions , args .expressions if isinstance (args , exp .Tuple ) else [args ]
684
686
)
0 commit comments