Get A Compiler Warning For Functions Returning Value Types, Without Return Statement
Jul 21, 2009
I've just been burned again by the fact that there is no compiler warning when you fail to return a result in a Function that returns a Value type. I wrote the function:
Public Function CompareTo(ByVal other As MessageIndex) As Integer Implements System.IComparable(Of MessageIndex).CompareTo
Me._messageIndex.CompareTo(other._messageIndex)
End Function
which performs the CompareTo Function for two integers, then throws the result away and returns 0, because I forgot to either assign a value to CompareTo, or use Return, and that isn't flagged by the compiler because it's valid VB for a Value type.
I happen never to use "FunctionName = ReturnValue" because it hides information from maintenance programmers and also because I think it's insane .
Is there any way I can get the compiler to issue a warning whenever my Functions are missing a Return, whether it's a Value type or not?
View 11 Replies
ADVERTISEMENT
Sep 26, 2011
The compiler gives me 3 errors:Errors building F:#DprojectsucctLOCUST 2 Server GenucctLOCUST 2 Server Geni
nDebugServer.vb into C:UsersPat'sDesktopserver.exe
vbc : (0,0) : error BC30420: 'Sub Main' was not found in 'Form1'.
F:#DprojectsucctLOCUST 2 Server GenucctLOCUST 2 Server GeninDebugServer
.vb(97,0) : error BC30456: 'Count' is not a member of 'System.Array'.
F:#DprojectsucctLOCUST 2 Server GenucctLOCUST 2 Server GeninDebugServer
[Code]...
View 5 Replies
Nov 5, 2009
I have a DLL which works at Visual Studio 2005. But i want to use this DLL with VB 6.0. As i read from internet, i should use "Regasm" tool. When i used regasm tool as below :
C:WINDOWSMicrosoft.NETFrameworkv2.0.50727>regasm "Light.dll"
I got this error :
RegAsm : warning RA0000 : No types were registered
There are 2 files too at same folder and with same name DLL :
Light.pdb
Light.xml
View 2 Replies
Feb 25, 2010
warnings got me thinking about old issues that always goofed me up when I was writing more VB.NET code.One of them was the fact that the compiler didn't warn if you declared a Function but never did an explicit Return statement or assign to the Function name. Running Visual Studio 2008, I just made a small experimental project, and it seems as though the behavior has never been fixed.I created a Visual Basic Console application, with the following code:
Module MainModule
Sub Main()
Dim test As Boolean = TestWarning()[code].....
I also went into the Project Settings and turned On Option Strict and Option Explicit.I also set the Warning Configurations so that "Function/Operator with no return value" was set to Error.I compiled the project and got no warning, and no error on the TestWarning() Function. This seems like a great place to put a warning, because it will default to False, and you may have simply forgotten to do a return. C# will error without a return statement. I thought that VB.NET did the same thing with the "Function/Operator with no return value" configuration. Is this a bug, or is there something I'm missing?
Edit: Further Experimentation
Function TestWarning() As Boolean
If DateTime.Now.DayOfWeek = DayOfWeek.Monday Then
Return False[code].....
If, and nothing in the Else, there is also no Warning/Error. It will simply take the default, even though you likely intended (via programming style) to have an explicit return. In this case, I explicitly returned False (which is the default for Boolean), so it's likely a hidden bug that I should have returned True in the Else.
View 4 Replies
Jul 6, 2011
The ASP.NET compiler tells me a certain tag does not accept a certain attribute, although it builds, and it renders correctly on the browser. It's a dull warning message. How can I disable that warning message in certain lines of the ASP.NET code?
[Code]...
View 3 Replies
Nov 21, 2011
> Function LoginPass() As Boolean
> Dim LogPass As New waxClass
> Dim Ldt As DataTable = LogPass.LoginPass(LCase(UserName_TextBox.Text),
> LCase(UserPass_TextBox.Text))
[Code]...
When I try to use the above function it gives a Warning saying:
Function 'LoginPass' doesn't return a value on all code paths. Are you missing a 'Return' statement?
View 1 Replies
Nov 27, 2009
I ran into an error when trying to do this:
Code: ChartBuffer = GetCurrentChart(ChartBuffer) The error says Conversion from type 'Integer()' to type 'Integer' is not valid.
Apparently I have some type casting issues, the problem is I'm not trying to cast any types at all. I'm trying to set one array chartbuffer equal to the array returned from GetCurrentChart.
[Code]...
In the constructor of this class I am trying to set the buffer equal to the loaded chart because if I try to write information to a buffer that isn't already initialized, and then save it, it will overwrite stuff that might already be saved in the file as 0's or something, and I don't want it to do that. To prevent this from happening I'm simply going to initialize the buffer in the constructor by setting it equal to the loaded chart. Finally after that is all done I can write new information to the buffer and save it to the file without writing a mostly empty buffer (full of zero's) to the chart that is saved with information in it already.
View 4 Replies
May 9, 2012
I'm trying to add the export to word capability to my code and adding the following to my code gets me some warning and errors. I was able to find a download sample code to do this, however it's strange, when I run the downloaded code, it didn't encounter error but I put this together with my code it produced some errors.
Option Explicit On
Option Strict On
Imports System.IO
[Code]....
View 2 Replies
Mar 11, 2009
I'm using VB6 and trying to get an instance of a Type Library object.After i retrieved the object and i'm trying to invoke a method. I'm getting this exception. However, i've checked with the parameters and its type. it is correct.I found something fishy, that method doesnt have return value. But it is throwing a compiler error whenever i'm trying to call the function and the compiler error went off when i get a return value from that method.I don't know,
View 1 Replies
Mar 11, 2009
Any best approach to what I'm trying to achieve (linq to sql, returning list of data to show in a grid/list etc etc)... Its complaining about anonymous type conversion, and from what I'm reading, thats not elegant way of doing it.
Public Function GetHistory(ByVal historyId As Integer) As List(Of ?????????)
Using dc As New myDataContext(Application.GetConnection)
Return (From t In dc.ActionTypes, a In t.MyTable Where a.HistoryID = historyId Select a.ActionOn, a.ActionBy, t.Description, a.ImpactedItem, a.ActionDescription).ToList
End Using
End Function
View 4 Replies
Oct 22, 2010
I have a function to recursively search through windows (and their child windows) to find specific ones, it works exactly as expected, however it causes "function doesn't return a value on all paths" warning. This is the only warning in my entire program, and although it might be silly, I'm interested in knowing if there is a way to stop this error from occurring, but still allowing the function to work properly.[code]
View 4 Replies
Nov 21, 2009
i get a warning " 'functionDealWithHiddenFields' doesn't return a value on all code paths. A null reference exception could occur at run time when the result is used."
Example function:
vb.net
Function functionDealWithHiddenFields(ByVal HTML As String, ByVal numHiddenFields As Integer, ByVal X As Integer)
Try
[code]....
The functions still work correctly (as far as i can tell) what would i need to do to the above function to remedy that warning?
View 5 Replies
Sep 19, 2011
I have this VB crypter I am trying to build, but I am getting 2 warnings. I Would like some help if someone has the time. Please PM me and ill send you the crypt.Warning 1 Function 'ReadEOFData' doesn't return a value on all code paths. A null reference exception could occur at run time when the result is used. I:Usersn oahDesktopI am CrypterI am CrypterForm1.vb 189 13 I am Crypter
Warning 2 Variable 'Buf' is used before it has been assigned a value. A null reference exception could result at runtime. I:Users
oahDesktopI am CrypterI am CrypterForm1.vb 203 19 I am Crypter
View 3 Replies
Apr 11, 2011
[Code]....
This code is giving an error: Compiler Error Message: BC30201: Expression expected. I just basically want to check if two values are equal but its saying something about expression expected although i've given the expression to evaluate.
View 2 Replies
Sep 29, 2010
I freely admit that I tend to avoid using API calls as much as possible I wish to use this API call
[Code]...
View 8 Replies
Feb 27, 2012
I have some code I inherited which has a lot of warnings that I would like to get removed. Many are of the form Property '<propertyname>' doesn't return a value on all code paths. I know why it is saying this, I'm just trying to determine what the correct 0 impact way of fixing this is.[code]Unfortuantely if I put this in my code (having changed the local variable name to avoid collisions) it then complains that it is being used before it has been assigned a value.Try to analyze IL in LinqPad (not sure if this is a good test or not) reveals that the empty method is the same as the above that Reflector gave me but it is different from return Nothing and return "".What can I use to get rid of this warning while guaranteeing the code runs 100% the same? [code]I'm not sure what ldloc.0 does here. I'm wondering if it is trying to get something from a register which will be null and if that is therefore the same as ldnull in this situation but I havent' ever really studied IL much before...
View 2 Replies
Jun 4, 2010
I have an sp that deletes a bunch of rows and returns the number of rows deleted...
ALTER PROCEDURE [dbo].[DeleteChangeLog]
@ChangeEntityType bigint,
@StartDate datetime,[code]......
View 12 Replies
Sep 5, 2009
Assuming Anonymous Types are tailored to be used with LINQ, I'd like to use them for simply and fast data aggregation without an explicit class definition, like in this snippet[code]....
View 2 Replies
Feb 4, 2011
I am still a newbie with VB. If I return a number the if statement works fine, with opening the new form and updating it as needed. Id the if statement returns a Null from the database it crashes.
[code]...
View 2 Replies
May 24, 2012
Return statement which is true in an if statement
View 3 Replies
Jan 9, 2012
I have functions in my program that stop after it reaches a Return line but I need the function to continue in case what I want the function to return changes. Is there a workaround for this or a way to force the function to continue after a return?
I made a Test Program to demonstrate the problem. It is a Form that contains only a button.
Here is the source code:
[Code]...
The messagebox always says "It returned False" when if it continued going through the code like I want it to it would have returned true.
View 3 Replies
Dec 19, 2011
Currently I have been writing subroutines in a activex dll to carry out functions in my main program but I have hit a little snag when trying to return a function when an if statement is triggered. What I want to do is for the dll to check if a function in the my.settings of the main program is true/false and if it turns out that it is true/false in the settings it will trigger the if statement in the dll which will then send data back to the main program - seem simple? I am also wondering, can you transfur boolean settings for enabled textboxes through functions stated in the subroutine of the dll?
View 8 Replies
May 11, 2011
I have the following function (in a WCF)
[code]...
Problem is, I'm getting the following error on 'Return ImageData':Value of type '1-dimensional array of Byte' cannot be converted to 'Byte'.I've been playing with it, but can't seem to figure out what I need to do to ImageData.
View 1 Replies
Mar 26, 2009
I'm not reciving any errors at all this is Still my homework on the Compound Intrest and it's due tommarow and well an if statement isn't working
Private Sub btnCalc_Click(ByVal sender As Object, _
ByVal e As EventArgs) Handles btnCalc.Click
Dim decAmount As Decimal = 0D
[Code].....
View 6 Replies
Apr 3, 2012
My code seems to behave a way I don't understand. Sometimes it returns null as expected and sometimes it returns a value when its supposed to be null. How can someone explain this? Here is the code that selects from access and displays the result in a messagebox:
cmd5.Connection = cnn
cmd5.CommandText = "SELECT receipt_num " & _
"FROM brought_coffee, farmer where crop_year= " & yr & " and " & _
"brought_date=#" & dtt & "# and farmer_centre='" & ctr & _
[code]....
View 1 Replies
Feb 17, 2012
So you know how PHP internal functions usually return a boolean FALSE when a function fails, or some other data type when the function succeeds? Is this possible in VB .Net?For instance, lets say this simple code here Public Function TrySomething(ByVal Param As String) \what would go here??
[Code]...
You see I want to return a BOOLEAN false when a function fails, and a string when the function works. I've looked everywhere, and when I search for "return multiple types" all i find is Tuple.
View 4 Replies
Mar 31, 2011
I have a table that has a "date" column and an "amount" column. I also have a form with two DateTimePickers ("dtp1" and "dtp2"), a button and a label. The label should show the total amount calculated from the rows whose "date" value is between the dates picked by the user with the DateTimePicker controls.
I keep getting an error with my SQL statement, and I don't know what to try. My code is as follows:
Private Sub getData(ByRef total As Double)
Dim connection As OleDbConnection
connection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\proyectogestion.mdb")
[Code]....
View 4 Replies
Oct 20, 2011
i have a strange issue today. Sample code is at the below of the post. The code that i have pointed out is too strange. According to my knowledge using return statement the functions return values as byval and copies the value to the stack. Also how can my class can reach outscope elements and change them. Take a look at to the code below. How this could be?
code
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim b As New ByteClass
Dim sumArray As Long = 0
[Code]...
View 21 Replies
May 17, 2009
In C#, when writing a function that returns an IEnumerble<>, you can use yield return to return a single item of the enumeration and yield break; to signify no remaining items. What is the VB.NET syntax for doing the same thing?
[Code]...
View 6 Replies
Sep 16, 2010
im calling functions with an IF statement but then not using the returned value for anything... is there a reason that i shouldn't do this? in my form i call the function to run...
[Code]...
View 5 Replies