On Dec 7, 2007 6:42 PM, Filipe Sousa wrote:
> Ken Martin wrote:
> > I checked into CVS two new commands; function and raise_scope (well three
> > commands if you count endfunction)
>
> I'm having troubles with functions, the next example gives me an exception
>
> function(foo x)
> set(x 1)
> raise_scope(${x})
> endfunction()
>
> foo(y)
> message(STATUS "y=${y}")
Try the following:
function(foo x)
set(${x} 1) # changed here
raise_scope(${x})
endfunction()
foo(y)
message(STATUS "y=${y}")
I have this working. What gives me problems is calling foo(x), since x
is the same name as the function argument. So unless this is fixed, I
suggest you use names for function arguments that are not likely to be
used themselves as the name of the variable to be passed to the
function. That is, I would do: function(foo _x). Or something like
that.
Hope this helps.
--Miguel
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake