## Licensed to the Apache Software Foundation (ASF) under one ## or more contributor license agreements. See the NOTICE file ## distributed with this work for additional information ## regarding copyright ownership. The ASF licenses this file ## to you under the Apache License, Version 2.0 (the ## "License"); you may not use this file except in compliance ## with the License. You may obtain a copy of the License at ## ## http://www.apache.org/licenses/LICENSE-2.0 ## ## Unless required by applicable law or agreed to in writing, ## software distributed under the License is distributed on an ## "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ## KIND, either express or implied. See the License for the ## specific language governing permissions and limitations ## under the License. This tests to make sure that we only alter either the local arg in a VM, or the global context. So in foo, we are accessing the global 'b', and the fact that we were called from bar that has it's arg of 'b' is irrelevant. #macro( foo $a ) foo : \$b = $b #set ($b = $a * 2) foo after : \$b = $b #end #macro( bar $b) #woobie($b) bar post woobie : $b #end #macro( woobie $b) #foo($b) woobie post foo : $b #end #set($b = 0 ) #set($arg = 4) precall \$b = $b #bar( $arg) postcall \$b = $b