[Rd] "warning: assignment discards qualifiers from pointer target type"

oliver oliver at first.in-berlin.de
Thu Jun 9 13:27:15 CEST 2011


On Wed, Jun 08, 2011 at 08:35:34PM -0400, Simon Urbanek wrote:
> 
> On Jun 8, 2011, at 8:32 PM, oliver wrote:
> 
> > On Thu, Jun 09, 2011 at 02:17:31AM +0200, oliver wrote:
> > [...]
> >> OK, I looked at this now.
> >> 
> >> LENGTH() checks the length of the vector.
> >> 
> >> Good to know this.
> >> 
> >> So the problem of a vector of length 0 can be with any arguments of type SEXP,
> >> hence I will need to check ANY arg on it's length.
> >> 
> >> This is vital to stability under any situation.
> >> 
> >> Thanks for this valuable hint!
> >> 
> >> I will add checks for all my SEXP-args.
> > [...]
> > 
> > Hey, LENGTH() does not work with String-vectors! :(
> > 
> 
> Of course it does ...
> 
> 

It does not so on my R 2.10.1 installation.


In the R-Shell I get:

  ==============================
  > length(c())
  [1] 0
  > 
  ==============================

So c() is vec of length 0.

When I feed my readjpeg() with c() as filename arg,

testing with:
====================================================
  if( LENGTH( filename_sexp ) < 1 )
  {
    error("LENGTH( filename_sexp ) < 1");
    //error("filename can't be vector of length 0");
  }
  else
  {
    error("LENGTH( filename_sexp ) is not < 1");
  }
====================================================


I got:
  Error in readjpeg(filename = c()) : LENGTH( filename_sexp ) is not < 1


You can explain why?


Ciao,
   Oliver



More information about the R-devel mailing list