[Mono-bugs] [Bug 629371] New: The "trinary operator" If(condition, true, false) does not work.

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Sat Aug 7 17:08:19 EDT 2010


http://bugzilla.novell.com/show_bug.cgi?id=629371

http://bugzilla.novell.com/show_bug.cgi?id=629371#c0


           Summary: The "trinary operator" If(condition, true, false) does
                    not work.
    Classification: Mono
           Product: Mono: Compilers
           Version: 2.6.x
          Platform: i686
        OS/Version: openSUSE 11.3
            Status: NEW
          Severity: Minor
          Priority: P5 - None
         Component: Basic
        AssignedTo: rkvinge at novell.com
        ReportedBy: simar at gmx.net
         QAContact: mono-bugs at lists.ximian.com
          Found By: ---
           Blocker: ---


Created an attachment (id=381420)
 --> (http://bugzilla.novell.com/attachment.cgi?id=381420)
Uncompilable If(condition, true, false)

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; de; rv:1.9.2.8)
Gecko/20100723 SUSE/3.6.8-0.1.1 Firefox/3.6.8

VB.Net knows about sth like the C# ? operator. But using this causes an
internal compiler error in vbnc.

Reproducible: Always

Steps to Reproduce:
1. compile TestCase4.vb
Actual Results:  
vbnc
"-out:/home/simar/Projects/SizeParamIndex_notImplemented/SizeParamIndex_notImplemented/bin/Debug/SizeParamIndex_notImplemented.dll"
-nologo -utf8output -quiet -debug:full -optionstrict+ -optionexplicit+
-optioncompare:binary -optioninfer-
-rootnamespace:SizeParamIndex_notImplemented -main:TestCase -target:library 
"/home/simar/Projects/SizeParamIndex_notImplemented/SizeParamIndex_notImplemented/TestCase.vb"
"/home/simar/Projects/SizeParamIndex_notImplemented/SizeParamIndex_notImplemented/TestCase2.vb"
"/home/simar/Projects/SizeParamIndex_notImplemented/SizeParamIndex_notImplemented/TestCase3.vb"
"/home/simar/Projects/SizeParamIndex_notImplemented/SizeParamIndex_notImplemented/TestCase4.vb"
/home/simar/Projects/SizeParamIndex_notImplemented/SizeParamIndex_notImplemented/TestCase4.vb
(16,14) : Error VBNC99999: Unexpected error: There has been an internal error
in the compiler: 

  at vbnc.Helper.Stop (System.String Message) [0x00014] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/General/Helper.vb:2543 
  at vbnc.Parser.ParseIdentifier (vbnc.ExpressionParseInfo Info) [0x006b3] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1256 
  at vbnc.Parser.ParseExponent (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1287 
  at vbnc.Parser.ParseUnaryPlusMinus (vbnc.ExpressionParseInfo Info) [0x00058]
in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1305 
  at vbnc.Parser.ParseMultDiv (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1314 
  at vbnc.Parser.ParseIntDiv (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1336 
  at vbnc.Parser.ParseMod (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1349 
  at vbnc.Parser.ParsePlusMinus (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1362 
  at vbnc.Parser.ParseConcat (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1385 
  at vbnc.Parser.ParseBitshift (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1398 
  at vbnc.Parser.ParseComparison (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1420 
  at vbnc.Parser.ParseNot (vbnc.ExpressionParseInfo Info) [0x00024] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1467 
  at vbnc.Parser.ParseAnd_AndAlso (vbnc.ExpressionParseInfo Info) [0x00000] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1476 
  at vbnc.Parser.ParseOr_OrElse_Xor (vbnc.ExpressionParseInfo Info) [0x00000]
in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1498 
  at vbnc.Parser.ParseExpression (vbnc.ParsedObject Parent) [0x00002] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:1132 
  at vbnc.Parser.ParseReturnStatement (vbnc.ParsedObject Parent) [0x0002c] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Statements).vb:266 
  at vbnc.Parser.ParseCodeBlock (vbnc.ParsedObject Parent, Boolean IsOneLiner)
[0x00a45] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Expressions).vb:996 
  at vbnc.Parser.ParseFunctionDeclaration (vbnc.TypeDeclaration Parent,
vbnc.ParseAttributableInfo Info) [0x000bb] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Members2).vb:316 
  at vbnc.Parser.ParseTypeMembers (vbnc.TypeDeclaration Parent,
vbnc.MemberDeclarations Members) [0x003f9] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser.vb:1397 
  at vbnc.Parser.ParseTypeMembers (vbnc.TypeDeclaration Parent) [0x0000c] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser.vb:1322 
  at vbnc.Parser.ParseClassDeclaration (vbnc.ParsedObject Parent,
vbnc.Attributes Attributes, System.String Namespace) [0x00147] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser(Types).vb:84 
  at vbnc.Parser.ParseTypeDeclaration (vbnc.ParsedObject Parent,
vbnc.Attributes Attributes, System.String Namespace) [0x00010] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser.vb:1436 
  at vbnc.Parser.ParseAssemblyMembers (vbnc.AssemblyDeclaration Parent,
System.String RootNamespace, vbnc.MemberDeclarations declarations) [0x001a8] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser.vb:1482 
  at vbnc.Parser.ParseAssemblyDeclaration (System.String RootNamespace,
vbnc.AssemblyDeclaration assembly) [0x00092] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser.vb:433 
  at vbnc.Parser.Parse (System.String RootNamespace, vbnc.AssemblyDeclaration
assembly) [0x00002] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/Parser/Parser.vb:58 
  at vbnc.Compiler.Compile_Parse () [0x0006d] in
/usr/src/packages/BUILD/mono-basic-2.6.2/vbnc/vbnc/source/General/Compiler.vb:363 

Compilation took 00:00:00.4443080

Expected Results:  
A compiled binary.

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the mono-bugs mailing list