[Bug 210827] lang/gcc6: gcc-6.1.0/gcc/gcov-tool.c's do_overlap(. . .) can return uninitialized "int ret"

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Jul 4 21:07:48 UTC 2016


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=210827

            Bug ID: 210827
           Summary: lang/gcc6: gcc-6.1.0/gcc/gcov-tool.c's do_overlap(. .
                    .) can return uninitialized "int ret"
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: gerald at FreeBSD.org
          Reporter: markmi at dsl-only.net
             Flags: maintainer-feedback?(gerald at FreeBSD.org)
          Assignee: gerald at FreeBSD.org

gcc-6.1.0/gcc/gcov-tool.c has code of the structure:

static int
do_overlap (int argc, char **argv)
{
  int opt;
  int ret;

  optind = 0;
  while ((opt = getopt_long (argc, argv, "vfFoht:", overlap_options, NULL)) !=
-1)
    {
      . . . (no assignments to ret) . . .
    }

  if (argc - optind == 2)
    ret = profile_overlap (argv[optind], argv[optind+1]);
  else
    overlap_usage ();

  return ret;
}

In the "else" case the ret value is uninitialized but would later be returned.

This was reported by the compiler used when I built lang/gcc6.

I have not built/checked other lang/gcc*'s or devel/*gcc*'s.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list