Apparently it was just some stale swig files. I've had problems with
that sort of thing before and thought I had already tried deleting what
are usually the problem, but I guess I didn't do that successfully.

Gabe

On 11/08/11 11:54, Steve Reinhardt wrote:
> Well, to start with a disclaimer, this is code that Nate wrote four years
> ago, so my interpretation may not be definitive...
>
> I don't see how this is directly related to providing an empty list as a
> default, which I think should work.  (Note that you should *not* change the
> value of the param by appending to that empty list though; you should
> reassign the param with a different non-empty list.  I hope we can find a
> long-term solution that didn't involve a default empty list just to
> discourage that behavior.)
>
> The particular issue seems at least superficially related to swig...
> basically what's going on here is that we're copying values from the python
> SimObject params list to the swig-wrapped C++ params struct.  The C++
> params struct should have a vector param represented as a std::vector<foo>,
> which swig should in turn wrap as a python list.  I believe the assertion
> here is just checking that after we create an empty initial copy of the C++
> params list, the vector is empty before we start adding elements to it, and
> python is complaining that it can't call len() because it's not even a
> vector.  So something is going wrong in the vicinity of swig (either a bug
> in swig itself, or in what we're feeding it).
>
> Hope that's enough to help you trace it further...
>
> Steve
>
> On Mon, Nov 7, 2011 at 2:40 AM, Gabe Black <[email protected]> wrote:
>
>> Hey folks. I'm making progress on gluing SE and FS modes together (a
>> smoother integration will come later) and I've cornered the last
>> instances of FULL_SYSTEM to the cpu directory. I'm having some trouble
>> getting rid of the FULL_SYSTEM which guards the workload parameter. I'd
>> like to turn on the parameter in FS but set it to something inert like
>> []. When I tried that, though, I got the following error. I have no idea
>> what it's talking about, but it doesn't necessarily look like it's the
>> [] itself that's the problem. Maybe setting defaults on VectorParams
>> doesn't work?
>>
>> Gabe
>>
>>
>>
>> warn: Sockets disabled, not accepting vnc client connections
>> warn: Sockets disabled, not accepting terminal connections
>> Traceback (most recent call last):
>>  File "<string>", line 1, in <module>
>>  File "/home/gblack/m5/repos/gem5.sefs/src/python/m5/main.py", line
>> 356, in main
>>    exec filecode in scope
>>  File "tests/run.py", line 81, in <module>
>>    m5.instantiate()
>>  File "/home/gblack/m5/repos/gem5.sefs/src/python/m5/simulate.py", line
>> 78, in instantiate
>>    for obj in root.descendants(): obj.createCCObject()
>>  File "/home/gblack/m5/repos/gem5.sefs/src/python/m5/SimObject.py",
>> line 881, in createCCObject
>>    self.getCCParams()
>>  File "/home/gblack/m5/repos/gem5.sefs/src/python/m5/SimObject.py",
>> line 840, in getCCParams
>>    assert not len(vec)
>> TypeError: object of type 'SwigPyObject' has no len()
>> _______________________________________________
>> gem5-dev mailing list
>> [email protected]
>> http://m5sim.org/mailman/listinfo/gem5-dev
>>
> _______________________________________________
> gem5-dev mailing list
> [email protected]
> http://m5sim.org/mailman/listinfo/gem5-dev

_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to