I'm sure there must be a good reason for this, but why, when I try to create a custom object in v3.0 by starting the command:
$obj = [pscust
then try to TAB complete, it completes as [psobject] and when I add a hash table with the desired properties, the resultant object is a hash table? If I want a PSCustomObject, it seems I have to complete the full type name. (Sorry, being picky here, but I don't like typing!!)
by poshoholic at 2013-04-23 21:02:34
That seems like a bug due to how tab completion works in PowerShell and due to the fact that the [pscustomobject] type is actually a special-case [psobject] that PowerShell's interpreter treats differently.
You can see why tab completion is doing what it does by invoking this command: [pscustomobject].FullName Compare that to: [psobject].FullName That illustrates that [pscustomobject] is actually [psobject]. It provides for a little bit of syntactic magic when it comes to object creation with hash tables.
If it's a bug that you really want to see fixed, you should open a bug report on Microsoft Connect and encourage others to vote it up.