Fixed a parser bug: `puts ::foo` didn't parse well
Allow creating C structs/unions with named args