1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
---
layout: documentation
title: Variable x is read only
---
# Error: Variable x is read only
A global variable cannot be reassigned. It will always point to the same object.
However, its content might change, if the value is mutable (for example, the
content of a list). Local variables don't have this restriction.
```python
a = [1, 2]
a[1] = 3
b = 3
b = 4 # forbidden
```
`ERROR: /path/ext.bzl:7:1: Variable b is read only`
You will get a similar error if you try to redefine a function (function
overloading is not supported), for example:
```python
def foo(x): return x + 1
def foo(x, y): return x + y # forbidden
```
|