[Bug debug/38101] New: dbxout_expand_expr() doesn't check return value of DECL_VALUE_EXPR()

2008-11-12 Thread d dot g dot gorbachev at gmail dot com
tree.c:

tree
decl_value_expr_lookup (tree from)
{
  ...
  return NULL_TREE;
}

tree.h:

#define DECL_VALUE_EXPR(NODE) \
  (decl_value_expr_lookup (DECL_WRTL_CHECK (NODE)))

dbxout.c:

static rtx
dbxout_expand_expr (tree expr)
{
  switch (TREE_CODE (expr))
  ...
case PARM_DECL:
  if (DECL_HAS_VALUE_EXPR_P (expr))
return dbxout_expand_expr (DECL_VALUE_EXPR (expr));
  ...
}


-- 
   Summary: dbxout_expand_expr() doesn't check return value of
DECL_VALUE_EXPR()
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: debug
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: d dot g dot gorbachev at gmail dot com
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i386-pc-mingw32


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38101



Re: [Bug debug/38101] New: dbxout_expand_expr() doesn't check return value of DECL_VALUE_EXPR()

2008-11-12 Thread Andrew Thomas Pinski



Sent from my iPhone

On Nov 12, 2008, at 8:11 PM, d dot g dot gorbachev at gmail dot com [EMAIL PROTECTED] 
 wrote:



tree.c:

tree
decl_value_expr_lookup (tree from)
{
 ...
 return NULL_TREE;
}

tree.h:

#define DECL_VALUE_EXPR(NODE) \
 (decl_value_expr_lookup (DECL_WRTL_CHECK (NODE)))

dbxout.c:

static rtx
dbxout_expand_expr (tree expr)
{
 switch (TREE_CODE (expr))
 ...
   case PARM_DECL:
 if (DECL_HAS_VALUE_EXPR_P (expr))
   return dbxout_expand_expr (DECL_VALUE_EXPR (expr));


DECL_VALUE_EXPR should not return null if DECL_HAS_VALUE_EXPR_P  
returns true.




 ...
}


--
  Summary: dbxout_expand_expr() doesn't check return value of
   DECL_VALUE_EXPR()
  Product: gcc
  Version: 4.4.0
   Status: UNCONFIRMED
 Severity: normal
 Priority: P3
Component: debug
   AssignedTo: unassigned at gcc dot gnu dot org
   ReportedBy: d dot g dot gorbachev at gmail dot com
GCC build triplet: i686-pc-linux-gnu
 GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i386-pc-mingw32


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38101