[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH V2 3/9] libxl_json: Introduce libxl__json_object_to_yajl_gen.



On Tue, 2012-09-25 at 15:20 +0100, Anthony PERARD wrote:
> >> +    case JSON_ANY:
> > 
> > Is JSON_ANY sort of like a JSON "void *"? Is it ever valid to be passed
> > one here, IOW does this represent a coding error (==abort()) or a run
> > time one (== log something)?
> 
> This value is only used as parameter of one function,
> libxl__json_map_get, that return an object from the json_object tree
> with the expected type. But sometime we don't expect any type so
> JSON_ANY is used and allow "map_get" to return any type of object.
> 
> So JSON_ANY is not valid here and would probably be a coding error.

Lets abort() then.

> 
> >> +    default:
> > 
> > If you skip this default case then some compilers will warn (a runtime
> > error) if we forget to add a new JSON_FOO here.
> 
> I tried to remove the default, but then gcc believe that the function
> would not return in some cases.

Gah! 

>  But I did not add a return because it
> felt weird to add a useless/never_executed return/abort.
> 
> But it seams better to remove the default case, so I will.
> 



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.