[Bug sanitizer/63813] New: [5 Regression][UBSAN] ICE in ubsan_type_descriptor, at ubsan.c:346
burnus at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Nov 11 07:57:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63813
Bug ID: 63813
Summary: [5 Regression][UBSAN] ICE in ubsan_type_descriptor, at
ubsan.c:346
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: sanitizer
Assignee: unassigned at gcc dot gnu.org
Reporter: burnus at gcc dot gnu.org
CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org,
jakub at gcc dot gnu.org, kcc at gcc dot gnu.org,
mpolacek at gcc dot gnu.org
With yesterdays's GCC, compiling our big code fails with:
$ g++ -S -w -fsanitize=undefined -O1 poly21.ii
poly21.ii: In member function ‘void
sfm::PolygonBuilder::ProcessSingleExternalTopRight(const
sfm::PolygonSingleEvent&)’:
poly21.ii:23:8: internal compiler error: in ubsan_type_descriptor, at
ubsan.c:346
void PolygonBuilder::ProcessSingleExternalTopRight (
^
0xcaaebc ubsan_type_descriptor(tree_node*, ubsan_print_style)
../../gcc/ubsan.c:346
0xcac58c ubsan_expand_null_ifn(gimple_stmt_iterator*)
../../gcc/ubsan.c:766
It was working on 7 November.
---------<cut>-------------------------------
namespace sfm
{
class PolygonFragment { };
typedef long AttributeValue;
class CrossingEvent {
public:
inline AttributeValue GetValue () const;
};
class SingleCrossingEvent : public CrossingEvent { };
class PolygonSingleEvent : public SingleCrossingEvent {
public:
inline PolygonFragment &GetFragment () const;
};
PolygonFragment &PolygonSingleEvent::GetFragment () const {
return *reinterpret_cast <PolygonFragment *>(GetValue ());
}
class PolygonBuilder {
void ProcessSingleExternalTopRight (const PolygonSingleEvent &inEvent);
inline void CloseExternal (PolygonFragment &ioLeft,
PolygonFragment &ioRight);
PolygonFragment *mCarryBelow;
};
void PolygonBuilder::ProcessSingleExternalTopRight (
const PolygonSingleEvent &inEvent)
{
CloseExternal (*mCarryBelow, inEvent.GetFragment ());
}
}
More information about the Gcc-bugs
mailing list